github.com/cilium/cilium@v1.16.2/pkg/k8s/apis/cilium.io/client/crds/v2/ciliumenvoyconfigs.yaml (about) 1 --- 2 apiVersion: apiextensions.k8s.io/v1 3 kind: CustomResourceDefinition 4 metadata: 5 annotations: 6 controller-gen.kubebuilder.io/version: v0.15.0 7 creationTimestamp: null 8 name: ciliumenvoyconfigs.cilium.io 9 spec: 10 group: cilium.io 11 names: 12 categories: 13 - cilium 14 kind: CiliumEnvoyConfig 15 listKind: CiliumEnvoyConfigList 16 plural: ciliumenvoyconfigs 17 shortNames: 18 - cec 19 singular: ciliumenvoyconfig 20 scope: Namespaced 21 versions: 22 - additionalPrinterColumns: 23 - description: The age of the identity 24 jsonPath: .metadata.creationTimestamp 25 name: Age 26 type: date 27 name: v2 28 schema: 29 openAPIV3Schema: 30 properties: 31 apiVersion: 32 description: 'APIVersion defines the versioned schema of this representation 33 of an object. Servers should convert recognized schemas to the latest 34 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 35 type: string 36 kind: 37 description: 'Kind is a string value representing the REST resource this 38 object represents. Servers may infer this from the endpoint the client 39 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 40 type: string 41 metadata: 42 type: object 43 spec: 44 properties: 45 backendServices: 46 description: BackendServices specifies Kubernetes services whose backends 47 are automatically synced to Envoy using EDS. Traffic for these 48 services is not forwarded to an Envoy listener. This allows an Envoy 49 listener load balance traffic to these backends while normal Cilium 50 service load balancing takes care of balancing traffic for these 51 services at the same time. 52 items: 53 properties: 54 name: 55 description: Name is the name of a destination Kubernetes service 56 that identifies traffic to be redirected. 57 type: string 58 namespace: 59 description: Namespace is the Kubernetes service namespace. 60 In CiliumEnvoyConfig namespace defaults to the namespace of 61 the CEC, In CiliumClusterwideEnvoyConfig namespace defaults 62 to "default". 63 type: string 64 number: 65 description: Ports is a set of port numbers, which can be used 66 for filtering in case of underlying is exposing multiple port 67 numbers. 68 items: 69 type: string 70 type: array 71 required: 72 - name 73 type: object 74 type: array 75 nodeSelector: 76 description: NodeSelector is a label selector that determines to which 77 nodes this configuration applies. If nil, then this config applies 78 to all nodes. 79 properties: 80 matchExpressions: 81 description: matchExpressions is a list of label selector requirements. 82 The requirements are ANDed. 83 items: 84 description: A label selector requirement is a selector that 85 contains values, a key, and an operator that relates the key 86 and values. 87 properties: 88 key: 89 description: key is the label key that the selector applies 90 to. 91 type: string 92 operator: 93 description: operator represents a key's relationship to 94 a set of values. Valid operators are In, NotIn, Exists 95 and DoesNotExist. 96 enum: 97 - In 98 - NotIn 99 - Exists 100 - DoesNotExist 101 type: string 102 values: 103 description: values is an array of string values. If the 104 operator is In or NotIn, the values array must be non-empty. 105 If the operator is Exists or DoesNotExist, the values 106 array must be empty. This array is replaced during a strategic 107 merge patch. 108 items: 109 type: string 110 type: array 111 x-kubernetes-list-type: atomic 112 required: 113 - key 114 - operator 115 type: object 116 type: array 117 x-kubernetes-list-type: atomic 118 matchLabels: 119 additionalProperties: 120 description: MatchLabelsValue represents the value from the 121 MatchLabels {key,value} pair. 122 maxLength: 63 123 pattern: ^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$ 124 type: string 125 description: matchLabels is a map of {key,value} pairs. A single 126 {key,value} in the matchLabels map is equivalent to an element 127 of matchExpressions, whose key field is "key", the operator 128 is "In", and the values array contains only "value". The requirements 129 are ANDed. 130 type: object 131 type: object 132 resources: 133 description: 'Envoy xDS resources, a list of the following Envoy resource 134 types: type.googleapis.com/envoy.config.listener.v3.Listener, type.googleapis.com/envoy.config.route.v3.RouteConfiguration, 135 type.googleapis.com/envoy.config.cluster.v3.Cluster, type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment, 136 and type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret.' 137 items: 138 type: object 139 x-kubernetes-preserve-unknown-fields: true 140 type: array 141 services: 142 description: Services specifies Kubernetes services for which traffic 143 is forwarded to an Envoy listener for L7 load balancing. Backends 144 of these services are automatically synced to Envoy usign EDS. 145 items: 146 properties: 147 listener: 148 description: "Listener specifies the name of the Envoy listener 149 the service traffic is redirected to. The listener must be 150 specified in the Envoy 'resources' of the same CiliumEnvoyConfig. 151 \n If omitted, the first listener specified in 'resources' 152 is used." 153 type: string 154 name: 155 description: Name is the name of a destination Kubernetes service 156 that identifies traffic to be redirected. 157 type: string 158 namespace: 159 description: Namespace is the Kubernetes service namespace. 160 In CiliumEnvoyConfig namespace this is overridden to the namespace 161 of the CEC, In CiliumClusterwideEnvoyConfig namespace defaults 162 to "default". 163 type: string 164 ports: 165 description: Ports is a set of service's frontend ports that 166 should be redirected to the Envoy listener. By default all 167 frontend ports of the service are redirected. 168 items: 169 type: integer 170 type: array 171 required: 172 - name 173 type: object 174 type: array 175 type: object 176 required: 177 - metadata 178 type: object 179 served: true 180 storage: true 181 subresources: {} 182 status: 183 acceptedNames: 184 kind: "" 185 plural: "" 186 conditions: [] 187 storedVersions: []