1>. 命令式对象管理∶直接使用命令去操作kubernetes资源
讯享网
2>. 命令式对象配置∶通过命令配置和配置文件去操作kubernetes资源
讯享网
3>. 声明式对象配置∶通过apply命令和配置文件去操作kubemetes资源
kubectl命令:kubectl是kubernetes集群的命令行工具,通过它能够对集群本身进行管理,并能够在集群上进行容器化应用的安装部署。kubectl命令的语法如下∶
讯享网
我们以一个namespace / pod的创建和删除演示kubectl命令的使用:
1>. 创建一个nginxpod.yml,内容如下:
讯享网
注意:如果yaml文件中要操作namspace就可以使用以下命令来查看帮助:
注意:如果yaml文件中要操作pod就可以使用以下命令来查看帮助:
讯享网
2>. 指定create命令,创建资源:
总结:命令式对象配置的方式造作资源,可以简单地认为:命令+yaml配置文件(配置文件中是命令需要的各种参数)。
声明式对象配置跟命令式对象配置很相似,但是他只有一个命令叫apply 。
1.3.1 单个配置件
讯享网
总结:声明式对象配置就是使用apply描述一个资源最终的状态(在yaml中定义状态)使用apply操作资源

- 如果资源不存在,就,相当于kubectl create
- 如果资源已存在,就,相当于kubectl patch
1.3.2 多个配置文件或目录
如果我们想应用某个目录下的所有配置文件,可以使用kubectl apply命令并指定该目录的路径。以下是一个应用目录的示例:
1.3.3 kubectl apply的优势
1.3.3.1 通过diff方式进行更新
使用kubectl apply命令更新现有资源对象时,它会对新的配置文件和现有的资源对象进行比较,并根据差异更新资源对象。这意味着kubectl apply可以实现部分更新,并且只会更新需要更新的字段,而不会重置资源对象的其他配置。
如果命令 创建的pod已存在,则报错:
讯享网
此外,支持部分修改,是相对于 来说的, 不支持部分修改,参见 【k8s】kubectl replace命令。
1.3.3.2支持批量操作
使用命令可以同时应用多个配置文件,并创建多个资源对象。这使得kubectl apply非常适合批量操作资源对象。
命令也允许目录形式,即同时应用多个文件!
1.3.3.3 支持灰度发布
命令可以部分更新资源对象的配置,这意味着它非常适合进行灰度发布。例如,我们可以通过部分更新一个对象的配置来实现灰度发布,这样我们就可以逐步将新版本的应用程序推向生产环境。
如果create命令 带入2个文件作为入参,则报错:
- 创建/更新资源:使用声明式对象配置 kubectl apply -f xxx.yaml。
- 删除资源:使用命令式对象配置 kubectl delete -f xxx.yaml。
- 查询资源:使用命令式对象管理 kubectl get(describe) 资源名称
k8s-资源管理

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/154259.html