Kubernetes Deployment 介绍及使用

一、Deployment介绍

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

        在kubernetes中Pod控制器的种类有很多,这里介绍Deployment。 

Kubernetes Deployment 介绍及使用_第1张图片

 二、Deployment的操作

1.命令操作

#命令格式:kubectl run deployment名称 [参数]
#--image 指定pod的镜像
#--port 指定端口
#--replicas 指定创建pod数量
#--namespace 指定namespace

kubectl run nginx --image=nginx:1.17.1 --port=80 --replicas=3 -n dev

#查看创建的pod
kubectl get pods -n dev

#查看deployment的信息
kubectl get deploy -n dev

#UP-TO-DATE: 成功升级的副本数量
#AVAILABLE:可用副本数量
[root@master ~]# kubectl get deploy -n dev
NAME                    READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/nginx   3/3     3            3           2m32s

#查看deployment详细信息
kubectl describe deploy nginx -n dev

#删除deploy
kubectl delete deploy nginx -n dev

Kubernetes Deployment 介绍及使用_第2张图片

 2.配置操作

#编辑deploy-nginx.yaml文件,内容如下
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
  namespace: dev
spec:
  replicas: 3
  selector:
    matchLabels:
      run: nginx
  template:
    metadata:
      labels:
        run: nginx
    spec:
      containers:
      - image: nginx:1.17.1
        name: nginx
        ports:
        - containerPort: 80
          protocol: TCP
#创建deployment
kubectl create -f deploy-nginx.yaml
#删除deployment
kubectl delete -f deploy-nginx.yaml

Kubernetes Deployment 介绍及使用_第3张图片

好了,deploy简单使用就介绍完了,学会了吗?

 

你可能感兴趣的:(k8s,kubernetes)