Package k8s.io.api.core.v1
Class Generated.TopologySpreadConstraint.Builder
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite.Builder
-
- com.google.protobuf.AbstractMessage.Builder<BuilderT>
-
- com.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
- k8s.io.api.core.v1.Generated.TopologySpreadConstraint.Builder
-
- All Implemented Interfaces:
com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,Cloneable,Generated.TopologySpreadConstraintOrBuilder
- Enclosing class:
- Generated.TopologySpreadConstraint
public static final class Generated.TopologySpreadConstraint.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder> implements Generated.TopologySpreadConstraintOrBuilder
TopologySpreadConstraint specifies how to spread matching pods among the given topology.
Protobuf typek8s.io.api.core.v1.TopologySpreadConstraint
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Generated.TopologySpreadConstraint.BuilderaddAllMatchLabelKeys(Iterable<String> values)MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated.Generated.TopologySpreadConstraint.BuilderaddMatchLabelKeys(String value)MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated.Generated.TopologySpreadConstraint.BuilderaddMatchLabelKeysBytes(com.google.protobuf.ByteString value)MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated.Generated.TopologySpreadConstraint.BuilderaddRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)Generated.TopologySpreadConstraintbuild()Generated.TopologySpreadConstraintbuildPartial()Generated.TopologySpreadConstraint.Builderclear()Generated.TopologySpreadConstraint.BuilderclearField(com.google.protobuf.Descriptors.FieldDescriptor field)Generated.TopologySpreadConstraint.BuilderclearLabelSelector()LabelSelector is used to find matching pods.Generated.TopologySpreadConstraint.BuilderclearMatchLabelKeys()MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated.Generated.TopologySpreadConstraint.BuilderclearMaxSkew()MaxSkew describes the degree to which pods may be unevenly distributed.Generated.TopologySpreadConstraint.BuilderclearMinDomains()MinDomains indicates a minimum number of eligible domains.Generated.TopologySpreadConstraint.BuilderclearNodeAffinityPolicy()NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew.Generated.TopologySpreadConstraint.BuilderclearNodeTaintsPolicy()NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew.Generated.TopologySpreadConstraint.BuilderclearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)Generated.TopologySpreadConstraint.BuilderclearTopologyKey()TopologyKey is the key of node labels.Generated.TopologySpreadConstraint.BuilderclearWhenUnsatisfiable()WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint.Generated.TopologySpreadConstraint.Builderclone()Generated.TopologySpreadConstraintgetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()com.google.protobuf.Descriptors.DescriptorgetDescriptorForType()Generated.LabelSelectorgetLabelSelector()LabelSelector is used to find matching pods.Generated.LabelSelector.BuildergetLabelSelectorBuilder()LabelSelector is used to find matching pods.Generated.LabelSelectorOrBuildergetLabelSelectorOrBuilder()LabelSelector is used to find matching pods.StringgetMatchLabelKeys(int index)MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated.com.google.protobuf.ByteStringgetMatchLabelKeysBytes(int index)MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated.intgetMatchLabelKeysCount()MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated.com.google.protobuf.ProtocolStringListgetMatchLabelKeysList()MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated.intgetMaxSkew()MaxSkew describes the degree to which pods may be unevenly distributed.intgetMinDomains()MinDomains indicates a minimum number of eligible domains.StringgetNodeAffinityPolicy()NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew.com.google.protobuf.ByteStringgetNodeAffinityPolicyBytes()NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew.StringgetNodeTaintsPolicy()NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew.com.google.protobuf.ByteStringgetNodeTaintsPolicyBytes()NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew.StringgetTopologyKey()TopologyKey is the key of node labels.com.google.protobuf.ByteStringgetTopologyKeyBytes()TopologyKey is the key of node labels.StringgetWhenUnsatisfiable()WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint.com.google.protobuf.ByteStringgetWhenUnsatisfiableBytes()WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint.booleanhasLabelSelector()LabelSelector is used to find matching pods.booleanhasMaxSkew()MaxSkew describes the degree to which pods may be unevenly distributed.booleanhasMinDomains()MinDomains indicates a minimum number of eligible domains.booleanhasNodeAffinityPolicy()NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew.booleanhasNodeTaintsPolicy()NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew.booleanhasTopologyKey()TopologyKey is the key of node labels.booleanhasWhenUnsatisfiable()WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()Generated.TopologySpreadConstraint.BuildermergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)Generated.TopologySpreadConstraint.BuildermergeFrom(com.google.protobuf.Message other)Generated.TopologySpreadConstraint.BuildermergeFrom(Generated.TopologySpreadConstraint other)Generated.TopologySpreadConstraint.BuildermergeLabelSelector(Generated.LabelSelector value)LabelSelector is used to find matching pods.Generated.TopologySpreadConstraint.BuildermergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)Generated.TopologySpreadConstraint.BuildersetField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)Generated.TopologySpreadConstraint.BuildersetLabelSelector(Generated.LabelSelector value)LabelSelector is used to find matching pods.Generated.TopologySpreadConstraint.BuildersetLabelSelector(Generated.LabelSelector.Builder builderForValue)LabelSelector is used to find matching pods.Generated.TopologySpreadConstraint.BuildersetMatchLabelKeys(int index, String value)MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated.Generated.TopologySpreadConstraint.BuildersetMaxSkew(int value)MaxSkew describes the degree to which pods may be unevenly distributed.Generated.TopologySpreadConstraint.BuildersetMinDomains(int value)MinDomains indicates a minimum number of eligible domains.Generated.TopologySpreadConstraint.BuildersetNodeAffinityPolicy(String value)NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew.Generated.TopologySpreadConstraint.BuildersetNodeAffinityPolicyBytes(com.google.protobuf.ByteString value)NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew.Generated.TopologySpreadConstraint.BuildersetNodeTaintsPolicy(String value)NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew.Generated.TopologySpreadConstraint.BuildersetNodeTaintsPolicyBytes(com.google.protobuf.ByteString value)NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew.Generated.TopologySpreadConstraint.BuildersetRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)Generated.TopologySpreadConstraint.BuildersetTopologyKey(String value)TopologyKey is the key of node labels.Generated.TopologySpreadConstraint.BuildersetTopologyKeyBytes(com.google.protobuf.ByteString value)TopologyKey is the key of node labels.Generated.TopologySpreadConstraint.BuildersetUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)Generated.TopologySpreadConstraint.BuildersetWhenUnsatisfiable(String value)WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint.Generated.TopologySpreadConstraint.BuildersetWhenUnsatisfiableBytes(com.google.protobuf.ByteString value)WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint.-
Methods inherited from class com.google.protobuf.GeneratedMessageV3.Builder
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setUnknownFieldSetBuilder, setUnknownFieldsProto3
-
Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Method Detail
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
clear
public Generated.TopologySpreadConstraint.Builder clear()
- Specified by:
clearin interfacecom.google.protobuf.Message.Builder- Specified by:
clearin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clearin classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.Message.Builder- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getDescriptorForTypein classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
getDefaultInstanceForType
public Generated.TopologySpreadConstraint getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
public Generated.TopologySpreadConstraint build()
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
public Generated.TopologySpreadConstraint buildPartial()
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
clone
public Generated.TopologySpreadConstraint.Builder clone()
- Specified by:
clonein interfacecom.google.protobuf.Message.Builder- Specified by:
clonein interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clonein classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
setField
public Generated.TopologySpreadConstraint.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
- Specified by:
setFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
clearField
public Generated.TopologySpreadConstraint.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
- Specified by:
clearFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
clearFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
clearOneof
public Generated.TopologySpreadConstraint.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
- Specified by:
clearOneofin interfacecom.google.protobuf.Message.Builder- Overrides:
clearOneofin classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
setRepeatedField
public Generated.TopologySpreadConstraint.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
- Specified by:
setRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
addRepeatedField
public Generated.TopologySpreadConstraint.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
- Specified by:
addRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
addRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
mergeFrom
public Generated.TopologySpreadConstraint.Builder mergeFrom(com.google.protobuf.Message other)
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<Generated.TopologySpreadConstraint.Builder>
-
mergeFrom
public Generated.TopologySpreadConstraint.Builder mergeFrom(Generated.TopologySpreadConstraint other)
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
mergeFrom
public Generated.TopologySpreadConstraint.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<Generated.TopologySpreadConstraint.Builder>- Throws:
IOException
-
hasMaxSkew
public boolean hasMaxSkew()
MaxSkew describes the degree to which pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference between the number of matching pods in the target topology and the global minimum. The global minimum is the minimum number of matching pods in an eligible domain or zero if the number of eligible domains is less than MinDomains. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 2/2/1: In this case, the global minimum is 1. +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P | P P | P | +-------+-------+-------+ - if MaxSkew is 1, incoming pod can only be scheduled to zone3 to become 2/2/2; scheduling it onto zone1(zone2) would make the ActualSkew(3-1) on zone1(zone2) violate MaxSkew(1). - if MaxSkew is 2, incoming pod can be scheduled onto any zone. When `whenUnsatisfiable=ScheduleAnyway`, it is used to give higher precedence to topologies that satisfy it. It's a required field. Default value is 1 and 0 is not allowed.
optional int32 maxSkew = 1;- Specified by:
hasMaxSkewin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- Whether the maxSkew field is set.
-
getMaxSkew
public int getMaxSkew()
MaxSkew describes the degree to which pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference between the number of matching pods in the target topology and the global minimum. The global minimum is the minimum number of matching pods in an eligible domain or zero if the number of eligible domains is less than MinDomains. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 2/2/1: In this case, the global minimum is 1. +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P | P P | P | +-------+-------+-------+ - if MaxSkew is 1, incoming pod can only be scheduled to zone3 to become 2/2/2; scheduling it onto zone1(zone2) would make the ActualSkew(3-1) on zone1(zone2) violate MaxSkew(1). - if MaxSkew is 2, incoming pod can be scheduled onto any zone. When `whenUnsatisfiable=ScheduleAnyway`, it is used to give higher precedence to topologies that satisfy it. It's a required field. Default value is 1 and 0 is not allowed.
optional int32 maxSkew = 1;- Specified by:
getMaxSkewin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The maxSkew.
-
setMaxSkew
public Generated.TopologySpreadConstraint.Builder setMaxSkew(int value)
MaxSkew describes the degree to which pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference between the number of matching pods in the target topology and the global minimum. The global minimum is the minimum number of matching pods in an eligible domain or zero if the number of eligible domains is less than MinDomains. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 2/2/1: In this case, the global minimum is 1. +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P | P P | P | +-------+-------+-------+ - if MaxSkew is 1, incoming pod can only be scheduled to zone3 to become 2/2/2; scheduling it onto zone1(zone2) would make the ActualSkew(3-1) on zone1(zone2) violate MaxSkew(1). - if MaxSkew is 2, incoming pod can be scheduled onto any zone. When `whenUnsatisfiable=ScheduleAnyway`, it is used to give higher precedence to topologies that satisfy it. It's a required field. Default value is 1 and 0 is not allowed.
optional int32 maxSkew = 1;- Parameters:
value- The maxSkew to set.- Returns:
- This builder for chaining.
-
clearMaxSkew
public Generated.TopologySpreadConstraint.Builder clearMaxSkew()
MaxSkew describes the degree to which pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference between the number of matching pods in the target topology and the global minimum. The global minimum is the minimum number of matching pods in an eligible domain or zero if the number of eligible domains is less than MinDomains. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 2/2/1: In this case, the global minimum is 1. +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P | P P | P | +-------+-------+-------+ - if MaxSkew is 1, incoming pod can only be scheduled to zone3 to become 2/2/2; scheduling it onto zone1(zone2) would make the ActualSkew(3-1) on zone1(zone2) violate MaxSkew(1). - if MaxSkew is 2, incoming pod can be scheduled onto any zone. When `whenUnsatisfiable=ScheduleAnyway`, it is used to give higher precedence to topologies that satisfy it. It's a required field. Default value is 1 and 0 is not allowed.
optional int32 maxSkew = 1;- Returns:
- This builder for chaining.
-
hasTopologyKey
public boolean hasTopologyKey()
TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each <key, value> as a "bucket", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology. And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology. It's a required field.
optional string topologyKey = 2;- Specified by:
hasTopologyKeyin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- Whether the topologyKey field is set.
-
getTopologyKey
public String getTopologyKey()
TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each <key, value> as a "bucket", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology. And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology. It's a required field.
optional string topologyKey = 2;- Specified by:
getTopologyKeyin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The topologyKey.
-
getTopologyKeyBytes
public com.google.protobuf.ByteString getTopologyKeyBytes()
TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each <key, value> as a "bucket", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology. And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology. It's a required field.
optional string topologyKey = 2;- Specified by:
getTopologyKeyBytesin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The bytes for topologyKey.
-
setTopologyKey
public Generated.TopologySpreadConstraint.Builder setTopologyKey(String value)
TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each <key, value> as a "bucket", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology. And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology. It's a required field.
optional string topologyKey = 2;- Parameters:
value- The topologyKey to set.- Returns:
- This builder for chaining.
-
clearTopologyKey
public Generated.TopologySpreadConstraint.Builder clearTopologyKey()
TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each <key, value> as a "bucket", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology. And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology. It's a required field.
optional string topologyKey = 2;- Returns:
- This builder for chaining.
-
setTopologyKeyBytes
public Generated.TopologySpreadConstraint.Builder setTopologyKeyBytes(com.google.protobuf.ByteString value)
TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each <key, value> as a "bucket", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology. And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology. It's a required field.
optional string topologyKey = 2;- Parameters:
value- The bytes for topologyKey to set.- Returns:
- This builder for chaining.
-
hasWhenUnsatisfiable
public boolean hasWhenUnsatisfiable()
WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway tells the scheduler to schedule the pod in any location, but giving higher precedence to topologies that would help reduce the skew. A constraint is considered "Unsatisfiable" for an incoming pod if and only if every possible node assignment for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P P | P | P | +-------+-------+-------+ If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies MaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler won't make it *more* imbalanced. It's a required field.
optional string whenUnsatisfiable = 3;- Specified by:
hasWhenUnsatisfiablein interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- Whether the whenUnsatisfiable field is set.
-
getWhenUnsatisfiable
public String getWhenUnsatisfiable()
WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway tells the scheduler to schedule the pod in any location, but giving higher precedence to topologies that would help reduce the skew. A constraint is considered "Unsatisfiable" for an incoming pod if and only if every possible node assignment for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P P | P | P | +-------+-------+-------+ If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies MaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler won't make it *more* imbalanced. It's a required field.
optional string whenUnsatisfiable = 3;- Specified by:
getWhenUnsatisfiablein interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The whenUnsatisfiable.
-
getWhenUnsatisfiableBytes
public com.google.protobuf.ByteString getWhenUnsatisfiableBytes()
WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway tells the scheduler to schedule the pod in any location, but giving higher precedence to topologies that would help reduce the skew. A constraint is considered "Unsatisfiable" for an incoming pod if and only if every possible node assignment for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P P | P | P | +-------+-------+-------+ If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies MaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler won't make it *more* imbalanced. It's a required field.
optional string whenUnsatisfiable = 3;- Specified by:
getWhenUnsatisfiableBytesin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The bytes for whenUnsatisfiable.
-
setWhenUnsatisfiable
public Generated.TopologySpreadConstraint.Builder setWhenUnsatisfiable(String value)
WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway tells the scheduler to schedule the pod in any location, but giving higher precedence to topologies that would help reduce the skew. A constraint is considered "Unsatisfiable" for an incoming pod if and only if every possible node assignment for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P P | P | P | +-------+-------+-------+ If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies MaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler won't make it *more* imbalanced. It's a required field.
optional string whenUnsatisfiable = 3;- Parameters:
value- The whenUnsatisfiable to set.- Returns:
- This builder for chaining.
-
clearWhenUnsatisfiable
public Generated.TopologySpreadConstraint.Builder clearWhenUnsatisfiable()
WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway tells the scheduler to schedule the pod in any location, but giving higher precedence to topologies that would help reduce the skew. A constraint is considered "Unsatisfiable" for an incoming pod if and only if every possible node assignment for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P P | P | P | +-------+-------+-------+ If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies MaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler won't make it *more* imbalanced. It's a required field.
optional string whenUnsatisfiable = 3;- Returns:
- This builder for chaining.
-
setWhenUnsatisfiableBytes
public Generated.TopologySpreadConstraint.Builder setWhenUnsatisfiableBytes(com.google.protobuf.ByteString value)
WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway tells the scheduler to schedule the pod in any location, but giving higher precedence to topologies that would help reduce the skew. A constraint is considered "Unsatisfiable" for an incoming pod if and only if every possible node assignment for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P P | P | P | +-------+-------+-------+ If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies MaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler won't make it *more* imbalanced. It's a required field.
optional string whenUnsatisfiable = 3;- Parameters:
value- The bytes for whenUnsatisfiable to set.- Returns:
- This builder for chaining.
-
hasLabelSelector
public boolean hasLabelSelector()
LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain. +optional
optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector labelSelector = 4;- Specified by:
hasLabelSelectorin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- Whether the labelSelector field is set.
-
getLabelSelector
public Generated.LabelSelector getLabelSelector()
LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain. +optional
optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector labelSelector = 4;- Specified by:
getLabelSelectorin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The labelSelector.
-
setLabelSelector
public Generated.TopologySpreadConstraint.Builder setLabelSelector(Generated.LabelSelector value)
LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain. +optional
optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector labelSelector = 4;
-
setLabelSelector
public Generated.TopologySpreadConstraint.Builder setLabelSelector(Generated.LabelSelector.Builder builderForValue)
LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain. +optional
optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector labelSelector = 4;
-
mergeLabelSelector
public Generated.TopologySpreadConstraint.Builder mergeLabelSelector(Generated.LabelSelector value)
LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain. +optional
optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector labelSelector = 4;
-
clearLabelSelector
public Generated.TopologySpreadConstraint.Builder clearLabelSelector()
LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain. +optional
optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector labelSelector = 4;
-
getLabelSelectorBuilder
public Generated.LabelSelector.Builder getLabelSelectorBuilder()
LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain. +optional
optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector labelSelector = 4;
-
getLabelSelectorOrBuilder
public Generated.LabelSelectorOrBuilder getLabelSelectorOrBuilder()
LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain. +optional
optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector labelSelector = 4;- Specified by:
getLabelSelectorOrBuilderin interfaceGenerated.TopologySpreadConstraintOrBuilder
-
hasMinDomains
public boolean hasMinDomains()
MinDomains indicates a minimum number of eligible domains. When the number of eligible domains with matching topology keys is less than minDomains, Pod Topology Spread treats "global minimum" as 0, and then the calculation of Skew is performed. And when the number of eligible domains with matching topology keys equals or greater than minDomains, this value has no effect on scheduling. As a result, when the number of eligible domains is less than minDomains, scheduler won't schedule more than maxSkew Pods to those domains. If value is nil, the constraint behaves as if MinDomains is equal to 1. Valid values are integers greater than 0. When value is not nil, WhenUnsatisfiable must be DoNotSchedule. For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same labelSelector spread as 2/2/2: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P | P P | P P | +-------+-------+-------+ The number of domains is less than 5(MinDomains), so "global minimum" is treated as 0. In this situation, new pod with the same labelSelector cannot be scheduled, because computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones, it will violate MaxSkew. +optional
optional int32 minDomains = 5;- Specified by:
hasMinDomainsin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- Whether the minDomains field is set.
-
getMinDomains
public int getMinDomains()
MinDomains indicates a minimum number of eligible domains. When the number of eligible domains with matching topology keys is less than minDomains, Pod Topology Spread treats "global minimum" as 0, and then the calculation of Skew is performed. And when the number of eligible domains with matching topology keys equals or greater than minDomains, this value has no effect on scheduling. As a result, when the number of eligible domains is less than minDomains, scheduler won't schedule more than maxSkew Pods to those domains. If value is nil, the constraint behaves as if MinDomains is equal to 1. Valid values are integers greater than 0. When value is not nil, WhenUnsatisfiable must be DoNotSchedule. For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same labelSelector spread as 2/2/2: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P | P P | P P | +-------+-------+-------+ The number of domains is less than 5(MinDomains), so "global minimum" is treated as 0. In this situation, new pod with the same labelSelector cannot be scheduled, because computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones, it will violate MaxSkew. +optional
optional int32 minDomains = 5;- Specified by:
getMinDomainsin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The minDomains.
-
setMinDomains
public Generated.TopologySpreadConstraint.Builder setMinDomains(int value)
MinDomains indicates a minimum number of eligible domains. When the number of eligible domains with matching topology keys is less than minDomains, Pod Topology Spread treats "global minimum" as 0, and then the calculation of Skew is performed. And when the number of eligible domains with matching topology keys equals or greater than minDomains, this value has no effect on scheduling. As a result, when the number of eligible domains is less than minDomains, scheduler won't schedule more than maxSkew Pods to those domains. If value is nil, the constraint behaves as if MinDomains is equal to 1. Valid values are integers greater than 0. When value is not nil, WhenUnsatisfiable must be DoNotSchedule. For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same labelSelector spread as 2/2/2: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P | P P | P P | +-------+-------+-------+ The number of domains is less than 5(MinDomains), so "global minimum" is treated as 0. In this situation, new pod with the same labelSelector cannot be scheduled, because computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones, it will violate MaxSkew. +optional
optional int32 minDomains = 5;- Parameters:
value- The minDomains to set.- Returns:
- This builder for chaining.
-
clearMinDomains
public Generated.TopologySpreadConstraint.Builder clearMinDomains()
MinDomains indicates a minimum number of eligible domains. When the number of eligible domains with matching topology keys is less than minDomains, Pod Topology Spread treats "global minimum" as 0, and then the calculation of Skew is performed. And when the number of eligible domains with matching topology keys equals or greater than minDomains, this value has no effect on scheduling. As a result, when the number of eligible domains is less than minDomains, scheduler won't schedule more than maxSkew Pods to those domains. If value is nil, the constraint behaves as if MinDomains is equal to 1. Valid values are integers greater than 0. When value is not nil, WhenUnsatisfiable must be DoNotSchedule. For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same labelSelector spread as 2/2/2: +-------+-------+-------+ | zone1 | zone2 | zone3 | +-------+-------+-------+ | P P | P P | P P | +-------+-------+-------+ The number of domains is less than 5(MinDomains), so "global minimum" is treated as 0. In this situation, new pod with the same labelSelector cannot be scheduled, because computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones, it will violate MaxSkew. +optional
optional int32 minDomains = 5;- Returns:
- This builder for chaining.
-
hasNodeAffinityPolicy
public boolean hasNodeAffinityPolicy()
NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. If this value is nil, the behavior is equivalent to the Honor policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeAffinityPolicy = 6;- Specified by:
hasNodeAffinityPolicyin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- Whether the nodeAffinityPolicy field is set.
-
getNodeAffinityPolicy
public String getNodeAffinityPolicy()
NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. If this value is nil, the behavior is equivalent to the Honor policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeAffinityPolicy = 6;- Specified by:
getNodeAffinityPolicyin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The nodeAffinityPolicy.
-
getNodeAffinityPolicyBytes
public com.google.protobuf.ByteString getNodeAffinityPolicyBytes()
NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. If this value is nil, the behavior is equivalent to the Honor policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeAffinityPolicy = 6;- Specified by:
getNodeAffinityPolicyBytesin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The bytes for nodeAffinityPolicy.
-
setNodeAffinityPolicy
public Generated.TopologySpreadConstraint.Builder setNodeAffinityPolicy(String value)
NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. If this value is nil, the behavior is equivalent to the Honor policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeAffinityPolicy = 6;- Parameters:
value- The nodeAffinityPolicy to set.- Returns:
- This builder for chaining.
-
clearNodeAffinityPolicy
public Generated.TopologySpreadConstraint.Builder clearNodeAffinityPolicy()
NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. If this value is nil, the behavior is equivalent to the Honor policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeAffinityPolicy = 6;- Returns:
- This builder for chaining.
-
setNodeAffinityPolicyBytes
public Generated.TopologySpreadConstraint.Builder setNodeAffinityPolicyBytes(com.google.protobuf.ByteString value)
NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. If this value is nil, the behavior is equivalent to the Honor policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeAffinityPolicy = 6;- Parameters:
value- The bytes for nodeAffinityPolicy to set.- Returns:
- This builder for chaining.
-
hasNodeTaintsPolicy
public boolean hasNodeTaintsPolicy()
NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included. If this value is nil, the behavior is equivalent to the Ignore policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeTaintsPolicy = 7;- Specified by:
hasNodeTaintsPolicyin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- Whether the nodeTaintsPolicy field is set.
-
getNodeTaintsPolicy
public String getNodeTaintsPolicy()
NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included. If this value is nil, the behavior is equivalent to the Ignore policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeTaintsPolicy = 7;- Specified by:
getNodeTaintsPolicyin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The nodeTaintsPolicy.
-
getNodeTaintsPolicyBytes
public com.google.protobuf.ByteString getNodeTaintsPolicyBytes()
NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included. If this value is nil, the behavior is equivalent to the Ignore policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeTaintsPolicy = 7;- Specified by:
getNodeTaintsPolicyBytesin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The bytes for nodeTaintsPolicy.
-
setNodeTaintsPolicy
public Generated.TopologySpreadConstraint.Builder setNodeTaintsPolicy(String value)
NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included. If this value is nil, the behavior is equivalent to the Ignore policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeTaintsPolicy = 7;- Parameters:
value- The nodeTaintsPolicy to set.- Returns:
- This builder for chaining.
-
clearNodeTaintsPolicy
public Generated.TopologySpreadConstraint.Builder clearNodeTaintsPolicy()
NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included. If this value is nil, the behavior is equivalent to the Ignore policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeTaintsPolicy = 7;- Returns:
- This builder for chaining.
-
setNodeTaintsPolicyBytes
public Generated.TopologySpreadConstraint.Builder setNodeTaintsPolicyBytes(com.google.protobuf.ByteString value)
NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included. If this value is nil, the behavior is equivalent to the Ignore policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. +optional
optional string nodeTaintsPolicy = 7;- Parameters:
value- The bytes for nodeTaintsPolicy to set.- Returns:
- This builder for chaining.
-
getMatchLabelKeysList
public com.google.protobuf.ProtocolStringList getMatchLabelKeysList()
MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated. The keys are used to lookup values from the incoming pod labels, those key-value labels are ANDed with labelSelector to select the group of existing pods over which spreading will be calculated for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. MatchLabelKeys cannot be set when LabelSelector isn't set. Keys that don't exist in the incoming pod labels will be ignored. A null or empty list means only match against labelSelector. This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). +listType=atomic +optional
repeated string matchLabelKeys = 8;- Specified by:
getMatchLabelKeysListin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- A list containing the matchLabelKeys.
-
getMatchLabelKeysCount
public int getMatchLabelKeysCount()
MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated. The keys are used to lookup values from the incoming pod labels, those key-value labels are ANDed with labelSelector to select the group of existing pods over which spreading will be calculated for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. MatchLabelKeys cannot be set when LabelSelector isn't set. Keys that don't exist in the incoming pod labels will be ignored. A null or empty list means only match against labelSelector. This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). +listType=atomic +optional
repeated string matchLabelKeys = 8;- Specified by:
getMatchLabelKeysCountin interfaceGenerated.TopologySpreadConstraintOrBuilder- Returns:
- The count of matchLabelKeys.
-
getMatchLabelKeys
public String getMatchLabelKeys(int index)
MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated. The keys are used to lookup values from the incoming pod labels, those key-value labels are ANDed with labelSelector to select the group of existing pods over which spreading will be calculated for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. MatchLabelKeys cannot be set when LabelSelector isn't set. Keys that don't exist in the incoming pod labels will be ignored. A null or empty list means only match against labelSelector. This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). +listType=atomic +optional
repeated string matchLabelKeys = 8;- Specified by:
getMatchLabelKeysin interfaceGenerated.TopologySpreadConstraintOrBuilder- Parameters:
index- The index of the element to return.- Returns:
- The matchLabelKeys at the given index.
-
getMatchLabelKeysBytes
public com.google.protobuf.ByteString getMatchLabelKeysBytes(int index)
MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated. The keys are used to lookup values from the incoming pod labels, those key-value labels are ANDed with labelSelector to select the group of existing pods over which spreading will be calculated for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. MatchLabelKeys cannot be set when LabelSelector isn't set. Keys that don't exist in the incoming pod labels will be ignored. A null or empty list means only match against labelSelector. This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). +listType=atomic +optional
repeated string matchLabelKeys = 8;- Specified by:
getMatchLabelKeysBytesin interfaceGenerated.TopologySpreadConstraintOrBuilder- Parameters:
index- The index of the value to return.- Returns:
- The bytes of the matchLabelKeys at the given index.
-
setMatchLabelKeys
public Generated.TopologySpreadConstraint.Builder setMatchLabelKeys(int index, String value)
MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated. The keys are used to lookup values from the incoming pod labels, those key-value labels are ANDed with labelSelector to select the group of existing pods over which spreading will be calculated for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. MatchLabelKeys cannot be set when LabelSelector isn't set. Keys that don't exist in the incoming pod labels will be ignored. A null or empty list means only match against labelSelector. This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). +listType=atomic +optional
repeated string matchLabelKeys = 8;- Parameters:
index- The index to set the value at.value- The matchLabelKeys to set.- Returns:
- This builder for chaining.
-
addMatchLabelKeys
public Generated.TopologySpreadConstraint.Builder addMatchLabelKeys(String value)
MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated. The keys are used to lookup values from the incoming pod labels, those key-value labels are ANDed with labelSelector to select the group of existing pods over which spreading will be calculated for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. MatchLabelKeys cannot be set when LabelSelector isn't set. Keys that don't exist in the incoming pod labels will be ignored. A null or empty list means only match against labelSelector. This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). +listType=atomic +optional
repeated string matchLabelKeys = 8;- Parameters:
value- The matchLabelKeys to add.- Returns:
- This builder for chaining.
-
addAllMatchLabelKeys
public Generated.TopologySpreadConstraint.Builder addAllMatchLabelKeys(Iterable<String> values)
MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated. The keys are used to lookup values from the incoming pod labels, those key-value labels are ANDed with labelSelector to select the group of existing pods over which spreading will be calculated for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. MatchLabelKeys cannot be set when LabelSelector isn't set. Keys that don't exist in the incoming pod labels will be ignored. A null or empty list means only match against labelSelector. This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). +listType=atomic +optional
repeated string matchLabelKeys = 8;- Parameters:
values- The matchLabelKeys to add.- Returns:
- This builder for chaining.
-
clearMatchLabelKeys
public Generated.TopologySpreadConstraint.Builder clearMatchLabelKeys()
MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated. The keys are used to lookup values from the incoming pod labels, those key-value labels are ANDed with labelSelector to select the group of existing pods over which spreading will be calculated for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. MatchLabelKeys cannot be set when LabelSelector isn't set. Keys that don't exist in the incoming pod labels will be ignored. A null or empty list means only match against labelSelector. This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). +listType=atomic +optional
repeated string matchLabelKeys = 8;- Returns:
- This builder for chaining.
-
addMatchLabelKeysBytes
public Generated.TopologySpreadConstraint.Builder addMatchLabelKeysBytes(com.google.protobuf.ByteString value)
MatchLabelKeys is a set of pod label keys to select the pods over which spreading will be calculated. The keys are used to lookup values from the incoming pod labels, those key-value labels are ANDed with labelSelector to select the group of existing pods over which spreading will be calculated for the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. MatchLabelKeys cannot be set when LabelSelector isn't set. Keys that don't exist in the incoming pod labels will be ignored. A null or empty list means only match against labelSelector. This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). +listType=atomic +optional
repeated string matchLabelKeys = 8;- Parameters:
value- The bytes of the matchLabelKeys to add.- Returns:
- This builder for chaining.
-
setUnknownFields
public final Generated.TopologySpreadConstraint.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
setUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
setUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
mergeUnknownFields
public final Generated.TopologySpreadConstraint.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
mergeUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<Generated.TopologySpreadConstraint.Builder>
-
-