美文网首页
k8s-实战入门-Deployment(八)

k8s-实战入门-Deployment(八)

作者: 漫长的白日梦技术大佬 | 来源:发表于2022-10-16 00:06 被阅读0次

    Deployment

    在kubernetes中,Pod是最小的控制单元,但是kubernetes很少直接控制Pod,一般都是通过Pod控制器来完成的。Pod控制器用于pod的管理,确保pod资源符合预期的状态,当pod的资源出现故障时,会尝试进行重启或重建pod。
    pod与deployment建立联系是通过label实现的。在kubernetes中Pod控制器的种类有很多,本章节只介绍一种:Deployment。

    **命令操作**
    # 命令格式: kubectl run deployment名称  [参数]
    # --image  指定pod的镜像
    # --port   指定端口
    # --replicas  指定创建pod数量
    # --namespace  指定namespace
    [root@master~]# kubectl run nginx --image=nginx:1.17.1 --port=80 --replicas=3 -n dev
    
    # 查看创建的Pod
    [root@master~]# kubectl get pods -n dev
    # 查看deployment的信息
    [root@master~]# kubectl get deployment,pods -n dev
    
    # 查看deployment的详细信息
    [root@master~]# kubectl describe deploy nginx -n dev
    
    # 删除
    [root@master~]# kubectl delete deploy nginx -n dev
    

    配置操作

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

    vim 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
    

    然后就可以执行对应的创建和删除命令了:

        创建:
    kubectl  create  -f  deploy-nginx.yaml
        删除:
    kubectl  delete  -f  deploy-nginx.yaml
    

    相关文章

      网友评论

          本文标题:k8s-实战入门-Deployment(八)

          本文链接:https://www.haomeiwen.com/subject/drgtzrtx.html