github.com/alibaba/sealer@v0.8.6-0.20220430115802-37a2bdaa8173/applications/redis-operator/databases.spotahome.com_redisfailovers.yaml (about)

     1  
     2  ---
     3  apiVersion: apiextensions.k8s.io/v1
     4  kind: CustomResourceDefinition
     5  metadata:
     6    annotations:
     7      controller-gen.kubebuilder.io/version: (devel)
     8    creationTimestamp: null
     9    name: redisfailovers.databases.spotahome.com
    10  spec:
    11    group: databases.spotahome.com
    12    names:
    13      kind: RedisFailover
    14      listKind: RedisFailoverList
    15      plural: redisfailovers
    16      shortNames:
    17      - rf
    18      singular: redisfailover
    19    scope: Namespaced
    20    versions:
    21    - additionalPrinterColumns:
    22      - jsonPath: .metadata.name
    23        name: NAME
    24        type: string
    25      - jsonPath: .spec.redis.replicas
    26        name: REDIS
    27        type: integer
    28      - jsonPath: .spec.sentinel.replicas
    29        name: SENTINELS
    30        type: integer
    31      - jsonPath: .metadata.creationTimestamp
    32        name: AGE
    33        type: date
    34      name: v1
    35      schema:
    36        openAPIV3Schema:
    37          description: RedisFailover represents a Redis failover
    38          properties:
    39            apiVersion:
    40              description: 'APIVersion defines the versioned schema of this representation
    41                of an object. Servers should convert recognized schemas to the latest
    42                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    43              type: string
    44            kind:
    45              description: 'Kind is a string value representing the REST resource this
    46                object represents. Servers may infer this from the endpoint the client
    47                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    48              type: string
    49            metadata:
    50              type: object
    51            spec:
    52              description: RedisFailoverSpec represents a Redis failover spec
    53              properties:
    54                auth:
    55                  description: AuthSettings contains settings about auth
    56                  properties:
    57                    secretPath:
    58                      type: string
    59                  type: object
    60                bootstrapNode:
    61                  description: BootstrapSettings contains settings about a potential
    62                    bootstrap node
    63                  properties:
    64                    allowSentinels:
    65                      type: boolean
    66                    host:
    67                      type: string
    68                    port:
    69                      type: string
    70                  type: object
    71                labelWhitelist:
    72                  items:
    73                    type: string
    74                  type: array
    75                redis:
    76                  description: RedisSettings defines the specification of the redis
    77                    cluster
    78                  properties:
    79                    affinity:
    80                      description: Affinity is a group of affinity scheduling rules.
    81                      properties:
    82                        nodeAffinity:
    83                          description: Describes node affinity scheduling rules for
    84                            the pod.
    85                          properties:
    86                            preferredDuringSchedulingIgnoredDuringExecution:
    87                              description: The scheduler will prefer to schedule pods
    88                                to nodes that satisfy the affinity expressions specified
    89                                by this field, but it may choose a node that violates
    90                                one or more of the expressions. The node that is most
    91                                preferred is the one with the greatest sum of weights,
    92                                i.e. for each node that meets all of the scheduling
    93                                requirements (resource request, requiredDuringScheduling
    94                                affinity expressions, etc.), compute a sum by iterating
    95                                through the elements of this field and adding "weight"
    96                                to the sum if the node matches the corresponding matchExpressions;
    97                                the node(s) with the highest sum are the most preferred.
    98                              items:
    99                                description: An empty preferred scheduling term matches
   100                                  all objects with implicit weight 0 (i.e. it's a no-op).
   101                                  A null preferred scheduling term matches no objects
   102                                  (i.e. is also a no-op).
   103                                properties:
   104                                  preference:
   105                                    description: A node selector term, associated with
   106                                      the corresponding weight.
   107                                    properties:
   108                                      matchExpressions:
   109                                        description: A list of node selector requirements
   110                                          by node's labels.
   111                                        items:
   112                                          description: A node selector requirement is
   113                                            a selector that contains values, a key,
   114                                            and an operator that relates the key and
   115                                            values.
   116                                          properties:
   117                                            key:
   118                                              description: The label key that the selector
   119                                                applies to.
   120                                              type: string
   121                                            operator:
   122                                              description: Represents a key's relationship
   123                                                to a set of values. Valid operators
   124                                                are In, NotIn, Exists, DoesNotExist.
   125                                                Gt, and Lt.
   126                                              type: string
   127                                            values:
   128                                              description: An array of string values.
   129                                                If the operator is In or NotIn, the
   130                                                values array must be non-empty. If the
   131                                                operator is Exists or DoesNotExist,
   132                                                the values array must be empty. If the
   133                                                operator is Gt or Lt, the values array
   134                                                must have a single element, which will
   135                                                be interpreted as an integer. This array
   136                                                is replaced during a strategic merge
   137                                                patch.
   138                                              items:
   139                                                type: string
   140                                              type: array
   141                                          required:
   142                                          - key
   143                                          - operator
   144                                          type: object
   145                                        type: array
   146                                      matchFields:
   147                                        description: A list of node selector requirements
   148                                          by node's fields.
   149                                        items:
   150                                          description: A node selector requirement is
   151                                            a selector that contains values, a key,
   152                                            and an operator that relates the key and
   153                                            values.
   154                                          properties:
   155                                            key:
   156                                              description: The label key that the selector
   157                                                applies to.
   158                                              type: string
   159                                            operator:
   160                                              description: Represents a key's relationship
   161                                                to a set of values. Valid operators
   162                                                are In, NotIn, Exists, DoesNotExist.
   163                                                Gt, and Lt.
   164                                              type: string
   165                                            values:
   166                                              description: An array of string values.
   167                                                If the operator is In or NotIn, the
   168                                                values array must be non-empty. If the
   169                                                operator is Exists or DoesNotExist,
   170                                                the values array must be empty. If the
   171                                                operator is Gt or Lt, the values array
   172                                                must have a single element, which will
   173                                                be interpreted as an integer. This array
   174                                                is replaced during a strategic merge
   175                                                patch.
   176                                              items:
   177                                                type: string
   178                                              type: array
   179                                          required:
   180                                          - key
   181                                          - operator
   182                                          type: object
   183                                        type: array
   184                                    type: object
   185                                  weight:
   186                                    description: Weight associated with matching the
   187                                      corresponding nodeSelectorTerm, in the range 1-100.
   188                                    format: int32
   189                                    type: integer
   190                                required:
   191                                - preference
   192                                - weight
   193                                type: object
   194                              type: array
   195                            requiredDuringSchedulingIgnoredDuringExecution:
   196                              description: If the affinity requirements specified by
   197                                this field are not met at scheduling time, the pod will
   198                                not be scheduled onto the node. If the affinity requirements
   199                                specified by this field cease to be met at some point
   200                                during pod execution (e.g. due to an update), the system
   201                                may or may not try to eventually evict the pod from
   202                                its node.
   203                              properties:
   204                                nodeSelectorTerms:
   205                                  description: Required. A list of node selector terms.
   206                                    The terms are ORed.
   207                                  items:
   208                                    description: A null or empty node selector term
   209                                      matches no objects. The requirements of them are
   210                                      ANDed. The TopologySelectorTerm type implements
   211                                      a subset of the NodeSelectorTerm.
   212                                    properties:
   213                                      matchExpressions:
   214                                        description: A list of node selector requirements
   215                                          by node's labels.
   216                                        items:
   217                                          description: A node selector requirement is
   218                                            a selector that contains values, a key,
   219                                            and an operator that relates the key and
   220                                            values.
   221                                          properties:
   222                                            key:
   223                                              description: The label key that the selector
   224                                                applies to.
   225                                              type: string
   226                                            operator:
   227                                              description: Represents a key's relationship
   228                                                to a set of values. Valid operators
   229                                                are In, NotIn, Exists, DoesNotExist.
   230                                                Gt, and Lt.
   231                                              type: string
   232                                            values:
   233                                              description: An array of string values.
   234                                                If the operator is In or NotIn, the
   235                                                values array must be non-empty. If the
   236                                                operator is Exists or DoesNotExist,
   237                                                the values array must be empty. If the
   238                                                operator is Gt or Lt, the values array
   239                                                must have a single element, which will
   240                                                be interpreted as an integer. This array
   241                                                is replaced during a strategic merge
   242                                                patch.
   243                                              items:
   244                                                type: string
   245                                              type: array
   246                                          required:
   247                                          - key
   248                                          - operator
   249                                          type: object
   250                                        type: array
   251                                      matchFields:
   252                                        description: A list of node selector requirements
   253                                          by node's fields.
   254                                        items:
   255                                          description: A node selector requirement is
   256                                            a selector that contains values, a key,
   257                                            and an operator that relates the key and
   258                                            values.
   259                                          properties:
   260                                            key:
   261                                              description: The label key that the selector
   262                                                applies to.
   263                                              type: string
   264                                            operator:
   265                                              description: Represents a key's relationship
   266                                                to a set of values. Valid operators
   267                                                are In, NotIn, Exists, DoesNotExist.
   268                                                Gt, and Lt.
   269                                              type: string
   270                                            values:
   271                                              description: An array of string values.
   272                                                If the operator is In or NotIn, the
   273                                                values array must be non-empty. If the
   274                                                operator is Exists or DoesNotExist,
   275                                                the values array must be empty. If the
   276                                                operator is Gt or Lt, the values array
   277                                                must have a single element, which will
   278                                                be interpreted as an integer. This array
   279                                                is replaced during a strategic merge
   280                                                patch.
   281                                              items:
   282                                                type: string
   283                                              type: array
   284                                          required:
   285                                          - key
   286                                          - operator
   287                                          type: object
   288                                        type: array
   289                                    type: object
   290                                  type: array
   291                              required:
   292                              - nodeSelectorTerms
   293                              type: object
   294                          type: object
   295                        podAffinity:
   296                          description: Describes pod affinity scheduling rules (e.g.
   297                            co-locate this pod in the same node, zone, etc. as some
   298                            other pod(s)).
   299                          properties:
   300                            preferredDuringSchedulingIgnoredDuringExecution:
   301                              description: The scheduler will prefer to schedule pods
   302                                to nodes that satisfy the affinity expressions specified
   303                                by this field, but it may choose a node that violates
   304                                one or more of the expressions. The node that is most
   305                                preferred is the one with the greatest sum of weights,
   306                                i.e. for each node that meets all of the scheduling
   307                                requirements (resource request, requiredDuringScheduling
   308                                affinity expressions, etc.), compute a sum by iterating
   309                                through the elements of this field and adding "weight"
   310                                to the sum if the node has pods which matches the corresponding
   311                                podAffinityTerm; the node(s) with the highest sum are
   312                                the most preferred.
   313                              items:
   314                                description: The weights of all of the matched WeightedPodAffinityTerm
   315                                  fields are added per-node to find the most preferred
   316                                  node(s)
   317                                properties:
   318                                  podAffinityTerm:
   319                                    description: Required. A pod affinity term, associated
   320                                      with the corresponding weight.
   321                                    properties:
   322                                      labelSelector:
   323                                        description: A label query over a set of resources,
   324                                          in this case pods.
   325                                        properties:
   326                                          matchExpressions:
   327                                            description: matchExpressions is a list
   328                                              of label selector requirements. The requirements
   329                                              are ANDed.
   330                                            items:
   331                                              description: A label selector requirement
   332                                                is a selector that contains values,
   333                                                a key, and an operator that relates
   334                                                the key and values.
   335                                              properties:
   336                                                key:
   337                                                  description: key is the label key
   338                                                    that the selector applies to.
   339                                                  type: string
   340                                                operator:
   341                                                  description: operator represents a
   342                                                    key's relationship to a set of values.
   343                                                    Valid operators are In, NotIn, Exists
   344                                                    and DoesNotExist.
   345                                                  type: string
   346                                                values:
   347                                                  description: values is an array of
   348                                                    string values. If the operator is
   349                                                    In or NotIn, the values array must
   350                                                    be non-empty. If the operator is
   351                                                    Exists or DoesNotExist, the values
   352                                                    array must be empty. This array
   353                                                    is replaced during a strategic merge
   354                                                    patch.
   355                                                  items:
   356                                                    type: string
   357                                                  type: array
   358                                              required:
   359                                              - key
   360                                              - operator
   361                                              type: object
   362                                            type: array
   363                                          matchLabels:
   364                                            additionalProperties:
   365                                              type: string
   366                                            description: matchLabels is a map of {key,value}
   367                                              pairs. A single {key,value} in the matchLabels
   368                                              map is equivalent to an element of matchExpressions,
   369                                              whose key field is "key", the operator
   370                                              is "In", and the values array contains
   371                                              only "value". The requirements are ANDed.
   372                                            type: object
   373                                        type: object
   374                                      namespaceSelector:
   375                                        description: A label query over the set of namespaces
   376                                          that the term applies to. The term is applied
   377                                          to the union of the namespaces selected by
   378                                          this field and the ones listed in the namespaces
   379                                          field. null selector and null or empty namespaces
   380                                          list means "this pod's namespace". An empty
   381                                          selector ({}) matches all namespaces. This
   382                                          field is beta-level and is only honored when
   383                                          PodAffinityNamespaceSelector feature is enabled.
   384                                        properties:
   385                                          matchExpressions:
   386                                            description: matchExpressions is a list
   387                                              of label selector requirements. The requirements
   388                                              are ANDed.
   389                                            items:
   390                                              description: A label selector requirement
   391                                                is a selector that contains values,
   392                                                a key, and an operator that relates
   393                                                the key and values.
   394                                              properties:
   395                                                key:
   396                                                  description: key is the label key
   397                                                    that the selector applies to.
   398                                                  type: string
   399                                                operator:
   400                                                  description: operator represents a
   401                                                    key's relationship to a set of values.
   402                                                    Valid operators are In, NotIn, Exists
   403                                                    and DoesNotExist.
   404                                                  type: string
   405                                                values:
   406                                                  description: values is an array of
   407                                                    string values. If the operator is
   408                                                    In or NotIn, the values array must
   409                                                    be non-empty. If the operator is
   410                                                    Exists or DoesNotExist, the values
   411                                                    array must be empty. This array
   412                                                    is replaced during a strategic merge
   413                                                    patch.
   414                                                  items:
   415                                                    type: string
   416                                                  type: array
   417                                              required:
   418                                              - key
   419                                              - operator
   420                                              type: object
   421                                            type: array
   422                                          matchLabels:
   423                                            additionalProperties:
   424                                              type: string
   425                                            description: matchLabels is a map of {key,value}
   426                                              pairs. A single {key,value} in the matchLabels
   427                                              map is equivalent to an element of matchExpressions,
   428                                              whose key field is "key", the operator
   429                                              is "In", and the values array contains
   430                                              only "value". The requirements are ANDed.
   431                                            type: object
   432                                        type: object
   433                                      namespaces:
   434                                        description: namespaces specifies a static list
   435                                          of namespace names that the term applies to.
   436                                          The term is applied to the union of the namespaces
   437                                          listed in this field and the ones selected
   438                                          by namespaceSelector. null or empty namespaces
   439                                          list and null namespaceSelector means "this
   440                                          pod's namespace"
   441                                        items:
   442                                          type: string
   443                                        type: array
   444                                      topologyKey:
   445                                        description: This pod should be co-located (affinity)
   446                                          or not co-located (anti-affinity) with the
   447                                          pods matching the labelSelector in the specified
   448                                          namespaces, where co-located is defined as
   449                                          running on a node whose value of the label
   450                                          with key topologyKey matches that of any node
   451                                          on which any of the selected pods is running.
   452                                          Empty topologyKey is not allowed.
   453                                        type: string
   454                                    required:
   455                                    - topologyKey
   456                                    type: object
   457                                  weight:
   458                                    description: weight associated with matching the
   459                                      corresponding podAffinityTerm, in the range 1-100.
   460                                    format: int32
   461                                    type: integer
   462                                required:
   463                                - podAffinityTerm
   464                                - weight
   465                                type: object
   466                              type: array
   467                            requiredDuringSchedulingIgnoredDuringExecution:
   468                              description: If the affinity requirements specified by
   469                                this field are not met at scheduling time, the pod will
   470                                not be scheduled onto the node. If the affinity requirements
   471                                specified by this field cease to be met at some point
   472                                during pod execution (e.g. due to a pod label update),
   473                                the system may or may not try to eventually evict the
   474                                pod from its node. When there are multiple elements,
   475                                the lists of nodes corresponding to each podAffinityTerm
   476                                are intersected, i.e. all terms must be satisfied.
   477                              items:
   478                                description: Defines a set of pods (namely those matching
   479                                  the labelSelector relative to the given namespace(s))
   480                                  that this pod should be co-located (affinity) or not
   481                                  co-located (anti-affinity) with, where co-located
   482                                  is defined as running on a node whose value of the
   483                                  label with key <topologyKey> matches that of any node
   484                                  on which a pod of the set of pods is running
   485                                properties:
   486                                  labelSelector:
   487                                    description: A label query over a set of resources,
   488                                      in this case pods.
   489                                    properties:
   490                                      matchExpressions:
   491                                        description: matchExpressions is a list of label
   492                                          selector requirements. The requirements are
   493                                          ANDed.
   494                                        items:
   495                                          description: A label selector requirement
   496                                            is a selector that contains values, a key,
   497                                            and an operator that relates the key and
   498                                            values.
   499                                          properties:
   500                                            key:
   501                                              description: key is the label key that
   502                                                the selector applies to.
   503                                              type: string
   504                                            operator:
   505                                              description: operator represents a key's
   506                                                relationship to a set of values. Valid
   507                                                operators are In, NotIn, Exists and
   508                                                DoesNotExist.
   509                                              type: string
   510                                            values:
   511                                              description: values is an array of string
   512                                                values. If the operator is In or NotIn,
   513                                                the values array must be non-empty.
   514                                                If the operator is Exists or DoesNotExist,
   515                                                the values array must be empty. This
   516                                                array is replaced during a strategic
   517                                                merge patch.
   518                                              items:
   519                                                type: string
   520                                              type: array
   521                                          required:
   522                                          - key
   523                                          - operator
   524                                          type: object
   525                                        type: array
   526                                      matchLabels:
   527                                        additionalProperties:
   528                                          type: string
   529                                        description: matchLabels is a map of {key,value}
   530                                          pairs. A single {key,value} in the matchLabels
   531                                          map is equivalent to an element of matchExpressions,
   532                                          whose key field is "key", the operator is
   533                                          "In", and the values array contains only "value".
   534                                          The requirements are ANDed.
   535                                        type: object
   536                                    type: object
   537                                  namespaceSelector:
   538                                    description: A label query over the set of namespaces
   539                                      that the term applies to. The term is applied
   540                                      to the union of the namespaces selected by this
   541                                      field and the ones listed in the namespaces field.
   542                                      null selector and null or empty namespaces list
   543                                      means "this pod's namespace". An empty selector
   544                                      ({}) matches all namespaces. This field is beta-level
   545                                      and is only honored when PodAffinityNamespaceSelector
   546                                      feature is enabled.
   547                                    properties:
   548                                      matchExpressions:
   549                                        description: matchExpressions is a list of label
   550                                          selector requirements. The requirements are
   551                                          ANDed.
   552                                        items:
   553                                          description: A label selector requirement
   554                                            is a selector that contains values, a key,
   555                                            and an operator that relates the key and
   556                                            values.
   557                                          properties:
   558                                            key:
   559                                              description: key is the label key that
   560                                                the selector applies to.
   561                                              type: string
   562                                            operator:
   563                                              description: operator represents a key's
   564                                                relationship to a set of values. Valid
   565                                                operators are In, NotIn, Exists and
   566                                                DoesNotExist.
   567                                              type: string
   568                                            values:
   569                                              description: values is an array of string
   570                                                values. If the operator is In or NotIn,
   571                                                the values array must be non-empty.
   572                                                If the operator is Exists or DoesNotExist,
   573                                                the values array must be empty. This
   574                                                array is replaced during a strategic
   575                                                merge patch.
   576                                              items:
   577                                                type: string
   578                                              type: array
   579                                          required:
   580                                          - key
   581                                          - operator
   582                                          type: object
   583                                        type: array
   584                                      matchLabels:
   585                                        additionalProperties:
   586                                          type: string
   587                                        description: matchLabels is a map of {key,value}
   588                                          pairs. A single {key,value} in the matchLabels
   589                                          map is equivalent to an element of matchExpressions,
   590                                          whose key field is "key", the operator is
   591                                          "In", and the values array contains only "value".
   592                                          The requirements are ANDed.
   593                                        type: object
   594                                    type: object
   595                                  namespaces:
   596                                    description: namespaces specifies a static list
   597                                      of namespace names that the term applies to. The
   598                                      term is applied to the union of the namespaces
   599                                      listed in this field and the ones selected by
   600                                      namespaceSelector. null or empty namespaces list
   601                                      and null namespaceSelector means "this pod's namespace"
   602                                    items:
   603                                      type: string
   604                                    type: array
   605                                  topologyKey:
   606                                    description: This pod should be co-located (affinity)
   607                                      or not co-located (anti-affinity) with the pods
   608                                      matching the labelSelector in the specified namespaces,
   609                                      where co-located is defined as running on a node
   610                                      whose value of the label with key topologyKey
   611                                      matches that of any node on which any of the selected
   612                                      pods is running. Empty topologyKey is not allowed.
   613                                    type: string
   614                                required:
   615                                - topologyKey
   616                                type: object
   617                              type: array
   618                          type: object
   619                        podAntiAffinity:
   620                          description: Describes pod anti-affinity scheduling rules
   621                            (e.g. avoid putting this pod in the same node, zone, etc.
   622                            as some other pod(s)).
   623                          properties:
   624                            preferredDuringSchedulingIgnoredDuringExecution:
   625                              description: The scheduler will prefer to schedule pods
   626                                to nodes that satisfy the anti-affinity expressions
   627                                specified by this field, but it may choose a node that
   628                                violates one or more of the expressions. The node that
   629                                is most preferred is the one with the greatest sum of
   630                                weights, i.e. for each node that meets all of the scheduling
   631                                requirements (resource request, requiredDuringScheduling
   632                                anti-affinity expressions, etc.), compute a sum by iterating
   633                                through the elements of this field and adding "weight"
   634                                to the sum if the node has pods which matches the corresponding
   635                                podAffinityTerm; the node(s) with the highest sum are
   636                                the most preferred.
   637                              items:
   638                                description: The weights of all of the matched WeightedPodAffinityTerm
   639                                  fields are added per-node to find the most preferred
   640                                  node(s)
   641                                properties:
   642                                  podAffinityTerm:
   643                                    description: Required. A pod affinity term, associated
   644                                      with the corresponding weight.
   645                                    properties:
   646                                      labelSelector:
   647                                        description: A label query over a set of resources,
   648                                          in this case pods.
   649                                        properties:
   650                                          matchExpressions:
   651                                            description: matchExpressions is a list
   652                                              of label selector requirements. The requirements
   653                                              are ANDed.
   654                                            items:
   655                                              description: A label selector requirement
   656                                                is a selector that contains values,
   657                                                a key, and an operator that relates
   658                                                the key and values.
   659                                              properties:
   660                                                key:
   661                                                  description: key is the label key
   662                                                    that the selector applies to.
   663                                                  type: string
   664                                                operator:
   665                                                  description: operator represents a
   666                                                    key's relationship to a set of values.
   667                                                    Valid operators are In, NotIn, Exists
   668                                                    and DoesNotExist.
   669                                                  type: string
   670                                                values:
   671                                                  description: values is an array of
   672                                                    string values. If the operator is
   673                                                    In or NotIn, the values array must
   674                                                    be non-empty. If the operator is
   675                                                    Exists or DoesNotExist, the values
   676                                                    array must be empty. This array
   677                                                    is replaced during a strategic merge
   678                                                    patch.
   679                                                  items:
   680                                                    type: string
   681                                                  type: array
   682                                              required:
   683                                              - key
   684                                              - operator
   685                                              type: object
   686                                            type: array
   687                                          matchLabels:
   688                                            additionalProperties:
   689                                              type: string
   690                                            description: matchLabels is a map of {key,value}
   691                                              pairs. A single {key,value} in the matchLabels
   692                                              map is equivalent to an element of matchExpressions,
   693                                              whose key field is "key", the operator
   694                                              is "In", and the values array contains
   695                                              only "value". The requirements are ANDed.
   696                                            type: object
   697                                        type: object
   698                                      namespaceSelector:
   699                                        description: A label query over the set of namespaces
   700                                          that the term applies to. The term is applied
   701                                          to the union of the namespaces selected by
   702                                          this field and the ones listed in the namespaces
   703                                          field. null selector and null or empty namespaces
   704                                          list means "this pod's namespace". An empty
   705                                          selector ({}) matches all namespaces. This
   706                                          field is beta-level and is only honored when
   707                                          PodAffinityNamespaceSelector feature is enabled.
   708                                        properties:
   709                                          matchExpressions:
   710                                            description: matchExpressions is a list
   711                                              of label selector requirements. The requirements
   712                                              are ANDed.
   713                                            items:
   714                                              description: A label selector requirement
   715                                                is a selector that contains values,
   716                                                a key, and an operator that relates
   717                                                the key and values.
   718                                              properties:
   719                                                key:
   720                                                  description: key is the label key
   721                                                    that the selector applies to.
   722                                                  type: string
   723                                                operator:
   724                                                  description: operator represents a
   725                                                    key's relationship to a set of values.
   726                                                    Valid operators are In, NotIn, Exists
   727                                                    and DoesNotExist.
   728                                                  type: string
   729                                                values:
   730                                                  description: values is an array of
   731                                                    string values. If the operator is
   732                                                    In or NotIn, the values array must
   733                                                    be non-empty. If the operator is
   734                                                    Exists or DoesNotExist, the values
   735                                                    array must be empty. This array
   736                                                    is replaced during a strategic merge
   737                                                    patch.
   738                                                  items:
   739                                                    type: string
   740                                                  type: array
   741                                              required:
   742                                              - key
   743                                              - operator
   744                                              type: object
   745                                            type: array
   746                                          matchLabels:
   747                                            additionalProperties:
   748                                              type: string
   749                                            description: matchLabels is a map of {key,value}
   750                                              pairs. A single {key,value} in the matchLabels
   751                                              map is equivalent to an element of matchExpressions,
   752                                              whose key field is "key", the operator
   753                                              is "In", and the values array contains
   754                                              only "value". The requirements are ANDed.
   755                                            type: object
   756                                        type: object
   757                                      namespaces:
   758                                        description: namespaces specifies a static list
   759                                          of namespace names that the term applies to.
   760                                          The term is applied to the union of the namespaces
   761                                          listed in this field and the ones selected
   762                                          by namespaceSelector. null or empty namespaces
   763                                          list and null namespaceSelector means "this
   764                                          pod's namespace"
   765                                        items:
   766                                          type: string
   767                                        type: array
   768                                      topologyKey:
   769                                        description: This pod should be co-located (affinity)
   770                                          or not co-located (anti-affinity) with the
   771                                          pods matching the labelSelector in the specified
   772                                          namespaces, where co-located is defined as
   773                                          running on a node whose value of the label
   774                                          with key topologyKey matches that of any node
   775                                          on which any of the selected pods is running.
   776                                          Empty topologyKey is not allowed.
   777                                        type: string
   778                                    required:
   779                                    - topologyKey
   780                                    type: object
   781                                  weight:
   782                                    description: weight associated with matching the
   783                                      corresponding podAffinityTerm, in the range 1-100.
   784                                    format: int32
   785                                    type: integer
   786                                required:
   787                                - podAffinityTerm
   788                                - weight
   789                                type: object
   790                              type: array
   791                            requiredDuringSchedulingIgnoredDuringExecution:
   792                              description: If the anti-affinity requirements specified
   793                                by this field are not met at scheduling time, the pod
   794                                will not be scheduled onto the node. If the anti-affinity
   795                                requirements specified by this field cease to be met
   796                                at some point during pod execution (e.g. due to a pod
   797                                label update), the system may or may not try to eventually
   798                                evict the pod from its node. When there are multiple
   799                                elements, the lists of nodes corresponding to each podAffinityTerm
   800                                are intersected, i.e. all terms must be satisfied.
   801                              items:
   802                                description: Defines a set of pods (namely those matching
   803                                  the labelSelector relative to the given namespace(s))
   804                                  that this pod should be co-located (affinity) or not
   805                                  co-located (anti-affinity) with, where co-located
   806                                  is defined as running on a node whose value of the
   807                                  label with key <topologyKey> matches that of any node
   808                                  on which a pod of the set of pods is running
   809                                properties:
   810                                  labelSelector:
   811                                    description: A label query over a set of resources,
   812                                      in this case pods.
   813                                    properties:
   814                                      matchExpressions:
   815                                        description: matchExpressions is a list of label
   816                                          selector requirements. The requirements are
   817                                          ANDed.
   818                                        items:
   819                                          description: A label selector requirement
   820                                            is a selector that contains values, a key,
   821                                            and an operator that relates the key and
   822                                            values.
   823                                          properties:
   824                                            key:
   825                                              description: key is the label key that
   826                                                the selector applies to.
   827                                              type: string
   828                                            operator:
   829                                              description: operator represents a key's
   830                                                relationship to a set of values. Valid
   831                                                operators are In, NotIn, Exists and
   832                                                DoesNotExist.
   833                                              type: string
   834                                            values:
   835                                              description: values is an array of string
   836                                                values. If the operator is In or NotIn,
   837                                                the values array must be non-empty.
   838                                                If the operator is Exists or DoesNotExist,
   839                                                the values array must be empty. This
   840                                                array is replaced during a strategic
   841                                                merge patch.
   842                                              items:
   843                                                type: string
   844                                              type: array
   845                                          required:
   846                                          - key
   847                                          - operator
   848                                          type: object
   849                                        type: array
   850                                      matchLabels:
   851                                        additionalProperties:
   852                                          type: string
   853                                        description: matchLabels is a map of {key,value}
   854                                          pairs. A single {key,value} in the matchLabels
   855                                          map is equivalent to an element of matchExpressions,
   856                                          whose key field is "key", the operator is
   857                                          "In", and the values array contains only "value".
   858                                          The requirements are ANDed.
   859                                        type: object
   860                                    type: object
   861                                  namespaceSelector:
   862                                    description: A label query over the set of namespaces
   863                                      that the term applies to. The term is applied
   864                                      to the union of the namespaces selected by this
   865                                      field and the ones listed in the namespaces field.
   866                                      null selector and null or empty namespaces list
   867                                      means "this pod's namespace". An empty selector
   868                                      ({}) matches all namespaces. This field is beta-level
   869                                      and is only honored when PodAffinityNamespaceSelector
   870                                      feature is enabled.
   871                                    properties:
   872                                      matchExpressions:
   873                                        description: matchExpressions is a list of label
   874                                          selector requirements. The requirements are
   875                                          ANDed.
   876                                        items:
   877                                          description: A label selector requirement
   878                                            is a selector that contains values, a key,
   879                                            and an operator that relates the key and
   880                                            values.
   881                                          properties:
   882                                            key:
   883                                              description: key is the label key that
   884                                                the selector applies to.
   885                                              type: string
   886                                            operator:
   887                                              description: operator represents a key's
   888                                                relationship to a set of values. Valid
   889                                                operators are In, NotIn, Exists and
   890                                                DoesNotExist.
   891                                              type: string
   892                                            values:
   893                                              description: values is an array of string
   894                                                values. If the operator is In or NotIn,
   895                                                the values array must be non-empty.
   896                                                If the operator is Exists or DoesNotExist,
   897                                                the values array must be empty. This
   898                                                array is replaced during a strategic
   899                                                merge patch.
   900                                              items:
   901                                                type: string
   902                                              type: array
   903                                          required:
   904                                          - key
   905                                          - operator
   906                                          type: object
   907                                        type: array
   908                                      matchLabels:
   909                                        additionalProperties:
   910                                          type: string
   911                                        description: matchLabels is a map of {key,value}
   912                                          pairs. A single {key,value} in the matchLabels
   913                                          map is equivalent to an element of matchExpressions,
   914                                          whose key field is "key", the operator is
   915                                          "In", and the values array contains only "value".
   916                                          The requirements are ANDed.
   917                                        type: object
   918                                    type: object
   919                                  namespaces:
   920                                    description: namespaces specifies a static list
   921                                      of namespace names that the term applies to. The
   922                                      term is applied to the union of the namespaces
   923                                      listed in this field and the ones selected by
   924                                      namespaceSelector. null or empty namespaces list
   925                                      and null namespaceSelector means "this pod's namespace"
   926                                    items:
   927                                      type: string
   928                                    type: array
   929                                  topologyKey:
   930                                    description: This pod should be co-located (affinity)
   931                                      or not co-located (anti-affinity) with the pods
   932                                      matching the labelSelector in the specified namespaces,
   933                                      where co-located is defined as running on a node
   934                                      whose value of the label with key topologyKey
   935                                      matches that of any node on which any of the selected
   936                                      pods is running. Empty topologyKey is not allowed.
   937                                    type: string
   938                                required:
   939                                - topologyKey
   940                                type: object
   941                              type: array
   942                          type: object
   943                      type: object
   944                    command:
   945                      items:
   946                        type: string
   947                      type: array
   948                    customCommandRenames:
   949                      items:
   950                        description: RedisCommandRename defines the specification of
   951                          a "rename-command" configuration option
   952                        properties:
   953                          from:
   954                            type: string
   955                          to:
   956                            type: string
   957                        type: object
   958                      type: array
   959                    customConfig:
   960                      items:
   961                        type: string
   962                      type: array
   963                    dnsPolicy:
   964                      description: DNSPolicy defines how a pod's DNS will be configured.
   965                      type: string
   966                    exporter:
   967                      description: RedisExporter defines the specification for the redis
   968                        exporter
   969                      properties:
   970                        args:
   971                          items:
   972                            type: string
   973                          type: array
   974                        enabled:
   975                          type: boolean
   976                        env:
   977                          items:
   978                            description: EnvVar represents an environment variable present
   979                              in a Container.
   980                            properties:
   981                              name:
   982                                description: Name of the environment variable. Must
   983                                  be a C_IDENTIFIER.
   984                                type: string
   985                              value:
   986                                description: 'Variable references $(VAR_NAME) are expanded
   987                                  using the previously defined environment variables
   988                                  in the container and any service environment variables.
   989                                  If a variable cannot be resolved, the reference in
   990                                  the input string will be unchanged. Double $$ are
   991                                  reduced to a single $, which allows for escaping the
   992                                  $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce
   993                                  the string literal "$(VAR_NAME)". Escaped references
   994                                  will never be expanded, regardless of whether the
   995                                  variable exists or not. Defaults to "".'
   996                                type: string
   997                              valueFrom:
   998                                description: Source for the environment variable's value.
   999                                  Cannot be used if value is not empty.
  1000                                properties:
  1001                                  configMapKeyRef:
  1002                                    description: Selects a key of a ConfigMap.
  1003                                    properties:
  1004                                      key:
  1005                                        description: The key to select.
  1006                                        type: string
  1007                                      name:
  1008                                        description: 'Name of the referent. More info:
  1009                                          https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  1010                                          TODO: Add other useful fields. apiVersion,
  1011                                          kind, uid?'
  1012                                        type: string
  1013                                      optional:
  1014                                        description: Specify whether the ConfigMap or
  1015                                          its key must be defined
  1016                                        type: boolean
  1017                                    required:
  1018                                    - key
  1019                                    type: object
  1020                                  fieldRef:
  1021                                    description: 'Selects a field of the pod: supports
  1022                                      metadata.name, metadata.namespace, `metadata.labels[''<KEY>'']`,
  1023                                      `metadata.annotations[''<KEY>'']`, spec.nodeName,
  1024                                      spec.serviceAccountName, status.hostIP, status.podIP,
  1025                                      status.podIPs.'
  1026                                    properties:
  1027                                      apiVersion:
  1028                                        description: Version of the schema the FieldPath
  1029                                          is written in terms of, defaults to "v1".
  1030                                        type: string
  1031                                      fieldPath:
  1032                                        description: Path of the field to select in
  1033                                          the specified API version.
  1034                                        type: string
  1035                                    required:
  1036                                    - fieldPath
  1037                                    type: object
  1038                                  resourceFieldRef:
  1039                                    description: 'Selects a resource of the container:
  1040                                      only resources limits and requests (limits.cpu,
  1041                                      limits.memory, limits.ephemeral-storage, requests.cpu,
  1042                                      requests.memory and requests.ephemeral-storage)
  1043                                      are currently supported.'
  1044                                    properties:
  1045                                      containerName:
  1046                                        description: 'Container name: required for volumes,
  1047                                          optional for env vars'
  1048                                        type: string
  1049                                      divisor:
  1050                                        anyOf:
  1051                                        - type: integer
  1052                                        - type: string
  1053                                        description: Specifies the output format of
  1054                                          the exposed resources, defaults to "1"
  1055                                        pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1056                                        x-kubernetes-int-or-string: true
  1057                                      resource:
  1058                                        description: 'Required: resource to select'
  1059                                        type: string
  1060                                    required:
  1061                                    - resource
  1062                                    type: object
  1063                                  secretKeyRef:
  1064                                    description: Selects a key of a secret in the pod's
  1065                                      namespace
  1066                                    properties:
  1067                                      key:
  1068                                        description: The key of the secret to select
  1069                                          from.  Must be a valid secret key.
  1070                                        type: string
  1071                                      name:
  1072                                        description: 'Name of the referent. More info:
  1073                                          https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  1074                                          TODO: Add other useful fields. apiVersion,
  1075                                          kind, uid?'
  1076                                        type: string
  1077                                      optional:
  1078                                        description: Specify whether the Secret or its
  1079                                          key must be defined
  1080                                        type: boolean
  1081                                    required:
  1082                                    - key
  1083                                    type: object
  1084                                type: object
  1085                            required:
  1086                            - name
  1087                            type: object
  1088                          type: array
  1089                        image:
  1090                          type: string
  1091                        imagePullPolicy:
  1092                          description: PullPolicy describes a policy for if/when to
  1093                            pull a container image
  1094                          type: string
  1095                        resources:
  1096                          description: ResourceRequirements describes the compute resource
  1097                            requirements.
  1098                          properties:
  1099                            limits:
  1100                              additionalProperties:
  1101                                anyOf:
  1102                                - type: integer
  1103                                - type: string
  1104                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1105                                x-kubernetes-int-or-string: true
  1106                              description: 'Limits describes the maximum amount of compute
  1107                                resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1108                              type: object
  1109                            requests:
  1110                              additionalProperties:
  1111                                anyOf:
  1112                                - type: integer
  1113                                - type: string
  1114                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1115                                x-kubernetes-int-or-string: true
  1116                              description: 'Requests describes the minimum amount of
  1117                                compute resources required. If Requests is omitted for
  1118                                a container, it defaults to Limits if that is explicitly
  1119                                specified, otherwise to an implementation-defined value.
  1120                                More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1121                              type: object
  1122                          type: object
  1123                      type: object
  1124                    hostNetwork:
  1125                      type: boolean
  1126                    image:
  1127                      type: string
  1128                    imagePullPolicy:
  1129                      description: PullPolicy describes a policy for if/when to pull
  1130                        a container image
  1131                      type: string
  1132                    imagePullSecrets:
  1133                      items:
  1134                        description: LocalObjectReference contains enough information
  1135                          to let you locate the referenced object inside the same namespace.
  1136                        properties:
  1137                          name:
  1138                            description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  1139                              TODO: Add other useful fields. apiVersion, kind, uid?'
  1140                            type: string
  1141                        type: object
  1142                      type: array
  1143                    nodeSelector:
  1144                      additionalProperties:
  1145                        type: string
  1146                      type: object
  1147                    podAnnotations:
  1148                      additionalProperties:
  1149                        type: string
  1150                      type: object
  1151                    priorityClassName:
  1152                      type: string
  1153                    replicas:
  1154                      format: int32
  1155                      type: integer
  1156                    resources:
  1157                      description: ResourceRequirements describes the compute resource
  1158                        requirements.
  1159                      properties:
  1160                        limits:
  1161                          additionalProperties:
  1162                            anyOf:
  1163                            - type: integer
  1164                            - type: string
  1165                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1166                            x-kubernetes-int-or-string: true
  1167                          description: 'Limits describes the maximum amount of compute
  1168                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1169                          type: object
  1170                        requests:
  1171                          additionalProperties:
  1172                            anyOf:
  1173                            - type: integer
  1174                            - type: string
  1175                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1176                            x-kubernetes-int-or-string: true
  1177                          description: 'Requests describes the minimum amount of compute
  1178                            resources required. If Requests is omitted for a container,
  1179                            it defaults to Limits if that is explicitly specified, otherwise
  1180                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1181                          type: object
  1182                      type: object
  1183                    securityContext:
  1184                      description: PodSecurityContext holds pod-level security attributes
  1185                        and common container settings. Some fields are also present
  1186                        in container.securityContext.  Field values of container.securityContext
  1187                        take precedence over field values of PodSecurityContext.
  1188                      properties:
  1189                        fsGroup:
  1190                          description: "A special supplemental group that applies to
  1191                            all containers in a pod. Some volume types allow the Kubelet
  1192                            to change the ownership of that volume to be owned by the
  1193                            pod: \n 1. The owning GID will be the FSGroup 2. The setgid
  1194                            bit is set (new files created in the volume will be owned
  1195                            by FSGroup) 3. The permission bits are OR'd with rw-rw----
  1196                            \n If unset, the Kubelet will not modify the ownership and
  1197                            permissions of any volume."
  1198                          format: int64
  1199                          type: integer
  1200                        fsGroupChangePolicy:
  1201                          description: 'fsGroupChangePolicy defines behavior of changing
  1202                            ownership and permission of the volume before being exposed
  1203                            inside Pod. This field will only apply to volume types which
  1204                            support fsGroup based ownership(and permissions). It will
  1205                            have no effect on ephemeral volume types such as: secret,
  1206                            configmaps and emptydir. Valid values are "OnRootMismatch"
  1207                            and "Always". If not specified, "Always" is used.'
  1208                          type: string
  1209                        runAsGroup:
  1210                          description: The GID to run the entrypoint of the container
  1211                            process. Uses runtime default if unset. May also be set
  1212                            in SecurityContext.  If set in both SecurityContext and
  1213                            PodSecurityContext, the value specified in SecurityContext
  1214                            takes precedence for that container.
  1215                          format: int64
  1216                          type: integer
  1217                        runAsNonRoot:
  1218                          description: Indicates that the container must run as a non-root
  1219                            user. If true, the Kubelet will validate the image at runtime
  1220                            to ensure that it does not run as UID 0 (root) and fail
  1221                            to start the container if it does. If unset or false, no
  1222                            such validation will be performed. May also be set in SecurityContext.  If
  1223                            set in both SecurityContext and PodSecurityContext, the
  1224                            value specified in SecurityContext takes precedence.
  1225                          type: boolean
  1226                        runAsUser:
  1227                          description: The UID to run the entrypoint of the container
  1228                            process. Defaults to user specified in image metadata if
  1229                            unspecified. May also be set in SecurityContext.  If set
  1230                            in both SecurityContext and PodSecurityContext, the value
  1231                            specified in SecurityContext takes precedence for that container.
  1232                          format: int64
  1233                          type: integer
  1234                        seLinuxOptions:
  1235                          description: The SELinux context to be applied to all containers.
  1236                            If unspecified, the container runtime will allocate a random
  1237                            SELinux context for each container.  May also be set in
  1238                            SecurityContext.  If set in both SecurityContext and PodSecurityContext,
  1239                            the value specified in SecurityContext takes precedence
  1240                            for that container.
  1241                          properties:
  1242                            level:
  1243                              description: Level is SELinux level label that applies
  1244                                to the container.
  1245                              type: string
  1246                            role:
  1247                              description: Role is a SELinux role label that applies
  1248                                to the container.
  1249                              type: string
  1250                            type:
  1251                              description: Type is a SELinux type label that applies
  1252                                to the container.
  1253                              type: string
  1254                            user:
  1255                              description: User is a SELinux user label that applies
  1256                                to the container.
  1257                              type: string
  1258                          type: object
  1259                        seccompProfile:
  1260                          description: The seccomp options to use by the containers
  1261                            in this pod.
  1262                          properties:
  1263                            localhostProfile:
  1264                              description: localhostProfile indicates a profile defined
  1265                                in a file on the node should be used. The profile must
  1266                                be preconfigured on the node to work. Must be a descending
  1267                                path, relative to the kubelet's configured seccomp profile
  1268                                location. Must only be set if type is "Localhost".
  1269                              type: string
  1270                            type:
  1271                              description: "type indicates which kind of seccomp profile
  1272                                will be applied. Valid options are: \n Localhost - a
  1273                                profile defined in a file on the node should be used.
  1274                                RuntimeDefault - the container runtime default profile
  1275                                should be used. Unconfined - no profile should be applied."
  1276                              type: string
  1277                          required:
  1278                          - type
  1279                          type: object
  1280                        supplementalGroups:
  1281                          description: A list of groups applied to the first process
  1282                            run in each container, in addition to the container's primary
  1283                            GID.  If unspecified, no groups will be added to any container.
  1284                          items:
  1285                            format: int64
  1286                            type: integer
  1287                          type: array
  1288                        sysctls:
  1289                          description: Sysctls hold a list of namespaced sysctls used
  1290                            for the pod. Pods with unsupported sysctls (by the container
  1291                            runtime) might fail to launch.
  1292                          items:
  1293                            description: Sysctl defines a kernel parameter to be set
  1294                            properties:
  1295                              name:
  1296                                description: Name of a property to set
  1297                                type: string
  1298                              value:
  1299                                description: Value of a property to set
  1300                                type: string
  1301                            required:
  1302                            - name
  1303                            - value
  1304                            type: object
  1305                          type: array
  1306                        windowsOptions:
  1307                          description: The Windows specific settings applied to all
  1308                            containers. If unspecified, the options within a container's
  1309                            SecurityContext will be used. If set in both SecurityContext
  1310                            and PodSecurityContext, the value specified in SecurityContext
  1311                            takes precedence.
  1312                          properties:
  1313                            gmsaCredentialSpec:
  1314                              description: GMSACredentialSpec is where the GMSA admission
  1315                                webhook (https://github.com/kubernetes-sigs/windows-gmsa)
  1316                                inlines the contents of the GMSA credential spec named
  1317                                by the GMSACredentialSpecName field.
  1318                              type: string
  1319                            gmsaCredentialSpecName:
  1320                              description: GMSACredentialSpecName is the name of the
  1321                                GMSA credential spec to use.
  1322                              type: string
  1323                            hostProcess:
  1324                              description: HostProcess determines if a container should
  1325                                be run as a 'Host Process' container. This field is
  1326                                alpha-level and will only be honored by components that
  1327                                enable the WindowsHostProcessContainers feature flag.
  1328                                Setting this field without the feature flag will result
  1329                                in errors when validating the Pod. All of a Pod's containers
  1330                                must have the same effective HostProcess value (it is
  1331                                not allowed to have a mix of HostProcess containers
  1332                                and non-HostProcess containers).  In addition, if HostProcess
  1333                                is true then HostNetwork must also be set to true.
  1334                              type: boolean
  1335                            runAsUserName:
  1336                              description: The UserName in Windows to run the entrypoint
  1337                                of the container process. Defaults to the user specified
  1338                                in image metadata if unspecified. May also be set in
  1339                                PodSecurityContext. If set in both SecurityContext and
  1340                                PodSecurityContext, the value specified in SecurityContext
  1341                                takes precedence.
  1342                              type: string
  1343                          type: object
  1344                      type: object
  1345                    serviceAccountName:
  1346                      type: string
  1347                    serviceAnnotations:
  1348                      additionalProperties:
  1349                        type: string
  1350                      type: object
  1351                    shutdownConfigMap:
  1352                      type: string
  1353                    storage:
  1354                      description: RedisStorage defines the structure used to store
  1355                        the Redis Data
  1356                      properties:
  1357                        emptyDir:
  1358                          description: Represents an empty directory for a pod. Empty
  1359                            directory volumes support ownership management and SELinux
  1360                            relabeling.
  1361                          properties:
  1362                            medium:
  1363                              description: 'What type of storage medium should back
  1364                                this directory. The default is "" which means to use
  1365                                the node''s default medium. Must be an empty string
  1366                                (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
  1367                              type: string
  1368                            sizeLimit:
  1369                              anyOf:
  1370                              - type: integer
  1371                              - type: string
  1372                              description: 'Total amount of local storage required for
  1373                                this EmptyDir volume. The size limit is also applicable
  1374                                for memory medium. The maximum usage on memory medium
  1375                                EmptyDir would be the minimum value between the SizeLimit
  1376                                specified here and the sum of memory limits of all containers
  1377                                in a pod. The default is nil which means that the limit
  1378                                is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
  1379                              pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1380                              x-kubernetes-int-or-string: true
  1381                          type: object
  1382                        keepAfterDeletion:
  1383                          type: boolean
  1384                        persistentVolumeClaim:
  1385                          description: EmbeddedPersistentVolumeClaim is an embedded
  1386                            version of k8s.io/api/core/v1.PersistentVolumeClaim. It
  1387                            contains TypeMeta and a reduced ObjectMeta.
  1388                          properties:
  1389                            apiVersion:
  1390                              description: 'APIVersion defines the versioned schema
  1391                                of this representation of an object. Servers should
  1392                                convert recognized schemas to the latest internal value,
  1393                                and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1394                              type: string
  1395                            kind:
  1396                              description: 'Kind is a string value representing the
  1397                                REST resource this object represents. Servers may infer
  1398                                this from the endpoint the client submits requests to.
  1399                                Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1400                              type: string
  1401                            metadata:
  1402                              description: EmbeddedMetadata contains metadata relevant
  1403                                to an EmbeddedResource.
  1404                              properties:
  1405                                annotations:
  1406                                  additionalProperties:
  1407                                    type: string
  1408                                  description: 'Annotations is an unstructured key value
  1409                                    map stored with a resource that may be set by external
  1410                                    tools to store and retrieve arbitrary metadata.
  1411                                    They are not queryable and should be preserved when
  1412                                    modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'
  1413                                  type: object
  1414                                labels:
  1415                                  additionalProperties:
  1416                                    type: string
  1417                                  description: 'Map of string keys and values that can
  1418                                    be used to organize and categorize (scope and select)
  1419                                    objects. May match selectors of replication controllers
  1420                                    and services. More info: http://kubernetes.io/docs/user-guide/labels'
  1421                                  type: object
  1422                                name:
  1423                                  description: 'Name must be unique within a namespace.
  1424                                    Is required when creating resources, although some
  1425                                    resources may allow a client to request the generation
  1426                                    of an appropriate name automatically. Name is primarily
  1427                                    intended for creation idempotence and configuration
  1428                                    definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names'
  1429                                  type: string
  1430                              type: object
  1431                            spec:
  1432                              description: 'Spec defines the desired characteristics
  1433                                of a volume requested by a pod author. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims'
  1434                              properties:
  1435                                accessModes:
  1436                                  description: 'AccessModes contains the desired access
  1437                                    modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
  1438                                  items:
  1439                                    type: string
  1440                                  type: array
  1441                                dataSource:
  1442                                  description: 'This field can be used to specify either:
  1443                                    * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
  1444                                    * An existing PVC (PersistentVolumeClaim) If the
  1445                                    provisioner or an external controller can support
  1446                                    the specified data source, it will create a new
  1447                                    volume based on the contents of the specified data
  1448                                    source. If the AnyVolumeDataSource feature gate
  1449                                    is enabled, this field will always have the same
  1450                                    contents as the DataSourceRef field.'
  1451                                  properties:
  1452                                    apiGroup:
  1453                                      description: APIGroup is the group for the resource
  1454                                        being referenced. If APIGroup is not specified,
  1455                                        the specified Kind must be in the core API group.
  1456                                        For any other third-party types, APIGroup is
  1457                                        required.
  1458                                      type: string
  1459                                    kind:
  1460                                      description: Kind is the type of resource being
  1461                                        referenced
  1462                                      type: string
  1463                                    name:
  1464                                      description: Name is the name of resource being
  1465                                        referenced
  1466                                      type: string
  1467                                  required:
  1468                                  - kind
  1469                                  - name
  1470                                  type: object
  1471                                dataSourceRef:
  1472                                  description: 'Specifies the object from which to populate
  1473                                    the volume with data, if a non-empty volume is desired.
  1474                                    This may be any local object from a non-empty API
  1475                                    group (non core object) or a PersistentVolumeClaim
  1476                                    object. When this field is specified, volume binding
  1477                                    will only succeed if the type of the specified object
  1478                                    matches some installed volume populator or dynamic
  1479                                    provisioner. This field will replace the functionality
  1480                                    of the DataSource field and as such if both fields
  1481                                    are non-empty, they must have the same value. For
  1482                                    backwards compatibility, both fields (DataSource
  1483                                    and DataSourceRef) will be set to the same value
  1484                                    automatically if one of them is empty and the other
  1485                                    is non-empty. There are two important differences
  1486                                    between DataSource and DataSourceRef: * While DataSource
  1487                                    only allows two specific types of objects, DataSourceRef   allows
  1488                                    any non-core object, as well as PersistentVolumeClaim
  1489                                    objects. * While DataSource ignores disallowed values
  1490                                    (dropping them), DataSourceRef   preserves all values,
  1491                                    and generates an error if a disallowed value is   specified.
  1492                                    (Alpha) Using this field requires the AnyVolumeDataSource
  1493                                    feature gate to be enabled.'
  1494                                  properties:
  1495                                    apiGroup:
  1496                                      description: APIGroup is the group for the resource
  1497                                        being referenced. If APIGroup is not specified,
  1498                                        the specified Kind must be in the core API group.
  1499                                        For any other third-party types, APIGroup is
  1500                                        required.
  1501                                      type: string
  1502                                    kind:
  1503                                      description: Kind is the type of resource being
  1504                                        referenced
  1505                                      type: string
  1506                                    name:
  1507                                      description: Name is the name of resource being
  1508                                        referenced
  1509                                      type: string
  1510                                  required:
  1511                                  - kind
  1512                                  - name
  1513                                  type: object
  1514                                resources:
  1515                                  description: 'Resources represents the minimum resources
  1516                                    the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
  1517                                  properties:
  1518                                    limits:
  1519                                      additionalProperties:
  1520                                        anyOf:
  1521                                        - type: integer
  1522                                        - type: string
  1523                                        pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1524                                        x-kubernetes-int-or-string: true
  1525                                      description: 'Limits describes the maximum amount
  1526                                        of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1527                                      type: object
  1528                                    requests:
  1529                                      additionalProperties:
  1530                                        anyOf:
  1531                                        - type: integer
  1532                                        - type: string
  1533                                        pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1534                                        x-kubernetes-int-or-string: true
  1535                                      description: 'Requests describes the minimum amount
  1536                                        of compute resources required. If Requests is
  1537                                        omitted for a container, it defaults to Limits
  1538                                        if that is explicitly specified, otherwise to
  1539                                        an implementation-defined value. More info:
  1540                                        https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1541                                      type: object
  1542                                  type: object
  1543                                selector:
  1544                                  description: A label query over volumes to consider
  1545                                    for binding.
  1546                                  properties:
  1547                                    matchExpressions:
  1548                                      description: matchExpressions is a list of label
  1549                                        selector requirements. The requirements are
  1550                                        ANDed.
  1551                                      items:
  1552                                        description: A label selector requirement is
  1553                                          a selector that contains values, a key, and
  1554                                          an operator that relates the key and values.
  1555                                        properties:
  1556                                          key:
  1557                                            description: key is the label key that the
  1558                                              selector applies to.
  1559                                            type: string
  1560                                          operator:
  1561                                            description: operator represents a key's
  1562                                              relationship to a set of values. Valid
  1563                                              operators are In, NotIn, Exists and DoesNotExist.
  1564                                            type: string
  1565                                          values:
  1566                                            description: values is an array of string
  1567                                              values. If the operator is In or NotIn,
  1568                                              the values array must be non-empty. If
  1569                                              the operator is Exists or DoesNotExist,
  1570                                              the values array must be empty. This array
  1571                                              is replaced during a strategic merge patch.
  1572                                            items:
  1573                                              type: string
  1574                                            type: array
  1575                                        required:
  1576                                        - key
  1577                                        - operator
  1578                                        type: object
  1579                                      type: array
  1580                                    matchLabels:
  1581                                      additionalProperties:
  1582                                        type: string
  1583                                      description: matchLabels is a map of {key,value}
  1584                                        pairs. A single {key,value} in the matchLabels
  1585                                        map is equivalent to an element of matchExpressions,
  1586                                        whose key field is "key", the operator is "In",
  1587                                        and the values array contains only "value".
  1588                                        The requirements are ANDed.
  1589                                      type: object
  1590                                  type: object
  1591                                storageClassName:
  1592                                  description: 'Name of the StorageClass required by
  1593                                    the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1'
  1594                                  type: string
  1595                                volumeMode:
  1596                                  description: volumeMode defines what type of volume
  1597                                    is required by the claim. Value of Filesystem is
  1598                                    implied when not included in claim spec.
  1599                                  type: string
  1600                                volumeName:
  1601                                  description: VolumeName is the binding reference to
  1602                                    the PersistentVolume backing this claim.
  1603                                  type: string
  1604                              type: object
  1605                            status:
  1606                              description: 'Status represents the current information/status
  1607                                of a persistent volume claim. Read-only. More info:
  1608                                https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims'
  1609                              properties:
  1610                                accessModes:
  1611                                  description: 'AccessModes contains the actual access
  1612                                    modes the volume backing the PVC has. More info:
  1613                                    https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1'
  1614                                  items:
  1615                                    type: string
  1616                                  type: array
  1617                                capacity:
  1618                                  additionalProperties:
  1619                                    anyOf:
  1620                                    - type: integer
  1621                                    - type: string
  1622                                    pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1623                                    x-kubernetes-int-or-string: true
  1624                                  description: Represents the actual resources of the
  1625                                    underlying volume.
  1626                                  type: object
  1627                                conditions:
  1628                                  description: Current Condition of persistent volume
  1629                                    claim. If underlying persistent volume is being
  1630                                    resized then the Condition will be set to 'ResizeStarted'.
  1631                                  items:
  1632                                    description: PersistentVolumeClaimCondition contails
  1633                                      details about state of pvc
  1634                                    properties:
  1635                                      lastProbeTime:
  1636                                        description: Last time we probed the condition.
  1637                                        format: date-time
  1638                                        type: string
  1639                                      lastTransitionTime:
  1640                                        description: Last time the condition transitioned
  1641                                          from one status to another.
  1642                                        format: date-time
  1643                                        type: string
  1644                                      message:
  1645                                        description: Human-readable message indicating
  1646                                          details about last transition.
  1647                                        type: string
  1648                                      reason:
  1649                                        description: Unique, this should be a short,
  1650                                          machine understandable string that gives the
  1651                                          reason for condition's last transition. If
  1652                                          it reports "ResizeStarted" that means the
  1653                                          underlying persistent volume is being resized.
  1654                                        type: string
  1655                                      status:
  1656                                        type: string
  1657                                      type:
  1658                                        description: PersistentVolumeClaimConditionType
  1659                                          is a valid value of PersistentVolumeClaimCondition.Type
  1660                                        type: string
  1661                                    required:
  1662                                    - status
  1663                                    - type
  1664                                    type: object
  1665                                  type: array
  1666                                phase:
  1667                                  description: Phase represents the current phase of
  1668                                    PersistentVolumeClaim.
  1669                                  type: string
  1670                              type: object
  1671                          type: object
  1672                      type: object
  1673                    terminationGracePeriod:
  1674                      format: int64
  1675                      type: integer
  1676                    tolerations:
  1677                      items:
  1678                        description: The pod this Toleration is attached to tolerates
  1679                          any taint that matches the triple <key,value,effect> using
  1680                          the matching operator <operator>.
  1681                        properties:
  1682                          effect:
  1683                            description: Effect indicates the taint effect to match.
  1684                              Empty means match all taint effects. When specified, allowed
  1685                              values are NoSchedule, PreferNoSchedule and NoExecute.
  1686                            type: string
  1687                          key:
  1688                            description: Key is the taint key that the toleration applies
  1689                              to. Empty means match all taint keys. If the key is empty,
  1690                              operator must be Exists; this combination means to match
  1691                              all values and all keys.
  1692                            type: string
  1693                          operator:
  1694                            description: Operator represents a key's relationship to
  1695                              the value. Valid operators are Exists and Equal. Defaults
  1696                              to Equal. Exists is equivalent to wildcard for value,
  1697                              so that a pod can tolerate all taints of a particular
  1698                              category.
  1699                            type: string
  1700                          tolerationSeconds:
  1701                            description: TolerationSeconds represents the period of
  1702                              time the toleration (which must be of effect NoExecute,
  1703                              otherwise this field is ignored) tolerates the taint.
  1704                              By default, it is not set, which means tolerate the taint
  1705                              forever (do not evict). Zero and negative values will
  1706                              be treated as 0 (evict immediately) by the system.
  1707                            format: int64
  1708                            type: integer
  1709                          value:
  1710                            description: Value is the taint value the toleration matches
  1711                              to. If the operator is Exists, the value should be empty,
  1712                              otherwise just a regular string.
  1713                            type: string
  1714                        type: object
  1715                      type: array
  1716                  type: object
  1717                sentinel:
  1718                  description: SentinelSettings defines the specification of the sentinel
  1719                    cluster
  1720                  properties:
  1721                    affinity:
  1722                      description: Affinity is a group of affinity scheduling rules.
  1723                      properties:
  1724                        nodeAffinity:
  1725                          description: Describes node affinity scheduling rules for
  1726                            the pod.
  1727                          properties:
  1728                            preferredDuringSchedulingIgnoredDuringExecution:
  1729                              description: The scheduler will prefer to schedule pods
  1730                                to nodes that satisfy the affinity expressions specified
  1731                                by this field, but it may choose a node that violates
  1732                                one or more of the expressions. The node that is most
  1733                                preferred is the one with the greatest sum of weights,
  1734                                i.e. for each node that meets all of the scheduling
  1735                                requirements (resource request, requiredDuringScheduling
  1736                                affinity expressions, etc.), compute a sum by iterating
  1737                                through the elements of this field and adding "weight"
  1738                                to the sum if the node matches the corresponding matchExpressions;
  1739                                the node(s) with the highest sum are the most preferred.
  1740                              items:
  1741                                description: An empty preferred scheduling term matches
  1742                                  all objects with implicit weight 0 (i.e. it's a no-op).
  1743                                  A null preferred scheduling term matches no objects
  1744                                  (i.e. is also a no-op).
  1745                                properties:
  1746                                  preference:
  1747                                    description: A node selector term, associated with
  1748                                      the corresponding weight.
  1749                                    properties:
  1750                                      matchExpressions:
  1751                                        description: A list of node selector requirements
  1752                                          by node's labels.
  1753                                        items:
  1754                                          description: A node selector requirement is
  1755                                            a selector that contains values, a key,
  1756                                            and an operator that relates the key and
  1757                                            values.
  1758                                          properties:
  1759                                            key:
  1760                                              description: The label key that the selector
  1761                                                applies to.
  1762                                              type: string
  1763                                            operator:
  1764                                              description: Represents a key's relationship
  1765                                                to a set of values. Valid operators
  1766                                                are In, NotIn, Exists, DoesNotExist.
  1767                                                Gt, and Lt.
  1768                                              type: string
  1769                                            values:
  1770                                              description: An array of string values.
  1771                                                If the operator is In or NotIn, the
  1772                                                values array must be non-empty. If the
  1773                                                operator is Exists or DoesNotExist,
  1774                                                the values array must be empty. If the
  1775                                                operator is Gt or Lt, the values array
  1776                                                must have a single element, which will
  1777                                                be interpreted as an integer. This array
  1778                                                is replaced during a strategic merge
  1779                                                patch.
  1780                                              items:
  1781                                                type: string
  1782                                              type: array
  1783                                          required:
  1784                                          - key
  1785                                          - operator
  1786                                          type: object
  1787                                        type: array
  1788                                      matchFields:
  1789                                        description: A list of node selector requirements
  1790                                          by node's fields.
  1791                                        items:
  1792                                          description: A node selector requirement is
  1793                                            a selector that contains values, a key,
  1794                                            and an operator that relates the key and
  1795                                            values.
  1796                                          properties:
  1797                                            key:
  1798                                              description: The label key that the selector
  1799                                                applies to.
  1800                                              type: string
  1801                                            operator:
  1802                                              description: Represents a key's relationship
  1803                                                to a set of values. Valid operators
  1804                                                are In, NotIn, Exists, DoesNotExist.
  1805                                                Gt, and Lt.
  1806                                              type: string
  1807                                            values:
  1808                                              description: An array of string values.
  1809                                                If the operator is In or NotIn, the
  1810                                                values array must be non-empty. If the
  1811                                                operator is Exists or DoesNotExist,
  1812                                                the values array must be empty. If the
  1813                                                operator is Gt or Lt, the values array
  1814                                                must have a single element, which will
  1815                                                be interpreted as an integer. This array
  1816                                                is replaced during a strategic merge
  1817                                                patch.
  1818                                              items:
  1819                                                type: string
  1820                                              type: array
  1821                                          required:
  1822                                          - key
  1823                                          - operator
  1824                                          type: object
  1825                                        type: array
  1826                                    type: object
  1827                                  weight:
  1828                                    description: Weight associated with matching the
  1829                                      corresponding nodeSelectorTerm, in the range 1-100.
  1830                                    format: int32
  1831                                    type: integer
  1832                                required:
  1833                                - preference
  1834                                - weight
  1835                                type: object
  1836                              type: array
  1837                            requiredDuringSchedulingIgnoredDuringExecution:
  1838                              description: If the affinity requirements specified by
  1839                                this field are not met at scheduling time, the pod will
  1840                                not be scheduled onto the node. If the affinity requirements
  1841                                specified by this field cease to be met at some point
  1842                                during pod execution (e.g. due to an update), the system
  1843                                may or may not try to eventually evict the pod from
  1844                                its node.
  1845                              properties:
  1846                                nodeSelectorTerms:
  1847                                  description: Required. A list of node selector terms.
  1848                                    The terms are ORed.
  1849                                  items:
  1850                                    description: A null or empty node selector term
  1851                                      matches no objects. The requirements of them are
  1852                                      ANDed. The TopologySelectorTerm type implements
  1853                                      a subset of the NodeSelectorTerm.
  1854                                    properties:
  1855                                      matchExpressions:
  1856                                        description: A list of node selector requirements
  1857                                          by node's labels.
  1858                                        items:
  1859                                          description: A node selector requirement is
  1860                                            a selector that contains values, a key,
  1861                                            and an operator that relates the key and
  1862                                            values.
  1863                                          properties:
  1864                                            key:
  1865                                              description: The label key that the selector
  1866                                                applies to.
  1867                                              type: string
  1868                                            operator:
  1869                                              description: Represents a key's relationship
  1870                                                to a set of values. Valid operators
  1871                                                are In, NotIn, Exists, DoesNotExist.
  1872                                                Gt, and Lt.
  1873                                              type: string
  1874                                            values:
  1875                                              description: An array of string values.
  1876                                                If the operator is In or NotIn, the
  1877                                                values array must be non-empty. If the
  1878                                                operator is Exists or DoesNotExist,
  1879                                                the values array must be empty. If the
  1880                                                operator is Gt or Lt, the values array
  1881                                                must have a single element, which will
  1882                                                be interpreted as an integer. This array
  1883                                                is replaced during a strategic merge
  1884                                                patch.
  1885                                              items:
  1886                                                type: string
  1887                                              type: array
  1888                                          required:
  1889                                          - key
  1890                                          - operator
  1891                                          type: object
  1892                                        type: array
  1893                                      matchFields:
  1894                                        description: A list of node selector requirements
  1895                                          by node's fields.
  1896                                        items:
  1897                                          description: A node selector requirement is
  1898                                            a selector that contains values, a key,
  1899                                            and an operator that relates the key and
  1900                                            values.
  1901                                          properties:
  1902                                            key:
  1903                                              description: The label key that the selector
  1904                                                applies to.
  1905                                              type: string
  1906                                            operator:
  1907                                              description: Represents a key's relationship
  1908                                                to a set of values. Valid operators
  1909                                                are In, NotIn, Exists, DoesNotExist.
  1910                                                Gt, and Lt.
  1911                                              type: string
  1912                                            values:
  1913                                              description: An array of string values.
  1914                                                If the operator is In or NotIn, the
  1915                                                values array must be non-empty. If the
  1916                                                operator is Exists or DoesNotExist,
  1917                                                the values array must be empty. If the
  1918                                                operator is Gt or Lt, the values array
  1919                                                must have a single element, which will
  1920                                                be interpreted as an integer. This array
  1921                                                is replaced during a strategic merge
  1922                                                patch.
  1923                                              items:
  1924                                                type: string
  1925                                              type: array
  1926                                          required:
  1927                                          - key
  1928                                          - operator
  1929                                          type: object
  1930                                        type: array
  1931                                    type: object
  1932                                  type: array
  1933                              required:
  1934                              - nodeSelectorTerms
  1935                              type: object
  1936                          type: object
  1937                        podAffinity:
  1938                          description: Describes pod affinity scheduling rules (e.g.
  1939                            co-locate this pod in the same node, zone, etc. as some
  1940                            other pod(s)).
  1941                          properties:
  1942                            preferredDuringSchedulingIgnoredDuringExecution:
  1943                              description: The scheduler will prefer to schedule pods
  1944                                to nodes that satisfy the affinity expressions specified
  1945                                by this field, but it may choose a node that violates
  1946                                one or more of the expressions. The node that is most
  1947                                preferred is the one with the greatest sum of weights,
  1948                                i.e. for each node that meets all of the scheduling
  1949                                requirements (resource request, requiredDuringScheduling
  1950                                affinity expressions, etc.), compute a sum by iterating
  1951                                through the elements of this field and adding "weight"
  1952                                to the sum if the node has pods which matches the corresponding
  1953                                podAffinityTerm; the node(s) with the highest sum are
  1954                                the most preferred.
  1955                              items:
  1956                                description: The weights of all of the matched WeightedPodAffinityTerm
  1957                                  fields are added per-node to find the most preferred
  1958                                  node(s)
  1959                                properties:
  1960                                  podAffinityTerm:
  1961                                    description: Required. A pod affinity term, associated
  1962                                      with the corresponding weight.
  1963                                    properties:
  1964                                      labelSelector:
  1965                                        description: A label query over a set of resources,
  1966                                          in this case pods.
  1967                                        properties:
  1968                                          matchExpressions:
  1969                                            description: matchExpressions is a list
  1970                                              of label selector requirements. The requirements
  1971                                              are ANDed.
  1972                                            items:
  1973                                              description: A label selector requirement
  1974                                                is a selector that contains values,
  1975                                                a key, and an operator that relates
  1976                                                the key and values.
  1977                                              properties:
  1978                                                key:
  1979                                                  description: key is the label key
  1980                                                    that the selector applies to.
  1981                                                  type: string
  1982                                                operator:
  1983                                                  description: operator represents a
  1984                                                    key's relationship to a set of values.
  1985                                                    Valid operators are In, NotIn, Exists
  1986                                                    and DoesNotExist.
  1987                                                  type: string
  1988                                                values:
  1989                                                  description: values is an array of
  1990                                                    string values. If the operator is
  1991                                                    In or NotIn, the values array must
  1992                                                    be non-empty. If the operator is
  1993                                                    Exists or DoesNotExist, the values
  1994                                                    array must be empty. This array
  1995                                                    is replaced during a strategic merge
  1996                                                    patch.
  1997                                                  items:
  1998                                                    type: string
  1999                                                  type: array
  2000                                              required:
  2001                                              - key
  2002                                              - operator
  2003                                              type: object
  2004                                            type: array
  2005                                          matchLabels:
  2006                                            additionalProperties:
  2007                                              type: string
  2008                                            description: matchLabels is a map of {key,value}
  2009                                              pairs. A single {key,value} in the matchLabels
  2010                                              map is equivalent to an element of matchExpressions,
  2011                                              whose key field is "key", the operator
  2012                                              is "In", and the values array contains
  2013                                              only "value". The requirements are ANDed.
  2014                                            type: object
  2015                                        type: object
  2016                                      namespaceSelector:
  2017                                        description: A label query over the set of namespaces
  2018                                          that the term applies to. The term is applied
  2019                                          to the union of the namespaces selected by
  2020                                          this field and the ones listed in the namespaces
  2021                                          field. null selector and null or empty namespaces
  2022                                          list means "this pod's namespace". An empty
  2023                                          selector ({}) matches all namespaces. This
  2024                                          field is beta-level and is only honored when
  2025                                          PodAffinityNamespaceSelector feature is enabled.
  2026                                        properties:
  2027                                          matchExpressions:
  2028                                            description: matchExpressions is a list
  2029                                              of label selector requirements. The requirements
  2030                                              are ANDed.
  2031                                            items:
  2032                                              description: A label selector requirement
  2033                                                is a selector that contains values,
  2034                                                a key, and an operator that relates
  2035                                                the key and values.
  2036                                              properties:
  2037                                                key:
  2038                                                  description: key is the label key
  2039                                                    that the selector applies to.
  2040                                                  type: string
  2041                                                operator:
  2042                                                  description: operator represents a
  2043                                                    key's relationship to a set of values.
  2044                                                    Valid operators are In, NotIn, Exists
  2045                                                    and DoesNotExist.
  2046                                                  type: string
  2047                                                values:
  2048                                                  description: values is an array of
  2049                                                    string values. If the operator is
  2050                                                    In or NotIn, the values array must
  2051                                                    be non-empty. If the operator is
  2052                                                    Exists or DoesNotExist, the values
  2053                                                    array must be empty. This array
  2054                                                    is replaced during a strategic merge
  2055                                                    patch.
  2056                                                  items:
  2057                                                    type: string
  2058                                                  type: array
  2059                                              required:
  2060                                              - key
  2061                                              - operator
  2062                                              type: object
  2063                                            type: array
  2064                                          matchLabels:
  2065                                            additionalProperties:
  2066                                              type: string
  2067                                            description: matchLabels is a map of {key,value}
  2068                                              pairs. A single {key,value} in the matchLabels
  2069                                              map is equivalent to an element of matchExpressions,
  2070                                              whose key field is "key", the operator
  2071                                              is "In", and the values array contains
  2072                                              only "value". The requirements are ANDed.
  2073                                            type: object
  2074                                        type: object
  2075                                      namespaces:
  2076                                        description: namespaces specifies a static list
  2077                                          of namespace names that the term applies to.
  2078                                          The term is applied to the union of the namespaces
  2079                                          listed in this field and the ones selected
  2080                                          by namespaceSelector. null or empty namespaces
  2081                                          list and null namespaceSelector means "this
  2082                                          pod's namespace"
  2083                                        items:
  2084                                          type: string
  2085                                        type: array
  2086                                      topologyKey:
  2087                                        description: This pod should be co-located (affinity)
  2088                                          or not co-located (anti-affinity) with the
  2089                                          pods matching the labelSelector in the specified
  2090                                          namespaces, where co-located is defined as
  2091                                          running on a node whose value of the label
  2092                                          with key topologyKey matches that of any node
  2093                                          on which any of the selected pods is running.
  2094                                          Empty topologyKey is not allowed.
  2095                                        type: string
  2096                                    required:
  2097                                    - topologyKey
  2098                                    type: object
  2099                                  weight:
  2100                                    description: weight associated with matching the
  2101                                      corresponding podAffinityTerm, in the range 1-100.
  2102                                    format: int32
  2103                                    type: integer
  2104                                required:
  2105                                - podAffinityTerm
  2106                                - weight
  2107                                type: object
  2108                              type: array
  2109                            requiredDuringSchedulingIgnoredDuringExecution:
  2110                              description: If the affinity requirements specified by
  2111                                this field are not met at scheduling time, the pod will
  2112                                not be scheduled onto the node. If the affinity requirements
  2113                                specified by this field cease to be met at some point
  2114                                during pod execution (e.g. due to a pod label update),
  2115                                the system may or may not try to eventually evict the
  2116                                pod from its node. When there are multiple elements,
  2117                                the lists of nodes corresponding to each podAffinityTerm
  2118                                are intersected, i.e. all terms must be satisfied.
  2119                              items:
  2120                                description: Defines a set of pods (namely those matching
  2121                                  the labelSelector relative to the given namespace(s))
  2122                                  that this pod should be co-located (affinity) or not
  2123                                  co-located (anti-affinity) with, where co-located
  2124                                  is defined as running on a node whose value of the
  2125                                  label with key <topologyKey> matches that of any node
  2126                                  on which a pod of the set of pods is running
  2127                                properties:
  2128                                  labelSelector:
  2129                                    description: A label query over a set of resources,
  2130                                      in this case pods.
  2131                                    properties:
  2132                                      matchExpressions:
  2133                                        description: matchExpressions is a list of label
  2134                                          selector requirements. The requirements are
  2135                                          ANDed.
  2136                                        items:
  2137                                          description: A label selector requirement
  2138                                            is a selector that contains values, a key,
  2139                                            and an operator that relates the key and
  2140                                            values.
  2141                                          properties:
  2142                                            key:
  2143                                              description: key is the label key that
  2144                                                the selector applies to.
  2145                                              type: string
  2146                                            operator:
  2147                                              description: operator represents a key's
  2148                                                relationship to a set of values. Valid
  2149                                                operators are In, NotIn, Exists and
  2150                                                DoesNotExist.
  2151                                              type: string
  2152                                            values:
  2153                                              description: values is an array of string
  2154                                                values. If the operator is In or NotIn,
  2155                                                the values array must be non-empty.
  2156                                                If the operator is Exists or DoesNotExist,
  2157                                                the values array must be empty. This
  2158                                                array is replaced during a strategic
  2159                                                merge patch.
  2160                                              items:
  2161                                                type: string
  2162                                              type: array
  2163                                          required:
  2164                                          - key
  2165                                          - operator
  2166                                          type: object
  2167                                        type: array
  2168                                      matchLabels:
  2169                                        additionalProperties:
  2170                                          type: string
  2171                                        description: matchLabels is a map of {key,value}
  2172                                          pairs. A single {key,value} in the matchLabels
  2173                                          map is equivalent to an element of matchExpressions,
  2174                                          whose key field is "key", the operator is
  2175                                          "In", and the values array contains only "value".
  2176                                          The requirements are ANDed.
  2177                                        type: object
  2178                                    type: object
  2179                                  namespaceSelector:
  2180                                    description: A label query over the set of namespaces
  2181                                      that the term applies to. The term is applied
  2182                                      to the union of the namespaces selected by this
  2183                                      field and the ones listed in the namespaces field.
  2184                                      null selector and null or empty namespaces list
  2185                                      means "this pod's namespace". An empty selector
  2186                                      ({}) matches all namespaces. This field is beta-level
  2187                                      and is only honored when PodAffinityNamespaceSelector
  2188                                      feature is enabled.
  2189                                    properties:
  2190                                      matchExpressions:
  2191                                        description: matchExpressions is a list of label
  2192                                          selector requirements. The requirements are
  2193                                          ANDed.
  2194                                        items:
  2195                                          description: A label selector requirement
  2196                                            is a selector that contains values, a key,
  2197                                            and an operator that relates the key and
  2198                                            values.
  2199                                          properties:
  2200                                            key:
  2201                                              description: key is the label key that
  2202                                                the selector applies to.
  2203                                              type: string
  2204                                            operator:
  2205                                              description: operator represents a key's
  2206                                                relationship to a set of values. Valid
  2207                                                operators are In, NotIn, Exists and
  2208                                                DoesNotExist.
  2209                                              type: string
  2210                                            values:
  2211                                              description: values is an array of string
  2212                                                values. If the operator is In or NotIn,
  2213                                                the values array must be non-empty.
  2214                                                If the operator is Exists or DoesNotExist,
  2215                                                the values array must be empty. This
  2216                                                array is replaced during a strategic
  2217                                                merge patch.
  2218                                              items:
  2219                                                type: string
  2220                                              type: array
  2221                                          required:
  2222                                          - key
  2223                                          - operator
  2224                                          type: object
  2225                                        type: array
  2226                                      matchLabels:
  2227                                        additionalProperties:
  2228                                          type: string
  2229                                        description: matchLabels is a map of {key,value}
  2230                                          pairs. A single {key,value} in the matchLabels
  2231                                          map is equivalent to an element of matchExpressions,
  2232                                          whose key field is "key", the operator is
  2233                                          "In", and the values array contains only "value".
  2234                                          The requirements are ANDed.
  2235                                        type: object
  2236                                    type: object
  2237                                  namespaces:
  2238                                    description: namespaces specifies a static list
  2239                                      of namespace names that the term applies to. The
  2240                                      term is applied to the union of the namespaces
  2241                                      listed in this field and the ones selected by
  2242                                      namespaceSelector. null or empty namespaces list
  2243                                      and null namespaceSelector means "this pod's namespace"
  2244                                    items:
  2245                                      type: string
  2246                                    type: array
  2247                                  topologyKey:
  2248                                    description: This pod should be co-located (affinity)
  2249                                      or not co-located (anti-affinity) with the pods
  2250                                      matching the labelSelector in the specified namespaces,
  2251                                      where co-located is defined as running on a node
  2252                                      whose value of the label with key topologyKey
  2253                                      matches that of any node on which any of the selected
  2254                                      pods is running. Empty topologyKey is not allowed.
  2255                                    type: string
  2256                                required:
  2257                                - topologyKey
  2258                                type: object
  2259                              type: array
  2260                          type: object
  2261                        podAntiAffinity:
  2262                          description: Describes pod anti-affinity scheduling rules
  2263                            (e.g. avoid putting this pod in the same node, zone, etc.
  2264                            as some other pod(s)).
  2265                          properties:
  2266                            preferredDuringSchedulingIgnoredDuringExecution:
  2267                              description: The scheduler will prefer to schedule pods
  2268                                to nodes that satisfy the anti-affinity expressions
  2269                                specified by this field, but it may choose a node that
  2270                                violates one or more of the expressions. The node that
  2271                                is most preferred is the one with the greatest sum of
  2272                                weights, i.e. for each node that meets all of the scheduling
  2273                                requirements (resource request, requiredDuringScheduling
  2274                                anti-affinity expressions, etc.), compute a sum by iterating
  2275                                through the elements of this field and adding "weight"
  2276                                to the sum if the node has pods which matches the corresponding
  2277                                podAffinityTerm; the node(s) with the highest sum are
  2278                                the most preferred.
  2279                              items:
  2280                                description: The weights of all of the matched WeightedPodAffinityTerm
  2281                                  fields are added per-node to find the most preferred
  2282                                  node(s)
  2283                                properties:
  2284                                  podAffinityTerm:
  2285                                    description: Required. A pod affinity term, associated
  2286                                      with the corresponding weight.
  2287                                    properties:
  2288                                      labelSelector:
  2289                                        description: A label query over a set of resources,
  2290                                          in this case pods.
  2291                                        properties:
  2292                                          matchExpressions:
  2293                                            description: matchExpressions is a list
  2294                                              of label selector requirements. The requirements
  2295                                              are ANDed.
  2296                                            items:
  2297                                              description: A label selector requirement
  2298                                                is a selector that contains values,
  2299                                                a key, and an operator that relates
  2300                                                the key and values.
  2301                                              properties:
  2302                                                key:
  2303                                                  description: key is the label key
  2304                                                    that the selector applies to.
  2305                                                  type: string
  2306                                                operator:
  2307                                                  description: operator represents a
  2308                                                    key's relationship to a set of values.
  2309                                                    Valid operators are In, NotIn, Exists
  2310                                                    and DoesNotExist.
  2311                                                  type: string
  2312                                                values:
  2313                                                  description: values is an array of
  2314                                                    string values. If the operator is
  2315                                                    In or NotIn, the values array must
  2316                                                    be non-empty. If the operator is
  2317                                                    Exists or DoesNotExist, the values
  2318                                                    array must be empty. This array
  2319                                                    is replaced during a strategic merge
  2320                                                    patch.
  2321                                                  items:
  2322                                                    type: string
  2323                                                  type: array
  2324                                              required:
  2325                                              - key
  2326                                              - operator
  2327                                              type: object
  2328                                            type: array
  2329                                          matchLabels:
  2330                                            additionalProperties:
  2331                                              type: string
  2332                                            description: matchLabels is a map of {key,value}
  2333                                              pairs. A single {key,value} in the matchLabels
  2334                                              map is equivalent to an element of matchExpressions,
  2335                                              whose key field is "key", the operator
  2336                                              is "In", and the values array contains
  2337                                              only "value". The requirements are ANDed.
  2338                                            type: object
  2339                                        type: object
  2340                                      namespaceSelector:
  2341                                        description: A label query over the set of namespaces
  2342                                          that the term applies to. The term is applied
  2343                                          to the union of the namespaces selected by
  2344                                          this field and the ones listed in the namespaces
  2345                                          field. null selector and null or empty namespaces
  2346                                          list means "this pod's namespace". An empty
  2347                                          selector ({}) matches all namespaces. This
  2348                                          field is beta-level and is only honored when
  2349                                          PodAffinityNamespaceSelector feature is enabled.
  2350                                        properties:
  2351                                          matchExpressions:
  2352                                            description: matchExpressions is a list
  2353                                              of label selector requirements. The requirements
  2354                                              are ANDed.
  2355                                            items:
  2356                                              description: A label selector requirement
  2357                                                is a selector that contains values,
  2358                                                a key, and an operator that relates
  2359                                                the key and values.
  2360                                              properties:
  2361                                                key:
  2362                                                  description: key is the label key
  2363                                                    that the selector applies to.
  2364                                                  type: string
  2365                                                operator:
  2366                                                  description: operator represents a
  2367                                                    key's relationship to a set of values.
  2368                                                    Valid operators are In, NotIn, Exists
  2369                                                    and DoesNotExist.
  2370                                                  type: string
  2371                                                values:
  2372                                                  description: values is an array of
  2373                                                    string values. If the operator is
  2374                                                    In or NotIn, the values array must
  2375                                                    be non-empty. If the operator is
  2376                                                    Exists or DoesNotExist, the values
  2377                                                    array must be empty. This array
  2378                                                    is replaced during a strategic merge
  2379                                                    patch.
  2380                                                  items:
  2381                                                    type: string
  2382                                                  type: array
  2383                                              required:
  2384                                              - key
  2385                                              - operator
  2386                                              type: object
  2387                                            type: array
  2388                                          matchLabels:
  2389                                            additionalProperties:
  2390                                              type: string
  2391                                            description: matchLabels is a map of {key,value}
  2392                                              pairs. A single {key,value} in the matchLabels
  2393                                              map is equivalent to an element of matchExpressions,
  2394                                              whose key field is "key", the operator
  2395                                              is "In", and the values array contains
  2396                                              only "value". The requirements are ANDed.
  2397                                            type: object
  2398                                        type: object
  2399                                      namespaces:
  2400                                        description: namespaces specifies a static list
  2401                                          of namespace names that the term applies to.
  2402                                          The term is applied to the union of the namespaces
  2403                                          listed in this field and the ones selected
  2404                                          by namespaceSelector. null or empty namespaces
  2405                                          list and null namespaceSelector means "this
  2406                                          pod's namespace"
  2407                                        items:
  2408                                          type: string
  2409                                        type: array
  2410                                      topologyKey:
  2411                                        description: This pod should be co-located (affinity)
  2412                                          or not co-located (anti-affinity) with the
  2413                                          pods matching the labelSelector in the specified
  2414                                          namespaces, where co-located is defined as
  2415                                          running on a node whose value of the label
  2416                                          with key topologyKey matches that of any node
  2417                                          on which any of the selected pods is running.
  2418                                          Empty topologyKey is not allowed.
  2419                                        type: string
  2420                                    required:
  2421                                    - topologyKey
  2422                                    type: object
  2423                                  weight:
  2424                                    description: weight associated with matching the
  2425                                      corresponding podAffinityTerm, in the range 1-100.
  2426                                    format: int32
  2427                                    type: integer
  2428                                required:
  2429                                - podAffinityTerm
  2430                                - weight
  2431                                type: object
  2432                              type: array
  2433                            requiredDuringSchedulingIgnoredDuringExecution:
  2434                              description: If the anti-affinity requirements specified
  2435                                by this field are not met at scheduling time, the pod
  2436                                will not be scheduled onto the node. If the anti-affinity
  2437                                requirements specified by this field cease to be met
  2438                                at some point during pod execution (e.g. due to a pod
  2439                                label update), the system may or may not try to eventually
  2440                                evict the pod from its node. When there are multiple
  2441                                elements, the lists of nodes corresponding to each podAffinityTerm
  2442                                are intersected, i.e. all terms must be satisfied.
  2443                              items:
  2444                                description: Defines a set of pods (namely those matching
  2445                                  the labelSelector relative to the given namespace(s))
  2446                                  that this pod should be co-located (affinity) or not
  2447                                  co-located (anti-affinity) with, where co-located
  2448                                  is defined as running on a node whose value of the
  2449                                  label with key <topologyKey> matches that of any node
  2450                                  on which a pod of the set of pods is running
  2451                                properties:
  2452                                  labelSelector:
  2453                                    description: A label query over a set of resources,
  2454                                      in this case pods.
  2455                                    properties:
  2456                                      matchExpressions:
  2457                                        description: matchExpressions is a list of label
  2458                                          selector requirements. The requirements are
  2459                                          ANDed.
  2460                                        items:
  2461                                          description: A label selector requirement
  2462                                            is a selector that contains values, a key,
  2463                                            and an operator that relates the key and
  2464                                            values.
  2465                                          properties:
  2466                                            key:
  2467                                              description: key is the label key that
  2468                                                the selector applies to.
  2469                                              type: string
  2470                                            operator:
  2471                                              description: operator represents a key's
  2472                                                relationship to a set of values. Valid
  2473                                                operators are In, NotIn, Exists and
  2474                                                DoesNotExist.
  2475                                              type: string
  2476                                            values:
  2477                                              description: values is an array of string
  2478                                                values. If the operator is In or NotIn,
  2479                                                the values array must be non-empty.
  2480                                                If the operator is Exists or DoesNotExist,
  2481                                                the values array must be empty. This
  2482                                                array is replaced during a strategic
  2483                                                merge patch.
  2484                                              items:
  2485                                                type: string
  2486                                              type: array
  2487                                          required:
  2488                                          - key
  2489                                          - operator
  2490                                          type: object
  2491                                        type: array
  2492                                      matchLabels:
  2493                                        additionalProperties:
  2494                                          type: string
  2495                                        description: matchLabels is a map of {key,value}
  2496                                          pairs. A single {key,value} in the matchLabels
  2497                                          map is equivalent to an element of matchExpressions,
  2498                                          whose key field is "key", the operator is
  2499                                          "In", and the values array contains only "value".
  2500                                          The requirements are ANDed.
  2501                                        type: object
  2502                                    type: object
  2503                                  namespaceSelector:
  2504                                    description: A label query over the set of namespaces
  2505                                      that the term applies to. The term is applied
  2506                                      to the union of the namespaces selected by this
  2507                                      field and the ones listed in the namespaces field.
  2508                                      null selector and null or empty namespaces list
  2509                                      means "this pod's namespace". An empty selector
  2510                                      ({}) matches all namespaces. This field is beta-level
  2511                                      and is only honored when PodAffinityNamespaceSelector
  2512                                      feature is enabled.
  2513                                    properties:
  2514                                      matchExpressions:
  2515                                        description: matchExpressions is a list of label
  2516                                          selector requirements. The requirements are
  2517                                          ANDed.
  2518                                        items:
  2519                                          description: A label selector requirement
  2520                                            is a selector that contains values, a key,
  2521                                            and an operator that relates the key and
  2522                                            values.
  2523                                          properties:
  2524                                            key:
  2525                                              description: key is the label key that
  2526                                                the selector applies to.
  2527                                              type: string
  2528                                            operator:
  2529                                              description: operator represents a key's
  2530                                                relationship to a set of values. Valid
  2531                                                operators are In, NotIn, Exists and
  2532                                                DoesNotExist.
  2533                                              type: string
  2534                                            values:
  2535                                              description: values is an array of string
  2536                                                values. If the operator is In or NotIn,
  2537                                                the values array must be non-empty.
  2538                                                If the operator is Exists or DoesNotExist,
  2539                                                the values array must be empty. This
  2540                                                array is replaced during a strategic
  2541                                                merge patch.
  2542                                              items:
  2543                                                type: string
  2544                                              type: array
  2545                                          required:
  2546                                          - key
  2547                                          - operator
  2548                                          type: object
  2549                                        type: array
  2550                                      matchLabels:
  2551                                        additionalProperties:
  2552                                          type: string
  2553                                        description: matchLabels is a map of {key,value}
  2554                                          pairs. A single {key,value} in the matchLabels
  2555                                          map is equivalent to an element of matchExpressions,
  2556                                          whose key field is "key", the operator is
  2557                                          "In", and the values array contains only "value".
  2558                                          The requirements are ANDed.
  2559                                        type: object
  2560                                    type: object
  2561                                  namespaces:
  2562                                    description: namespaces specifies a static list
  2563                                      of namespace names that the term applies to. The
  2564                                      term is applied to the union of the namespaces
  2565                                      listed in this field and the ones selected by
  2566                                      namespaceSelector. null or empty namespaces list
  2567                                      and null namespaceSelector means "this pod's namespace"
  2568                                    items:
  2569                                      type: string
  2570                                    type: array
  2571                                  topologyKey:
  2572                                    description: This pod should be co-located (affinity)
  2573                                      or not co-located (anti-affinity) with the pods
  2574                                      matching the labelSelector in the specified namespaces,
  2575                                      where co-located is defined as running on a node
  2576                                      whose value of the label with key topologyKey
  2577                                      matches that of any node on which any of the selected
  2578                                      pods is running. Empty topologyKey is not allowed.
  2579                                    type: string
  2580                                required:
  2581                                - topologyKey
  2582                                type: object
  2583                              type: array
  2584                          type: object
  2585                      type: object
  2586                    command:
  2587                      items:
  2588                        type: string
  2589                      type: array
  2590                    customConfig:
  2591                      items:
  2592                        type: string
  2593                      type: array
  2594                    dnsPolicy:
  2595                      description: DNSPolicy defines how a pod's DNS will be configured.
  2596                      type: string
  2597                    exporter:
  2598                      description: SentinelExporter defines the specification for the
  2599                        sentinel exporter
  2600                      properties:
  2601                        args:
  2602                          items:
  2603                            type: string
  2604                          type: array
  2605                        enabled:
  2606                          type: boolean
  2607                        env:
  2608                          items:
  2609                            description: EnvVar represents an environment variable present
  2610                              in a Container.
  2611                            properties:
  2612                              name:
  2613                                description: Name of the environment variable. Must
  2614                                  be a C_IDENTIFIER.
  2615                                type: string
  2616                              value:
  2617                                description: 'Variable references $(VAR_NAME) are expanded
  2618                                  using the previously defined environment variables
  2619                                  in the container and any service environment variables.
  2620                                  If a variable cannot be resolved, the reference in
  2621                                  the input string will be unchanged. Double $$ are
  2622                                  reduced to a single $, which allows for escaping the
  2623                                  $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce
  2624                                  the string literal "$(VAR_NAME)". Escaped references
  2625                                  will never be expanded, regardless of whether the
  2626                                  variable exists or not. Defaults to "".'
  2627                                type: string
  2628                              valueFrom:
  2629                                description: Source for the environment variable's value.
  2630                                  Cannot be used if value is not empty.
  2631                                properties:
  2632                                  configMapKeyRef:
  2633                                    description: Selects a key of a ConfigMap.
  2634                                    properties:
  2635                                      key:
  2636                                        description: The key to select.
  2637                                        type: string
  2638                                      name:
  2639                                        description: 'Name of the referent. More info:
  2640                                          https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  2641                                          TODO: Add other useful fields. apiVersion,
  2642                                          kind, uid?'
  2643                                        type: string
  2644                                      optional:
  2645                                        description: Specify whether the ConfigMap or
  2646                                          its key must be defined
  2647                                        type: boolean
  2648                                    required:
  2649                                    - key
  2650                                    type: object
  2651                                  fieldRef:
  2652                                    description: 'Selects a field of the pod: supports
  2653                                      metadata.name, metadata.namespace, `metadata.labels[''<KEY>'']`,
  2654                                      `metadata.annotations[''<KEY>'']`, spec.nodeName,
  2655                                      spec.serviceAccountName, status.hostIP, status.podIP,
  2656                                      status.podIPs.'
  2657                                    properties:
  2658                                      apiVersion:
  2659                                        description: Version of the schema the FieldPath
  2660                                          is written in terms of, defaults to "v1".
  2661                                        type: string
  2662                                      fieldPath:
  2663                                        description: Path of the field to select in
  2664                                          the specified API version.
  2665                                        type: string
  2666                                    required:
  2667                                    - fieldPath
  2668                                    type: object
  2669                                  resourceFieldRef:
  2670                                    description: 'Selects a resource of the container:
  2671                                      only resources limits and requests (limits.cpu,
  2672                                      limits.memory, limits.ephemeral-storage, requests.cpu,
  2673                                      requests.memory and requests.ephemeral-storage)
  2674                                      are currently supported.'
  2675                                    properties:
  2676                                      containerName:
  2677                                        description: 'Container name: required for volumes,
  2678                                          optional for env vars'
  2679                                        type: string
  2680                                      divisor:
  2681                                        anyOf:
  2682                                        - type: integer
  2683                                        - type: string
  2684                                        description: Specifies the output format of
  2685                                          the exposed resources, defaults to "1"
  2686                                        pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  2687                                        x-kubernetes-int-or-string: true
  2688                                      resource:
  2689                                        description: 'Required: resource to select'
  2690                                        type: string
  2691                                    required:
  2692                                    - resource
  2693                                    type: object
  2694                                  secretKeyRef:
  2695                                    description: Selects a key of a secret in the pod's
  2696                                      namespace
  2697                                    properties:
  2698                                      key:
  2699                                        description: The key of the secret to select
  2700                                          from.  Must be a valid secret key.
  2701                                        type: string
  2702                                      name:
  2703                                        description: 'Name of the referent. More info:
  2704                                          https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  2705                                          TODO: Add other useful fields. apiVersion,
  2706                                          kind, uid?'
  2707                                        type: string
  2708                                      optional:
  2709                                        description: Specify whether the Secret or its
  2710                                          key must be defined
  2711                                        type: boolean
  2712                                    required:
  2713                                    - key
  2714                                    type: object
  2715                                type: object
  2716                            required:
  2717                            - name
  2718                            type: object
  2719                          type: array
  2720                        image:
  2721                          type: string
  2722                        imagePullPolicy:
  2723                          description: PullPolicy describes a policy for if/when to
  2724                            pull a container image
  2725                          type: string
  2726                        resources:
  2727                          description: ResourceRequirements describes the compute resource
  2728                            requirements.
  2729                          properties:
  2730                            limits:
  2731                              additionalProperties:
  2732                                anyOf:
  2733                                - type: integer
  2734                                - type: string
  2735                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  2736                                x-kubernetes-int-or-string: true
  2737                              description: 'Limits describes the maximum amount of compute
  2738                                resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  2739                              type: object
  2740                            requests:
  2741                              additionalProperties:
  2742                                anyOf:
  2743                                - type: integer
  2744                                - type: string
  2745                                pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  2746                                x-kubernetes-int-or-string: true
  2747                              description: 'Requests describes the minimum amount of
  2748                                compute resources required. If Requests is omitted for
  2749                                a container, it defaults to Limits if that is explicitly
  2750                                specified, otherwise to an implementation-defined value.
  2751                                More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  2752                              type: object
  2753                          type: object
  2754                      type: object
  2755                    hostNetwork:
  2756                      type: boolean
  2757                    image:
  2758                      type: string
  2759                    imagePullPolicy:
  2760                      description: PullPolicy describes a policy for if/when to pull
  2761                        a container image
  2762                      type: string
  2763                    imagePullSecrets:
  2764                      items:
  2765                        description: LocalObjectReference contains enough information
  2766                          to let you locate the referenced object inside the same namespace.
  2767                        properties:
  2768                          name:
  2769                            description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  2770                              TODO: Add other useful fields. apiVersion, kind, uid?'
  2771                            type: string
  2772                        type: object
  2773                      type: array
  2774                    nodeSelector:
  2775                      additionalProperties:
  2776                        type: string
  2777                      type: object
  2778                    podAnnotations:
  2779                      additionalProperties:
  2780                        type: string
  2781                      type: object
  2782                    priorityClassName:
  2783                      type: string
  2784                    replicas:
  2785                      format: int32
  2786                      type: integer
  2787                    resources:
  2788                      description: ResourceRequirements describes the compute resource
  2789                        requirements.
  2790                      properties:
  2791                        limits:
  2792                          additionalProperties:
  2793                            anyOf:
  2794                            - type: integer
  2795                            - type: string
  2796                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  2797                            x-kubernetes-int-or-string: true
  2798                          description: 'Limits describes the maximum amount of compute
  2799                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  2800                          type: object
  2801                        requests:
  2802                          additionalProperties:
  2803                            anyOf:
  2804                            - type: integer
  2805                            - type: string
  2806                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  2807                            x-kubernetes-int-or-string: true
  2808                          description: 'Requests describes the minimum amount of compute
  2809                            resources required. If Requests is omitted for a container,
  2810                            it defaults to Limits if that is explicitly specified, otherwise
  2811                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  2812                          type: object
  2813                      type: object
  2814                    securityContext:
  2815                      description: PodSecurityContext holds pod-level security attributes
  2816                        and common container settings. Some fields are also present
  2817                        in container.securityContext.  Field values of container.securityContext
  2818                        take precedence over field values of PodSecurityContext.
  2819                      properties:
  2820                        fsGroup:
  2821                          description: "A special supplemental group that applies to
  2822                            all containers in a pod. Some volume types allow the Kubelet
  2823                            to change the ownership of that volume to be owned by the
  2824                            pod: \n 1. The owning GID will be the FSGroup 2. The setgid
  2825                            bit is set (new files created in the volume will be owned
  2826                            by FSGroup) 3. The permission bits are OR'd with rw-rw----
  2827                            \n If unset, the Kubelet will not modify the ownership and
  2828                            permissions of any volume."
  2829                          format: int64
  2830                          type: integer
  2831                        fsGroupChangePolicy:
  2832                          description: 'fsGroupChangePolicy defines behavior of changing
  2833                            ownership and permission of the volume before being exposed
  2834                            inside Pod. This field will only apply to volume types which
  2835                            support fsGroup based ownership(and permissions). It will
  2836                            have no effect on ephemeral volume types such as: secret,
  2837                            configmaps and emptydir. Valid values are "OnRootMismatch"
  2838                            and "Always". If not specified, "Always" is used.'
  2839                          type: string
  2840                        runAsGroup:
  2841                          description: The GID to run the entrypoint of the container
  2842                            process. Uses runtime default if unset. May also be set
  2843                            in SecurityContext.  If set in both SecurityContext and
  2844                            PodSecurityContext, the value specified in SecurityContext
  2845                            takes precedence for that container.
  2846                          format: int64
  2847                          type: integer
  2848                        runAsNonRoot:
  2849                          description: Indicates that the container must run as a non-root
  2850                            user. If true, the Kubelet will validate the image at runtime
  2851                            to ensure that it does not run as UID 0 (root) and fail
  2852                            to start the container if it does. If unset or false, no
  2853                            such validation will be performed. May also be set in SecurityContext.  If
  2854                            set in both SecurityContext and PodSecurityContext, the
  2855                            value specified in SecurityContext takes precedence.
  2856                          type: boolean
  2857                        runAsUser:
  2858                          description: The UID to run the entrypoint of the container
  2859                            process. Defaults to user specified in image metadata if
  2860                            unspecified. May also be set in SecurityContext.  If set
  2861                            in both SecurityContext and PodSecurityContext, the value
  2862                            specified in SecurityContext takes precedence for that container.
  2863                          format: int64
  2864                          type: integer
  2865                        seLinuxOptions:
  2866                          description: The SELinux context to be applied to all containers.
  2867                            If unspecified, the container runtime will allocate a random
  2868                            SELinux context for each container.  May also be set in
  2869                            SecurityContext.  If set in both SecurityContext and PodSecurityContext,
  2870                            the value specified in SecurityContext takes precedence
  2871                            for that container.
  2872                          properties:
  2873                            level:
  2874                              description: Level is SELinux level label that applies
  2875                                to the container.
  2876                              type: string
  2877                            role:
  2878                              description: Role is a SELinux role label that applies
  2879                                to the container.
  2880                              type: string
  2881                            type:
  2882                              description: Type is a SELinux type label that applies
  2883                                to the container.
  2884                              type: string
  2885                            user:
  2886                              description: User is a SELinux user label that applies
  2887                                to the container.
  2888                              type: string
  2889                          type: object
  2890                        seccompProfile:
  2891                          description: The seccomp options to use by the containers
  2892                            in this pod.
  2893                          properties:
  2894                            localhostProfile:
  2895                              description: localhostProfile indicates a profile defined
  2896                                in a file on the node should be used. The profile must
  2897                                be preconfigured on the node to work. Must be a descending
  2898                                path, relative to the kubelet's configured seccomp profile
  2899                                location. Must only be set if type is "Localhost".
  2900                              type: string
  2901                            type:
  2902                              description: "type indicates which kind of seccomp profile
  2903                                will be applied. Valid options are: \n Localhost - a
  2904                                profile defined in a file on the node should be used.
  2905                                RuntimeDefault - the container runtime default profile
  2906                                should be used. Unconfined - no profile should be applied."
  2907                              type: string
  2908                          required:
  2909                          - type
  2910                          type: object
  2911                        supplementalGroups:
  2912                          description: A list of groups applied to the first process
  2913                            run in each container, in addition to the container's primary
  2914                            GID.  If unspecified, no groups will be added to any container.
  2915                          items:
  2916                            format: int64
  2917                            type: integer
  2918                          type: array
  2919                        sysctls:
  2920                          description: Sysctls hold a list of namespaced sysctls used
  2921                            for the pod. Pods with unsupported sysctls (by the container
  2922                            runtime) might fail to launch.
  2923                          items:
  2924                            description: Sysctl defines a kernel parameter to be set
  2925                            properties:
  2926                              name:
  2927                                description: Name of a property to set
  2928                                type: string
  2929                              value:
  2930                                description: Value of a property to set
  2931                                type: string
  2932                            required:
  2933                            - name
  2934                            - value
  2935                            type: object
  2936                          type: array
  2937                        windowsOptions:
  2938                          description: The Windows specific settings applied to all
  2939                            containers. If unspecified, the options within a container's
  2940                            SecurityContext will be used. If set in both SecurityContext
  2941                            and PodSecurityContext, the value specified in SecurityContext
  2942                            takes precedence.
  2943                          properties:
  2944                            gmsaCredentialSpec:
  2945                              description: GMSACredentialSpec is where the GMSA admission
  2946                                webhook (https://github.com/kubernetes-sigs/windows-gmsa)
  2947                                inlines the contents of the GMSA credential spec named
  2948                                by the GMSACredentialSpecName field.
  2949                              type: string
  2950                            gmsaCredentialSpecName:
  2951                              description: GMSACredentialSpecName is the name of the
  2952                                GMSA credential spec to use.
  2953                              type: string
  2954                            hostProcess:
  2955                              description: HostProcess determines if a container should
  2956                                be run as a 'Host Process' container. This field is
  2957                                alpha-level and will only be honored by components that
  2958                                enable the WindowsHostProcessContainers feature flag.
  2959                                Setting this field without the feature flag will result
  2960                                in errors when validating the Pod. All of a Pod's containers
  2961                                must have the same effective HostProcess value (it is
  2962                                not allowed to have a mix of HostProcess containers
  2963                                and non-HostProcess containers).  In addition, if HostProcess
  2964                                is true then HostNetwork must also be set to true.
  2965                              type: boolean
  2966                            runAsUserName:
  2967                              description: The UserName in Windows to run the entrypoint
  2968                                of the container process. Defaults to the user specified
  2969                                in image metadata if unspecified. May also be set in
  2970                                PodSecurityContext. If set in both SecurityContext and
  2971                                PodSecurityContext, the value specified in SecurityContext
  2972                                takes precedence.
  2973                              type: string
  2974                          type: object
  2975                      type: object
  2976                    serviceAccountName:
  2977                      type: string
  2978                    serviceAnnotations:
  2979                      additionalProperties:
  2980                        type: string
  2981                      type: object
  2982                    tolerations:
  2983                      items:
  2984                        description: The pod this Toleration is attached to tolerates
  2985                          any taint that matches the triple <key,value,effect> using
  2986                          the matching operator <operator>.
  2987                        properties:
  2988                          effect:
  2989                            description: Effect indicates the taint effect to match.
  2990                              Empty means match all taint effects. When specified, allowed
  2991                              values are NoSchedule, PreferNoSchedule and NoExecute.
  2992                            type: string
  2993                          key:
  2994                            description: Key is the taint key that the toleration applies
  2995                              to. Empty means match all taint keys. If the key is empty,
  2996                              operator must be Exists; this combination means to match
  2997                              all values and all keys.
  2998                            type: string
  2999                          operator:
  3000                            description: Operator represents a key's relationship to
  3001                              the value. Valid operators are Exists and Equal. Defaults
  3002                              to Equal. Exists is equivalent to wildcard for value,
  3003                              so that a pod can tolerate all taints of a particular
  3004                              category.
  3005                            type: string
  3006                          tolerationSeconds:
  3007                            description: TolerationSeconds represents the period of
  3008                              time the toleration (which must be of effect NoExecute,
  3009                              otherwise this field is ignored) tolerates the taint.
  3010                              By default, it is not set, which means tolerate the taint
  3011                              forever (do not evict). Zero and negative values will
  3012                              be treated as 0 (evict immediately) by the system.
  3013                            format: int64
  3014                            type: integer
  3015                          value:
  3016                            description: Value is the taint value the toleration matches
  3017                              to. If the operator is Exists, the value should be empty,
  3018                              otherwise just a regular string.
  3019                            type: string
  3020                        type: object
  3021                      type: array
  3022                  type: object
  3023              type: object
  3024          required:
  3025          - spec
  3026          type: object
  3027      served: true
  3028      storage: true
  3029      subresources: {}
  3030  status:
  3031    acceptedNames:
  3032      kind: ""
  3033      plural: ""
  3034    conditions: []
  3035    storedVersions: []