Merge pull request #497 from qianjun1993/bug-fix
Update ReplicaScheduling type
This commit is contained in:
commit
ea47422461
|
@ -214,261 +214,165 @@ spec:
|
|||
that have replicas in spec (e.g. deployments, statefulsets)
|
||||
to member clusters.
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this
|
||||
representation of an object. Servers should convert recognized
|
||||
schemas to the latest internal value, and may reject unrecognized
|
||||
values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
replicaDivisionPreference:
|
||||
description: ReplicaDivisionPreference determines how the
|
||||
replicas is divided when ReplicaSchedulingType is "Divided".
|
||||
Valid options are Aggregated and Weighted. "Aggregated"
|
||||
divides replicas into clusters as few as possible, while
|
||||
respecting clusters' resource availabilities during the
|
||||
division. "Weighted" divides replicas by weight according
|
||||
to WeightPreference.
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST
|
||||
resource this object represents. Servers may infer this
|
||||
from the endpoint the client submits requests to. Cannot
|
||||
be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
replicaSchedulingType:
|
||||
description: ReplicaSchedulingType determines how the replicas
|
||||
is scheduled when karmada propagating a resource. Valid
|
||||
options are Duplicated and Divided. "Duplicated" duplicates
|
||||
the same replicas to each candidate member cluster from
|
||||
resource. "Divided" divides replicas into parts according
|
||||
to number of valid candidate member clusters, and exact
|
||||
replicas for each cluster are determined by ReplicaDivisionPreference.
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: Spec represents the desired behavior of ReplicaSchedulingPolicy.
|
||||
weightPreference:
|
||||
description: WeightPreference describes weight for each cluster
|
||||
or for each group of cluster If ReplicaDivisionPreference
|
||||
is set to "Weighted", and WeightPreference is not set, scheduler
|
||||
will weight all clusters the same.
|
||||
properties:
|
||||
preferences:
|
||||
description: Preferences describes weight for each cluster
|
||||
or for each group of cluster.
|
||||
properties:
|
||||
staticWeightList:
|
||||
description: StaticWeightList defines the static cluster
|
||||
weight.
|
||||
items:
|
||||
description: StaticClusterWeight defines the static
|
||||
cluster weight.
|
||||
properties:
|
||||
targetCluster:
|
||||
description: TargetCluster describes the filter
|
||||
to select clusters.
|
||||
properties:
|
||||
clusterNames:
|
||||
description: ClusterNames is the list of
|
||||
clusters to be selected.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
exclude:
|
||||
description: ExcludedClusters is the list
|
||||
of clusters to be ignored.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
fieldSelector:
|
||||
description: FieldSelector is a filter to
|
||||
select member clusters by fields. If non-nil
|
||||
and non-empty, only the clusters match
|
||||
this filter will be selected.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: A list of field selector
|
||||
requirements.
|
||||
items:
|
||||
description: A node selector requirement
|
||||
is a selector that contains values,
|
||||
a key, and an operator that relates
|
||||
the key and values.
|
||||
properties:
|
||||
key:
|
||||
description: The label key that
|
||||
the selector applies to.
|
||||
type: string
|
||||
operator:
|
||||
description: Represents a key's
|
||||
relationship to a set of values.
|
||||
Valid operators are In, NotIn,
|
||||
Exists, DoesNotExist. Gt, and
|
||||
Lt.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
type: object
|
||||
labelSelector:
|
||||
description: LabelSelector is a filter to
|
||||
select member clusters by labels. If non-nil
|
||||
and non-empty, only the clusters match
|
||||
this filter will be selected.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: matchExpressions is a list
|
||||
of label selector requirements. The
|
||||
requirements are ANDed.
|
||||
items:
|
||||
description: A label selector requirement
|
||||
is a selector that contains values,
|
||||
a key, and an operator that relates
|
||||
the key and values.
|
||||
properties:
|
||||
key:
|
||||
description: key is the label
|
||||
key that the selector applies
|
||||
to.
|
||||
type: string
|
||||
operator:
|
||||
description: operator represents
|
||||
a key's relationship to a set
|
||||
of values. Valid operators are
|
||||
In, NotIn, Exists and DoesNotExist.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
matchLabels:
|
||||
additionalProperties:
|
||||
type: string
|
||||
description: 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.
|
||||
type: object
|
||||
type: object
|
||||
type: object
|
||||
weight:
|
||||
description: Weight expressing the preference
|
||||
to the cluster(s) specified by 'TargetCluster'.
|
||||
format: int64
|
||||
type: integer
|
||||
required:
|
||||
- targetCluster
|
||||
- weight
|
||||
type: object
|
||||
type: array
|
||||
required:
|
||||
- staticWeightList
|
||||
type: object
|
||||
resourceSelectors:
|
||||
description: ResourceSelectors used to select resources.
|
||||
staticWeightList:
|
||||
description: StaticWeightList defines the static cluster
|
||||
weight.
|
||||
items:
|
||||
description: ResourceSelector the resources will be
|
||||
selected.
|
||||
description: StaticClusterWeight defines the static
|
||||
cluster weight.
|
||||
properties:
|
||||
apiVersion:
|
||||
description: APIVersion represents the API version
|
||||
of the target resources.
|
||||
type: string
|
||||
kind:
|
||||
description: Kind represents the Kind of the target
|
||||
resources.
|
||||
type: string
|
||||
labelSelector:
|
||||
description: A label query over a set of resources.
|
||||
If name is not empty, labelSelector will be ignored.
|
||||
targetCluster:
|
||||
description: TargetCluster describes the filter
|
||||
to select clusters.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: matchExpressions is a list of label
|
||||
selector requirements. The requirements are
|
||||
ANDed.
|
||||
clusterNames:
|
||||
description: ClusterNames is the list of clusters
|
||||
to be selected.
|
||||
items:
|
||||
description: A label selector requirement
|
||||
is a selector that contains values, a key,
|
||||
and an operator that relates the key and
|
||||
values.
|
||||
properties:
|
||||
key:
|
||||
description: key is the label key that
|
||||
the selector applies to.
|
||||
type: string
|
||||
operator:
|
||||
description: operator represents a key's
|
||||
relationship to a set of values. Valid
|
||||
operators are In, NotIn, Exists and
|
||||
DoesNotExist.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
matchLabels:
|
||||
additionalProperties:
|
||||
type: string
|
||||
description: 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.
|
||||
type: array
|
||||
exclude:
|
||||
description: ExcludedClusters is the list of
|
||||
clusters to be ignored.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
fieldSelector:
|
||||
description: FieldSelector is a filter to select
|
||||
member clusters by fields. If non-nil and
|
||||
non-empty, only the clusters match this filter
|
||||
will be selected.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: A list of field selector requirements.
|
||||
items:
|
||||
description: A node selector requirement
|
||||
is a selector that contains values,
|
||||
a key, and an operator that relates
|
||||
the key and values.
|
||||
properties:
|
||||
key:
|
||||
description: The label key that the
|
||||
selector applies to.
|
||||
type: string
|
||||
operator:
|
||||
description: Represents a key's relationship
|
||||
to a set of values. Valid operators
|
||||
are In, NotIn, Exists, DoesNotExist.
|
||||
Gt, and Lt.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
type: object
|
||||
labelSelector:
|
||||
description: LabelSelector is a filter to select
|
||||
member clusters by labels. If non-nil and
|
||||
non-empty, only the clusters match this filter
|
||||
will be selected.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: matchExpressions is a list
|
||||
of label selector requirements. The requirements
|
||||
are ANDed.
|
||||
items:
|
||||
description: A label selector requirement
|
||||
is a selector that contains values,
|
||||
a key, and an operator that relates
|
||||
the key and values.
|
||||
properties:
|
||||
key:
|
||||
description: key is the label key
|
||||
that the selector applies to.
|
||||
type: string
|
||||
operator:
|
||||
description: operator represents a
|
||||
key's relationship to a set of values.
|
||||
Valid operators are In, NotIn, Exists
|
||||
and DoesNotExist.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
matchLabels:
|
||||
additionalProperties:
|
||||
type: string
|
||||
description: 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.
|
||||
type: object
|
||||
type: object
|
||||
type: object
|
||||
name:
|
||||
description: Name of the target resource. Default
|
||||
is empty, which means selecting all resources.
|
||||
type: string
|
||||
namespace:
|
||||
description: Namespace of the target resource. Default
|
||||
is empty, which means inherit from the parent
|
||||
object scope.
|
||||
type: string
|
||||
weight:
|
||||
description: Weight expressing the preference to
|
||||
the cluster(s) specified by 'TargetCluster'.
|
||||
format: int64
|
||||
type: integer
|
||||
required:
|
||||
- apiVersion
|
||||
- kind
|
||||
- targetCluster
|
||||
- weight
|
||||
type: object
|
||||
type: array
|
||||
totalReplicas:
|
||||
description: TotalReplicas represents the total number
|
||||
of replicas across member clusters. The replicas(spec.replicas)
|
||||
specified for deployment template will be discarded.
|
||||
format: int32
|
||||
type: integer
|
||||
required:
|
||||
- preferences
|
||||
- resourceSelectors
|
||||
- totalReplicas
|
||||
- staticWeightList
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
type: object
|
||||
spreadConstraints:
|
||||
description: SpreadConstraints represents a list of the scheduling
|
||||
|
|
|
@ -210,261 +210,165 @@ spec:
|
|||
that have replicas in spec (e.g. deployments, statefulsets)
|
||||
to member clusters.
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this
|
||||
representation of an object. Servers should convert recognized
|
||||
schemas to the latest internal value, and may reject unrecognized
|
||||
values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
replicaDivisionPreference:
|
||||
description: ReplicaDivisionPreference determines how the
|
||||
replicas is divided when ReplicaSchedulingType is "Divided".
|
||||
Valid options are Aggregated and Weighted. "Aggregated"
|
||||
divides replicas into clusters as few as possible, while
|
||||
respecting clusters' resource availabilities during the
|
||||
division. "Weighted" divides replicas by weight according
|
||||
to WeightPreference.
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST
|
||||
resource this object represents. Servers may infer this
|
||||
from the endpoint the client submits requests to. Cannot
|
||||
be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
replicaSchedulingType:
|
||||
description: ReplicaSchedulingType determines how the replicas
|
||||
is scheduled when karmada propagating a resource. Valid
|
||||
options are Duplicated and Divided. "Duplicated" duplicates
|
||||
the same replicas to each candidate member cluster from
|
||||
resource. "Divided" divides replicas into parts according
|
||||
to number of valid candidate member clusters, and exact
|
||||
replicas for each cluster are determined by ReplicaDivisionPreference.
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: Spec represents the desired behavior of ReplicaSchedulingPolicy.
|
||||
weightPreference:
|
||||
description: WeightPreference describes weight for each cluster
|
||||
or for each group of cluster If ReplicaDivisionPreference
|
||||
is set to "Weighted", and WeightPreference is not set, scheduler
|
||||
will weight all clusters the same.
|
||||
properties:
|
||||
preferences:
|
||||
description: Preferences describes weight for each cluster
|
||||
or for each group of cluster.
|
||||
properties:
|
||||
staticWeightList:
|
||||
description: StaticWeightList defines the static cluster
|
||||
weight.
|
||||
items:
|
||||
description: StaticClusterWeight defines the static
|
||||
cluster weight.
|
||||
properties:
|
||||
targetCluster:
|
||||
description: TargetCluster describes the filter
|
||||
to select clusters.
|
||||
properties:
|
||||
clusterNames:
|
||||
description: ClusterNames is the list of
|
||||
clusters to be selected.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
exclude:
|
||||
description: ExcludedClusters is the list
|
||||
of clusters to be ignored.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
fieldSelector:
|
||||
description: FieldSelector is a filter to
|
||||
select member clusters by fields. If non-nil
|
||||
and non-empty, only the clusters match
|
||||
this filter will be selected.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: A list of field selector
|
||||
requirements.
|
||||
items:
|
||||
description: A node selector requirement
|
||||
is a selector that contains values,
|
||||
a key, and an operator that relates
|
||||
the key and values.
|
||||
properties:
|
||||
key:
|
||||
description: The label key that
|
||||
the selector applies to.
|
||||
type: string
|
||||
operator:
|
||||
description: Represents a key's
|
||||
relationship to a set of values.
|
||||
Valid operators are In, NotIn,
|
||||
Exists, DoesNotExist. Gt, and
|
||||
Lt.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
type: object
|
||||
labelSelector:
|
||||
description: LabelSelector is a filter to
|
||||
select member clusters by labels. If non-nil
|
||||
and non-empty, only the clusters match
|
||||
this filter will be selected.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: matchExpressions is a list
|
||||
of label selector requirements. The
|
||||
requirements are ANDed.
|
||||
items:
|
||||
description: A label selector requirement
|
||||
is a selector that contains values,
|
||||
a key, and an operator that relates
|
||||
the key and values.
|
||||
properties:
|
||||
key:
|
||||
description: key is the label
|
||||
key that the selector applies
|
||||
to.
|
||||
type: string
|
||||
operator:
|
||||
description: operator represents
|
||||
a key's relationship to a set
|
||||
of values. Valid operators are
|
||||
In, NotIn, Exists and DoesNotExist.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
matchLabels:
|
||||
additionalProperties:
|
||||
type: string
|
||||
description: 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.
|
||||
type: object
|
||||
type: object
|
||||
type: object
|
||||
weight:
|
||||
description: Weight expressing the preference
|
||||
to the cluster(s) specified by 'TargetCluster'.
|
||||
format: int64
|
||||
type: integer
|
||||
required:
|
||||
- targetCluster
|
||||
- weight
|
||||
type: object
|
||||
type: array
|
||||
required:
|
||||
- staticWeightList
|
||||
type: object
|
||||
resourceSelectors:
|
||||
description: ResourceSelectors used to select resources.
|
||||
staticWeightList:
|
||||
description: StaticWeightList defines the static cluster
|
||||
weight.
|
||||
items:
|
||||
description: ResourceSelector the resources will be
|
||||
selected.
|
||||
description: StaticClusterWeight defines the static
|
||||
cluster weight.
|
||||
properties:
|
||||
apiVersion:
|
||||
description: APIVersion represents the API version
|
||||
of the target resources.
|
||||
type: string
|
||||
kind:
|
||||
description: Kind represents the Kind of the target
|
||||
resources.
|
||||
type: string
|
||||
labelSelector:
|
||||
description: A label query over a set of resources.
|
||||
If name is not empty, labelSelector will be ignored.
|
||||
targetCluster:
|
||||
description: TargetCluster describes the filter
|
||||
to select clusters.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: matchExpressions is a list of label
|
||||
selector requirements. The requirements are
|
||||
ANDed.
|
||||
clusterNames:
|
||||
description: ClusterNames is the list of clusters
|
||||
to be selected.
|
||||
items:
|
||||
description: A label selector requirement
|
||||
is a selector that contains values, a key,
|
||||
and an operator that relates the key and
|
||||
values.
|
||||
properties:
|
||||
key:
|
||||
description: key is the label key that
|
||||
the selector applies to.
|
||||
type: string
|
||||
operator:
|
||||
description: operator represents a key's
|
||||
relationship to a set of values. Valid
|
||||
operators are In, NotIn, Exists and
|
||||
DoesNotExist.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
matchLabels:
|
||||
additionalProperties:
|
||||
type: string
|
||||
description: 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.
|
||||
type: array
|
||||
exclude:
|
||||
description: ExcludedClusters is the list of
|
||||
clusters to be ignored.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
fieldSelector:
|
||||
description: FieldSelector is a filter to select
|
||||
member clusters by fields. If non-nil and
|
||||
non-empty, only the clusters match this filter
|
||||
will be selected.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: A list of field selector requirements.
|
||||
items:
|
||||
description: A node selector requirement
|
||||
is a selector that contains values,
|
||||
a key, and an operator that relates
|
||||
the key and values.
|
||||
properties:
|
||||
key:
|
||||
description: The label key that the
|
||||
selector applies to.
|
||||
type: string
|
||||
operator:
|
||||
description: Represents a key's relationship
|
||||
to a set of values. Valid operators
|
||||
are In, NotIn, Exists, DoesNotExist.
|
||||
Gt, and Lt.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
type: object
|
||||
labelSelector:
|
||||
description: LabelSelector is a filter to select
|
||||
member clusters by labels. If non-nil and
|
||||
non-empty, only the clusters match this filter
|
||||
will be selected.
|
||||
properties:
|
||||
matchExpressions:
|
||||
description: matchExpressions is a list
|
||||
of label selector requirements. The requirements
|
||||
are ANDed.
|
||||
items:
|
||||
description: A label selector requirement
|
||||
is a selector that contains values,
|
||||
a key, and an operator that relates
|
||||
the key and values.
|
||||
properties:
|
||||
key:
|
||||
description: key is the label key
|
||||
that the selector applies to.
|
||||
type: string
|
||||
operator:
|
||||
description: operator represents a
|
||||
key's relationship to a set of values.
|
||||
Valid operators are In, NotIn, Exists
|
||||
and DoesNotExist.
|
||||
type: string
|
||||
values:
|
||||
description: 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.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
required:
|
||||
- key
|
||||
- operator
|
||||
type: object
|
||||
type: array
|
||||
matchLabels:
|
||||
additionalProperties:
|
||||
type: string
|
||||
description: 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.
|
||||
type: object
|
||||
type: object
|
||||
type: object
|
||||
name:
|
||||
description: Name of the target resource. Default
|
||||
is empty, which means selecting all resources.
|
||||
type: string
|
||||
namespace:
|
||||
description: Namespace of the target resource. Default
|
||||
is empty, which means inherit from the parent
|
||||
object scope.
|
||||
type: string
|
||||
weight:
|
||||
description: Weight expressing the preference to
|
||||
the cluster(s) specified by 'TargetCluster'.
|
||||
format: int64
|
||||
type: integer
|
||||
required:
|
||||
- apiVersion
|
||||
- kind
|
||||
- targetCluster
|
||||
- weight
|
||||
type: object
|
||||
type: array
|
||||
totalReplicas:
|
||||
description: TotalReplicas represents the total number
|
||||
of replicas across member clusters. The replicas(spec.replicas)
|
||||
specified for deployment template will be discarded.
|
||||
format: int32
|
||||
type: integer
|
||||
required:
|
||||
- preferences
|
||||
- resourceSelectors
|
||||
- totalReplicas
|
||||
- staticWeightList
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
type: object
|
||||
spreadConstraints:
|
||||
description: SpreadConstraints represents a list of the scheduling
|
||||
|
|
|
@ -104,7 +104,7 @@ type Placement struct {
|
|||
// ReplicaScheduling represents the scheduling policy on dealing with the number of replicas
|
||||
// when propagating resources that have replicas in spec (e.g. deployments, statefulsets) to member clusters.
|
||||
// +optional
|
||||
ReplicaScheduling *ReplicaSchedulingPolicy `json:"replicaScheduling,omitempty"`
|
||||
ReplicaScheduling *ReplicaSchedulingStrategy `json:"replicaScheduling,omitempty"`
|
||||
}
|
||||
|
||||
// SpreadFieldValue is the type to define valid values for SpreadConstraint.SpreadByField
|
||||
|
|
|
@ -390,7 +390,7 @@ func (in *Placement) DeepCopyInto(out *Placement) {
|
|||
}
|
||||
if in.ReplicaScheduling != nil {
|
||||
in, out := &in.ReplicaScheduling, &out.ReplicaScheduling
|
||||
*out = new(ReplicaSchedulingPolicy)
|
||||
*out = new(ReplicaSchedulingStrategy)
|
||||
(*in).DeepCopyInto(*out)
|
||||
}
|
||||
return
|
||||
|
|
Loading…
Reference in New Issue