k8s常用命令及示例(三):apply 、edit、delete

k8s常用命令及示例(三):apply 、edit、delete

1. kubectl apply -f 命令:从yaml文件中创建资源对象。

-f 参数为强制执行。kubectl apply和kubectl create的区别如下:kubectl create 和 kubectl apply 是 Kubernetes 中两个常用的命令,它们用于创建和更新资源。
kubectl create 用于创建一个新的资源,如果该资源已经存在,则会返回错误。
kubectl apply 用于创建或更新一个资源,如果该资源不存在,则会创建;如果该资源已存在,则会对其进行更新。
因此,如果想要创建一个新的资源,可以使用 kubectl create;如果想要更新已有的资源,可以使用 kubectl apply。
建议掌握kubectl apply -f 命令,了解kubectl create命令和kubectl apply的区别就行,平时操作c。

示例:使用kubectl create -f命令,如下资源已经存在,则报错

kubectl create -f helloworld.yaml

在这里插入图片描述
提示错误,要创建的资源已经存在
使用kubectl apply -f命令,

kubectl apply -f helloworld.yaml

在这里插入图片描述
执行成功,资源没有发送任何改变。

编辑 helloworld.yaml文件,更改version字段value为v2及对应的镜像名称

apiVersion: apps/v1
kind: Deployment
metadata:
  name: helloworld-v1
  labels:
    app: helloworld
    version: v2
spec:
  replicas: 1
  selector:
    matchLabels:
      app: helloworld
      version: v2
  template:
    metadata:
      labels:
        app: helloworld
        version: v2
    spec:
      containers:
      - name: helloworld
        image: docker.io/istio/examples-helloworld-v2
        resources:
          requests:
            cpu: "100m"
        imagePullPolicy: IfNotPresent #Always
        ports:
        - containerPort: 5000                             

kubectl create -f 命令依然会执行失败,kubectl apply -f命令则会更新其镜像

2. kubectl delete-f 命令:删除资源对象,例如Pod、Service、Deployment甚至是node等。

此命令比较危险,操作前务必谨慎,先确认后执行。

如果删除的是POD,删除后,k8s依然会自动再次创建。
如果是node资源,可能会导致整个k8s集群崩溃,比如只有一个master节点的集群,给master节点删除了。

示例:

kubectl delete -f helloworld.yaml

在这里插入图片描述

3. kubectl edit:编辑资源的配置信息,例如Pod、Service、Deployment等。

示例:

kubectl edit deploy helloworld-v1

和使用vi 打开yaml文件类似,改好以后,按esc键,输入 :wq保存,如果有改动,比如更换镜像,则会自动重新启动pod,可通过kubectl get pod -n default -w 实时查看pod的生命周期变动。

上一篇:k8s常用命令及示例(二):logs、describe

  • 29
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值