在刚接触k8s的时候觉得yaml资源文件非常的难写,完全看不懂,经过一段时间的摸索学习,发现k8s平台中是提供了一系列的工具和技巧的,可以帮助我们很好的编写资源文件,提升编写yaml文件的能力,常用的命令工具是explain、help、dry-run它们三个。我常用的是explain。
1、explain,在编写yaml资源文件时,能够给出资源类型的结构和属性及下级对应关键词,通过该命令可以轻松掌握资源的所有字段、默认值以及示例的详细信息。
2、help,帮助信息
3、dry-run,在真正执行命令前,使用dry-run选项可以预先验证命令的效果,这种模拟执行命令不会对集群产生任何影响,只是模拟。也可以搭配“-o”选项将结果输出为yaml格式,这样能够快速的获得所需的yaml资源文件。
例①:kubectl explain deployment.spec,查看deployment资源类型下spec的结构属性,如果查看spec资源下的某资源结构属性,只需在其后跟上对应的资源类型即可(以符号.为间隔),如kubectl explain deployment.spec.template,查看spec资源下template的结构属性
例②:kubectl create deployment --help
例③:kubectl create deployment web --image=nginx:1.20.0 --port=80 -r 2 --dry-run=client -o yaml,模拟执行,获取资源文件
docker-compose文件快速k8yaml文件 和 helm-chart模版的工具:kompose