kubernetes yaml详解以及kubernetes yaml文件编写

作者 : 慕源网 本文共2408个字,预计阅读时间需要7分钟 发布时间: 2023-03-2 共325人阅读

kubernetes yaml详解,Kubernetes YAML的定义如下:YAML是一种基于文本的信息格式,可供人类阅读,通过将映射和名称-值对以及项目记录结合起来描述配置类型,我们可以通过查询Kubernetes来获取有关流式对象的其他信息,从而可以以指示性方式生成Kubernetes资源。使用这些文件,可以通过YAML文件创建Kubernetes资源,例如pod、service和deployment等。YAML文件通常由四种类型的文件组成,即apiVersion、kind、metadata和spec。

 

那么,什么是Kubernetes YAML呢?YAML代表Yet Another Mark-up Language,是一种用于数据序列化的基于文本的格式,类似于JSON和XML,可以被人们读取以提高可读性,同时也是一种数据序列化标准,可以在所有编程语言中使用。由于可以被人类更新,因此它可以用于人类用例和机器日志文件、配置文件、进程间通信等。Kubernetes中有不同类型的YAML文件,如apiVersion、kind、metadata、UID、命名空间和spec等。

如何编写YAML文件呢?

kubernetes yaml文件编写,要创建YAML文件,需要一个包含一个或多个键值对的哈希映射。

key: value

可以通过设置另一个键值对来编辑一个值。

key:
another_key: “another value”

如果我们想要使用多行字符串,则必须在任意行之后使用‘>’字符,这在我们需要扩展命令时非常有用。

Jaiku :
Please remember me
If anyone write it
ohhh,  and welcome.

编写YAML文件时,可以使用键和值来创建序列,我们可以将标量转换为序列。

scalar:
-has
-done
-he
-you

我们还可以使用键值对编写这些项目。

在配置文件中,可以使用锚点(anchors)和别名(aliases),锚点使用&符号表示,别名使用*符号表示。

song:
- &game A2
- he
- man
- fall
- you
- she
- *game

当我们在YAML中使用同一文件时,它看起来像这样:

song:
- A2
- he
- man
- fall
- you
- she
- A2

我们还可以使用合并映射(merging maps)来创建YAML文件。

default : &default
collage : jumbokid
sonu:
<< : * default
home : mumbai
dolly :
<< : * default
home : chennai

我们可以合并多个映射。

name : &sonu_name
first_name : sonu
last_name : dolly
address : &sonu_address
street : 5, villa
district : Little whising
country: England
sonu_date:
<<: [* sonu_name, *sonu_address]

通过这种方式,我们可以编写YAML文件。

YAML基础知识

YAML非常方便,因为我们不需要将所有变量都附加到命令行中,它易于维护,因为YAML文件可以附加到源代码控制中,这样我们就可以追踪交换,而且非常灵活,因此通过使用YAML文件,我们可以创建更好的复合形式,从而可以在命令行上进行操作。

YAML与JSON密切相关,这意味着任何经过良好构建的JSON文件都是YAML文件,如果我们能够编写JSON文件,那么我们就不需要担心,因为该文件只需要编写为YAML格式即可,而在网上搜索相同的示例时,我们得到的文件是YAML格式,而不是JSON格式。

YAML比传统的块格式具有更多基本组件,传统的块格式使用连字符+空格来开始列表中的项,而行内格式使用逗号和空格,折叠格式可以将行末变为空格并消除优先的空格。

YAML映射

YAML映射由键值对的无序集合组成,所使用的键必须是唯一的,因为存在重复的情况。如果我们尝试配置信息,则可以考虑以下配置文件:

示例1)

---
apiVersion: v1
kind : pod

在上面的信息中,第一行是可选的分隔符。在一个文件中,我们可以写多个结构,在上面的文件中,有两个值v1和pod分别映射到了apiVersion和kind。

示例2)

{
“apiVersion” : “v1”
“kind” : “pod”
}

在YAML中,我们可以使用可选的引号来搜索基于格式的字符串,以创建复杂的结构,我们可以创建将另一个映射到键的键来实现这一点。

Kubernetes YAML列表:

Kubernetes YAML中的列表是对象的顺序,我们可以在列表中使用多个项目,并且必须使用短划线(-)定义项目,后面跟随父项目。我们也可以将列表的成员放在映射上。

与JSON相比,YAML工作速度更快,我们可以使用许多结构,例如具有名称-值对组的映射,也可以在列表中使用单个项目,映射的映射,映射的列表,列表的列表,列表的映射等等。

创建Kubernetes YAML:

让我们看一个创建YAML文件的示例,

import yaml
members = [{'name': 'Anisha', 'occupation': 'Teacher'},
{'name': 'Zoya', 'occupation': 'Doctor'}] print(yaml.dump(members))

输出

本例中,我们编写了YAML文件,并尝试将其转换为Python,为此我们必须使用dump()方法来序列化Python对象,其中yaml.dump()方法可以接受两个参数数据和流,它将生成文档。

结论

-Kubernetes YAML 在本文中,我们得出结论,YAML格式用于人类可读性,这意味着它可以转换文件格式,因此我们还讨论了如何创建Kubernetes YAML列表,kubernetes yaml文件编写,YAML映射,以及我们也看到了YAML的基础知识。


慕源网 » kubernetes yaml详解以及kubernetes yaml文件编写

常见问题FAQ

程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!

发表评论

开通VIP 享更多特权,建议使用QQ登录