Kubernetes / Helm

Kubernetes YAML 生成器按明确字段生成资源清单

选择资源类型后填写表单;预览仅包含当前资源,或需要嵌入容器的探针片段。

Kubernetes YAML 生成器

资源表单

生成的 YAML

参数仅在当前浏览器处理,不发送到集群或服务器。

选项

Kubernetes 1.34 模板:apps/v1、v1、networking.k8s.io/v1、batch/v1。探针模式输出容器片段。

示例仅是起点模板,请补齐资源、安全与存储配置;不执行集群或镜像验证。

名称以小写字母开头,最长 63 个字符(CronJob 为 52)。端口 1–65535,副本数 0–1000。探针时间不超过 86400 秒,失败阈值不超过 1000。

环境变量最多 50 行 KEY=value;ConfigMap 与 Secret 只引用现有名称。每个文本字段最多 20000 个字符,命令数组最多 32 项,每项不超过 4096 个字符。

正在生成…

为新服务准备清单时,最容易漏改的是关联字段。Kubernetes YAML 生成器将 Deployment 的选择器和 Pod 标签一起生成,修改名称不会只改掉其中一处。切换资源类型会保留其他表单的值,但导出的内容只对应当前选择,便于逐份阅读和提交评审。

从 Deployment 生成起点,到检查 Service 端口映射,再到补充 Ingress 后端与配置引用,这些都是编写 K8s 清单时常见的独立步骤。跨文件的名称、命名空间和选择器仍需自己核对;预览只是根据表单生成的文本,不代表集群中已有相应对象。

为什么使用 Kubernetes YAML 生成器

把每一种资源的结构看清楚

Kubernetes YAML 生成器为不同资源保留各自的结构:Deployment 包含 Pod 模板,Service 将服务端口映射到目标端口,Ingress 通过后端名称引用 Service。每次只生成一个对象,避免把尚未配置完整的其他资源一起带入下载文件。

表单中的字段映射到一份有层级的资源清单。

探针片段有明确的插入位置

readinessProbe、livenessProbe 和 startupProbe 都是容器字段,不是独立资源。单独模式仅导出选中的片段;也可以在 Deployment 中勾选嵌入一个探针。探针端口单独填写,因为健康检查不一定使用业务流量端口。

健康检查片段嵌入资源清单的容器内部。

先对齐引用,再检查结果

01

按流量方向核对三个名称

Deployment 的 Pod 标签固定为 app: 资源名称。生成 Service 时将选择器填写为同一个值。生成 Ingress 时填写 Service 的资源名称与服务端口,不要误填 Deployment 名称或容器目标端口;这些资源会分别导出。

02

用手动模式比较参数变化

默认在停止编辑 350 毫秒后更新结果。关闭自动生成后,可以先调整多项参数,再点击生成或按 Ctrl/Cmd+Enter。旧结果会变淡,复制与下载保持禁用,直到新结果与当前表单完全一致。

03

确认替换范围后再载入示例

示例与清空会先列出即将改变的字段数量和新值,确认应用后才替换。撤销同时恢复之前的表单与输出。CronJob 示例使用会结束的日期命令,而不是持续运行的 Web 服务,便于理解定时任务的生命周期。

决定清单内容的字段

稳定 API 与固定模板基线

Deployment、Service、Ingress、CronJob 分别使用 apps/v1、v1、networking.k8s.io/v1、batch/v1。模板以 Kubernetes 1.34 为核对基线,只包含实际实现的字段,不通过没有行为差异的版本开关制造兼容性承诺。

环境变量保留字符串类型

每行输入 KEY=value,只按第一个等号拆分,后续等号与空值都会保留。变量名称重复或缺少等号会明确报错。输出中的字符串统一加引号,使 yes、null、数字外观的值在 YAML 1.1 读取器中仍保持字符串。

配置引用与入口路由

可选的 envFrom 引用现有 ConfigMap 或 Secret 名称。Ingress 支持单个主机与路径、Prefix 或 Exact 匹配、入口类名和 TLS Secret 引用。这些字段不会顺带创建依赖对象,也不会配置真实的控制器或证书。

定时任务与健康检查

CronJob 写入五字段表达式、明确的 Etc/UTC 时区、命令数组与并发策略。HTTP 或 TCP 探针可设置端口和检查时间,successThreshold 固定为 1。生成器不会访问健康检查地址,也不计算下一次运行时间。

模板范围与输入限制

示例需要补齐应用配置
不会推断 CPU、内存、存储、安全上下文、自动扩缩容或边车容器。请根据真实应用在仓库中补齐这些配置。生成成功不能证明镜像可拉取,也不验证集群配额、准入策略、权限或 Ingress 控制器是否已安装。
一次导出一个对象或片段
不提供多资源打包、现有 YAML 导入、Helm 渲染、Kustomize 或 CRD。未支持字段不会凭空添加。探针下载文件必须放入某个容器项,不能把它当作独立 Kubernetes 资源直接应用。
名称与数字只接受声明的子集
资源名称以小写字母开头,仅包含小写字母、数字和连字符,最长 63 个字符;CronJob 最长 52 个字符。端口范围为 1–65535,副本数为 0–1000;手填 NodePort 只接受 30000–32767,自定义集群范围需另行编辑。
表达式与输入规模有上限
Cron 只支持数字五字段及星号、列表、升序范围、星号或范围后的步长,星期为 0–6;不支持秒、宏、名称和运行时间推算。环境变量最多 50 条,每个文本字段最多 20000 个字符,命令数组最多 32 项,不承诺某个日历组合一定会触发。

Kubernetes YAML 生成器常见问题

生成的清单使用哪些 API 版本?

四类资源分别使用 apps/v1、v1、networking.k8s.io/v1 与 batch/v1,模板固定按 Kubernetes 1.34 核对。探针片段没有 apiVersion,因为它属于容器内部字段。API 名称正确也不能代替目标集群中的验证。

Service 如何关联 Deployment 的 Pod?

Service 根据 Pod 标签选择流量目标,并不按 Deployment 对象名称自动关联。本工具在 Pod 模板中写入 app: 名称;请将 Service 选择器填为相同值,再将 targetPort 指向应用实际监听的端口。

一次能生成多个资源吗?

每次只生成当前选中的资源。需要 Deployment 与 Service 时分别生成并审阅文件,名称、选择器和命名空间由你核对一致。切换类型会保留表单值,但不会自动修改已经下载的其他文件。

如何设置容器环境变量?

在环境变量框逐行填写 KEY=value,或者填写现有 ConfigMap、Secret 的名称来生成 envFrom 引用。空值和数字外观的文本仍是字符串。引用只添加名称,不创建对象,也不读取其中的数据。

生成的 YAML 可以不检查就直接应用吗?

请先阅读输出,再到目标环境中验证。Ingress 需要控制器与后端,CronJob 需要能够结束的命令,应用还需要合适的资源和安全配置。示例镜像标签只用于说明结构,不代表可用性或安全性保证。

生成的清单有问题?

开始准备下一份资源清单

用 Kubernetes YAML 生成器准备一份容易解释和评审的小改动。先确认资源类型,再逐个核对引用,补齐应用需要的字段后才应用到目标环境。