Kubernetes权威指南

1.4kubernetes基本概念和术语(2)-- Label、

2020-03-16  本文已影响0人  ZYvette

欢迎各位读者评论留言,共同学习,共同进步。
《kubernetes权威指南》笔记
上一节见1.4kubernetes基本概念和术语(1)

4.Label

具体使用,参考k8s 官网: Labels and Selectors

\color{red}{具体做法呢? TODO}
例子1:很好理解,在RC配置中即可实现。

图片举例

上图讲解的是使用selector,选择的则是画圈的两个Pod.

5.Replication Controller

支持Pod自动扩缩,实现集群高可用,版本滚动升级。

RC结构基本分三部分,如下图:


RC 结构

作用:◎ 在大多数情况下,我们通过定义一个RC实现Pod的创建及副本数量的自动控制。
◎ 在RC里包括完整的Pod定义模板。
◎ RC通过Label Selector机制实现对Pod副本的自动控制。

◎ 通过改变RC里的Pod副本数量,可以实现Pod的扩容或缩容。

1). 扩容:通过修改RC的副本数量,来实现Pod的动态缩放:

$ kubectl scale rc redis-slave --replicas=3

2).删除: 删除RC并不会影响通过该RC已创建好的Pod。为了删除所有Pod,可以设置replicas的值为0,然后更新该RC。另外,kubectl提供了stop和delete命令来一次性删除RC和RC控制的全部Pod。

◎ 通过改变RC里Pod模板中的镜像版本,可以实现Pod的滚动升级。

滚动升级:应用升级时,通常会使用一个新的容器镜像版本替代旧版本。通过RC机制,Kubernetes很容易就实现了这种高级实用的特性。

比如我们设置新旧的label相同,但是RC中设置的template是最新的版本,那么在默认集群节点个数固定情况,每去掉一个都会动态创新一个新版本,知道都是新的版本为止。

与replica Set对比
1). Replica Sets支持基于集合的Label selector(Set-based selector),而RC只支持基于等式的Label Selector(equality-based selector),这使得Replica Set的功能更强。
2). 主要被Deployment这个更高层的资源对象所使用,从而形成一整套Pod创建、删除、更新的编排机制。我们在使用Deployment时,无须关心它是如何创建和维护Replica Set的,这一切都是自动发生的。
3). Replica Set与Deployment,是Kubernetes 1.3里Pod自动扩容(伸缩)这个告警功能实现的基础,也将继续在Kubernetes未来的版本中发挥重要的作用。

上一篇 下一篇

猜你喜欢

热点阅读