Kubernetes----Kubernetes中通过指令式对象配置的方式管理对象
  TEZNKK3IfmPf 2023年11月14日 21 0

一、创建对象

编写deployment.yaml文件,内容如下:

apiVersion: v1
kind: Namespace
metadata:
  name: dev
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
  namespace: dev
spec:
  replicas: 1
  selector:
    matchLabels:
      run: nginx
  template:
    metadata:
      labels:
        run: nginx
    spec:
      containers:
      - image: nginx:1.17.1
        name: nginx
        ports:
        - containerPort: 80
          protocol: TCP

然后使用如下命令创建对象

[root@master object_manage]# kubectl create -f deployment.yaml
namespace/dev created
deployment.apps/nginx created
[root@master object_manage]#

二、查看对象

使用如下命令可查看创建的对象

[root@master object_manage]# kubectl get -f deployment.yaml
NAME            STATUS   AGE
namespace/dev   Active   98s

NAME                    READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/nginx   1/1     1            1           98s
[root@master object_manage]#

三、更新对象

编辑deployment.yaml文件,修改副本数为3,设置nginx镜像的tag为1.17.3,如下:

apiVersion: v1
kind: Namespace
metadata:
  name: dev
---
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.3
        name: nginx
        ports:
        - containerPort: 80
          protocol: TCP

然后使用如下命令额更新

[root@master object_manage]# kubectl replace -f deployment.yaml
namespace/dev replaced
deployment.apps/nginx replaced
[root@master object_manage]#

此时使用如下命令查看,可以发现pod数量已经更新为3个,此外nginx的镜像的tag也更新为1.17.3

[root@master object_manage]# kubectl get -f deployment.yaml -o wide
NAME            STATUS   AGE
namespace/dev   Active   5m52s

NAME                    READY   UP-TO-DATE   AVAILABLE   AGE     CONTAINERS   IMAGES         SELECTOR
deployment.apps/nginx   3/3     3            3           5m52s   nginx        nginx:1.17.3   run=nginx
[root@master object_manage]#

四、删除对象

使用如下命令即可删除

[root@master object_manage]# kubectl delete -f deployment.yaml
namespace "dev" deleted
deployment.apps "nginx" deleted
[root@master object_manage]#
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月14日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月14日   29   0   0 kubernetes
TEZNKK3IfmPf