使用 generateName 字段在 kubernetes 中创建自定义资源
create a custom resource in kubernetes using generateName field
我有一个示例 crd 定义为
crd.yaml
kind: CustomResourceDefinition
metadata:
name: testconfig.demo.k8s.com
namespace: testns
spec:
group: demo.k8s.com
versions:
- name: v1
served: true
storage: true
scope: Namespaced
names:
plural: testconfigs
singular: testconfig
kind: TestConfig
我想基于上述 crd 创建自定义资源,但我不想为资源分配固定名称,而是使用 generateName 字段。所以我生成了下面的 cr.yaml。但是当我应用时它给出错误名称字段是强制性的
kind: TestConfig
metadata:
generateName: test-name-
namespace: testns
spec:
image: testimage
非常感谢任何帮助。
您应该使用 kubectl create
创建带有 generateName
的 CR。
"kubectl apply
会先验证资源是否存在,如果资源不存在,会先创建。如果使用generateName
,资源名还没有生成验证资源是否存在时。” source
我有一个示例 crd 定义为
crd.yaml
kind: CustomResourceDefinition
metadata:
name: testconfig.demo.k8s.com
namespace: testns
spec:
group: demo.k8s.com
versions:
- name: v1
served: true
storage: true
scope: Namespaced
names:
plural: testconfigs
singular: testconfig
kind: TestConfig
我想基于上述 crd 创建自定义资源,但我不想为资源分配固定名称,而是使用 generateName 字段。所以我生成了下面的 cr.yaml。但是当我应用时它给出错误名称字段是强制性的
kind: TestConfig
metadata:
generateName: test-name-
namespace: testns
spec:
image: testimage
非常感谢任何帮助。
您应该使用 kubectl create
创建带有 generateName
的 CR。
"kubectl apply
会先验证资源是否存在,如果资源不存在,会先创建。如果使用generateName
,资源名还没有生成验证资源是否存在时。” source