IDEA使用Kubernetes插件编写YAML

Kubernetes 中有很多的配置文件都是 YAML 的格式,如果从零编写还是非常的麻烦,故而 Kubernetes 为我们提供了 IDEA 的插件可以帮助我们快速的编写各种配置文件。

安装插件

在 IDEA 的插件市场搜索 Kubernetes 后安装即可,安装完成后需要重新启动 IDEA。

资源配置文件

IntelliJ IDEA 使用以下必填字段识别 Kubernetes 资源配置文件:

  • apiVersion:标识对象表示的版本化模式
  • kind:标识对象类型(例如,Service,Pod,Deployment,等等)

如果以前的两个字段都存在于 YAML 或 JSON 文件中,IntelliJ IDEA 将使用相应的 Kubernetes 图标标记该文件并启用所有可用功能:

e21ad48e-5530-42e6-836e-98793c3b2264

对于 YAML 文件,您还可以使用预定义的实时模板来创建必要的配置类型:

9eef6543-8ec9-4e4c-b97b-c6486fe90d62

要查看可用的实时模板并创建新模板,请打开 设置/首选项 对话框(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,然后双击某个操作为其设置快捷方式。

  • 23
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值