网站首页 返回列表 “慢生活”不是懒惰,放慢速度不是拖延时间,而是让我们在生活中寻找到平衡。

GO源码学习之channel
2020-06-10 11:39 admin go源码

前言channel是golang中标志性的概念之一,很好很强大!channel(通道),顾名思义,是一种通道,一种用于并发环境中数据传递的通道。通常结合golang中另一重要概念goroutine(go协程)使用,使得在golang中的并发编程变得清晰简洁同时又高效强大。今天尝试着读读golang对channel的实现...
阅读全文

OpenFalcon源码分析(Agent组件)
2020-06-10 11:37 admin 源码OpenFalcon

一基本说明>AgentVERSION"5.1.2"*Agent源代码文件目录说明文件目录说明*调用关系调用关系*组件交互关系组件交互关系二源码分析>Main入口函数__命令行参数解析cfg:=flag.String("c","cfg.json","configurationfile")version:=flag.Boo...
阅读全文

golang channel 源码剖析
2020-06-10 11:37 admin golang源码

**channel**在golang中是一个非常重要的特性,它为我们提供了一个**并发模型**。对比锁,通过**chan**在多个goroutine之间完成数据交互,可以让代码更简洁、更容易实现、更不容易出错。golang的**channel**设计模型遵循**CSP(CommunicatingSequentialPr...
阅读全文

kube-scheduler 源码分析
2020-06-10 11:36 admin 源码kubescheduler

kube-scheduler的设计Kube-scheduler是kubernetes的核心组件之一,也是所有核心组件之间功能比较单一的,其代码也相对容易理解。kube-scheduler的目的就是为每一个pod选择一个合适的node,整体流程可以概括为三步,获取未调度的podList,通过执行一系列调度算法为pod选择...
阅读全文

kube-proxy iptables 模式源码分析
2020-06-10 11:34 admin 源码kubeproxy

iptables的功能在前面的文章中已经介绍过iptable的一些基本信息,本文会深入介绍kube-proxyiptables模式下的工作原理,本文中多处会与iptables的知识相关联,若没有iptables基础,请先自行补充。iptables的功能:*流量转发:DNAT实现IP地址和端口的映射;*负载均衡:stat...
阅读全文

kube-proxy 源码分析
2020-06-10 11:34 admin 源码kubeproxy

上篇文章已经分析了service原理以kube-proxy中三种模式的原理,本篇文章会从源码角度分析kube-proxy的设计与实现。>kubernetes版本:v1.16kube-proxy启动流程前面的文章已经说过kubernetes中所有组件都是通过其`run()`方法启动主逻辑的,`run()`方法调用之前会进...
阅读全文

kube-scheduler 优先级与抢占机制源码分析
2020-06-10 11:34 admin 源码kubescheduler

前面已经分析了kube-scheduler的代码逻辑以及predicates与priorities算法,本节会继续讲scheduler中的一个重要机制,pod优先级与抢占机制(PodPriorityandPreemption),该功能是在v1.8中引入的,v1.11中该功能为beta版本且默认启用了,v1.14为sta...
阅读全文

kube-scheduler predicates 与 priorities 调度算法源码分析
2020-06-10 11:34 admin 源码kubescheduler

在上篇文章中已经介绍了kube-scheduler的设计以及从源码角度分析了其执行流程,这篇文章会专注介绍调度过程中predicates和priorities这两个调度策略主要发生作用的阶段。>kubernetes版本:v1.16predicates调度算法源码分析predicates算法主要是对集群中的node进行过...
阅读全文

statefulset controller 源码分析
2020-06-10 11:34 admin 源码statefulset

Statefulset的基本功能statefulset旨在与有状态的应用及分布式系统一起使用,statefulset中的每个pod拥有一个唯一的身份标识,并且所有pod名都是按照{0..N-1}的顺序进行编号。本文会主要分析statefulsetcontroller的设计与实现,在分析源码前先介绍一下statefuls...
阅读全文

replicaset controller 源码分析
2020-06-10 11:34 admin 源码replicaset

在前面的文章中已经介绍了deploymentcontroller的设计与实现,deployment控制的是replicaset,而replicaset控制pod的创建与删除,deployment通过控制replicaset实现了滚动更新、回滚等操作。而replicaset会直接控制pod的创建与删除,本文会继续从源码层...
阅读全文

deployment controller 源码分析
2020-06-10 11:34 admin 源码deployment

在前面的文章中已经分析过kubernetes中多个组件的源码了,本章会继续解读kube-controller-manager源码,kube-controller-manager中有数十个controller,本文会分析最常用到的deploymentcontroller。deployment的功能deployment是k...
阅读全文

kube-proxy ipvs 模式源码分析
2020-06-10 11:34 admin 源码kubeproxy

前几篇文章已经分析了service的原理以及kube-proxyiptables模式的原理与实现,本篇文章会继续分析kube-proxyipvs模式的原理与实现。ipvsipvs(IPVirtualServer)是基于Netfilter的,作为linux内核的一部分实现了传输层负载均衡,ipvs集成在LVS(Linux...
阅读全文

NodeController 源码分析
2020-06-10 11:33 admin 源码NodeController

在早期的版本中NodeController只有一种,v1.16版本中NodeController已经分为了NodeIpamController与NodeLifecycleController,本文主要介绍NodeLifecycleController。NodeLifecycleController的功能NodeLife...
阅读全文

garbage collector controller 源码分析
2020-06-10 11:33 admin 源码garbage

在前面几篇关于controller源码分析的文章中多次提到了当删除一个对象时,其对应的controller并不会执行删除对象的操作,在kubernetes中对象的回收操作是由GarbageCollectorController负责的,其作用就是当删除一个对象时,会根据指定的删除策略回收该对象及其依赖对象,本文会深入分析...
阅读全文

kubelet statusManager 源码分析
2020-06-10 11:33 admin 源码kubelet

本篇文章没有接上篇继续更新kube-controller-manager,kube-controller-manager的源码阅读笔记也会继续更新,笔者会同时阅读多个组件的源码,阅读笔记也会按组件进行交叉更新,交叉更新的目的一是为了加深印象避免阅读完后又很快忘记,二是某些代码的功能难以理解,避免死磕,但整体目标是将每个...
阅读全文
顶部 底部