k8s-kubectl命令-三种资源管理方式、使用场景

介绍

通过 kubectl 命令对资源进行管理,分三种方式:

  • 命令式对象管理:直接使用命令去操作kubernetes资源,部署nginx 服务就用的这种方式

    kubectl run nginx-pod --image=nginx:1.17.1 --port=80
    
  • 命令式对象配置:通过命令配置和配置文件去操作kubernetes资源

    kubectl create/patch -f nginx-pod.yaml
    
  • 声明式对象配置:通过apply命令和配置文件去操作kubernetes资源

    kubectl apply -f nginx-pod.yaml
    

    没有资源就创建,有资源就更新
    安装 kube-flannel 就用的这种方式

三种方式比较

类型 操作对象 适用环境 优点 缺点
命令式对象管理 对象 测试 简单 只能操作活动对象,无法审计、跟踪
命令式对象配置 文件 开发 可以审计、跟踪 项目大时,配置文件多,操作麻烦
声明式对象配置 目录 开发 支持目录操作 意外情况下难以调试

三种方式使用场景

创建/更新资源 使用声明式对象配置:

kubectl apply -f XXX.yaml

删除资源 使用命令式对象配置:

kubectl delete -f XXX.yaml

查询资源 使用命令式对象管理

kubectl get(describe) 资源名称

原文出处:/show_1IX6KAQi1b5P.html