Mission Control Custom Resource Definition (CRD)
missioncontrol.datastax.com/v1alpha1
Resource Types:
CqlConnectivity
CqlConnectivity describes how a datacenter of a MissionControlCluster is exposed to the outside of the Kubernetes cluster.
Name | Type | Description | Required |
---|---|---|---|
apiVersion |
string |
missioncontrol.datastax.com.v1alpha1 |
true |
kind |
string |
CqlConnectivity |
true |
object |
Refer to the Kubernetes API documentation for the fields of the |
true |
|
object |
false |
||
object |
false |
CqlConnectivity.spec
Name | Type | Description | Required |
---|---|---|---|
object |
LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. |
true |
|
object |
CqlLoadBalancers exposes the datacenter via one or more LoadBalancer services. |
false |
CqlConnectivity.spec.cassandraDatacenterRef
LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
CqlConnectivity.spec.loadBalancers
CqlLoadBalancers exposes the datacenter via one or more LoadBalancer services.
Name | Type | Description | Required |
---|---|---|---|
size |
integer |
The number of services to create. This must be at least 1. |
true |
nativePort |
integer |
The port where the CQL native protocol is exposed on the service(s).
|
false |
object |
Common configuration for all LoadBalancer pods. This can be overridden by individual instances. |
false |
|
[]object |
Additional configuration for each LoadBalancer pod. This is optional, the list can have fewer elements than the size, or contain empty objects for pods that don’t need specific configuration. If it is larger than the size, the extra elements will be ignored. |
false |
|
object |
Common configuration for all LoadBalancer services. This can be overridden by individual instances. |
false |
|
[]object |
Additional configuration for each LoadBalancer service. This is optional, the list can have fewer elements than the size, or contain empty objects for services that don’t need specific configuration. If it is larger than the size, the extra elements will be ignored. |
false |
CqlConnectivity.spec.loadBalancers.podConfig
Common configuration for all LoadBalancer pods. This can be overridden by individual instances.
Name | Type | Description | Required |
---|---|---|---|
object |
Affinity is a group of affinity scheduling rules. |
false |
|
object |
SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence. |
false |
|
object |
PodSecurityContext holds pod-level security attributes and common container settings. Some fields are also present in container.securityContext. Field values of container.securityContext take precedence over field values of PodSecurityContext. |
false |
|
object |
ResourceRequirements describes the compute resource requirements. |
false |
|
[]object |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity
Affinity is a group of affinity scheduling rules.
Name | Type | Description | Required |
---|---|---|---|
object |
Describes node affinity scheduling rules for the pod. |
false |
|
object |
Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). |
false |
|
object |
Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.nodeAffinity
Describes node affinity scheduling rules for the pod.
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. |
false |
|
object |
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it’s a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
Name | Type | Description | Required |
---|---|---|---|
object |
A node selector term, associated with the corresponding weight. |
true |
|
weight |
integer |
Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
|
true |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference
A node selector term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
[]object |
A list of node selector requirements by node’s labels. |
false |
|
[]object |
A list of node selector requirements by node’s fields. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference.matchExpressions[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference.matchFields[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node.
Name | Type | Description | Required |
---|---|---|---|
[]object |
Required. A list of node selector terms. The terms are ORed. |
true |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index]
A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
Name | Type | Description | Required |
---|---|---|---|
[]object |
A list of node selector requirements by node’s labels. |
false |
|
[]object |
A list of node selector requirements by node’s fields. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index].matchExpressions[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index].matchFields[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity
Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. |
false |
|
[]object |
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
Name | Type | Description | Required |
---|---|---|---|
object |
Required. A pod affinity term, associated with the corresponding weight. |
true |
|
weight |
integer |
weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
|
true |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm
Required. A pod affinity term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index]
Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity
Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. |
false |
|
[]object |
If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
Name | Type | Description | Required |
---|---|---|---|
object |
Required. A pod affinity term, associated with the corresponding weight. |
true |
|
weight |
integer |
weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
|
true |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm
Required. A pod affinity term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index]
Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.containerSecurityContext
SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.
Name | Type | Description | Required |
---|---|---|---|
allowPrivilegeEscalation |
boolean |
AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. |
false |
object |
The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. |
false |
|
privileged |
boolean |
Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. |
false |
procMount |
string |
procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. |
false |
readOnlyRootFilesystem |
boolean |
Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. |
false |
runAsGroup |
integer |
The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
|
false |
runAsNonRoot |
boolean |
Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
runAsUser |
integer |
The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
|
false |
object |
The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.containerSecurityContext.capabilities
The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
add |
[]string |
Added capabilities |
false |
drop |
[]string |
Removed capabilities |
false |
CqlConnectivity.spec.loadBalancers.podConfig.containerSecurityContext.seLinuxOptions
The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
level |
string |
Level is SELinux level label that applies to the container. |
false |
role |
string |
Role is a SELinux role label that applies to the container. |
false |
type |
string |
Type is a SELinux type label that applies to the container. |
false |
user |
string |
User is a SELinux user label that applies to the container. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.containerSecurityContext.seccompProfile
The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
type |
string |
type indicates which kind of seccomp profile will be applied. Valid options are: Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. |
true |
localhostProfile |
string |
localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet’s configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.containerSecurityContext.windowsOptions
The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux.
Name | Type | Description | Required |
---|---|---|---|
gmsaCredentialSpec |
string |
GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. |
false |
gmsaCredentialSpecName |
string |
GMSACredentialSpecName is the name of the GMSA credential spec to use. |
false |
hostProcess |
boolean |
HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod’s containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. |
false |
runAsUserName |
string |
The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.podSecurityContext
PodSecurityContext holds pod-level security attributes and common container settings. Some fields are also present in container.securityContext. Field values of container.securityContext take precedence over field values of PodSecurityContext.
Name | Type | Description | Required |
---|---|---|---|
fsGroup |
integer |
A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod:
If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows.
|
false |
fsGroupChangePolicy |
string |
fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. Note that this field cannot be set when spec.os.name is windows. |
false |
runAsGroup |
integer |
The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
|
false |
runAsNonRoot |
boolean |
Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
runAsUser |
integer |
The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
|
false |
object |
The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. |
false |
|
supplementalGroups |
[]integer |
A list of groups applied to the first process run in each container, in addition to the container’s primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows. |
false |
[]object |
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The Windows specific settings applied to all containers. If unspecified, the options within a container’s SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.podSecurityContext.seLinuxOptions
The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
level |
string |
Level is SELinux level label that applies to the container. |
false |
role |
string |
Role is a SELinux role label that applies to the container. |
false |
type |
string |
Type is a SELinux type label that applies to the container. |
false |
user |
string |
User is a SELinux user label that applies to the container. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.podSecurityContext.seccompProfile
The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
type |
string |
type indicates which kind of seccomp profile will be applied. Valid options are: Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. |
true |
localhostProfile |
string |
localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet’s configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.podSecurityContext.sysctls[index]
Sysctl defines a kernel parameter to be set
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of a property to set |
true |
value |
string |
Value of a property to set |
true |
CqlConnectivity.spec.loadBalancers.podConfig.podSecurityContext.windowsOptions
The Windows specific settings applied to all containers. If unspecified, the options within a container’s SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux.
Name | Type | Description | Required |
---|---|---|---|
gmsaCredentialSpec |
string |
GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. |
false |
gmsaCredentialSpecName |
string |
GMSACredentialSpecName is the name of the GMSA credential spec to use. |
false |
hostProcess |
boolean |
HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod’s containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. |
false |
runAsUserName |
string |
The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
CqlConnectivity.spec.loadBalancers.podConfig.resources
ResourceRequirements describes the compute resource requirements.
Name | Type | Description | Required |
---|---|---|---|
[]object |
Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. This field is immutable. It can only be set for containers. |
false |
|
limits |
map[string]int or string |
Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
false |
requests |
map[string]int or string |
Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
false |
CqlConnectivity.spec.loadBalancers.podConfig.resources.claims[index]
ResourceClaim references one entry in PodSpec.ResourceClaims.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. |
true |
CqlConnectivity.spec.loadBalancers.podConfig.tolerations[index]
The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
Name | Type | Description | Required |
---|---|---|---|
effect |
string |
Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. |
false |
key |
string |
Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. |
false |
operator |
string |
Operator represents a key’s relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. |
false |
tolerationSeconds |
integer |
TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.
|
false |
value |
string |
Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index]
CqlLoadBalancerPod controls settings for the cql-router pod that backs a LoadBalancer service.
Name | Type | Description | Required |
---|---|---|---|
object |
Affinity is a group of affinity scheduling rules. |
false |
|
object |
SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence. |
false |
|
object |
PodSecurityContext holds pod-level security attributes and common container settings. Some fields are also present in container.securityContext. Field values of container.securityContext take precedence over field values of PodSecurityContext. |
false |
|
object |
ResourceRequirements describes the compute resource requirements. |
false |
|
[]object |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity
Affinity is a group of affinity scheduling rules.
Name | Type | Description | Required |
---|---|---|---|
object |
Describes node affinity scheduling rules for the pod. |
false |
|
object |
Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). |
false |
|
object |
Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.nodeAffinity
Describes node affinity scheduling rules for the pod.
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. |
false |
|
object |
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it’s a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
Name | Type | Description | Required |
---|---|---|---|
object |
A node selector term, associated with the corresponding weight. |
true |
|
weight |
integer |
Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
|
true |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference
A node selector term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
[]object |
A list of node selector requirements by node’s labels. |
false |
|
[]object |
A list of node selector requirements by node’s fields. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference.matchExpressions[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference.matchFields[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node.
Name | Type | Description | Required |
---|---|---|---|
[]object |
Required. A list of node selector terms. The terms are ORed. |
true |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index]
A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
Name | Type | Description | Required |
---|---|---|---|
[]object |
A list of node selector requirements by node’s labels. |
false |
|
[]object |
A list of node selector requirements by node’s fields. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index].matchExpressions[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index].matchFields[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity
Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. |
false |
|
[]object |
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
Name | Type | Description | Required |
---|---|---|---|
object |
Required. A pod affinity term, associated with the corresponding weight. |
true |
|
weight |
integer |
weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
|
true |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm
Required. A pod affinity term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index]
Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity
Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. |
false |
|
[]object |
If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
Name | Type | Description | Required |
---|---|---|---|
object |
Required. A pod affinity term, associated with the corresponding weight. |
true |
|
weight |
integer |
weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
|
true |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm
Required. A pod affinity term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index]
Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].containerSecurityContext
SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.
Name | Type | Description | Required |
---|---|---|---|
allowPrivilegeEscalation |
boolean |
AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. |
false |
object |
The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. |
false |
|
privileged |
boolean |
Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. |
false |
procMount |
string |
procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. |
false |
readOnlyRootFilesystem |
boolean |
Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. |
false |
runAsGroup |
integer |
The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
|
false |
runAsNonRoot |
boolean |
Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
runAsUser |
integer |
The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
|
false |
object |
The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].containerSecurityContext.capabilities
The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
add |
[]string |
Added capabilities |
false |
drop |
[]string |
Removed capabilities |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].containerSecurityContext.seLinuxOptions
The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
level |
string |
Level is SELinux level label that applies to the container. |
false |
role |
string |
Role is a SELinux role label that applies to the container. |
false |
type |
string |
Type is a SELinux type label that applies to the container. |
false |
user |
string |
User is a SELinux user label that applies to the container. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].containerSecurityContext.seccompProfile
The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
type |
string |
type indicates which kind of seccomp profile will be applied. Valid options are: Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. |
true |
localhostProfile |
string |
localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet’s configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].containerSecurityContext.windowsOptions
The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux.
Name | Type | Description | Required |
---|---|---|---|
gmsaCredentialSpec |
string |
GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. |
false |
gmsaCredentialSpecName |
string |
GMSACredentialSpecName is the name of the GMSA credential spec to use. |
false |
hostProcess |
boolean |
HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod’s containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. |
false |
runAsUserName |
string |
The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].podSecurityContext
PodSecurityContext holds pod-level security attributes and common container settings. Some fields are also present in container.securityContext. Field values of container.securityContext take precedence over field values of PodSecurityContext.
Name | Type | Description | Required |
---|---|---|---|
fsGroup |
integer |
A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod:
If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows.
|
false |
fsGroupChangePolicy |
string |
fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. Note that this field cannot be set when spec.os.name is windows. |
false |
runAsGroup |
integer |
The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
|
false |
runAsNonRoot |
boolean |
Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
runAsUser |
integer |
The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
|
false |
object |
The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. |
false |
|
supplementalGroups |
[]integer |
A list of groups applied to the first process run in each container, in addition to the container’s primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows. |
false |
[]object |
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The Windows specific settings applied to all containers. If unspecified, the options within a container’s SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].podSecurityContext.seLinuxOptions
The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
level |
string |
Level is SELinux level label that applies to the container. |
false |
role |
string |
Role is a SELinux role label that applies to the container. |
false |
type |
string |
Type is a SELinux type label that applies to the container. |
false |
user |
string |
User is a SELinux user label that applies to the container. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].podSecurityContext.seccompProfile
The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
type |
string |
type indicates which kind of seccomp profile will be applied. Valid options are: Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. |
true |
localhostProfile |
string |
localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet’s configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].podSecurityContext.sysctls[index]
Sysctl defines a kernel parameter to be set
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of a property to set |
true |
value |
string |
Value of a property to set |
true |
CqlConnectivity.spec.loadBalancers.podConfigs[index].podSecurityContext.windowsOptions
The Windows specific settings applied to all containers. If unspecified, the options within a container’s SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux.
Name | Type | Description | Required |
---|---|---|---|
gmsaCredentialSpec |
string |
GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. |
false |
gmsaCredentialSpecName |
string |
GMSACredentialSpecName is the name of the GMSA credential spec to use. |
false |
hostProcess |
boolean |
HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod’s containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. |
false |
runAsUserName |
string |
The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].resources
ResourceRequirements describes the compute resource requirements.
Name | Type | Description | Required |
---|---|---|---|
[]object |
Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. This field is immutable. It can only be set for containers. |
false |
|
limits |
map[string]int or string |
Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
false |
requests |
map[string]int or string |
Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
false |
CqlConnectivity.spec.loadBalancers.podConfigs[index].resources.claims[index]
ResourceClaim references one entry in PodSpec.ResourceClaims.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. |
true |
CqlConnectivity.spec.loadBalancers.podConfigs[index].tolerations[index]
The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
Name | Type | Description | Required |
---|---|---|---|
effect |
string |
Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. |
false |
key |
string |
Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. |
false |
operator |
string |
Operator represents a key’s relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. |
false |
tolerationSeconds |
integer |
TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.
|
false |
value |
string |
Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. |
false |
CqlConnectivity.spec.loadBalancers.serviceConfig
Common configuration for all LoadBalancer services. This can be overridden by individual instances.
Name | Type | Description | Required |
---|---|---|---|
annotations |
map[string]string |
false |
|
labels |
map[string]string |
false |
CqlConnectivity.spec.loadBalancers.serviceConfigs[index]
CqlLoadBalancerService describes an individual LoadBalancer service. Note: we don’t provide a dedicated field to specify the service IP, since the corresponding field in the Kubernetes API is deprecated. If you want to set the IP, use provider-specific annotations instead.
Name | Type | Description | Required |
---|---|---|---|
annotations |
map[string]string |
false |
|
labels |
map[string]string |
false |
CqlConnectivity.status
Name | Type | Description | Required |
---|---|---|---|
[]object |
false |
||
loadBalancerIps |
[]string |
If the strategy is "LoadBalancers", the IPs of the LoadBalancer services. |
false |
size |
integer |
If the strategy is "LoadBalancers", the current number of services that have been created. |
false |
strategy |
string |
The strategy that is currently being used. |
false |
CqlConnectivity.status.conditions[index]
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
Name | Type | Description | Required |
---|---|---|---|
lastTransitionTime |
string |
lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
true |
message |
string |
message is a human readable message indicating details about the transition. This may be an empty string. |
true |
reason |
string |
reason contains a programmatic identifier indicating the reason for the condition’s last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. |
true |
status |
enum |
status of the condition, one of True, False, Unknown.
|
true |
type |
string |
type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) |
true |
observedGeneration |
integer |
observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
|
false |
DataApi
Name | Type | Description | Required |
---|---|---|---|
apiVersion |
string |
missioncontrol.datastax.com.v1alpha1 |
true |
kind |
string |
DataApi |
true |
object |
Refer to the Kubernetes API documentation for the fields of the |
true |
|
object |
DataApiSpec defines the desired state of DataApi |
false |
|
object |
false |
DataApi.spec
DataApiSpec defines the desired state of DataApi
Name | Type | Description | Required |
---|---|---|---|
object |
Affinity for the data api deployment |
false |
|
object |
LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. |
false |
|
object |
Image coordinates for the data api container |
false |
|
object |
Security context settings for the data api container |
false |
|
driverConfig |
string |
Data Api Driver Config content |
false |
[]object |
Environment variables to set in the data api container |
false |
|
object |
Security context settings for the data api pod |
false |
|
replicas |
integer |
|
false |
object |
Resource requirements for the data api container |
false |
|
serviceAccount |
string |
Service account to use for the data api deployment |
false |
object |
false |
||
[]object |
Tolerations for the data api deployment |
false |
DataApi.spec.affinity
Affinity for the data api deployment
Name | Type | Description | Required |
---|---|---|---|
object |
Describes node affinity scheduling rules for the pod. |
false |
|
object |
Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). |
false |
|
object |
Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). |
false |
DataApi.spec.affinity.nodeAffinity
Describes node affinity scheduling rules for the pod.
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. |
false |
|
object |
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. |
false |
DataApi.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it’s a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
Name | Type | Description | Required |
---|---|---|---|
object |
A node selector term, associated with the corresponding weight. |
true |
|
weight |
integer |
Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
|
true |
DataApi.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference
A node selector term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
[]object |
A list of node selector requirements by node’s labels. |
false |
|
[]object |
A list of node selector requirements by node’s fields. |
false |
DataApi.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference.matchExpressions[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference.matchFields[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node.
Name | Type | Description | Required |
---|---|---|---|
[]object |
Required. A list of node selector terms. The terms are ORed. |
true |
DataApi.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index]
A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
Name | Type | Description | Required |
---|---|---|---|
[]object |
A list of node selector requirements by node’s labels. |
false |
|
[]object |
A list of node selector requirements by node’s fields. |
false |
DataApi.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index].matchExpressions[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index].matchFields[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.podAffinity
Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. |
false |
|
[]object |
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. |
false |
DataApi.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
Name | Type | Description | Required |
---|---|---|---|
object |
Required. A pod affinity term, associated with the corresponding weight. |
true |
|
weight |
integer |
weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
|
true |
DataApi.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm
Required. A pod affinity term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
DataApi.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index]
Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
DataApi.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.podAntiAffinity
Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. |
false |
|
[]object |
If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. |
false |
DataApi.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
Name | Type | Description | Required |
---|---|---|---|
object |
Required. A pod affinity term, associated with the corresponding weight. |
true |
|
weight |
integer |
weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
|
true |
DataApi.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm
Required. A pod affinity term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
DataApi.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index]
Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
DataApi.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.spec.cassandraDatacenterRef
LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
DataApi.spec.containerImage
Image coordinates for the data api container
Name | Type | Description | Required |
---|---|---|---|
name |
string |
The image name to use. |
false |
pullPolicy |
enum |
The image pull policy to use. Defaults to "Always" if the tag is "latest", otherwise to "IfNotPresent".
|
false |
object |
The secret to use when pulling the image from private repositories. If specified, this secret will be passed to individual puller implementations for them to use. For example, in the case of Docker, only DockerConfig type secrets are honored. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod |
false |
|
registry |
string |
The Docker registry to use. Defaults to "docker.io", the official Docker Hub. |
false |
repository |
string |
The Docker repository to use. |
false |
tag |
string |
The image tag to use. Defaults to "latest".
|
false |
DataApi.spec.containerImage.pullSecretRef
The secret to use when pulling the image from private repositories. If specified, this secret will be passed to individual puller implementations for them to use. For example, in the case of Docker, only DockerConfig type secrets are honored. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
DataApi.spec.containerSecurityContext
Security context settings for the data api container
Name | Type | Description | Required |
---|---|---|---|
allowPrivilegeEscalation |
boolean |
AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. |
false |
object |
The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. |
false |
|
privileged |
boolean |
Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. |
false |
procMount |
string |
procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. |
false |
readOnlyRootFilesystem |
boolean |
Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. |
false |
runAsGroup |
integer |
The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
|
false |
runAsNonRoot |
boolean |
Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
runAsUser |
integer |
The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
|
false |
object |
The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. |
false |
DataApi.spec.containerSecurityContext.capabilities
The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
add |
[]string |
Added capabilities |
false |
drop |
[]string |
Removed capabilities |
false |
DataApi.spec.containerSecurityContext.seLinuxOptions
The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
level |
string |
Level is SELinux level label that applies to the container. |
false |
role |
string |
Role is a SELinux role label that applies to the container. |
false |
type |
string |
Type is a SELinux type label that applies to the container. |
false |
user |
string |
User is a SELinux user label that applies to the container. |
false |
DataApi.spec.containerSecurityContext.seccompProfile
The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
type |
string |
type indicates which kind of seccomp profile will be applied. Valid options are: Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. |
true |
localhostProfile |
string |
localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet’s configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. |
false |
DataApi.spec.containerSecurityContext.windowsOptions
The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux.
Name | Type | Description | Required |
---|---|---|---|
gmsaCredentialSpec |
string |
GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. |
false |
gmsaCredentialSpecName |
string |
GMSACredentialSpecName is the name of the GMSA credential spec to use. |
false |
hostProcess |
boolean |
HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod’s containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. |
false |
runAsUserName |
string |
The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
DataApi.spec.env[index]
EnvVar represents an environment variable present in a Container.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the environment variable. Must be a C_IDENTIFIER. |
true |
value |
string |
Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". |
false |
object |
Source for the environment variable’s value. Cannot be used if value is not empty. |
false |
DataApi.spec.env[index].valueFrom
Source for the environment variable’s value. Cannot be used if value is not empty.
Name | Type | Description | Required |
---|---|---|---|
object |
Selects a key of a ConfigMap. |
false |
|
object |
Selects a field of the pod: supports metadata.name, metadata.namespace, |
false |
|
object |
Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. |
false |
|
object |
Selects a key of a secret in the pod’s namespace |
false |
DataApi.spec.env[index].valueFrom.configMapKeyRef
Selects a key of a ConfigMap.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key to select. |
true |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
optional |
boolean |
Specify whether the ConfigMap or its key must be defined |
false |
DataApi.spec.env[index].valueFrom.fieldRef
Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels['<KEY>']
, metadata.annotations['<KEY>']
,
spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
Name | Type | Description | Required |
---|---|---|---|
fieldPath |
string |
Path of the field to select in the specified API version. |
true |
apiVersion |
string |
Version of the schema the FieldPath is written in terms of, defaults to "v1". |
false |
DataApi.spec.env[index].valueFrom.resourceFieldRef
Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
Name | Type | Description | Required |
---|---|---|---|
resource |
string |
Required: resource to select |
true |
containerName |
string |
Container name: required for volumes, optional for env vars |
false |
divisor |
int or string |
Specifies the output format of the exposed resources, defaults to "1" |
false |
DataApi.spec.env[index].valueFrom.secretKeyRef
Selects a key of a secret in the pod’s namespace
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key of the secret to select from. Must be a valid secret key. |
true |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
optional |
boolean |
Specify whether the Secret or its key must be defined |
false |
DataApi.spec.podSecurityContext
Security context settings for the data api pod
Name | Type | Description | Required |
---|---|---|---|
fsGroup |
integer |
A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod:
If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows.
|
false |
fsGroupChangePolicy |
string |
fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. Note that this field cannot be set when spec.os.name is windows. |
false |
runAsGroup |
integer |
The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
|
false |
runAsNonRoot |
boolean |
Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
runAsUser |
integer |
The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
|
false |
object |
The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. |
false |
|
supplementalGroups |
[]integer |
A list of groups applied to the first process run in each container, in addition to the container’s primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows. |
false |
[]object |
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The Windows specific settings applied to all containers. If unspecified, the options within a container’s SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. |
false |
DataApi.spec.podSecurityContext.seLinuxOptions
The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
level |
string |
Level is SELinux level label that applies to the container. |
false |
role |
string |
Role is a SELinux role label that applies to the container. |
false |
type |
string |
Type is a SELinux type label that applies to the container. |
false |
user |
string |
User is a SELinux user label that applies to the container. |
false |
DataApi.spec.podSecurityContext.seccompProfile
The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
type |
string |
type indicates which kind of seccomp profile will be applied. Valid options are: Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. |
true |
localhostProfile |
string |
localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet’s configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. |
false |
DataApi.spec.podSecurityContext.sysctls[index]
Sysctl defines a kernel parameter to be set
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of a property to set |
true |
value |
string |
Value of a property to set |
true |
DataApi.spec.podSecurityContext.windowsOptions
The Windows specific settings applied to all containers. If unspecified, the options within a container’s SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux.
Name | Type | Description | Required |
---|---|---|---|
gmsaCredentialSpec |
string |
GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. |
false |
gmsaCredentialSpecName |
string |
GMSACredentialSpecName is the name of the GMSA credential spec to use. |
false |
hostProcess |
boolean |
HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod’s containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. |
false |
runAsUserName |
string |
The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
DataApi.spec.resources
Resource requirements for the data api container
Name | Type | Description | Required |
---|---|---|---|
[]object |
Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. This field is immutable. It can only be set for containers. |
false |
|
limits |
map[string]int or string |
Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
false |
requests |
map[string]int or string |
Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
false |
DataApi.spec.resources.claims[index]
ResourceClaim references one entry in PodSpec.ResourceClaims.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. |
true |
DataApi.spec.tolerations[index]
The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
Name | Type | Description | Required |
---|---|---|---|
effect |
string |
Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. |
false |
key |
string |
Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. |
false |
operator |
string |
Operator represents a key’s relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. |
false |
tolerationSeconds |
integer |
TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.
|
false |
value |
string |
Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. |
false |
DataApi.status
Name | Type | Description | Required |
---|---|---|---|
[]object |
false |
||
error |
string |
Error is a human-readable message indicating an error condition |
false |
observedGeneration |
integer |
ObservedGeneration is the last observed generation of the DataApi by the owner operator
|
false |
DataApi.status.conditions[index]
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example,
type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// other fields }
Name | Type | Description | Required |
---|---|---|---|
lastTransitionTime |
string |
lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
true |
message |
string |
message is a human readable message indicating details about the transition. This may be an empty string. |
true |
reason |
string |
reason contains a programmatic identifier indicating the reason for the condition’s last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. |
true |
status |
enum |
status of the condition, one of True, False, Unknown.
|
true |
type |
string |
type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) |
true |
observedGeneration |
integer |
observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
|
false |
missioncontrol.datastax.com/v1beta2
Resource Types:
DataApi
Name | Type | Description | Required |
---|---|---|---|
apiVersion |
string |
missioncontrol.datastax.com.v1beta2 |
true |
kind |
string |
DataApi |
true |
object |
Refer to the Kubernetes API documentation for the fields of the |
true |
|
object |
Affinity for the data api deployment |
false |
|
object |
Image coordinates for the data api container |
false |
|
object |
Security context settings for the data api container |
false |
|
driverConfig |
string |
Data Api Driver Config content |
false |
enabled |
boolean |
Enable the data api deployment for each DC |
false |
[]object |
Environment variables to set in the data api container |
false |
|
object |
Security context settings for the data api pod |
false |
|
port |
integer |
Data API port
|
false |
replicas |
integer |
Number of replicas for the data api deployment
|
false |
object |
Resource requirements for the data api container |
false |
|
serviceAccount |
string |
Service account to use for the data api deployment |
false |
[]object |
Tolerations for the data api deployment |
false |
DataApi.affinity
Affinity for the data api deployment
Name | Type | Description | Required |
---|---|---|---|
object |
Describes node affinity scheduling rules for the pod. |
false |
|
object |
Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). |
false |
|
object |
Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). |
false |
DataApi.affinity.nodeAffinity
Describes node affinity scheduling rules for the pod.
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. |
false |
|
object |
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. |
false |
DataApi.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it’s a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
Name | Type | Description | Required |
---|---|---|---|
object |
A node selector term, associated with the corresponding weight. |
true |
|
weight |
integer |
Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
|
true |
DataApi.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference
A node selector term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
[]object |
A list of node selector requirements by node’s labels. |
false |
|
[]object |
A list of node selector requirements by node’s fields. |
false |
DataApi.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference.matchExpressions[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].preference.matchFields[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node.
Name | Type | Description | Required |
---|---|---|---|
[]object |
Required. A list of node selector terms. The terms are ORed. |
true |
DataApi.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index]
A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
Name | Type | Description | Required |
---|---|---|---|
[]object |
A list of node selector requirements by node’s labels. |
false |
|
[]object |
A list of node selector requirements by node’s fields. |
false |
DataApi.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index].matchExpressions[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[index].matchFields[index]
A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The label key that the selector applies to. |
true |
operator |
string |
Represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. |
true |
values |
[]string |
An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.podAffinity
Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. |
false |
|
[]object |
If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. |
false |
DataApi.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
Name | Type | Description | Required |
---|---|---|---|
object |
Required. A pod affinity term, associated with the corresponding weight. |
true |
|
weight |
integer |
weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
|
true |
DataApi.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm
Required. A pod affinity term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
DataApi.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index]
Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
DataApi.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.podAntiAffinity
Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
Name | Type | Description | Required |
---|---|---|---|
[]object |
The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. |
false |
|
[]object |
If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. |
false |
DataApi.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index]
The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
Name | Type | Description | Required |
---|---|---|---|
object |
Required. A pod affinity term, associated with the corresponding weight. |
true |
|
weight |
integer |
weight associated with matching the corresponding podAffinityTerm, in the range 1-100.
|
true |
DataApi.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm
Required. A pod affinity term, associated with the corresponding weight.
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
DataApi.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[index].podAffinityTerm.namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index]
Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running
Name | Type | Description | Required |
---|---|---|---|
topologyKey |
string |
This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. |
true |
object |
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods. |
false |
|
matchLabelKeys |
[]string |
MatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
mismatchLabelKeys |
[]string |
MismatchLabelKeys is a set of pod label keys to select which pods will
be taken into consideration. The keys are used to lookup values from the
incoming pod labels, those key-value labels are merged with |
false |
object |
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces. |
false |
|
namespaces |
[]string |
namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod’s namespace". |
false |
DataApi.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector
A label query over a set of resources, in this case pods. If it’s null, this PodAffinityTerm matches with no Pods.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].labelSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector
A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod’s namespace". An empty selector ({}) matches all namespaces.
Name | Type | Description | Required |
---|---|---|---|
[]object |
matchExpressions is a list of label selector requirements. The requirements are ANDed. |
false |
|
matchLabels |
map[string]string |
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. |
false |
DataApi.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[index].namespaceSelector.matchExpressions[index]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
key is the label key that the selector applies to. |
true |
operator |
string |
operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. |
true |
values |
[]string |
values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. |
false |
DataApi.containerImage
Image coordinates for the data api container
Name | Type | Description | Required |
---|---|---|---|
name |
string |
The image name to use. |
false |
pullPolicy |
enum |
The image pull policy to use. Defaults to "Always" if the tag is "latest", otherwise to "IfNotPresent".
|
false |
object |
The secret to use when pulling the image from private repositories. If specified, this secret will be passed to individual puller implementations for them to use. For example, in the case of Docker, only DockerConfig type secrets are honored. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod |
false |
|
registry |
string |
The Docker registry to use. Defaults to "docker.io", the official Docker Hub. |
false |
repository |
string |
The Docker repository to use. |
false |
tag |
string |
The image tag to use. Defaults to "latest".
|
false |
DataApi.containerImage.pullSecretRef
The secret to use when pulling the image from private repositories. If specified, this secret will be passed to individual puller implementations for them to use. For example, in the case of Docker, only DockerConfig type secrets are honored. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
DataApi.containerSecurityContext
Security context settings for the data api container
Name | Type | Description | Required |
---|---|---|---|
allowPrivilegeEscalation |
boolean |
AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. |
false |
object |
The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. |
false |
|
privileged |
boolean |
Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. |
false |
procMount |
string |
procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. |
false |
readOnlyRootFilesystem |
boolean |
Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. |
false |
runAsGroup |
integer |
The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
|
false |
runAsNonRoot |
boolean |
Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
runAsUser |
integer |
The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
|
false |
object |
The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. |
false |
DataApi.containerSecurityContext.capabilities
The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
add |
[]string |
Added capabilities |
false |
drop |
[]string |
Removed capabilities |
false |
DataApi.containerSecurityContext.seLinuxOptions
The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
level |
string |
Level is SELinux level label that applies to the container. |
false |
role |
string |
Role is a SELinux role label that applies to the container. |
false |
type |
string |
Type is a SELinux type label that applies to the container. |
false |
user |
string |
User is a SELinux user label that applies to the container. |
false |
DataApi.containerSecurityContext.seccompProfile
The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
type |
string |
type indicates which kind of seccomp profile will be applied. Valid options are: Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. |
true |
localhostProfile |
string |
localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet’s configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. |
false |
DataApi.containerSecurityContext.windowsOptions
The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux.
Name | Type | Description | Required |
---|---|---|---|
gmsaCredentialSpec |
string |
GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. |
false |
gmsaCredentialSpecName |
string |
GMSACredentialSpecName is the name of the GMSA credential spec to use. |
false |
hostProcess |
boolean |
HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod’s containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. |
false |
runAsUserName |
string |
The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
DataApi.env[index]
EnvVar represents an environment variable present in a Container.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the environment variable. Must be a C_IDENTIFIER. |
true |
value |
string |
Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". |
false |
object |
Source for the environment variable’s value. Cannot be used if value is not empty. |
false |
DataApi.env[index].valueFrom
Source for the environment variable’s value. Cannot be used if value is not empty.
Name | Type | Description | Required |
---|---|---|---|
object |
Selects a key of a ConfigMap. |
false |
|
object |
Selects a field of the pod: supports metadata.name, metadata.namespace, |
false |
|
object |
Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. |
false |
|
object |
Selects a key of a secret in the pod’s namespace |
false |
DataApi.env[index].valueFrom.configMapKeyRef
Selects a key of a ConfigMap.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key to select. |
true |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
optional |
boolean |
Specify whether the ConfigMap or its key must be defined |
false |
DataApi.env[index].valueFrom.fieldRef
Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels['<KEY>']
, metadata.annotations['<KEY>']
,
spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
Name | Type | Description | Required |
---|---|---|---|
fieldPath |
string |
Path of the field to select in the specified API version. |
true |
apiVersion |
string |
Version of the schema the FieldPath is written in terms of, defaults to "v1". |
false |
DataApi.env[index].valueFrom.resourceFieldRef
Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
Name | Type | Description | Required |
---|---|---|---|
resource |
string |
Required: resource to select |
true |
containerName |
string |
Container name: required for volumes, optional for env vars |
false |
divisor |
int or string |
Specifies the output format of the exposed resources, defaults to "1" |
false |
DataApi.env[index].valueFrom.secretKeyRef
Selects a key of a secret in the pod’s namespace
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key of the secret to select from. Must be a valid secret key. |
true |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
optional |
boolean |
Specify whether the Secret or its key must be defined |
false |
DataApi.podSecurityContext
Security context settings for the data api pod
Name | Type | Description | Required |
---|---|---|---|
fsGroup |
integer |
A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod:
If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows.
|
false |
fsGroupChangePolicy |
string |
fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. Note that this field cannot be set when spec.os.name is windows. |
false |
runAsGroup |
integer |
The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
|
false |
runAsNonRoot |
boolean |
Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
runAsUser |
integer |
The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
|
false |
object |
The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. |
false |
|
supplementalGroups |
[]integer |
A list of groups applied to the first process run in each container, in addition to the container’s primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows. |
false |
[]object |
Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows. |
false |
|
object |
The Windows specific settings applied to all containers. If unspecified, the options within a container’s SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. |
false |
DataApi.podSecurityContext.seLinuxOptions
The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
level |
string |
Level is SELinux level label that applies to the container. |
false |
role |
string |
Role is a SELinux role label that applies to the container. |
false |
type |
string |
Type is a SELinux type label that applies to the container. |
false |
user |
string |
User is a SELinux user label that applies to the container. |
false |
DataApi.podSecurityContext.seccompProfile
The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows.
Name | Type | Description | Required |
---|---|---|---|
type |
string |
type indicates which kind of seccomp profile will be applied. Valid options are: Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. |
true |
localhostProfile |
string |
localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet’s configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. |
false |
DataApi.podSecurityContext.sysctls[index]
Sysctl defines a kernel parameter to be set
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of a property to set |
true |
value |
string |
Value of a property to set |
true |
DataApi.podSecurityContext.windowsOptions
The Windows specific settings applied to all containers. If unspecified, the options within a container’s SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux.
Name | Type | Description | Required |
---|---|---|---|
gmsaCredentialSpec |
string |
GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. |
false |
gmsaCredentialSpecName |
string |
GMSACredentialSpecName is the name of the GMSA credential spec to use. |
false |
hostProcess |
boolean |
HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod’s containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. |
false |
runAsUserName |
string |
The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. |
false |
DataApi.resources
Resource requirements for the data api container
Name | Type | Description | Required |
---|---|---|---|
[]object |
Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. This field is immutable. It can only be set for containers. |
false |
|
limits |
map[string]int or string |
Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
false |
requests |
map[string]int or string |
Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
false |
DataApi.resources.claims[index]
ResourceClaim references one entry in PodSpec.ResourceClaims.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. |
true |
DataApi.tolerations[index]
The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
Name | Type | Description | Required |
---|---|---|---|
effect |
string |
Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. |
false |
key |
string |
Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. |
false |
operator |
string |
Operator represents a key’s relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. |
false |
tolerationSeconds |
integer |
TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system.
|
false |
value |
string |
Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. |
false |
MissionControlCluster
MissionControlCluster is the Schema for the missioncontrolclusters API
Name | Type | Description | Required |
---|---|---|---|
apiVersion |
string |
missioncontrol.datastax.com.v1beta2 |
true |
kind |
string |
MissionControlCluster |
true |
object |
Refer to the Kubernetes API documentation for the fields of the |
true |
|
object |
MissionControlClusterSpec defines the desired state of MissionControlCluster. |
false |
|
object |
MissionControlClusterStatus defines the observed state of MissionControlCluster. |
false |
MissionControlCluster.spec
MissionControlClusterSpec defines the desired state of MissionControlCluster.
Name | Type | Description | Required |
---|---|---|---|
object |
Spec for the K8ssandraCluster that will be created as part of this MissionControlCluster. |
true |
|
createIssuer |
boolean |
When true, create a self signed issuer to sign all downstream certificates. If false, a custom issuerRef may be specified in the encryption.internodeEncyption.certs.certTemplate.issuerRef field.
|
false |
object |
Settings for enabling and configuring the Data API |
false |
|
object |
|
false |
MissionControlCluster.spec.k8ssandra
Spec for the K8ssandraCluster that will be created as part of this MissionControlCluster.
Name | Type | Description | Required |
---|---|---|---|
auth |
boolean |
Whether to enable authentication in this cluster. The default is true; it is highly recommended to always leave authentication turned on. When enabled, authentication will be enforced not only on Cassandra nodes, but also on Reaper, Medusa and Stargate nodes, if any.
|
false |
object |
Cassandra is a specification of the Cassandra cluster. This includes everything from the number of datacenters, the k8s cluster where each DC should be deployed, node affinity (via racks), individual C* node settings, JVM settings, and more. |
false |
|
externalDatacenters |
[]string |
During a migration the operator should alter keyspaces replication settings including the following external DCs. This avoids removing replicas from datacenters which are outside of the operator scope (not referenced in the CR). Replication settings changes will only apply to system_* keyspaces as well as reaper_db and data_endpoint_auth (Stargate). |
false |
object |
Medusa defines the desired deployment characteristics for Medusa in this K8ssandraCluster. If this is non-nil, Medusa will be deployed in every Cassandra pod in this K8ssandraCluster. |
false |
|
object |
Reaper defines the desired deployment characteristics for Reaper in this K8ssandraCluster. If this is non-nil, Reaper might be deployed on every Cassandra datacenter in this K8ssandraCluster, unless there is a Control Plane Reaper present. In that case, the K8ssandraCluster will get registered to it. |
false |
|
secretsProvider |
enum |
SecretsProvider defines whether the secrets used for credentials and certs will be backed by an external secret backend (e.g. vault). This moves the responsibility of generating and storing secrets from the operators to the user and will rely on a mutating webhook to inject the secrets into the necessary resources
|
false |
object |
Stargate defines the desired deployment characteristics for Stargate in this K8ssandraCluster. If this is non-nil, Stargate will be deployed on every Cassandra datacenter in this K8ssandraCluster. |
false |
MissionControlCluster.spec.k8ssandra.cassandra
Cassandra is a specification of the Cassandra cluster. This includes everything from the number of datacenters, the k8s cluster where each DC should be deployed, node affinity (via racks), individual C* node settings, JVM settings, and more.
Name | Type | Description | Required |
---|---|---|---|
additionalSeeds |
[]string |
AdditionalSeeds specifies Cassandra node IPs for an existing datacenter. This is primarily intended for migrations from an existing Cassandra cluster that is not managed by k8ssandra-operator. Note that this property should NOT be used to set seeds for a DC that is or will be managed by k8ssandra-operator. k8ssandra-operator already manages seeds for DCs that it manages. If you have DNS set up such that you can resolve hostnames for the remote Cassandra cluster, then you can specify hostnames here; otherwise, use IP addresses. |
false |
object |
CDC defines the desired state for CDC integrations. It can be used to feed mutation events from Cassandra into an Apache Pulsar cluster, from where they can be expored to external systems. |
false |
|
object |
Client encryption stores which are used by Cassandra and Reaper. |
false |
|
clusterName |
string |
Override the Cassandra cluster name. If unspecified, the cluster name will be the same as the K8ssandraCluster CRD name. |
false |
object |
CassandraConfig contains configuration settings that are applied to cassandra.yaml, dse.yaml and the various jvm*.options files. |
false |
|
[]object |
Containers defines containers to be deployed in each Cassandra pod. K8ssandra-operator and cass-operator will create their own containers, which can be referenced here to override specific settings, such as mounts or resources request/limits for example. Example: containers: - name: server-system-logger - name: custom-container image: busybox - name: cassandra |
false |
|
datacenterName |
string |
DatacenterName allows to override the name of the Cassandra datacenter. Kubernetes objects will be named after a sanitized version of it if set, and if not metadata.name. In Cassandra the DC name will be overridden by this value. It may generate some confusion as objects created for the DC will have a different name than the CasandraDatacenter object itself. This setting can create conflicts if multiple DCs coexist in the same namespace if metadata.name for a DC with no override is set to the same value as the override name of another DC. Use cautiously. |
false |
[]object |
Datacenters a list of the DCs in the cluster. |
false |
|
object |
false |
||
object |
Volumes defines additional volumes to be added to each Cassandra pod. If the volume uses a PersistentVolumeClaim, the PVC will be managed by the statefulset. |
false |
|
[]object |
InitContainers defines init-containers to be deployed in each Cassandra pod. K8ssandra-operator and cass-operator will create their own init-containers, which can be referenced here to control ordering or override specific settings such as mounts or resources request/limits for example. Only the name of the k8ssandra-operator/cass-operator init-containers is required, not their full definition which will be created by the operators. Example: initContainers: - name: server-config-init - name: custom-init-container image: busybox - name: medusa-restore Otherwise init-containers referenced here will be injected in first position |
false |
|
object |
Deprecated: JMX security is now based on CQL roles. We don’t need an init container to configure JMX authentication anymore. The value of this field will be ignored. |
false |
|
object |
ManagementApiAuth defines the authentication settings for the management API in the Cassandra pods. |
false |
|
object |
Struct to hold labels and annotations for the top-level Cassandra cluster definition. |
false |
|
mgmtAPIHeap |
int or string |
MgmtAPIHeap defines the amount of memory devoted to the management api heap. |
false |
object |
Networking enables host networking and configures a NodePort ports. |
false |
|
perNodeConfigInitContainerImage |
string |
The image to use in each Cassandra pod for the (short-lived) init container that merges global and perNodeConfig configuration. This is only useful when PerNodeConfigMapRef is set. The default is "mikefarah/yq:4".
|
false |
object |
PodSecurityContext defines the security context for the Cassandra pods. |
false |
|
[]object |
Racks is a list of named racks. Note that racks are used to create node affinity. // |
false |
|
readOnlyRootFilesystem |
boolean |
ReadOnlyRootFilesystem makes the cassandra container to be run with a read-only root filesystem. Currently only functional when used with the new k8ssandra-client config builder (Cassandra 4.1 and newer and HCD) |
false |
object |
Resources is the cpu and memory resources for the cassandra container. |
false |
|
object |
Internode encryption stores which are used by Cassandra and Stargate. |
false |
|
serverImage |
string |
ServerImage is the image for the cassandra container. Note that this should be a management-api image. If left empty the operator will choose a default image based on ServerVersion. |
false |
serverType |
enum |
Server type: "cassandra" or "dse".
|
false |
serverVersion |
string |
ServerVersion is the Cassandra or DSE version. The following versions are supported: - Cassandra: 3.11.X, 4.X.X and 5.X.X - DSE: 6.8.X, 7.x.x - HCD: 1.0.x |
false |
serviceAccount |
string |
The k8s service account to use for the Cassandra pods |
false |
softPodAntiAffinity |
boolean |
SoftPodAntiAffinity sets whether multiple Cassandra instances can be scheduled on the same node. This should normally be false to ensure cluster resilience but may be set true for test/dev scenarios to minimise the number of nodes required. |
false |
object |
StorageConfig is the persistent storage requirements for each Cassandra pod. This includes everything under /var/lib/cassandra, namely the commit log and data directories. |
false |
|
object |
The reference to the superuser secret to use for Cassandra. If unspecified, a default secret will be generated with a random password; the generated secret name will be "<cluster_name>-superuser" where <cluster_name> is the K8ssandraCluster CRD name. |
false |
|
object |
Telemetry defines the desired state for telemetry resources in this datacenter. If telemetry configurations are defined, telemetry resources will be deployed to integrate with a user-provided monitoring solution (at present, only support for Prometheus is available). |
false |
|
[]object |
Tolerations applied to every Cassandra pod. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.cdc
CDC defines the desired state for CDC integrations. It can be used to feed mutation events from Cassandra into an Apache Pulsar cluster, from where they can be expored to external systems.
Name | Type | Description | Required |
---|---|---|---|
pulsarServiceUrl |
string |
true |
|
cdcConcurrentProcessors |
integer |
false |
|
cdcPollIntervalM |
integer |
false |
|
cdcWorkingDir |
string |
false |
|
errorCommitLogReprocessEnabled |
boolean |
false |
|
pulsarAuthParams |
string |
false |
|
pulsarAuthPluginClassName |
string |
false |
|
pulsarBatchDelayInMs |
integer |
false |
|
pulsarKeyBasedBatcher |
boolean |
false |
|
pulsarMaxPendingMessages |
integer |
false |
|
pulsarMaxPendingMessagesAcrossPartitions |
integer |
false |
|
sslAllowInsecureConnection |
string |
false |
|
sslCipherSuites |
string |
false |
|
sslEnabledProtocols |
string |
false |
|
sslHostnameVerificationEnable |
string |
false |
|
sslKeystorePassword |
string |
false |
|
sslKeystorePath |
string |
false |
|
sslProvider |
string |
false |
|
sslTruststorePassword |
string |
false |
|
sslTruststorePath |
string |
false |
|
sslTruststoreType |
string |
false |
|
topicPrefix |
string |
false |
MissionControlCluster.spec.k8ssandra.cassandra.clientEncryptionStores
Client encryption stores which are used by Cassandra and Reaper.
Name | Type | Description | Required |
---|---|---|---|
object |
ref to the secret that contains the keystore and optionally its password (which can also be specified through the keystorePasswordSecretRef field) if keys are not specified, "keystore" entry and a "keystore-password" entry will be used |
true |
|
object |
ref to the secret that contains the truststore and optionally its password (which can also be specified through the truststorePasswordSecretRef field) if keys are not specified explicitly, "keystore" entry and a "keystore-password" entry will be used |
true |
|
object |
ref to the secret that contains the keystore password if password stored in different secret than keystoreSecretRef if key isn’t specified explicitly, "keystore-password" entry will be used |
false |
|
object |
ref to the secret that contains the truststore password if password stored in different secret than keystoreSecretRef if key isn’t specified explicitly, "truststore-password" entry will be used |
false |
MissionControlCluster.spec.k8ssandra.cassandra.clientEncryptionStores.keystoreSecretRef
ref to the secret that contains the keystore and optionally its password (which can also be specified through the keystorePasswordSecretRef field) if keys are not specified, "keystore" entry and a "keystore-password" entry will be used
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key of the entry in the Secret resource’s |
false |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
MissionControlCluster.spec.k8ssandra.cassandra.clientEncryptionStores.truststoreSecretRef
ref to the secret that contains the truststore and optionally its password (which can also be specified through the truststorePasswordSecretRef field) if keys are not specified explicitly, "keystore" entry and a "keystore-password" entry will be used
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key of the entry in the Secret resource’s |
false |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
MissionControlCluster.spec.k8ssandra.cassandra.clientEncryptionStores.keystorePasswordSecretRef
ref to the secret that contains the keystore password if password stored in different secret than keystoreSecretRef if key isn’t specified explicitly, "keystore-password" entry will be used
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key of the entry in the Secret resource’s |
false |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
MissionControlCluster.spec.k8ssandra.cassandra.clientEncryptionStores.truststorePasswordSecretRef
ref to the secret that contains the truststore password if password stored in different secret than keystoreSecretRef if key isn’t specified explicitly, "truststore-password" entry will be used
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key of the entry in the Secret resource’s |
false |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
MissionControlCluster.spec.k8ssandra.cassandra.config
CassandraConfig contains configuration settings that are applied to cassandra.yaml, dse.yaml and the various jvm*.options files.
Name | Type | Description | Required |
---|---|---|---|
cassandraYaml |
object |
false |
|
dseYaml |
object |
false |
|
object |
false |
MissionControlCluster.spec.k8ssandra.cassandra.config.jvmOptions
Name | Type | Description | Required |
---|---|---|---|
additionalJvm11ServerOptions |
[]string |
Jvm11ServerOptions are additional options that will be passed on to the jvm11-server-options file. |
false |
additionalJvm8ServerOptions |
[]string |
Jvm8ServerOptions are additional options that will be passed on to the jvm8-server-options file. |
false |
additionalJvmServerOptions |
[]string |
JvmServerOptions are additional options that will be passed on to the jvm-server-options file. |
false |
additionalOptions |
[]string |
Additional, arbitrary JVM options which are written into the cassandra-env.sh file. |
false |
cassandra_available_processors |
integer |
Available CPU processors. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dcassandra.available_processors. |
false |
cassandra_disable_auth_caches_remote_configuration |
boolean |
Disable remote configuration via JMX of auth caches. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dcassandra.disable_auth_caches_remote_configuration. |
false |
cassandra_expiration_date_overflow_policy |
string |
Defines how to handle INSERT requests with TTL exceeding the maximum supported expiration
date.
Possible values include |
false |
cassandra_force_3_0_protocol_version |
boolean |
Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -Dcassandra.force_3_0_protocol_version=true. |
false |
cassandra_force_default_indexing_page_size |
boolean |
Disable dynamic calculation of the page size used when indexing an entire partition (during initial index build/rebuild). Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dcassandra.force_default_indexing_page_size. |
false |
cassandra_max_hint_ttl_seconds |
integer |
Imposes an upper bound on hint lifetime below the normal min gc_grace_seconds. Disabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dcassandra.maxHintTTL. |
false |
cassandra_metrics_reporter_config_file |
string |
Enable pluggable metrics reporter. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dcassandra.metricsReporterConfigFile. TODO mountable directory |
false |
cassandra_ring_delay_ms |
integer |
Amount of time in milliseconds that a node waits before joining the ring. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dcassandra.ring_delay_ms. |
false |
cassandra_triggers_directory |
string |
Default location for the trigger JARs. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dcassandra.triggers_dir. TODO mountable directory |
false |
cassandra_write_survey |
boolean |
For testing new compaction and compression strategies. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dcassandra.write_survey. |
false |
debug_disable_contended_annotations |
boolean |
Disable honoring user code @Contended annotations. Enabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:-RestrictContended. |
false |
debug_enable_flight_recorder |
boolean |
Enable Flight Recorder (Use in production is subject to Oracle licensing). Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+FlightRecorder. |
false |
debug_listen_remote_debuggers |
boolean |
Listen for JVM remote debuggers on port 1414. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1414". |
false |
debug_log_compilation |
boolean |
Make Cassandra JVM log internal method compilation (developers only). Disabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+LogCompilation. |
false |
debug_non_safepoints |
boolean |
Whether the compiler should generate the necessary metadata for the parts of the code not at safe points as well. For use with Flight Recorder. Enabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+DebugNonSafepoints. |
false |
debug_preserve_frame_pointer |
boolean |
Preserve Frame Pointer. Enabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+PreserveFramePointer. |
false |
debug_unlock_commercial_features |
boolean |
Unlock commercial features. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+UnlockCommercialFeatures. |
false |
debug_unlock_diagnostic_vm_options |
boolean |
Enabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+UnlockDiagnosticVMOptions. |
false |
gc |
enum |
The name of the garbage collector to use. Depending on the Cassandra version, not all values are supported: Cassandra 3.11 supports only G1GC and CMS; Cassandra 4.0 supports G1GC, ZGC, Shenandoah and Graal. This option will unlock the corresponding garbage collector with a default configuration; to further tune the GC settings, use the additional JVM options field. Use the special value Custom if you intend to use non-standard garbage collectors. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm11-server.options.
|
false |
gc_cms_heap_size_young_generation |
int or string |
Disabled by default. Can only be used when CMS garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -Xmn. |
false |
gc_cms_initiating_occupancy_fraction |
integer |
Defaults to 75. Can only be used when CMS garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:CMSInitiatingOccupancyFraction.
|
false |
gc_cms_max_tenuring_threshold |
integer |
Defaults to 1. Can only be used when CMS garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:MaxTenuringThreshold. |
false |
gc_cms_survivor_ratio |
integer |
Defaults to 8. Can only be used when CMS garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:SurvivorRatio. |
false |
gc_cms_wait_duration_ms |
integer |
Defaults to 10000. Can only be used when CMS garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:CMSWaitDuration. |
false |
gc_g1_conc_threads |
integer |
Concurrent GC Threads. Can only be used when G1 garbage collector is used. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm11-server.options. Corresponds to: -XX:ConcGCThreads. |
false |
gc_g1_initiating_heap_occupancy_percent |
integer |
Initiating Heap Occupancy Percentage. Can only be used when G1 garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm11-server.options. Corresponds to: -XX:InitiatingHeapOccupancyPercent.
|
false |
gc_g1_max_gc_pause_ms |
integer |
G1GC Max GC Pause in milliseconds. Defaults to 500. Can only be used when G1 garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm11-server.options. Corresponds to: -XX:MaxGCPauseMillis. |
false |
gc_g1_parallel_threads |
integer |
Parallel GC Threads. Can only be used when G1 garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm11-server.options. Corresponds to: -XX:ParallelGCThreads. |
false |
gc_g1_rset_updating_pause_time_percent |
integer |
G1GC Updating Pause Time Percentage. Defaults to 5. Can only be used when G1 garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm11-server.options. Corresponds to: -XX:G1RSetUpdatingPauseTimePercent.
|
false |
gc_print_application_stopped_time |
boolean |
Print GC Application Stopped Time. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:+PrintGCApplicationStoppedTime. |
false |
gc_print_date_stamps |
boolean |
Print GC Date Stamps. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:+PrintGCDateStamps. |
false |
gc_print_details |
boolean |
Print GC details. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:+PrintGCDetails. |
false |
gc_print_flss_statistics |
boolean |
Print FLSS Statistics. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:PrintFLSStatistics=1. |
false |
gc_print_heap |
boolean |
Print Heap at GC. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:+PrintHeapAtGC. |
false |
gc_print_log_file_size |
int or string |
Size of each log file. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:GCLogFileSize. |
false |
gc_print_number_of_log_files |
integer |
Number of GC log files. Disabled by default. Can only be used when the G1 garbage collector is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:NumberOfGCLogFiles. |
false |
gc_print_promotion_failure |
boolean |
Print promotion failure. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:+PrintPromotionFailure. |
false |
gc_print_tenuring_distribution |
boolean |
Print tenuring distribution. Defaults to false. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:+PrintTenuringDistribution. |
false |
gc_print_use_log_file |
boolean |
Whether to print GC logs to /var/log/cassandra/gc.log. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -Xloggc:/var/log/cassandra/gc.log. |
false |
gc_print_use_log_file_rotation |
boolean |
Use GC Log File Rotation. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:+UseGCLogFileRotation. |
false |
heapNewGenSize |
int or string |
Deprecated. Use gc_cms_heap_size_young_generation instead. Valid for CMS garbage collector only + Cassandra 3.11. |
false |
heapSize |
int or string |
Deprecated. Use heap_initial_size and heap_max_size instead. If this field is defined, it applies to both max_heap_size and initial_heap_size. |
false |
heap_initial_size |
int or string |
Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Xms. |
false |
heap_max_size |
int or string |
Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Xmx. |
false |
jdk_allow_attach_self |
boolean |
Allow the current VM to attach to itself. Defaults to true. Cass Config Builder: supported for Cassandra 4.0 in jvm11-server.options. Corresponds to: -Djdk.attach.allowAttachSelf=true. |
false |
jmx_connection_type |
string |
Cass Config Builder: supported for Cassandra 3.11 in jvm.options.
Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options.
Possible values for 3.11 include |
false |
jmx_port |
integer |
Disabled by default. Defaults to 7199. TODO Make Reaper aware of the JMX port if a non-default port is used. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. |
false |
jmx_remote_ssl |
boolean |
Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Defaults to false. Valid only when JmxConnectionType is "remote-no-auth", "remote-dse-unified-auth". |
false |
jmx_remote_ssl_opts |
string |
Remote SSL options. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. |
false |
jmx_remote_ssl_require_client_auth |
boolean |
Require Client Authentication for remote SSL? Defaults to false. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. |
false |
netty_eventloop_maxpendingtasks |
integer |
Defaults to 65536. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dio.netty.eventLoop.maxPendingTasks. |
false |
netty_try_reflection_set_accessible |
boolean |
Netty setting |
false |
nio_align_direct_memory |
boolean |
Align direct memory allocations on page boundaries. Enabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dsun.nio.PageAlignDirectMemory=true. |
false |
nio_maxcachedbuffersize |
int or string |
Defaults to 1048576. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Djdk.nio.maxCachedBufferSize. |
false |
vm_always_pre_touch |
boolean |
Ensure all memory is faulted and zeroed on startup. Enabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+AlwaysPreTouch. |
false |
vm_crash_on_out_of_memory_error |
boolean |
Disabled by default. Requires |
false |
vm_disable_biased_locking |
boolean |
Disable biased locking to avoid biased lock revocation pauses. Disabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:-UseBiasedLocking. Note: the Cass Config Builder option is named use_biased_locking, but setting it to true disables biased locking. |
false |
vm_disable_perf_shared_mem |
boolean |
Disable hsperfdata mmap’ed file. Enabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+PerfDisableSharedMem. |
false |
vm_enable_assertions |
boolean |
Enable assertions. Enabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -ea. |
false |
vm_enable_non_root_thread_priority |
boolean |
Enable lowering thread priority without being root on linux. See CASSANDRA-1181 for details. Enabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Corresponds to: -XX:ThreadPriorityPolicy=42. |
false |
vm_enable_thread_priorities |
boolean |
Enable thread priorities. Enabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+UseThreadPriorities. |
false |
vm_exit_on_out_of_memory_error |
boolean |
Disabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+ExitOnOutOfMemoryError. |
false |
vm_guaranteed_safepoint_interval_ms |
integer |
Defaults to 300000 milliseconds. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:GuaranteedSafepointInterval. |
false |
vm_heap_dump_on_out_of_memory_error |
boolean |
Enabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+HeapDumpOnOutOfMemoryError. |
false |
vm_per_thread_stack_size |
int or string |
Per-thread stack size. Defaults to 256Ki. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Xss. |
false |
vm_prefer_ipv4 |
boolean |
Prefer binding to IPv4 network interfaces. Enabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Djava.net.preferIPv4Stack=true. |
false |
vm_print_heap_histogram_on_out_of_memory_error |
boolean |
Disabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -Dcassandra.printHeapHistogramOnOutOfMemoryError. |
false |
vm_resize_tlab |
boolean |
Allow resizing of thread-local allocation blocks. Enabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+ResizeTLAB. |
false |
vm_string_table_size |
int or string |
The size of interned string table. Larger sizes are beneficial to gossip. Defaults to 1000003. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:StringTableSize. |
false |
vm_use_numa |
boolean |
Enabled by default. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+UseNUMA. |
false |
vm_use_tlab |
boolean |
Enable thread-local allocation blocks. Enabled by default. Cass Config Builder: supported for Cassandra 3.11 in jvm.options. Cass Config Builder: supported for Cassandra 4.0 in jvm-server.options. Corresponds to: -XX:+UseTLAB. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index]
A single application container that you want to run within a pod.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated. |
true |
args |
[]string |
Arguments to the entrypoint. The container image’s CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container’s environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
false |
command |
[]string |
Entrypoint array. Not executed within a shell. The container image’s ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container’s environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
false |
[]object |
List of environment variables to set in the container. Cannot be updated. |
false |
|
[]object |
List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. |
false |
|
image |
string |
Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. |
false |
imagePullPolicy |
string |
Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images |
false |
object |
Actions that the management system should take in response to container lifecycle events. Cannot be updated. |
false |
|
object |
Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
false |
|
[]object |
List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated. |
false |
|
object |
Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
false |
|
[]object |
Resources resize policy for the container. |
false |
|
object |
Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
false |
|
restartPolicy |
string |
RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is "Always". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod’s restart policy and the container type. Setting the RestartPolicy as "Always" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy "Always" will be shut down. This lifecycle differs from normal init containers and is often referred to as a "sidecar" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed. |
false |
object |
SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ |
false |
|
object |
StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod’s lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
false |
|
stdin |
boolean |
Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. |
false |
stdinOnce |
boolean |
Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false |
false |
terminationMessagePath |
string |
Optional: Path at which the file to which the container’s termination message will be written is mounted into the container’s filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. |
false |
terminationMessagePolicy |
string |
Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. |
false |
tty |
boolean |
Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. |
false |
[]object |
volumeDevices is the list of block devices to be used by the container. |
false |
|
[]object |
Pod volumes to mount into the container’s filesystem. Cannot be updated. |
false |
|
workingDir |
string |
Container’s working directory. If not specified, the container runtime’s default will be used, which might be configured in the container image. Cannot be updated. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].env[index]
EnvVar represents an environment variable present in a Container.
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the environment variable. Must be a C_IDENTIFIER. |
true |
value |
string |
Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". |
false |
object |
Source for the environment variable’s value. Cannot be used if value is not empty. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].env[index].valueFrom
Source for the environment variable’s value. Cannot be used if value is not empty.
Name | Type | Description | Required |
---|---|---|---|
object |
Selects a key of a ConfigMap. |
false |
|
object |
Selects a field of the pod: supports metadata.name, metadata.namespace, |
false |
|
object |
Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. |
false |
|
object |
Selects a key of a secret in the pod’s namespace |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].env[index].valueFrom.configMapKeyRef
Selects a key of a ConfigMap.
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key to select. |
true |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
optional |
boolean |
Specify whether the ConfigMap or its key must be defined |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].env[index].valueFrom.fieldRef
Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels['<KEY>']
, metadata.annotations['<KEY>']
,
spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
Name | Type | Description | Required |
---|---|---|---|
fieldPath |
string |
Path of the field to select in the specified API version. |
true |
apiVersion |
string |
Version of the schema the FieldPath is written in terms of, defaults to "v1". |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].env[index].valueFrom.resourceFieldRef
Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.
Name | Type | Description | Required |
---|---|---|---|
resource |
string |
Required: resource to select |
true |
containerName |
string |
Container name: required for volumes, optional for env vars |
false |
divisor |
int or string |
Specifies the output format of the exposed resources, defaults to "1" |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].env[index].valueFrom.secretKeyRef
Selects a key of a secret in the pod’s namespace
Name | Type | Description | Required |
---|---|---|---|
key |
string |
The key of the secret to select from. Must be a valid secret key. |
true |
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
optional |
boolean |
Specify whether the Secret or its key must be defined |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].envFrom[index]
EnvFromSource represents the source of a set of ConfigMaps
Name | Type | Description | Required |
---|---|---|---|
object |
The ConfigMap to select from |
false |
|
prefix |
string |
An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. |
false |
object |
The Secret to select from |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].envFrom[index].configMapRef
The ConfigMap to select from
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
optional |
boolean |
Specify whether the ConfigMap must be defined |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].envFrom[index].secretRef
The Secret to select from
Name | Type | Description | Required |
---|---|---|---|
name |
string |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
false |
optional |
boolean |
Specify whether the Secret must be defined |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle
Actions that the management system should take in response to container lifecycle events. Cannot be updated.
Name | Type | Description | Required |
---|---|---|---|
object |
PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
false |
|
object |
PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod’s termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod’s termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.postStart
PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
Name | Type | Description | Required |
---|---|---|---|
object |
Exec specifies the action to take. |
false |
|
object |
HTTPGet specifies the http request to perform. |
false |
|
object |
Sleep represents the duration that the container should sleep before being terminated. |
false |
|
object |
Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.postStart.exec
Exec specifies the action to take.
Name | Type | Description | Required |
---|---|---|---|
command |
[]string |
Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container’s filesystem. The command is simply exec’d, it is not run inside a shell, so traditional shell instructions (' |
', etc) won’t work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.postStart.httpGet
HTTPGet specifies the http request to perform.
Name | Type | Description | Required |
---|---|---|---|
port |
int or string |
Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. |
true |
host |
string |
Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. |
false |
[]object |
Custom headers to set in the request. HTTP allows repeated headers. |
false |
|
path |
string |
Path to access on the HTTP server. |
false |
scheme |
string |
Scheme to use for connecting to the host. Defaults to HTTP. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.postStart.httpGet.httpHeaders[index]
HTTPHeader describes a custom header to be used in HTTP probes
Name | Type | Description | Required |
---|---|---|---|
name |
string |
The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. |
true |
value |
string |
The header field value |
true |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.postStart.sleep
Sleep represents the duration that the container should sleep before being terminated.
Name | Type | Description | Required |
---|---|---|---|
seconds |
integer |
Seconds is the number of seconds to sleep.
|
true |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.postStart.tcpSocket
Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified.
Name | Type | Description | Required |
---|---|---|---|
port |
int or string |
Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. |
true |
host |
string |
Optional: Host name to connect to, defaults to the pod IP. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.preStop
PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod’s termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod’s termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
Name | Type | Description | Required |
---|---|---|---|
object |
Exec specifies the action to take. |
false |
|
object |
HTTPGet specifies the http request to perform. |
false |
|
object |
Sleep represents the duration that the container should sleep before being terminated. |
false |
|
object |
Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.preStop.exec
Exec specifies the action to take.
Name | Type | Description | Required |
---|---|---|---|
command |
[]string |
Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container’s filesystem. The command is simply exec’d, it is not run inside a shell, so traditional shell instructions (' |
', etc) won’t work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.preStop.httpGet
HTTPGet specifies the http request to perform.
Name | Type | Description | Required |
---|---|---|---|
port |
int or string |
Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. |
true |
host |
string |
Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. |
false |
[]object |
Custom headers to set in the request. HTTP allows repeated headers. |
false |
|
path |
string |
Path to access on the HTTP server. |
false |
scheme |
string |
Scheme to use for connecting to the host. Defaults to HTTP. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.preStop.httpGet.httpHeaders[index]
HTTPHeader describes a custom header to be used in HTTP probes
Name | Type | Description | Required |
---|---|---|---|
name |
string |
The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. |
true |
value |
string |
The header field value |
true |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.preStop.sleep
Sleep represents the duration that the container should sleep before being terminated.
Name | Type | Description | Required |
---|---|---|---|
seconds |
integer |
Seconds is the number of seconds to sleep.
|
true |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].lifecycle.preStop.tcpSocket
Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified.
Name | Type | Description | Required |
---|---|---|---|
port |
int or string |
Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. |
true |
host |
string |
Optional: Host name to connect to, defaults to the pod IP. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].livenessProbe
Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
Name | Type | Description | Required |
---|---|---|---|
object |
Exec specifies the action to take. |
false |
|
failureThreshold |
integer |
Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
|
false |
object |
GRPC specifies an action involving a GRPC port. |
false |
|
object |
HTTPGet specifies the http request to perform. |
false |
|
initialDelaySeconds |
integer |
Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
|
false |
periodSeconds |
integer |
How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.
|
false |
successThreshold |
integer |
Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
|
false |
object |
TCPSocket specifies an action involving a TCP port. |
false |
|
terminationGracePeriodSeconds |
integer |
Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod’s terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
|
false |
timeoutSeconds |
integer |
Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
|
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].livenessProbe.exec
Exec specifies the action to take.
Name | Type | Description | Required |
---|---|---|---|
command |
[]string |
Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container’s filesystem. The command is simply exec’d, it is not run inside a shell, so traditional shell instructions (' |
', etc) won’t work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].livenessProbe.grpc
GRPC specifies an action involving a GRPC port.
Name | Type | Description | Required |
---|---|---|---|
port |
integer |
Port number of the gRPC service. Number must be in the range 1 to 65535.
|
true |
service |
string |
Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].livenessProbe.httpGet
HTTPGet specifies the http request to perform.
Name | Type | Description | Required |
---|---|---|---|
port |
int or string |
Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. |
true |
host |
string |
Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. |
false |
[]object |
Custom headers to set in the request. HTTP allows repeated headers. |
false |
|
path |
string |
Path to access on the HTTP server. |
false |
scheme |
string |
Scheme to use for connecting to the host. Defaults to HTTP. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].livenessProbe.httpGet.httpHeaders[index]
HTTPHeader describes a custom header to be used in HTTP probes
Name | Type | Description | Required |
---|---|---|---|
name |
string |
The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. |
true |
value |
string |
The header field value |
true |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].livenessProbe.tcpSocket
TCPSocket specifies an action involving a TCP port.
Name | Type | Description | Required |
---|---|---|---|
port |
int or string |
Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. |
true |
host |
string |
Optional: Host name to connect to, defaults to the pod IP. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].ports[index]
ContainerPort represents a network port in a single container.
Name | Type | Description | Required |
---|---|---|---|
containerPort |
integer |
Number of port to expose on the pod’s IP address. This must be a valid port number, 0 < x < 65536.
|
true |
hostIP |
string |
What host IP to bind the external port to. |
false |
hostPort |
integer |
Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this.
|
false |
name |
string |
If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. |
false |
protocol |
string |
Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP".
|
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].readinessProbe
Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
Name | Type | Description | Required |
---|---|---|---|
object |
Exec specifies the action to take. |
false |
|
failureThreshold |
integer |
Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
|
false |
object |
GRPC specifies an action involving a GRPC port. |
false |
|
object |
HTTPGet specifies the http request to perform. |
false |
|
initialDelaySeconds |
integer |
Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
|
false |
periodSeconds |
integer |
How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.
|
false |
successThreshold |
integer |
Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
|
false |
object |
TCPSocket specifies an action involving a TCP port. |
false |
|
terminationGracePeriodSeconds |
integer |
Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod’s terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset.
|
false |
timeoutSeconds |
integer |
Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
|
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].readinessProbe.exec
Exec specifies the action to take.
Name | Type | Description | Required |
---|---|---|---|
command |
[]string |
Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container’s filesystem. The command is simply exec’d, it is not run inside a shell, so traditional shell instructions (' |
', etc) won’t work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].readinessProbe.grpc
GRPC specifies an action involving a GRPC port.
Name | Type | Description | Required |
---|---|---|---|
port |
integer |
Port number of the gRPC service. Number must be in the range 1 to 65535.
|
true |
service |
string |
Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC. |
false |
MissionControlCluster.spec.k8ssandra.cassandra.containers[index].readinessProbe.httpGet
HTTPGet specifies the http request to perform.
Name | Type | Description | Required |
---|---|---|---|
port |
int or string |
Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. |
true |
host |
string |
Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. |