#yyds干货盘点#k8s集群中的控制器

网友投稿 283 2022-09-12

#yyds干货盘点#k8s集群中的控制器

当我们删除Pod时是可以直接删除的,如果生产过程中误操作,Pod同样也会被轻易删除,因此我们需要在k8s集群中引入另一种概念(控制器),用于在k8s 集群中以loop方式监视Pod状态,如果发现Pod被删除,将重新拉起一个Pod,以让Pod一直保持在用户期望状态

本节目标

了解Controller 了解Controller分类 了解Deployment控制器作用 掌握创建Deloypment控制器型应用方法 掌握删除Deployment控制器型应用方法

一、相关概念

1. 介绍

Controller是k8s集群中的控制器组件 用于对应用运行的资源对象进行监控 当Pod出现问题时,会把Pod重新拉起,以达到用户期望的状态

2. 分类

ReplicaSet:副本集控制器,用于对Pod进行副本规模扩大或剪裁

StatefulSet:有状态副本集,用于发布有状态应用

DaemonSet:在k8s集群每一个Node上运行一个副本,用于发布监控或日志收集类等应用

Job:运行一次性作业任务

CronJob:运行周期性作业任务

二、相关命令

1. 创建

新版本已经启用命令创建,我们使用资源文件创建,新建03-create-deployment-nginx-app2.yaml文件,写入如下内容:

apiVersion: apps/v1 kind: Deployment metadata: name: nginx-apps labels: app: nginx spec: replicas: 1 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginxapp image: nginx:latest imagePullPolicy: IfNotPresent ports: - containerPort: 80

使用以下命令进行创建

kubectl apply -f 03-create-deployment-nginx-app2.yaml

2. 查看

查看创建的deployment

kubectl get deployment.apps

或者查看replicas

kubectl get rs

或通过查看pod详情

kubectl get pods -o wide

3. 删除

查看运行的deployment控制器类型的应用

kubectl get deployment.apps

通过命令删除deployment控制器类型的应用

kubectl delete deployment.apps nginx-app2

通过资源清单删除,在二中创建的应用,可以使用以下命令删除

kubectl delete -f 03-create-deployment-nginx-app2.yaml

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Api接口是什么意思?怎么编写一个合理严谨的接口?(API接口知识小结)
下一篇:如何调用api接口?api接口怎么对接?(教你使用api接口调取数据)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~