apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: name: ips.kubeovn.io spec: group: kubeovn.io version: v1 scope: Cluster names: plural: ips singular: ip kind: IP shortNames: - ip --- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: name: subnets.kubeovn.io spec: group: kubeovn.io version: v1 scope: Cluster names: plural: subnets singular: subnet kind: Subnet shortNames: - subnet additionalPrinterColumns: - name: Protocol type: string JSONPath: .spec.protocol - name: CIDR type: string JSONPath: .spec.cidrBlock - name: Private type: boolean JSONPath: .spec.private - name: NAT type: boolean JSONPath: .spec.natOutgoing validation: openAPIV3Schema: properties: spec: required: ["cidrBlock","gateway"] properties: cidrBlock: type: "string" gateway: type: "string"