kubernetes - 为什么 Kubernetes 使用 yaml 文件为 "resource"

标签 kubernetes yaml cloud reusability

我正在寻找一个(或多或少科学的)文档/演示文稿,解释为什么“Kubernbetes 语言”的开发人员选择将应用程序定义(例如)分段到多个 yaml 文件中,而不是编写单个 yaml包含应用程序部署的所有详细信息(所有部署、卷...)的文件?

我认为这与可重用性、可维护性和可读性有关,但最好有一个更结构化的论证(我想到 kubcon 或 dockercon 等 session 中的 session 论文或演示文稿)

谢谢

阿卜杜勒加尼

最佳答案

首先,Kubernetes 没有自己的语言,最常用的语言是 YAML,但您可以使用 JSON,甚至 XML(如果支持的话)。 YAML 更易于人类阅读,并且可以跨多种编程语言移植。 Kubernetes 很复杂,因为我们想做复杂的事情。如果我们将部署拆分为多个 YAML 文件,那么事情就会变得更易于管理,因为程序员将不同的文件用于不同的目的。而且,当发生修改时,您仅 kubectl 应用一个“小”文件。 他们之所以选择 YAML 并分离文件,是受到了 Google Borg 系统的影响,Kubernetes 从中汲取了很多概念。

关于kubernetes - 为什么 Kubernetes 使用 yaml 文件为 "resource",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71155478/

相关文章:

kubernetes - 使用 terraform 将公共(public) GKE 更改为私有(private) GKE 集群

docker - CORS header 两次响应

ios - 下载 Xcode 8/Swift 3.0 后无法从 Particle iOS Cloud SDK 执行功能

ios - 指定 CKDatabaseSubscription 的谓词和选项

go - 从 k8s 事件处理程序中的对象获取注释

amazon-web-services - 模板格式错误: YAML not well-formed in metric filters

spring-boot - Spring Boot - 从 YAML 文件注入(inject)映射

java - 从 config.yml 写入和获取信息?

ubuntu - 在 cloud init runcmd 中使用管道失败

kubernetes - 使用 Workload Identity 对 Kubernetes 上的 Cloud ML Engine 容器中的独立 gsutil 进行身份验证