K8S的基本概念

K8S能做什么

K8S全称:kubernetes
它是一个集群容器编排工具,是基于Docker的。

k8s的职责:

  • 自动化容器的部署和复制
  • 随时扩展和收缩容器的规模
  • 容器分组Group,并且提供荣期间的负载均衡
  • 实时监控,即使故障发现,自动替换。

K8S的基本概念

在这里插入图片描述

首先上图是一个完整的K8S集群,集群内包含了三台宿主机(上图中每一个方块都是一个物理的宿主机),这三台服务器中又分为两种角色,分别为 master 和 node 。

k8s master:
主服务器(图中紫色的方块),整个集群的管理者,对整个集群的节点进行管理,通过主服务器向集体的节点发送 创建容器、自动部署等职能,所有来自于外侧的数据包都会由 k8s master来进行接收并分配。在一般情况下,master是一个独立的物理机。

node:
节点(图中黄色的方块),这些节点可以是独立的物理机,也可以是一个一个虚拟机。

Pod:
在每个节点中,都会涉及到一个非常重要k8s独有的概念(图中绿色方框代表的 Pod),Pod是k8s中最重要最基础的概念,它是k8s整个控制的最小单元。
pod在英文中有“豆荚(豆角)”的意思,一个外皮中包含了很多的豆子,相应的在k8s中一个Pod中可以包含多个容器,Pod相当于豆角,每个容器就像豆角中的豆子。
pod是k8s最小可部署单元,一个pod就是一个进程。
每个pod内部,每一个容器网络天然的互联互通,每个一个Pod都拥有一个虚拟IP,这个虚拟IP由k8s来统一管理。虽然每个Pod都有自己独立的虚拟IP,但是Pod和Pod之间是无法天然是无法直接交流的,如果要进行通信的话,必须要使用另外一个组件service。

service
service是服务的意思,再k8s中service的主要只能就是将多个不同主机上的pod通过service进行连通,使pod和pod之间也能够正常的通信。

在这里插入图片描述

pause
那么又有新问题,pod到底是什么?里面装什么?里面虽然都是容器,在项目中怎么用呢? 这个需要根据实际中的使用场景,根据项目设计的不同,分割的力度也不一样。

  1. 很多小公司,一个pod就是一个完整的应用,其中包含tomcat、mysql。一个pod就是一个完整的应用,多个pod部署后就是一个集群。
  2. 一个pod只部署一个容器,比如一个pod里面之部署一个tomcat。到底使用哪种方案是根据项目的特性和资源的多寡来决定的。
    谷歌官方只给了pod的设计,至于怎么用,是非常灵活的。

再pod中有一个特殊的容器 “ pause ”, pause对pod来说是必备的,并且是最基础的一个容器,它有两个只能:

  1. 它提供了一个共享的网络空间,在网络层次上共享命名空间,比如一个pod内多个容器间通信访问,直接使用localhost+端口 就可以访问了。
  2. 对当前pod提供一个共享的volume(共享数据卷),数据被pause统一的管理,进而方便了整个k8s的集群管理

label
lacel是一个说明性的标签,在后期应用中有很重要的作用,在进行部署的在哪些pod上进行操作,都需要根据label来进行查找和筛选,label就相当于每一个pod的别名,只有给pod起了名字,k8s的主节点才能找到对应的pod来进行相应的操作。

Replication Controller
Replication Controller是复制控制器,它存在于master节点上,职责是监控pod的数量,如果应用集群的数量是三个,其中一个挂掉了,Replication Controller会把挂掉的服务剔除并且重新创建。
同时还可以方便的增加或减少pod的数量,只需要修改参数 数量 即可,这一切无需人工干预。

技术实现

所有的node中,都需要安装三个组件,docker、kubelet、kube-proxy,在K8S安装好的时候kubelet、kube-proxy就天然存在,其中kubelet用于执行相应K8S的命令。而service实现pod之间互相通信其实是kube-proxy进行实现的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值