首页 技术 正文
技术 2022年11月10日
0 收藏 553 点赞 3,748 浏览 1254 个字

<!–
@page { margin: 0.79in }
p { margin-bottom: 0.1in; direction: ltr; line-height: 120%; text-align: justify; widows: 0; orphans: 0 }
a:link { color: #0563c1; so-language: zxx }
–>

YAML(Yet Another Markup Language),是一个JSON的超集,意味着任何有效JSON文件也都是一个YAML文件。它规则如下:

1)大小写敏感

2)使用缩进表示层级关系,但不支持tab缩进,只支持空格

3)缩进的数量不重要但至少一个空格,只要相同层级使用相同数量的空格即可

4)“#”表示注释,从这个字符开始,直到行末,都会被解析器忽略

关于k8s中YAML的使用,只有两种类型:Maps和Lists,Maps的子项可以是Lists,Lists的子项也可以是Maps。

Maps:就是一个字典,即key:value的键值对。

---
apiVersion: v1
kind: Pod
metadata:
name: kube100-site
labels:
app: web

第一行是分隔符,并且是可选的。如果在单个文件中只定义了一个服务,那么这种情况下,第一行的分隔符就可以忽略不计。在上面的例子中,可以看出有两个值:v1和Pod,对应它们的键是apiVersion和kind。

metadata这个key对应的值为一个Maps,而嵌套的labels这个key的值又是一个Map。实际使用中可视情况进行多层嵌套。

​ YAML处理器根据行缩进来知道内容之间的关联。上述例子中,使用两个空格作为缩进,但空格的数据量并不重要,只是至少要求一个空格并且所有缩进保持一致的空格数 。例如,name和labels是相同缩进级别,因此YAML处理器知道他们属于同一map;它知道app是lables的值,因为app的缩进更大。

Lists:就是一个列表。

args
-beijing
-shanghai
-shenzhen
-guangzhou

可以有任何数量的项在列表中,项的定义以破折号(-)开头,并且和父元素之间存在缩进。在JSON格式中,表示如下:

{
“args”: [“beijing”, “shanghai”, “shenzhen”, “guangzhou”]
}

一个示例如下:

---
apiVersion: v1
kind: Pod
metadata:
name: kube100-site
labels:
app: web
spec:
containers:
- name: front-end
image: nginx
ports:
- containerPort:
- name: flaskapp-demo
image: jcdemo/flaskapp
ports:

如上述文件所示,定义一个containers的List对象,每个子项都由name、image、ports组成,每个ports都有一个KEY为containerPort的Map组成

参考:

1.Kubernetes之YAML文件

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,492
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,907
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,740
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,494
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,132
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,295