当前位置:首页 > Web开发 > 正文

其通常包含三个组件:Container Runtime

2024-03-31 Web开发

标签:

1. kubernetes简介 1.1 kubernetes介绍

Kubernetes是google开源的一套微处事,容器化的编排引擎,是google内部容器十多年实战沉淀的结晶,已战胜Swarm,Messo成为容器编排的行业标准。kuberntes内置有很多非常优秀的特性使开发者专注于业务自己,其包罗的成果如下:

Service discovery and load balancing,处事发明和负载均衡,通过DNS实现内部解析,service实现负载均衡

Storage orchestration,存储编排,通过plungin的形式撑持多种存储,如本地,nfs,ceph,公有云快存储等

Automated rollouts and rollbacks,自动颁布与回滚,通过匹配当前状态与方针状态一致,更新掉败时可回滚

Automatic bin packing,自动资源调理,可以设置pod调理的所需(requests)资源和限制资源(limits)

Self-healing,内置的健康查抄计谋,自动发明和措置惩罚惩罚集群内的异常,,改换,需重启的pod节点

Secret and configuration management,密钥和配置打点,对付敏感信息如暗码,账号的阿谁通过secret存储,应用的配置文件通过configmap存储,制止将配置文件固定在镜像中,增加容器编排的灵活性

Batch execution,批措置惩罚惩罚执行,通过job和cronjob供给单次批措置惩罚惩罚任务和循环打算任务成果的实现

Horizontal scaling,横向扩展成果,包罗有HPA和AS,即应用的基于CPU操作率的弹性伸缩和基于平台级的弹性伸缩,如自动增加node和删除nodes节点。

1.2 kubernetes架构

kubernetes包罗两种角色:master节点和node节点,master节点是集群的控制打点节点,作为整个k8s集群的大脑。

卖力集群所有接入请求(kube-apiserver),在整个集群的入口;

集群资源调理(kube-controller-scheduler),通过watch监视pod的创建,卖力将pod调理到合适的node节点;

集群状态的一致性(kube-controller-manager),通过多种控制器确保集群的一致性,包罗有Node Controller,Replication Controller,Endpoints Controller等;

元数据信息存储(etcd),数据长期存储化,存储集群中包孕node,pod,rc,service等数据;

凡是由3或5个节点构成高可用集群,此中etcd内置的集群构成,kube-apiserver由haproxy或nginx做负载分发,kube-scheduler和kube-controller-manager内置的选举机制保障,确保集群内同一个时刻只有一个leader节点,其他处于梗阻状态,防备脑裂。

node节点是实际的事情节点,卖力集群负载的实际运行,即pod运行的载体,其凡是包罗三个组件:Container Runtime,kubelet和kube-proxy

Container Runtime是容器运行时,卖力实现container生命周期打点,如docker,containerd,rktlet;

kubelet卖力镜像和pod的打点,

kube-proxy是service处事实现的抽暇,卖力维护和转发pod的路由,实现集群内部和外部网络的访谒。

其他组件还包孕

cloud-controller-manager,用于公有云的接入实现,供给节点打点(node),路由打点,处事打点(LoadBalancer和Ingress),存储打点(Volume,如云盘,NAS接入),需要由公有云厂商实现具体的细节,kubernetes供给实现接口的接入,如腾讯云目前供给CVM的node打点,节点的弹性伸缩(AS),负载均衡的接入(CLB),存储的打点(CBS和CFS)等产品的集成;

DNS组件由kube-dns或coredns实现集群内的名称解析;

kubernetes-dashboard用于图形界面打点;

kubectl命令行工具进行API交互;

监控系统用于收罗node和pod的监控数据,如prometheus,heapster+influxdb+grafana;

日志收罗系统,用于收集容器的业务数据,实现日志的收罗,存储和展示,实现有Fluentd+ELK(ElasticSearch+Logstash+Kiabana)。

1.3 参考文档

kubernetes成果介绍,https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/

kubernetes组件介绍https://kubernetes.io/docs/concepts/overview/components/

?

返回kubernetes系列教程目录

**如果感受文章对您有辅佐,请订阅专栏,分享给有需要的伴侣吧

kubernetes系列教程(一)初探kubernetes成果与组件

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/31517.html