• 在k8s中部署第一个应用


    在k8s中部署第一个应用

    1.编写应用配置文件

    nginx-deployment.yaml

    apiVersion: apps/v1
    kind: Deployment
    metadata:
            name: nginx-deployment
    spec:
            selector:
                    matchLabels:
                            app: nginx
            replicas: 2
            template:
                    metadata:
                            labels:
                                    app: nginx
                    spec:
                            containers:
                            - name: nginx
                              image: nginx:1.8
                              ports:
                              - containerPort: 80
                              volumeMounts:
                              - mountPath: "/usr/share/nginx/html"
                                name: nginx-vol
                            volumes:
                            - name: nginx-vol
                              emptyDir: {}
    

    这样一个yaml文件对应到k8s中就是一个API对象,这个API对象的类型是Deployment。Deployment是一个定义多副本应用(多个副本Pod)的对象,此外Deployment还负责在Pod定义发生变化时对每个副本进行滚动更新。在此例中Deployment扮演Pod的控制器角色。Deployment会把所有正在运行,携带spec.selector.matchLabels字段的值的Pod识别为其要管理的对象。spec.selector.matchLabels一般称为 Label Selector。

    template是用来定义Pod的模板,此例中Pod中只有一个容器nginx:1.8,Pod是k8s世界里的"应用运行单元",而一个应用运行单元可以由多个Pod组成。

    2.创建API对象

    sudo kubectl create -f nginx-deployment.yaml
    

    查看Pod状态:

    kubectl get pods -l app=nginx
    

    查看Pod 详情:

    kubectl describe pod nginx-deployment-9754ccbdf-6tcqd
    

    3.修改Api对象配置文件并应用

    修改过后执行如下命令:

    sudo kubectl apply -f nginx-deployment.yaml
    

    4.删除Api对象

    kubectl delete -f nginx-deployment.yaml
    
  • 相关阅读:
    ajax 笔记--调用WebService实现求两数之和
    多数据之间的连接操作集中几个.NET常用的方法(不完整)
    判断用户是否存在(通过参数来实现)
    我的机子放到公司了
    给同事过生日,我弄菜,给同事买饭,我值班。
    多数据之间的连接操作MSSQL(不完整)
    TreeView连接数据
    字符编码
    计算机基础
    python入门
  • 原文地址:https://www.cnblogs.com/yanshaoshuai/p/15814816.html
Copyright © 2020-2023  润新知