前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Kubernetes的一些组件概念

Kubernetes的一些组件概念

作者头像
院长技术
发布2021-02-19 14:20:24
发布2021-02-19 14:20:24
3640
举报
文章被收录于专栏:院长运维开发院长运维开发

Kubectl:客户端命令行工具,作为整个系统的操作入口。 kube-apiserver:以REST API服务形式提供接口,作为整个系统的控制入口。 kube-controller-manager:控制器管理器,用来检测控制器健康状态,检查pod的健康状态,比如故障检测,自动扩展,滚动更新,包括节点状态状况、Pod个数、Pods和Service的关联等。 kube-scheduler:负责节点资源管理,接收来自kube-apiserver创建Pods任务,并分配到某个节点。 etcd:是一个key/value形式的键值存储,保存整个k8s集群状态,在k8s中使用etcd时,需要对etcd做备份,保证高可用,整个k8s系统中一共有两个服务需要 用到etcd用来协同和存储配置 分别是: 1.网络插件calico,对于其他网络插件也需要用到etcd存储网络的配置信息 2.k8s本身,包括各种对象的状态和元信息配置 注意:网络插件操作etcd使用的是v2的API,而k8s操作etcd使用的v3的API,所以在下面我们执行etcdctl的时候需要设置ETCDCTL_API环境变量,该变量默认值为2,表示使用v2版本的etcd api,v3表示使用v3的版本etcd api kube-proxy:运行在每个计算节点上,负责Pod网络代理。定时从etcd获取到service信息来做相应的策略。 Kubelet:运行在每个计算节点上,作为agent,接收分配该节点的Pods任务及管理容器,周期性获取容器状态,反馈给kube-apiserver。 Fluentd:主要负责日志收集、存储与查询。 Calico:是一个纯三层的网络插件,calico的bgp模式类似flannel的host-gw,calico在kubernetes中可提供网络功能和网络策略 三种网络模式: Flannel 常见采取 UDP Overlay 方案,VxLAN 性能比 TUN 强一点,一个是内核态一个是用户态 Calico 是一个纯三层的方案,不需要 Overlay,基于 Etcd 维护网络准确性,也基于 Iptables 增加了策略配置 Cilium 就厉害了,基于 eBPF 和 XDP 的方案,eBPF/XDP 处理数据包的速度可以和 DPDK 媲美,零拷贝直接内核态处理,缺点就是用户不太容易进行配置,而 cilium 解决了这个问题,毕竟 yaml 开发工程师都会写 yaml。。。可以支持 L3/L4/L7 的策略 Coredns:k8s1.11之前使用的是kube dns,1.11之后才有coredns是一个DNS服务器,能够为kubernetes services提供DNS记录

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-01-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档