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

并且定义后台Service的名称为backend-service

2024-03-31 Web开发

标签:

什么是Kubernetes?

Kubernetes(k8s)是自动化容器操纵的开源平台,这些操纵包孕部署,调理和节点集群间扩展。

如果你曾经用过Docker容器技术部署容器,那么可以将Docker当作Kubernetes内部使用的初级别组件。

Kubernetes不只仅撑持Docker,还撑持Rocket,这是另一种容器技术。


使用Kubernetes可以:

自动化容器的部署和复制

随时扩展或收缩容器规模

将容器组织成组,并且供给容器间的负载均衡

很容易地升级应用措施容器的新版本

供给容器弹性,如果容器掉效就替换它,等等...

cluster 

集群是一组节点,这些节点可以是物理处事器或者虚拟机,上面安置了Kubernetes平台。

一组 node 需要被集中打点,统一叫一个cluster。      

一个cluster有一个 master 和多个 node,每个 node 里面有一个kubelet用来从命master调理并打点 node自己。

技术图片

下图展示一个范例的Kubernetes架构图。

使用特另外图标暗示Service和Label:

Pod

Container(容器)

Label(

技术图片

)(标签)

Replication Controller(复制控制器)

Service(

技术图片

)(处事)

Node(节点)

Kubernetes Master(Kubernetes主节点)

技术图片

Replication Controller

手动创建Pod,如果想要创建同一个容器的多份拷贝,需要一个个分袂创建出来么,能否将Pods划到逻辑组里?

       Replication Controller 确保任意时间都有指定数量的 Pod“副本”在运行。如果为某个 Pod 创建了 Replication Controller 并且指定 3 个副本,它会创建3个Pod,并且连续监控它们。

如果某个Pod不响应,那么Replication Controller会替换它,连结总数为3.如下面的动画所示:

技术图片


       如果之前不响应的Pod恢复了,此刻就有4个Pod了,那么Replication Controller会将此中一个终止连结总数为3。

如果在运行中将副本总数改为5,Replication Controller会立刻启动2个新Pod,保证总数为5。

还可以凭据这样的方法缩小Pod,这个特性在执行滚动升级时很有用。

当创建Replication Controller时,需要指定两个对象:

Pod模板:用来创建Pod副本的模板

Label:Replication Controller需要监控的Pod的标签。


此刻已经创建了Pod的一些副本,那么在这些副本上如何均衡负载呢?

我们需要的是Service。

service 


       如果Pods是短暂的,那么重启时IP地点可能会转变,怎么才华畴前端容器正确可靠地指向后台容器呢?

      Service是界说一系列Pod以及访谒这些Pod的计谋的一层抽象。Service通过Label找到Pod组。因为Service是抽象的,所以在图内外凡是看不到它们的存在,,这也就让这一观点更难以理解。

       此刻,假定有2个后台Pod,并且界说后台Service的名称为‘backend-service’,lable选择器为(tier=backend, app=myapp)。backend-service 的Service会完成如下两件重要的工作:

会为Service创建一个本地集群的DNS入口,因此前端Pod只需要DNS查找主机名为 ‘backend-service’,就能够解析出前端应用措施可用的IP地点。

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