- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在开发一个带有 CRD 的 Controller 。 CRD 包括我们的自定义内容以及嵌入式 core.v1.PodSpec。 (v1.13.1)
我在 CRD 中定义了一个验证部分,它可以验证我们的自定义字段并强制执行约束,但我不知道如何为嵌入式 PodSpec 执行此操作。 PodSpec 太大且选项太多,无法手动将其添加到 CRD 的验证部分:
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: mystuff.example.com
spec:
group: mystuff.example.com
versions:
- name: v1alpha1
served: true
storage: true
names:
kind: MyStuff
plural: mystuffs
singular: mystuff
shortNames:
- ms
scope: Namespaced
additionalPrinterColumns:
- JSONPath: .status.phase
name: Status
type: string
- JSONPath: .metadata.resourceVersion
name: Version
type: string
validation:
openAPIV3Schema:
properties:
spec:
required:
- myVar1
- myVar2
- podSpec
properties:
myVar1:
type: boolean
myVar2:
type: boolean
# Here I need to validate a valid core.v1.PodSpec
podSpec:
type: core.v1.PodSpec
其他人如何处理这个问题?
我还需要验证用户可以提交工作负载的任何机制,即直接使用 kube apiserver 或 kubectl。
感谢您的帮助。
最佳答案
一般来说,CRD 不允许引用其他对象。对此进行了讨论:https://github.com/kubernetes/kubernetes/issues/54579 .决定不添加引用。
此评论中描述了解决方法:https://github.com/kubernetes/kubernetes/issues/54579#issuecomment-370372942我没用过,你可以试试。
关于go - 使用嵌入式 core.v1.PodSpec 验证 CRD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56044319/
Kubernetes 支持 Finalizer in CR以防止硬删除。不过,我很难找到示例代码。有人可以指出真正的代码片段吗? 最佳答案 此示例存储库展示了 Finalizer 和 Initiali
Kuberentes 具有支持 CRD 版本控制的机制。见 https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resource
自定义资源定义 (CRD) 是 Kubernetes API 扩展,可以定义新的对象类型。Pod、ReplicaSet、ConfigMap 和 Ingress 是常见内置资源的示例。CRD 允许您将全
我在某些命名空间中有附加的 CRD。我的问题是,即使删除了它所在的命名空间,CRD 仍然存在! > oc project error: the project "uhc-development-15o
result, err := crdclient.Create(example) if err == nil { fmt.Printf("CREATED: %#v\n", result) }
我的 kubernetes 集群中已经定义了一些 CRD。kubectl可以很好地创建/更新/删除资源。 当我尝试用程序进行这些操作时,我通过搜索找到的方法是使用以下工具生成代码: https://g
我的 CRD 很少,但我不确定如何查询 kube-apiserver 以获取 CR 列表。任何人都可以提供任何示例代码吗? 最佳答案 请参阅此页面以获取有关如何使用此访问 crd 的信息 repo 有
在我的场景中,用户只能访问四个命名空间,他将使用下面的上下文在命名空间之间切换。我怎样才能让他访问 CRD 以及他对四个 namespace 的现有访问权限。 CURRENT NAME
我正在设置一个 kind簇 Creating cluster "kind" ... ✓ Ensuring node image (kindest/node:v1.22.1) 🖼 ✓ Prepar
在运行脚本之前检查自定义资源定义是否存在的最佳方法是什么,仅使用 kubectl命令行? 我们有一个包含 NATS 集群定义的 yaml 文件 ServiceAccount , Role , Clus
kubedb在这种情况下,运算符(operator)已崩溃且无响应 - 但是我需要清理这些资源。 k delete redis r1 redis-queue --namespace cts --fo
在定义 K8 CRD 时,我需要在提交资源对象时灵活地传递任何键/值对作为输入。 https://kubernetes.io/docs/tasks/extend-kubernetes/custom-r
我正在使用 kustomize 将 list 通过管道传输到新 k8s 集群(v1.17.2)上的 kubectl。这包括 CRD,但其他对象无法找到它们。例如: unable to recogniz
我目前正在使用 Kubernetes 的 Python API,我必须: 检索自定义资源名称的实例 FADepl . 编辑该实例的值。 在终端中,我会简单地列出所有 FADepls与 kubectl
我正在阅读很多关于 CRD Controller 的文档 我已经用我的业务逻辑实现了一个,有时我遇到了这种竞争条件: 我创建了一个自定义对象,我们称之为 Foo有名字bar 我的业务逻辑适用,假设它创
我创建了一个 CRD像这样: import v1 "k8s.io/api/core/v1" type ApplicationSpec struct { Name string `json:"n
我们正在使用Kubernetes和Traefik 2.0。 我们正在使用Kubernetes CRD(IngressRoute)作为Traefik的提供者。 从Traefik Documentaion
考虑一下: 部署一个将监视 CRD A 的 ansible 运算符(operator) 创建类型 A 的 CR B 为 CR B 启动大量部署/pod。 现在我需要升级运营商、CRD 和 CR。应用新
按照Kubernetes的教程(以我的情况为例,在GKE上)https://docs.traefik.io/v2.0/user-guides/crd-acme/,我将继续学习如何分配全局静态IP(GK
我正在开发一个带有 CRD 的 Controller 。 CRD 包括我们的自定义内容以及嵌入式 core.v1.PodSpec。 (v1.13.1) 我在 CRD 中定义了一个验证部分,它可以验证我
我是一名优秀的程序员,十分优秀!