K8S Learning(7)—— Deployment

一、Deployment简介

在kubernetes中,Pod是最小的控制单元,但是kubernetes很少直接控制Pod,一般都是通过Pod控制器来完成的。Pod控制器用于pod的管理,确保pod资源符合预期的状态,当pod的资源出现故障时,会尝试进行重启或重建pod。

在kubernetes中Pod控制器的种类有很多,如:Deployment、ReplicaSet、DaemonSet、Job、CronJob。

二、Deployment操作

(1) 命令操作

# 命令格式: kubectl create deployment 名称  [参数] 
# --image  指定pod的镜像
# --port   指定端口
# --replicas  指定创建pod数量
# --namespace  指定namespace
kubectl run tomcat-deploy --image=tomcat:latest --port=8080 --replicas=3 -n mk
​
kubectl get deploy -n dev

​
# UP-TO-DATE:成功升级的副本数量
# AVAILABLE:可用副本的数量
kubectl get deploy -n dev -o wide

# 查看deployment的详细信息
kubectl describe deploy tomcat-deploy -n mk

  
# 删除 
kubectl delete deploy tomcat-deploy -n mk

(2)配置操作

创建一个tomcat-deploy.yaml,内容如下:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: tomcat-deploy
  namespace: mk
spec:
  replicas: 3
  selector:
    matchLabels:
      name: tomcat
  template:
    metadata:
      labels:
        name: tomcat
    spec:
      containers:
      - image: tomcat:latest
        name: tomcat-container
        ports:
        - containerPort: 8080
          protocol: TCP

然后执行对应的创建和删除命令:

创建:kubectl create -f tomcat-deploy.yaml

删除:kubectl delete -f tomcat-deploy.yaml

posted @ 2022-01-31 19:00  茅坤宝骏氹  阅读(6)  评论(0)    收藏  举报  来源