基本概念
<p><span style="font-size:18px"><strong>集群(Cluster)</strong></span></p>
<p>集群指容器运行所需要的云资源的组合,包含了若干服务器节点、负载均衡、专有网络等云资源。</p>
<p> </p>
<p><span style="font-size:18px"><strong>容器(Container)</strong></span></p>
<p>一个通过容器镜像创建的运行实例,一个节点可运行多个容器。容器中运行的就是一个或者多个应用程序,以及应用运行所需要的环境。</p>
<p> </p>
<p><span style="font-size:18px"><strong>节点(Node)</strong></span></p>
<p>每一个节点对应一台弹性云服务器ECS实例,容器应用运行在节点上。节点上运行着代理程序(kubelet),用于管理节点上运行的容器实例。</p>
<p> </p>
<p><span style="font-size:18px"><strong>镜像(Image)</strong></span></p>
<p>容器镜像是一个模板,它是容器应用打包的标准格式,容器镜像可以用于部署容器服务。平安云的容器服务镜像可以来自镜像仓库,也可以是用户创建的私有镜像。</p>
<p> </p>
<p><span style="font-size:18px"><strong>实例(Pod)</strong></span></p>
<p>实例是在Kubernetes集群中运行部署应用或服务的最小单元,可以支持多容器,这些容器共享同样的存储和网络资源。</p>
<p> </p>
<p><span style="font-size:18px"><strong>配置项(ConfigMap)</strong></span></p>
<p>配置项(ConfigMap)用于保存配置数据的键值对,可以用来保存单个属性,也可以用来保存配置文件。ConfigMap跟Secret很类似,但它可以更方便地处理不包含敏感信息的字符串。</p>
<p> </p>
<p><span style="font-size:18px"><strong>秘钥(Secret)</strong></span></p>
<p>Secret是Kubernetes中一种加密存储的资源对象,用户可以将认证信息、证书、私钥等保存在密钥中,在容器启动时以环境变量等方式加载到容器中。</p>
<p> </p>
<p><span style="font-size:18px"><strong>部署(Deployment)</strong></span></p>
<p>部署表示用户对 Kubernetes 集群的一次更新操作。</p>
<p> </p>
<p><span style="font-size:18px"><strong>服务(Service)</strong></span></p>
<p>服务也是Kubernetes 的基本操作单元,是真实应用服务的抽象,每一个服务后面都有很多对应的容器来提供支持,通过Kube-Proxy的port和服务selector决定服务请求传递给后端的容器,对外表现为一个单一访问接口,外部不需要了解后端如何运行,这给扩展或维护后端带来很大的好处。</p>
<p> </p>
<p><span style="font-size:18px"><strong>Ingress</strong></span></p>
<p>Ingress 是授权入站连接到达集群服务的规则集合,可以通过Ingress配置提供外部可访问的URL、负载均衡、SSL、基于名称的虚拟主机等。用户通过POST Ingress资源到API server的方式来请求Ingress。Ingress controller负责实现 Ingress,通常使用负载均衡器,它还可以配置边界路由和其他前端,这有助于以 HA 方式处理流量。</p>
<p> </p>
<p><span style="font-size:18px"><strong>命名空间</strong></span></p>
<p>命名空间是一种在多个用户之间划分资源的方法。当您的项目和人员众多的时候可以考虑根据项目属性,例如生产、测试、开发划分不同的命名空间。</p>
<p> </p>
<p><span style="font-size:18px"><strong>无状态应用(Deployment)</strong></span></p>
<p>无状态应用(Deployment)是面向集群的管理工具,它对应用做了一个简化设置,Deployment认为一个应用的所有的pod都是一样的,他们之间没有顺序,也无所谓在那台宿主机上。需要扩容或缩容时可以通过修改副本数进行滚动升级,不影响正在运行的业务。</p>
<p> </p>
<p><span style="font-size:18px"><strong>有状态应用(StatefulSet)</strong></span></p>
<p>有状态应用(StatefulSet)是管理有状态应用的,但是实际的场景中,并不是所有的应用都能做到没有顺序等这种状态,尤其是分布式应用,他们各个实例之间往往会有对应的关系,例如:主从、主备。还有数据存储类应用,它的多个实例,往往会在本地磁盘存一份数据,而这些实例一旦被杀掉,即使从建起来,实例与数据之间关系也会丢失,而这些实例有不对等的关系,实例与外部存储有依赖的关系的应用,被称作“有状态应用”。</p>
提交成功!非常感谢您的反馈,我们会继续努力做到更好!