k8s资源管理+yaml语言介绍

Posted 南城诗客^

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k8s资源管理+yaml语言介绍相关的知识,希望对你有一定的参考价值。

1 资源管理介绍

在kubernetes中,所有的内容都抽象为资源,用户需要通过操作资源来管理kubernetes。

kubernetes的本质上就是一个集群系统,用户可以在集群中部署各种服务,所谓的部署服务,其实就是在kubernetes集群中运行一个个的容器,并将指定的程序跑在容器中。

kubernetes的最小管理单元是pod而不是容器,所以只能将容器放在Pod中,而kubernetes一般也不会直接管理Pod,而是通过Pod控制器来管理Pod的。

Pod可以提供服务之后,就要考虑如何访问Pod中服务,kubernetes提供了Service资源实现这个功能。

当然,如果Pod中程序的数据需要持久化,kubernetes还提供了各种存储系统。
学习kubernetes的核心,就是学习如何对集群上的Pod、Pod控制器、Service、存储等各种资源进行操作

2 YAML语言介绍

YAML是一个类似 XML、JSON 的标记性语言。它强调以数据为中心,并不是以标识语言为重点。因而YAML本身的定义比较简单,号称"一种人性化的数据格式语言"。
YAML的语法比较简单,主要有下面几个:

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进不允许使用tab,只允许空格( 低版本限制 )
  • 缩进的空格数不重要,只要相同层级的元素左对齐即可
  • '#'表示注释

YAML支持以下几种数据类型:

  • 纯量:单个的、不可再分的值
  • 对象:键值对的集合,又称为映射(mapping)/ 哈希(hash) / 字典(dictionary)
  • 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)

纯量, 就是指的一个简单的值,字符串、布尔值、整数、浮点数、Null、时间、日期

1 布尔类型

c1: true (或者True)

2 整型

c2: 234

3 浮点型

c3: 3.14

4 null类型

c4: ~ # 使用~表示null

5 日期类型

c5: 2018-02-17 # 日期必须使用ISO 8601格式,即yyyy-MM-dd

6 时间类型

c6: 2018-02-17T15:02:31+08:00 # 时间使用ISO 8601格式,时间和日期之间使用T连接,最后使用+代表时区

7 字符串类型

c7: heima # 简单写法,直接写值 , 如果字符串中间有特殊字符,必须使用双引号或者单引号包裹
c8: line1
line2 # 字符串过多的情况可以拆成多行,每一行会被转化成一个空格

# 对象
 形式一(推荐):
fr:
  age: 15
  address: Beijing
 形式二(了解):
fr: {age: 15,address: Beijing}
# 数组
# 形式一(推荐):
address:
  - 顺义
  - 昌平  
# 形式二(了解):
address: [顺义,昌平]

小提示:

1 书写yaml切记: 后面要加一个空格

2 如果需要将多段yaml配置放在一个文件中,中间要使用---分隔

3 下面是一个yaml转json的网站,可以通过它验证yaml是否书写正确

https://www.json2yaml.com/convert-yaml-to-json

以上是关于k8s资源管理+yaml语言介绍的主要内容,如果未能解决你的问题,请参考以下文章

k8s资源管理+yaml语言介绍

k8s资源限制

K8s资源对象管理之YAML文件的方式(升级回滚扩容缩容)

K8S------YAML文件详解及示例

K8S------YAML文件详解及示例

K8S------YAML文件详解及示例