kubernetes学习之路(二)组件说明
首先说说集群的节点数量为什么多数采用3、5、7、9这样的结构,因为这样可以避免选举时票数一样造成的选举失败,如4节点两票两票。
kubernetes组件架构图:
master节点组件:
- kubectl:kubernetes的命令行操作组件
- web UI:web页面控制组件
- scheduler:调度器,负责控制任务分发到哪个node上运行
- replication controller:简称rc,副本控制器,负责控制副本的数量,如一个任务下pod的数量
- api server:核心组件,负责组件与组件之间的通信,是左右组件的统一入口
- etcd:分布式数据库,专门为集群而生,负责存储kubernetes中各种任务及状态的存储
node节点组件:
- node:运行任务,搭载着docker的节点
- kubelet:负责控制docker,对docker进行操作
- kube proxy:负责pod与pod之间的通信以及负载均衡,旧版本kube proxy主要通过防火墙实现通信,新版本支持ipvs
- container:就是docker容器
其它组件:
- COREDNS:为集群中的svc创建域名ip的对应关系解析
- DASHBOARD:可以提供给kubernetes一个 B/S 结构访问体系,就是web ui
- INGRESS CONTROLLER:官方只能实现四层代理,而INGRESS可以实现七层代理
- FEDERATION:提供一个可以跨集群中心的多K8S统一管理功能
- PROMETHEUS:k8s首选监控系统
- ELK:日志监控系统