简述 当集群中node或pod异常时,我们可以使用kubectl查看对应的events,实际上再k8s中各个组件会将运行时产生的各种事件汇报到
简介 分布式系统中服务端会通过心跳机制确认客户端是否存活。在kubernetes中,kubelet也会定时上报心跳到apiserver,以此来
kubelet工作原理 kubelet 的工作核心就是在围绕着不同的生产者生产出来的不同的有关 pod 的消息来调用相应的消费者(不同的子模块)完成不同的行为(创建
kubelet启动流程 kubelet入口函数main(cmd/kubelet/kubelet.go) 1 2 3 4 5 6 7 8 9 10 11 func main() { rand.Seed(time.Now().UnixNano()) command := app.NewKubeletCommand() logs.InitLogs() defer
概要 kubelet是运行在每个节点上的主要的“节点代理”,每个节点都会启动kubelet进程,用来处理Apiserver下发到本节点的任务,
k8s中定时任务的实现 k8s 中有许多优秀的包都可以在平时的开发中借鉴与使用,比如,任务的定时轮询、高可用的实现、日志处理、缓存使用等都是独立的包
赶路人 发布于 收录于 go 摘要 Cobra提供简单的接口来创建强大的现代化CLI接口,非常多知名的开源项目使用了 cobra 库构建命令行,如Kubernetes、Hugo、etc
kubectl源码阅读 版本 v1.16.6 kubectl命令的创建 kubernetes/cmd/kubectl/kubectl.go 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 func main() { rand.Seed(time.Now().UnixNano()) command := cmd.NewDefaultKubectlCommand() // TODO: once we switch everything over to Cobra commands, we can go back to calling // cliflag.InitFlags()