04|K8s的沟通语言YAML文件
王雪飞
你好,我是雪飞。
上一课我介绍了 K8s 的管理节点和工作节点上的组件,以及 K8s 丰富的资源对象,这些资源对象就像 K8s 给我们提供的工具包,满足了我们部署应用和管理集群的各种要求。有两种方式与这些资源对象打交道:一种是使用 kubectl 命令,另一种是使用 YAML 文件。它们分别对应着命令式与声明式这两种操作模式。
命令式与声明式
命令式操作就像是直接下达指令,比如告诉 K8s 创建或删除某个资源对象。这种方式很直接,但如果是多人同时操作或者频繁修改,就可能引发混乱,因为它不会记录所有的操作过程。
声明式操作则是向 K8s 说明对于某个资源对象你所期望达到的状态,使用 “kubectl apply” 命令让 K8s 读取文件并且自动将资源对象的当前状态变更为你所期望的状态。这种方式的好处在于,你可以随时查看声明文件,清晰地知道资源对象的期望状态,并可以通过修改文件来实现对资源对象的管理。
简单来说,命令式操作适合快速执行简单任务,而声明式操作则适合需要精细管理的复杂场景,特别是在团队协作和自动化部署中非常有用。K8s 鼓励使用声明式操作,因为这种方式更符合 K8s 自动化和自我修复的设计哲学。
YAML 文件的优势
YAML(YAML Ain’t Markup Language)文件就是 K8s 中最常用的声明式文件类型,CKA 考试中也会让你实际编写或者修改 YAML 文件,从而完成对 K8s 资源对象的操作。使用 YAML 文件有这样几个优势:
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
1. K8s 中有两种方式与资源对象打交道:命令式操作和声明式操作,分别对应着直接下达指令和说明对于某个资源对象所期望达到的状态。 2. 使用声明式操作可以随时查看声明文件,清晰地知道资源对象的期望状态,并可以通过修改文件来实现对资源对象的管理,适合团队协作和自动化部署。 3. YAML 文件是 K8s 中最常用的声明式文件类型,能够处理复杂的数据结构,结构清晰易于理解和编辑,具有可重用性和可共享性。 4. K8s 的 YAML 文件中包含了通用的常规属性,如 apiVersion、kind、metadata 和 spec,需要熟悉这些属性才能写好 K8s 的 YAML 文件。 5. 通过 “kubectl explain” 命令可以查看资源对象的属性介绍,快速了解这些属性以及用法。 6. 通过官方模板编写文件和使用命令自动生成 YAML 文件模板是编写 YAML 文件的两个技巧。 7. 编写 YAML 文件的注意事项包括多使用注释、多个相关的资源对象可以写在一个 YAML 文件中同时部署、注意文件格式和将 YAML 文件纳入版本控制系统。 8. 使用 “kubectl apply -f” 命令可以部署文件中的资源对象,而使用 “kubectl delete -f” 命令可以删除文件中所部署的全部资源对象。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《零基础拿下云原生 CKA 认证》,新⼈⾸单¥59
《零基础拿下云原生 CKA 认证》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论