k8s各类控制器详解

一、控制器定义

控制器也是管理pod的一种手段

  • 自主式pod:pod退出或意外关闭后不会被重新创建

  • 控制器管理的 Pod:在控制器的生命周期里,始终要维持 Pod 的副本数目

Pod控制器是管理pod的中间层,使用Pod控制器之后,只需要告诉Pod控制器,想要多少个什么样的Pod就可以了,它会创建出满足条件的Pod并确保每一个Pod资源处于用户期望的目标状态。如果Pod资源在运行中出现故障,它会基于指定策略重新编排Pod

当建立控制器后,会把期望值写入etcd,k8s中的apiserver检索etcd中我们保存的期望状态,并对比pod的当前状态,如果出现差异代码自驱动立即恢复

二、控制器常用类型  

三 replicaset控制器

3.1 replicaset功能

  • ReplicaSet 是下一代的 Replication Controller,官方推荐使用ReplicaSet

  • ReplicaSet和Replication Controller的唯一区别是选择器的支持,ReplicaSet支持新的基于集合的选择器需求

  • ReplicaSet 确保任何时间都有指定数量的 Pod 副本在运行

  • 虽然 ReplicaSets 可以独立使用,但今天它主要被Deployments 用作协调 Pod 创建、删除和更新的机制

3.2 replicaset参数说明

3.3 replicaset 示例

[root@k8s-master pod]# kubectl create deployment timinglee --image myapp:v1 --replicas 2 --dry-run=client -o yaml > timinglee.yml
[root@k8s-master pod]# ls
lee.yml  timinglee.yml
[root@k8s-master pod]# vim timinglee.yml

replicaset 示例

[root@k8s-master pod]# ls
lee.yml  timinglee.yml
[root@k8s-master pod]# vim timinglee.yml

#replicaset是通过标签匹配pod

[root@k8s-master pod]# kubectl label pods example-rep-9lbts app=lee --overwrite        
pod/example-rep-9lbts labeled
[root@k8s-master pod]# kubectl get pods --show-labels
NAME                READY   STATUS    RESTARTS   AGE     LABELS
example-rep-22qx8   1/1     Running   0          4s      app=timinglee
example-rep-9lbts   1/1     Running   0          5m22s   app=lee
example-rep-dvjhp   1/1     Running   0          5m22s   app=timinglee

#恢复标签后

[root@k8s-master pod]# kubectl label pods example-rep-9lbts app=timinglee --overwrite
pod/example-rep-9lbts labeled
[root@k8s-master pod]# kubectl get pods --show-labels
NAME                READY   STATUS    RESTARTS   AGE     LABELS
example-rep-9lbts   1/1     Running   0          6m46s   app=timinglee
example-rep-dvjhp   1/1     Running   0          6m46s   app=timinglee

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

보고.싶다

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值