kubernetes简介
kubernetes,简称K8s,是用8代替8个字符“ubernete”而成的缩写。是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。
Kubelet是Kubernetes中最主要的控制器,它是Pod和Node API的主要实现者,Kubelet负责驱动容器执行层。在Kubernetes中,应用容器彼此是隔离的,并且与运行其的主机也是隔离的,这是对应用进行独立解耦管理的关键点。
Controller Manager:负责管理集群的各种资源,保证资源处于预期的状态。它由多种Controller组成,包括Replication Controller、Endpoints Controller.
Namespace Controller、Serviceaccounts Controller等等。
Etcd:负责保存k8s集群的配置信息和各种资源的状态信息。当数据发生变化时,etcd会快速的通知k8s相关组件。第三方组件,它有可替换方案。Consul、 zookeeper
Pod: k8s集群的最小组成单位。一个Pod内,可以运行一个或多个容器。大多数情况下,一个Pod内只有一个Container容器。
Flanner:是k8s集群网路方案,可以保证Pod的跨主机通信。第三方解决方案,也有替换方案。
查看应用在哪个节点
[root@master ~]# kubectl get pod --all-namespaces
查看应用在哪个节点的详细信息
[root@master ~]# kubectl get pod --all-namespaces -o wide
Kubeler:他是Node的agent(代理),当Scheduler确定某个Node上运行Pod之后,会将Pod的具体配置信息发送给该节点的Kubelet,Kubeler会根据这些信息创建和运行容器,并向Master报告运行状态。
Kube-proxy:负责将访问service的TCP/UDP数据流转发到后端的容器。如果有多个副本,kube-proxy会实现负载均衡。
运行一个例子:三台都导入httpd镜像导成docker镜像
创建一个deployment资源对象。Pod控制器。
[root@master ~]# kubectl run test-web --image=httpd --replicas=2
查看节点:
[root@master ~]# kubectl get deployments.
简写:
[root@master ~]# kubectl get deploy
[root@master ~]# kubectl get pod
哪台dang掉重启kuelet:
[root@master ~]# systemctl restart kubelet
[root@master ~]# kubectl get pod -o wide
删除节点:
[root@master ~]# kubectl delete pod test-web-5b56bdff65-j6g75
还是两个:这就是控制器的原因
分析各个组件的作用以及架构工作流程:
1)kubectl发送部署请求到API server
2)API server 通知Controller Manager创建一个Deployment资源
3)Scheduler执行调度任务,将两个副本Pod分发到node01和node02上
4)node01和node02上的kubelet在各自节点上创建并运行Pod。
补充:
1.应用的配置和当前的状态信息保存在etcd中,执行kubectl get pod时API server会从etcd中读取这些数据。
2.flannel回味每个Pod分配一个IP。但此时没有创建Service资源,目前kube-proxy还没有参与进来。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章标题:kubernetes架构介绍-创新互联
标题链接:https://www.cdcxhl.com/article22/epecc.html
成都网站建设公司_创新互联,为您提供建站公司、网站排名、企业网站制作、标签优化、App设计、网站维护
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联