Kubernetes 中有很多的配置文件都是 YAML 的格式,如果从零编写还是非常的麻烦,故而 Kubernetes 为我们提供了 IDEA 的插件可以帮助我们快速的编写各种配置文件。
安装插件
在 IDEA 的插件市场搜索 Kubernetes
后安装即可,安装完成后需要重新启动 IDEA。
资源配置文件
IntelliJ IDEA 使用以下必填字段识别 Kubernetes 资源配置文件:
- apiVersion:标识对象表示的版本化模式
- kind:标识对象类型(例如,Service,Pod,Deployment,等等)
如果以前的两个字段都存在于 YAML 或 JSON 文件中,IntelliJ IDEA 将使用相应的 Kubernetes 图标标记该文件并启用所有可用功能:
对于 YAML 文件,您还可以使用预定义的实时模板来创建必要的配置类型:
要查看可用的实时模板并创建新模板,请打开 设置/首选项
对话框(Ctrl + Alt + S),单击 编辑器
,然后单击 实时模板
,然后展开列表中的 Kubernetes
组。
Helm 支持
Helm 是一个管理 Kubernetes 应用程序的工具。Helm 图表是您在 Kubernetes 集群中运行的预配置资源定义的包。图表包含包的描述(Chart.yaml)以及用于生成 Kubernetes 清单文件的一个或多个模板。
在 Helm 模板语法支持需要 Go Template 插件。
Helm 图表和模板的编码辅助包括代码完成,重构,检查,快速修复和快速文档。此外,可以使用装订线图标在标签定义和标签选择器之间以及重写和覆盖值之间进行导航。
创建一个新的 Helm 图表
右键单击 项目
工具窗口中的任何目录,指向 Kubernetes
,然后单击 Helm Create Chart
。
这将运行 helm create
命令,该命令将添加入门所需的所有基本文件:
- .helmignore:构建包时要忽略的模式
- Chart.yaml:包含元数据的基本图表说明
- values.yaml:图表模板的默认值
- charts/:子图表的目录
- templates/:图表定义的目录
- _helpers.tpl:模板的部分和功能
- NOTES.txt:部署图表后打印出来的信息
- deployment.yaml:示例 Kubernetes 部署定义
- ingress.yaml:示例 Kubernetes 入口定义
- service.yaml:示例 Kubernetes 服务定义
预览 Helm 模板渲染的结果
右键单击 模板
文件,指向 Kubernetes
,然后单击 Helm Template
。
这将运行呈现图表模板的 helm template
命令。渲染预览在 diff 查看器对话框中打开,以将其与原始模板文件进行比较。
更新外部依赖项
如果图表具有 requirements.yaml 文件,则可以更新或下载相应的 tgz 依赖项。此操作还会生成或更新 requirements.lock。
右键单击图表,指向 Kubernetes
,然后单击 Helm Dependency Update
。
这将运行 helm 依赖项更新命令。
检查图表是否存在可能的问题
右键单击图表,指向 Kubernetes
,然后单击 Helm Lint
。
这将运行 helm lint
命令,该命令执行一系列测试以发现可能的问题,而无需实际安装图表。
生产力提示
如果您经常使用此处描述的功能,以下提示可能会有所帮助:
- 分配快捷方式
您可以为 IntelliJ IDEA 中的任何操作指定键盘快捷键。在设置/首选项
对话框(Ctrl+Alt+S)中,选择键盘映射
。在搜索字段中键入kubernetes
,然后双击某个操作为其设置快捷方式。