Kubernetes介绍
2022-07-06 16:02:28 0 举报
AI智能生成
Kubernetes简单介绍,Kubernetes是一个可以移植,可扩展的开源平台,使用声明式的配置并依据配置信息自动地执行容器化应用程序的管理,在所有的容器编排工具中,Kubernetes的生态系统更大,增长更快,有更多的支持,服务和工具可供用户选择。
作者其他创作
大纲/内容
容器化优势
敏捷地创建和部署应用程序
持续构建集成
分离开发和运维的关注点
可监控性
开发,测试,生产不同阶段的环境一致性
跨云服务商,跨操作系统发行版的可移植性
以应用程序为中心的管理
松耦合,分布式,弹性,无约束的微服务
资源隔离
资源利用
Kubernetes功能
服务发现和负载均衡
存储编排
Kubernetes可以自动挂载指定的存储系统,例如local storage/nfs云存储等
自动发布和回滚
自愈
重启已经停机的容器
替换,kill掉那些不满足自定义健康检查条件的容器
在容器就绪之前,避免调用者发现该容器
密钥和配置管理
Kubernetes组件
Master组件
kube-apiserver
提供Kubernetes API
Kubernetes控制平台的前端
可以水平扩展
etcd
一致性和高可用的键值对存储组件
Kubernetes集群所有配置信息都存储在etcd
确保备份了etcd数据
kube-scheduler
监听所有新创建同时尚未分配到节点的Pod,并且自动为Pod选择一个合适节点运行
影响调度的因素
单个或多个Pod的资源需求
硬件,软件,策略的限制
亲和性与反亲和性(affinity and anti-affinity)的约定
数据本地化要求
工作负载间的相互作用
kube-controller-manager
cloud-controller-manager
节点控制器
当某一个节点停止响应时,调用云供应商的接口,以检查该节点的虚拟机是否已经被云供应商删除
路由控制器
在云供应商的基础设施中设定网络路由
服务控制器
创建,更新,删除云供应商提供的负载均衡
Node组件
kubelet
运行在集群每一个节点上的代理程序,确保Pod中的容器处于运行状态
通过多种途径获得PodSpec定义,并确保PodSpec定义中所描述的容器处于运行和健康的状态
kubelet不管理不是通过Kubernetes创建的容器
kube-proxy
网络代理程序,运行在集群中每一个节点上,是实现Kubernetes Service概念的重要部分
在节点上维护网络规则,这些网络规则可以在集群内,集群外正确地与Pod进行网络通信
代理模式
iptables代理模式
ipvs代理模式
User space代理模式
容器引擎
负责运行容器
支持多种容器引擎
Docker
containerd
cri-o
rktlet
任何实现了CRI的容器引擎
Addons组件
DNS
所有Kubernetes集群都必须有cluster DNS
对已有环境中其他DNS服务器的一个补充
Web UI(Dashboard)
收藏
收藏
0 条评论
下一页