3301 lines
214 KiB
YAML
3301 lines
214 KiB
YAML
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.4.1
|
|
creationTimestamp: null
|
|
name: jivavolumes.openebs.io
|
|
spec:
|
|
group: openebs.io
|
|
names:
|
|
kind: JivaVolume
|
|
listKind: JivaVolumeList
|
|
plural: jivavolumes
|
|
shortNames:
|
|
- jv
|
|
singular: jivavolume
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .status.replicaCount
|
|
name: ReplicaCount
|
|
type: string
|
|
- jsonPath: .status.phase
|
|
name: Phase
|
|
type: string
|
|
- jsonPath: .status.status
|
|
name: Status
|
|
type: string
|
|
name: v1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: 'JivaVolume is the Schema for the jivavolumes API Important:
|
|
Run "operator-sdk generate k8s" to regenerate code after modifying this
|
|
file'
|
|
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'
|
|
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'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: JivaVolumeSpec defines the desired state of JivaVolume
|
|
properties:
|
|
accessType:
|
|
description: AccessType can be specified as Block or Mount type
|
|
type: string
|
|
capacity:
|
|
type: string
|
|
desiredReplicationFactor:
|
|
type: integer
|
|
iscsiSpec:
|
|
nullable: true
|
|
properties:
|
|
iqn:
|
|
type: string
|
|
targetIP:
|
|
type: string
|
|
targetPort:
|
|
format: int32
|
|
type: integer
|
|
type: object
|
|
mountInfo:
|
|
nullable: true
|
|
properties:
|
|
devicePath:
|
|
type: string
|
|
fsType:
|
|
type: string
|
|
stagingPath:
|
|
description: StagingPath is the path provided by K8s during NodeStageVolume
|
|
rpc call, where volume is mounted globally.
|
|
type: string
|
|
targetPath:
|
|
description: TargetPath is the path provided by K8s during NodePublishVolume
|
|
rpc call where bind mount happens.
|
|
type: string
|
|
type: object
|
|
policy:
|
|
description: Policy is the configuration used for creating target
|
|
and replica pods during volume provisioning
|
|
nullable: true
|
|
properties:
|
|
priorityClassName:
|
|
description: PriorityClassName if specified applies to the pod
|
|
If left empty, no priority class is applied.
|
|
type: string
|
|
replica:
|
|
description: ReplicaSpec represents configuration related to replicas
|
|
resources
|
|
nullable: true
|
|
properties:
|
|
affinity:
|
|
description: Affinity if specified, are the pod's affinities
|
|
properties:
|
|
nodeAffinity:
|
|
description: Describes node affinity scheduling rules
|
|
for the pod.
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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).
|
|
properties:
|
|
preference:
|
|
description: A node selector term, associated
|
|
with the corresponding weight.
|
|
properties:
|
|
matchExpressions:
|
|
description: A list of node selector requirements
|
|
by node's labels.
|
|
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
|
|
matchFields:
|
|
description: A list of node selector requirements
|
|
by node's fields.
|
|
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
|
|
weight:
|
|
description: Weight associated with matching
|
|
the corresponding nodeSelectorTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- preference
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
properties:
|
|
nodeSelectorTerms:
|
|
description: Required. A list of node selector
|
|
terms. The terms are ORed.
|
|
items:
|
|
description: 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.
|
|
properties:
|
|
matchExpressions:
|
|
description: A list of node selector requirements
|
|
by node's labels.
|
|
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
|
|
matchFields:
|
|
description: A list of node selector requirements
|
|
by node's fields.
|
|
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
|
|
type: array
|
|
required:
|
|
- nodeSelectorTerms
|
|
type: object
|
|
type: object
|
|
podAffinity:
|
|
description: Describes pod affinity scheduling rules (e.g.
|
|
co-locate this pod in the same node, zone, etc. as some
|
|
other pod(s)).
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: The weights of all of the matched WeightedPodAffinityTerm
|
|
fields are added per-node to find the most preferred
|
|
node(s)
|
|
properties:
|
|
podAffinityTerm:
|
|
description: Required. A pod affinity term,
|
|
associated with the corresponding weight.
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of
|
|
resources, in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which
|
|
namespaces the labelSelector applies to
|
|
(matches against); null or empty list
|
|
means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
weight:
|
|
description: weight associated with matching
|
|
the corresponding podAffinityTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- podAffinityTerm
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of resources,
|
|
in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which namespaces
|
|
the labelSelector applies to (matches against);
|
|
null or empty list means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
type: array
|
|
type: object
|
|
podAntiAffinity:
|
|
description: Describes pod anti-affinity scheduling rules
|
|
(e.g. avoid putting this pod in the same node, zone,
|
|
etc. as some other pod(s)).
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: The weights of all of the matched WeightedPodAffinityTerm
|
|
fields are added per-node to find the most preferred
|
|
node(s)
|
|
properties:
|
|
podAffinityTerm:
|
|
description: Required. A pod affinity term,
|
|
associated with the corresponding weight.
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of
|
|
resources, in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which
|
|
namespaces the labelSelector applies to
|
|
(matches against); null or empty list
|
|
means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
weight:
|
|
description: weight associated with matching
|
|
the corresponding podAffinityTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- podAffinityTerm
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of resources,
|
|
in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which namespaces
|
|
the labelSelector applies to (matches against);
|
|
null or empty list means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: object
|
|
nodeSelector:
|
|
additionalProperties:
|
|
type: string
|
|
description: NodeSelector is the labels that will be used
|
|
to select a node for pod scheduleing
|
|
type: object
|
|
resources:
|
|
description: Resources are the compute resources required
|
|
by the jiva container.
|
|
properties:
|
|
limits:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: 'Limits describes the maximum amount of compute
|
|
resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
requests:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: '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.
|
|
More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
type: object
|
|
tolerations:
|
|
description: Tolerations, if specified, are the pod's tolerations
|
|
items:
|
|
description: The pod this Toleration is attached to tolerates
|
|
any taint that matches the triple <key,value,effect> using
|
|
the matching operator <operator>.
|
|
properties:
|
|
effect:
|
|
description: Effect indicates the taint effect to match.
|
|
Empty means match all taint effects. When specified,
|
|
allowed values are NoSchedule, PreferNoSchedule and
|
|
NoExecute.
|
|
type: string
|
|
key:
|
|
description: 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.
|
|
type: string
|
|
operator:
|
|
description: 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.
|
|
type: string
|
|
tolerationSeconds:
|
|
description: 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.
|
|
format: int64
|
|
type: integer
|
|
value:
|
|
description: Value is the taint value the toleration
|
|
matches to. If the operator is Exists, the value should
|
|
be empty, otherwise just a regular string.
|
|
type: string
|
|
type: object
|
|
type: array
|
|
type: object
|
|
replicaSC:
|
|
description: ReplicaSC represents the storage class used for creating
|
|
the pvc for the replicas (provisioned by localpv provisioner)
|
|
type: string
|
|
serviceAccountName:
|
|
description: ServiceAccountName can be provided to enable PSP
|
|
type: string
|
|
target:
|
|
description: TargetSpec represents configuration related to jiva
|
|
target and its resources
|
|
nullable: true
|
|
properties:
|
|
affinity:
|
|
description: Affinity if specified, are the pod's affinities
|
|
properties:
|
|
nodeAffinity:
|
|
description: Describes node affinity scheduling rules
|
|
for the pod.
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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).
|
|
properties:
|
|
preference:
|
|
description: A node selector term, associated
|
|
with the corresponding weight.
|
|
properties:
|
|
matchExpressions:
|
|
description: A list of node selector requirements
|
|
by node's labels.
|
|
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
|
|
matchFields:
|
|
description: A list of node selector requirements
|
|
by node's fields.
|
|
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
|
|
weight:
|
|
description: Weight associated with matching
|
|
the corresponding nodeSelectorTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- preference
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
properties:
|
|
nodeSelectorTerms:
|
|
description: Required. A list of node selector
|
|
terms. The terms are ORed.
|
|
items:
|
|
description: 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.
|
|
properties:
|
|
matchExpressions:
|
|
description: A list of node selector requirements
|
|
by node's labels.
|
|
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
|
|
matchFields:
|
|
description: A list of node selector requirements
|
|
by node's fields.
|
|
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
|
|
type: array
|
|
required:
|
|
- nodeSelectorTerms
|
|
type: object
|
|
type: object
|
|
podAffinity:
|
|
description: Describes pod affinity scheduling rules (e.g.
|
|
co-locate this pod in the same node, zone, etc. as some
|
|
other pod(s)).
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: The weights of all of the matched WeightedPodAffinityTerm
|
|
fields are added per-node to find the most preferred
|
|
node(s)
|
|
properties:
|
|
podAffinityTerm:
|
|
description: Required. A pod affinity term,
|
|
associated with the corresponding weight.
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of
|
|
resources, in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which
|
|
namespaces the labelSelector applies to
|
|
(matches against); null or empty list
|
|
means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
weight:
|
|
description: weight associated with matching
|
|
the corresponding podAffinityTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- podAffinityTerm
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of resources,
|
|
in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which namespaces
|
|
the labelSelector applies to (matches against);
|
|
null or empty list means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
type: array
|
|
type: object
|
|
podAntiAffinity:
|
|
description: Describes pod anti-affinity scheduling rules
|
|
(e.g. avoid putting this pod in the same node, zone,
|
|
etc. as some other pod(s)).
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: The weights of all of the matched WeightedPodAffinityTerm
|
|
fields are added per-node to find the most preferred
|
|
node(s)
|
|
properties:
|
|
podAffinityTerm:
|
|
description: Required. A pod affinity term,
|
|
associated with the corresponding weight.
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of
|
|
resources, in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which
|
|
namespaces the labelSelector applies to
|
|
(matches against); null or empty list
|
|
means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
weight:
|
|
description: weight associated with matching
|
|
the corresponding podAffinityTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- podAffinityTerm
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of resources,
|
|
in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which namespaces
|
|
the labelSelector applies to (matches against);
|
|
null or empty list means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: object
|
|
auxResources:
|
|
description: AuxResources are the compute resources required
|
|
by the jiva-target pod side car containers.
|
|
properties:
|
|
limits:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: 'Limits describes the maximum amount of compute
|
|
resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
requests:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: '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.
|
|
More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
type: object
|
|
disableMonitor:
|
|
description: DisableMonitor will not attach prometheus exporter
|
|
sidecar to jiva volume target.
|
|
type: boolean
|
|
nodeSelector:
|
|
additionalProperties:
|
|
type: string
|
|
description: NodeSelector is the labels that will be used
|
|
to select a node for pod scheduleing
|
|
type: object
|
|
replicationFactor:
|
|
description: ReplicationFactor represents maximum number of
|
|
replicas that are allowed to connect to the target
|
|
type: integer
|
|
resources:
|
|
description: Resources are the compute resources required
|
|
by the jiva container.
|
|
properties:
|
|
limits:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: 'Limits describes the maximum amount of compute
|
|
resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
requests:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: '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.
|
|
More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
type: object
|
|
tolerations:
|
|
description: Tolerations, if specified, are the pod's tolerations
|
|
items:
|
|
description: The pod this Toleration is attached to tolerates
|
|
any taint that matches the triple <key,value,effect> using
|
|
the matching operator <operator>.
|
|
properties:
|
|
effect:
|
|
description: Effect indicates the taint effect to match.
|
|
Empty means match all taint effects. When specified,
|
|
allowed values are NoSchedule, PreferNoSchedule and
|
|
NoExecute.
|
|
type: string
|
|
key:
|
|
description: 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.
|
|
type: string
|
|
operator:
|
|
description: 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.
|
|
type: string
|
|
tolerationSeconds:
|
|
description: 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.
|
|
format: int64
|
|
type: integer
|
|
value:
|
|
description: Value is the taint value the toleration
|
|
matches to. If the operator is Exists, the value should
|
|
be empty, otherwise just a regular string.
|
|
type: string
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: object
|
|
pv:
|
|
type: string
|
|
required:
|
|
- accessType
|
|
- capacity
|
|
- pv
|
|
type: object
|
|
status:
|
|
description: JivaVolumeStatus defines the observed state of JivaVolume
|
|
properties:
|
|
phase:
|
|
description: Phase represents the current phase of JivaVolume.
|
|
type: string
|
|
replicaCount:
|
|
type: integer
|
|
replicaStatus:
|
|
items:
|
|
description: ReplicaStatus stores the status of replicas
|
|
properties:
|
|
address:
|
|
type: string
|
|
mode:
|
|
type: string
|
|
type: object
|
|
nullable: true
|
|
type: array
|
|
status:
|
|
type: string
|
|
type: object
|
|
versionDetails:
|
|
description: VersionDetails provides the details for upgrade
|
|
properties:
|
|
autoUpgrade:
|
|
description: If AutoUpgrade is set to true then the resource is upgraded
|
|
automatically without any manual steps
|
|
type: boolean
|
|
desired:
|
|
description: Desired is the version that we want to upgrade or the
|
|
control plane version
|
|
type: string
|
|
status:
|
|
description: Status gives the status of reconciliation triggered when
|
|
the desired and current version are not same
|
|
properties:
|
|
current:
|
|
description: Current is the version of resource
|
|
type: string
|
|
dependentsUpgraded:
|
|
description: DependentsUpgraded gives the details whether all
|
|
children of a resource are upgraded to desired version or not
|
|
type: boolean
|
|
lastUpdateTime:
|
|
description: LastUpdateTime is the time the status was last updated
|
|
format: date-time
|
|
nullable: true
|
|
type: string
|
|
message:
|
|
description: Message is a human readable message if some error
|
|
occurs
|
|
type: string
|
|
reason:
|
|
description: Reason is the actual reason for the error state
|
|
type: string
|
|
state:
|
|
description: State is the state of reconciliation
|
|
type: string
|
|
type: object
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources: {}
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .status.replicaCount
|
|
name: ReplicaCount
|
|
type: string
|
|
- jsonPath: .status.phase
|
|
name: Phase
|
|
type: string
|
|
- jsonPath: .status.status
|
|
name: Status
|
|
type: string
|
|
name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: 'JivaVolume is the Schema for the jivavolumes API Important:
|
|
Run "operator-sdk generate k8s" to regenerate code after modifying this
|
|
file'
|
|
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'
|
|
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'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: JivaVolumeSpec defines the desired state of JivaVolume
|
|
properties:
|
|
accessType:
|
|
description: AccessType can be specified as Block or Mount type
|
|
type: string
|
|
capacity:
|
|
type: string
|
|
desiredReplicationFactor:
|
|
type: integer
|
|
iscsiSpec:
|
|
nullable: true
|
|
properties:
|
|
iqn:
|
|
type: string
|
|
targetIP:
|
|
type: string
|
|
targetPort:
|
|
format: int32
|
|
type: integer
|
|
type: object
|
|
mountInfo:
|
|
nullable: true
|
|
properties:
|
|
devicePath:
|
|
type: string
|
|
fsType:
|
|
type: string
|
|
stagingPath:
|
|
description: StagingPath is the path provided by K8s during NodeStageVolume
|
|
rpc call, where volume is mounted globally.
|
|
type: string
|
|
targetPath:
|
|
description: TargetPath is the path provided by K8s during NodePublishVolume
|
|
rpc call where bind mount happens.
|
|
type: string
|
|
type: object
|
|
policy:
|
|
description: Policy is the configuration used for creating target
|
|
and replica pods during volume provisioning
|
|
nullable: true
|
|
properties:
|
|
priorityClassName:
|
|
description: PriorityClassName if specified applies to the pod
|
|
If left empty, no priority class is applied.
|
|
type: string
|
|
replica:
|
|
description: ReplicaSpec represents configuration related to replicas
|
|
resources
|
|
nullable: true
|
|
properties:
|
|
affinity:
|
|
description: Affinity if specified, are the pod's affinities
|
|
properties:
|
|
nodeAffinity:
|
|
description: Describes node affinity scheduling rules
|
|
for the pod.
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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).
|
|
properties:
|
|
preference:
|
|
description: A node selector term, associated
|
|
with the corresponding weight.
|
|
properties:
|
|
matchExpressions:
|
|
description: A list of node selector requirements
|
|
by node's labels.
|
|
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
|
|
matchFields:
|
|
description: A list of node selector requirements
|
|
by node's fields.
|
|
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
|
|
weight:
|
|
description: Weight associated with matching
|
|
the corresponding nodeSelectorTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- preference
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
properties:
|
|
nodeSelectorTerms:
|
|
description: Required. A list of node selector
|
|
terms. The terms are ORed.
|
|
items:
|
|
description: 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.
|
|
properties:
|
|
matchExpressions:
|
|
description: A list of node selector requirements
|
|
by node's labels.
|
|
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
|
|
matchFields:
|
|
description: A list of node selector requirements
|
|
by node's fields.
|
|
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
|
|
type: array
|
|
required:
|
|
- nodeSelectorTerms
|
|
type: object
|
|
type: object
|
|
podAffinity:
|
|
description: Describes pod affinity scheduling rules (e.g.
|
|
co-locate this pod in the same node, zone, etc. as some
|
|
other pod(s)).
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: The weights of all of the matched WeightedPodAffinityTerm
|
|
fields are added per-node to find the most preferred
|
|
node(s)
|
|
properties:
|
|
podAffinityTerm:
|
|
description: Required. A pod affinity term,
|
|
associated with the corresponding weight.
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of
|
|
resources, in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which
|
|
namespaces the labelSelector applies to
|
|
(matches against); null or empty list
|
|
means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
weight:
|
|
description: weight associated with matching
|
|
the corresponding podAffinityTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- podAffinityTerm
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of resources,
|
|
in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which namespaces
|
|
the labelSelector applies to (matches against);
|
|
null or empty list means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
type: array
|
|
type: object
|
|
podAntiAffinity:
|
|
description: Describes pod anti-affinity scheduling rules
|
|
(e.g. avoid putting this pod in the same node, zone,
|
|
etc. as some other pod(s)).
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: The weights of all of the matched WeightedPodAffinityTerm
|
|
fields are added per-node to find the most preferred
|
|
node(s)
|
|
properties:
|
|
podAffinityTerm:
|
|
description: Required. A pod affinity term,
|
|
associated with the corresponding weight.
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of
|
|
resources, in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which
|
|
namespaces the labelSelector applies to
|
|
(matches against); null or empty list
|
|
means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
weight:
|
|
description: weight associated with matching
|
|
the corresponding podAffinityTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- podAffinityTerm
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of resources,
|
|
in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which namespaces
|
|
the labelSelector applies to (matches against);
|
|
null or empty list means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: object
|
|
nodeSelector:
|
|
additionalProperties:
|
|
type: string
|
|
description: NodeSelector is the labels that will be used
|
|
to select a node for pod scheduleing
|
|
type: object
|
|
resources:
|
|
description: Resources are the compute resources required
|
|
by the jiva container.
|
|
properties:
|
|
limits:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: 'Limits describes the maximum amount of compute
|
|
resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
requests:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: '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.
|
|
More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
type: object
|
|
tolerations:
|
|
description: Tolerations, if specified, are the pod's tolerations
|
|
items:
|
|
description: The pod this Toleration is attached to tolerates
|
|
any taint that matches the triple <key,value,effect> using
|
|
the matching operator <operator>.
|
|
properties:
|
|
effect:
|
|
description: Effect indicates the taint effect to match.
|
|
Empty means match all taint effects. When specified,
|
|
allowed values are NoSchedule, PreferNoSchedule and
|
|
NoExecute.
|
|
type: string
|
|
key:
|
|
description: 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.
|
|
type: string
|
|
operator:
|
|
description: 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.
|
|
type: string
|
|
tolerationSeconds:
|
|
description: 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.
|
|
format: int64
|
|
type: integer
|
|
value:
|
|
description: Value is the taint value the toleration
|
|
matches to. If the operator is Exists, the value should
|
|
be empty, otherwise just a regular string.
|
|
type: string
|
|
type: object
|
|
type: array
|
|
type: object
|
|
replicaSC:
|
|
description: ReplicaSC represents the storage class used for creating
|
|
the pvc for the replicas (provisioned by localpv provisioner)
|
|
type: string
|
|
serviceAccountName:
|
|
description: ServiceAccountName can be provided to enable PSP
|
|
type: string
|
|
target:
|
|
description: TargetSpec represents configuration related to jiva
|
|
target and its resources
|
|
nullable: true
|
|
properties:
|
|
affinity:
|
|
description: Affinity if specified, are the pod's affinities
|
|
properties:
|
|
nodeAffinity:
|
|
description: Describes node affinity scheduling rules
|
|
for the pod.
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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).
|
|
properties:
|
|
preference:
|
|
description: A node selector term, associated
|
|
with the corresponding weight.
|
|
properties:
|
|
matchExpressions:
|
|
description: A list of node selector requirements
|
|
by node's labels.
|
|
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
|
|
matchFields:
|
|
description: A list of node selector requirements
|
|
by node's fields.
|
|
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
|
|
weight:
|
|
description: Weight associated with matching
|
|
the corresponding nodeSelectorTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- preference
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
properties:
|
|
nodeSelectorTerms:
|
|
description: Required. A list of node selector
|
|
terms. The terms are ORed.
|
|
items:
|
|
description: 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.
|
|
properties:
|
|
matchExpressions:
|
|
description: A list of node selector requirements
|
|
by node's labels.
|
|
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
|
|
matchFields:
|
|
description: A list of node selector requirements
|
|
by node's fields.
|
|
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
|
|
type: array
|
|
required:
|
|
- nodeSelectorTerms
|
|
type: object
|
|
type: object
|
|
podAffinity:
|
|
description: Describes pod affinity scheduling rules (e.g.
|
|
co-locate this pod in the same node, zone, etc. as some
|
|
other pod(s)).
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: The weights of all of the matched WeightedPodAffinityTerm
|
|
fields are added per-node to find the most preferred
|
|
node(s)
|
|
properties:
|
|
podAffinityTerm:
|
|
description: Required. A pod affinity term,
|
|
associated with the corresponding weight.
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of
|
|
resources, in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which
|
|
namespaces the labelSelector applies to
|
|
(matches against); null or empty list
|
|
means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
weight:
|
|
description: weight associated with matching
|
|
the corresponding podAffinityTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- podAffinityTerm
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of resources,
|
|
in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which namespaces
|
|
the labelSelector applies to (matches against);
|
|
null or empty list means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
type: array
|
|
type: object
|
|
podAntiAffinity:
|
|
description: Describes pod anti-affinity scheduling rules
|
|
(e.g. avoid putting this pod in the same node, zone,
|
|
etc. as some other pod(s)).
|
|
properties:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: The weights of all of the matched WeightedPodAffinityTerm
|
|
fields are added per-node to find the most preferred
|
|
node(s)
|
|
properties:
|
|
podAffinityTerm:
|
|
description: Required. A pod affinity term,
|
|
associated with the corresponding weight.
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of
|
|
resources, in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which
|
|
namespaces the labelSelector applies to
|
|
(matches against); null or empty list
|
|
means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
weight:
|
|
description: weight associated with matching
|
|
the corresponding podAffinityTerm, in the
|
|
range 1-100.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- podAffinityTerm
|
|
- weight
|
|
type: object
|
|
type: array
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
description: 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.
|
|
items:
|
|
description: 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
|
|
properties:
|
|
labelSelector:
|
|
description: A label query over a set of resources,
|
|
in this case pods.
|
|
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
|
|
namespaces:
|
|
description: namespaces specifies which namespaces
|
|
the labelSelector applies to (matches against);
|
|
null or empty list means "this pod's namespace"
|
|
items:
|
|
type: string
|
|
type: array
|
|
topologyKey:
|
|
description: 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.
|
|
type: string
|
|
required:
|
|
- topologyKey
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: object
|
|
auxResources:
|
|
description: AuxResources are the compute resources required
|
|
by the jiva-target pod side car containers.
|
|
properties:
|
|
limits:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: 'Limits describes the maximum amount of compute
|
|
resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
requests:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: '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.
|
|
More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
type: object
|
|
disableMonitor:
|
|
description: DisableMonitor will not attach prometheus exporter
|
|
sidecar to jiva volume target.
|
|
type: boolean
|
|
nodeSelector:
|
|
additionalProperties:
|
|
type: string
|
|
description: NodeSelector is the labels that will be used
|
|
to select a node for pod scheduleing
|
|
type: object
|
|
replicationFactor:
|
|
description: ReplicationFactor represents maximum number of
|
|
replicas that are allowed to connect to the target
|
|
type: integer
|
|
resources:
|
|
description: Resources are the compute resources required
|
|
by the jiva container.
|
|
properties:
|
|
limits:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: 'Limits describes the maximum amount of compute
|
|
resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
requests:
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
|
|
x-kubernetes-int-or-string: true
|
|
description: '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.
|
|
More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
|
type: object
|
|
type: object
|
|
tolerations:
|
|
description: Tolerations, if specified, are the pod's tolerations
|
|
items:
|
|
description: The pod this Toleration is attached to tolerates
|
|
any taint that matches the triple <key,value,effect> using
|
|
the matching operator <operator>.
|
|
properties:
|
|
effect:
|
|
description: Effect indicates the taint effect to match.
|
|
Empty means match all taint effects. When specified,
|
|
allowed values are NoSchedule, PreferNoSchedule and
|
|
NoExecute.
|
|
type: string
|
|
key:
|
|
description: 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.
|
|
type: string
|
|
operator:
|
|
description: 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.
|
|
type: string
|
|
tolerationSeconds:
|
|
description: 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.
|
|
format: int64
|
|
type: integer
|
|
value:
|
|
description: Value is the taint value the toleration
|
|
matches to. If the operator is Exists, the value should
|
|
be empty, otherwise just a regular string.
|
|
type: string
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: object
|
|
pv:
|
|
type: string
|
|
required:
|
|
- accessType
|
|
- capacity
|
|
- pv
|
|
type: object
|
|
status:
|
|
description: JivaVolumeStatus defines the observed state of JivaVolume
|
|
properties:
|
|
phase:
|
|
description: Phase represents the current phase of JivaVolume.
|
|
type: string
|
|
replicaCount:
|
|
type: integer
|
|
replicaStatus:
|
|
items:
|
|
description: ReplicaStatus stores the status of replicas
|
|
properties:
|
|
address:
|
|
type: string
|
|
mode:
|
|
type: string
|
|
type: object
|
|
nullable: true
|
|
type: array
|
|
status:
|
|
type: string
|
|
type: object
|
|
versionDetails:
|
|
description: VersionDetails provides the details for upgrade
|
|
properties:
|
|
autoUpgrade:
|
|
description: If AutoUpgrade is set to true then the resource is upgraded
|
|
automatically without any manual steps
|
|
type: boolean
|
|
desired:
|
|
description: Desired is the version that we want to upgrade or the
|
|
control plane version
|
|
type: string
|
|
status:
|
|
description: Status gives the status of reconciliation triggered when
|
|
the desired and current version are not same
|
|
properties:
|
|
current:
|
|
description: Current is the version of resource
|
|
type: string
|
|
dependentsUpgraded:
|
|
description: DependentsUpgraded gives the details whether all
|
|
children of a resource are upgraded to desired version or not
|
|
type: boolean
|
|
lastUpdateTime:
|
|
description: LastUpdateTime is the time the status was last updated
|
|
format: date-time
|
|
nullable: true
|
|
type: string
|
|
message:
|
|
description: Message is a human readable message if some error
|
|
occurs
|
|
type: string
|
|
reason:
|
|
description: Reason is the actual reason for the error state
|
|
type: string
|
|
state:
|
|
description: State is the state of reconciliation
|
|
type: string
|
|
type: object
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: false
|
|
subresources: {}
|
|
status:
|
|
acceptedNames:
|
|
kind: ""
|
|
plural: ""
|
|
conditions: []
|
|
storedVersions: []
|