
云原生
利用kurise做日志采集使用promtail做sidecar采集日志
利用OpenKurise中的kruise做日志采集,原来我使用的是filebeat作为sidecar采集日志的,虽然采集没有什么问题,但是通过es进才看日志就比较繁琐了,这次实验p
根据上面的图形我们做一下注解,
1、首先,用户向api-serve发送创建pod请求。 2、api-serve做出认证响应,然后检查信息并把数据存储到ETCD里,创建deploment资源初始化。 3、controller通过list-watch机制,检查发现新到deployment,将资源加入到内部工作队列,反省资源没有关联的pod和replicaset,启用depliyment controller创建replicaset资源,再启用replicaset controller创建pod。 4、所有controller被创建完成后.将deployment,replicaset,pod资源更新存储到etcd。 5、scheduler通过list-watch机制,监测发现新的pod,经过主机过滤、主机打分规则,将pod绑定(binding)到合适的主机。 6、将绑定结果存储到etcd。 7、kubelet每隔 20s(可以自定义)向apiserver通过NodeName 获取自身Node上所要运行的pod清单.通过与自己的内部缓存进行比较,新增加pod 8、kubelet创建pod。 9、kube-proxy为新创建的pod注册动态DNS到CoreOS。给pod的service添加iptables/ipvs规则,用于服务发现和负载均衡。 10、controller通过control loop(控制循环)将当前pod状态与用户所期望的状态做对比,如果当前状态与用户期望状态不同,则controller会将pod修改为用户期望状态,实在不行会将此pod删掉,然后重新创建pod。本章主要是针对k8s的工作流程的一个总结,理解的时候可能比较吃力,不过没关系,可以跳过去,后面再将单个细节的时候再回忆一下这里你会豁然开朗,这里不要求会背,需要对对所有组件有一个深刻印象。
评论 0