#yyds干货盘点#k8s集群中的控制器
Posted 极客开发者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点#k8s集群中的控制器相关的知识,希望对你有一定的参考价值。
本节目标
- 了解Controller
- 了解Controller分类
- 了解Deployment控制器作用
- 掌握创建Deloypment控制器型应用方法
- 掌握删除Deployment控制器型应用方法
一、相关概念
1. 介绍
- Controller是k8s集群中的控制器组件
- 用于对应用运行的资源对象进行监控
- 当Pod出现问题时,会把Pod重新拉起,以达到用户期望的状态
2. 分类
常见的Pod控制器分类
Deployment:声明式更新控制器,用于发布无状态应用
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
以上是关于#yyds干货盘点#k8s集群中的控制器的主要内容,如果未能解决你的问题,请参考以下文章