DaemonSet

    apiVersion: apps/v1

    import "k8s.io/api/apps/v1"

    DaemonSet represents the configuration of a daemon set.


    • apiVersion: apps/v1

    • kind: DaemonSet

    • metadata (ObjectMeta)

      Standard object’s metadata. More info:

    • spec (DaemonSetSpec)

      The desired behavior of this daemon set. More info:

    • status (DaemonSetStatus)

      The current status of this daemon set. This data may be out of date by some window of time. Populated by the system. Read-only. More info:

    DaemonSetSpec is the specification of a daemon set.


    • template (PodTemplateSpec), required

      An object that describes the pod that will be created. The DaemonSet will create exactly one copy of this pod on every node that matches the template’s node selector (or on every node if no node selector is specified). More info:

    • minReadySeconds (int32)

      The minimum number of seconds for which a newly created DaemonSet pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready).

    • updateStrategy (DaemonSetUpdateStrategy)

      An update strategy to replace existing DaemonSet pods with new pods.

      DaemonSetUpdateStrategy is a struct used to control the update strategy for a DaemonSet.

      • updateStrategy.type (string)

        Type of daemon set update. Can be “RollingUpdate” or “OnDelete”. Default is RollingUpdate.

      • updateStrategy.rollingUpdate (RollingUpdateDaemonSet)

        Rolling update config params. Present only if type = “RollingUpdate”.

        Spec to control the desired behavior of daemon set rolling update.

        • updateStrategy.rollingUpdate.maxSurge (IntOrString)

          The maximum number of nodes with an existing available DaemonSet pod that can have an updated DaemonSet pod during during an update. Value can be an absolute number (ex: 5) or a percentage of desired pods (ex: 10%). This can not be 0 if MaxUnavailable is 0. Absolute number is calculated from percentage by rounding up to a minimum of 1. Default value is 0. Example: when this is set to 30%, at most 30% of the total number of nodes that should be running the daemon pod (i.e. status.desiredNumberScheduled) can have their a new pod created before the old pod is marked as deleted. The update starts by launching new pods on 30% of nodes. Once an updated pod is available (Ready for at least minReadySeconds) the old DaemonSet pod on that node is marked deleted. If the old pod becomes unavailable for any reason (Ready transitions to false, is evicted, or is drained) an updated pod is immediatedly created on that node without considering surge limits. Allowing surge implies the possibility that the resources consumed by the daemonset on any given node can double if the readiness check fails, and so resource intensive daemonsets should take into account that they may cause evictions during disruption. This is beta field and enabled/disabled by DaemonSetUpdateSurge feature gate.

          IntOrString is a type that can hold an int32 or a string. When used in JSON or YAML marshalling and unmarshalling, it produces or consumes the inner type. This allows you to have, for example, a JSON field that can accept a name or number.

        • updateStrategy.rollingUpdate.maxUnavailable (IntOrString)

          The maximum number of DaemonSet pods that can be unavailable during the update. Value can be an absolute number (ex: 5) or a percentage of total number of DaemonSet pods at the start of the update (ex: 10%). Absolute number is calculated from percentage by rounding up. This cannot be 0 if MaxSurge is 0 Default value is 1. Example: when this is set to 30%, at most 30% of the total number of nodes that should be running the daemon pod (i.e. status.desiredNumberScheduled) can have their pods stopped for an update at any given time. The update starts by stopping at most 30% of those DaemonSet pods and then brings up new DaemonSet pods in their place. Once the new pods are available, it then proceeds onto other DaemonSet pods, thus ensuring that at least 70% of original number of DaemonSet pods are available at all times during the update.

          IntOrString is a type that can hold an int32 or a string. When used in JSON or YAML marshalling and unmarshalling, it produces or consumes the inner type. This allows you to have, for example, a JSON field that can accept a name or number.

    • revisionHistoryLimit (int32)

      The number of old history to retain to allow rollback. This is a pointer to distinguish between explicit zero and not specified. Defaults to 10.

    DaemonSetStatus represents the current status of a daemon set.


    • numberReady (int32), required

      numberReady is the number of nodes that should be running the daemon pod and have one or more of the daemon pod running with a Ready Condition.

    • numberAvailable (int32)

      The number of nodes that should be running the daemon pod and have one or more of the daemon pod running and available (ready for at least spec.minReadySeconds)

    • numberUnavailable (int32)

      The number of nodes that should be running the daemon pod and have none of the daemon pod running and available (ready for at least spec.minReadySeconds)

    • numberMisscheduled (int32), required

      The number of nodes that are running the daemon pod, but are not supposed to run the daemon pod. More info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

    • desiredNumberScheduled (int32), required

      The total number of nodes that should be running the daemon pod (including nodes correctly running the daemon pod). More info:

    • currentNumberScheduled (int32), required

      The number of nodes that are running at least 1 daemon pod and are supposed to run the daemon pod. More info: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

    • updatedNumberScheduled (int32)

      The total number of nodes that are running updated daemon pod

    • collisionCount (int32)

      Count of hash collisions for the DaemonSet. The DaemonSet controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ControllerRevision.

    • conditions ([]DaemonSetCondition)

      Patch strategy: merge on key type

      Represents the latest available observations of a DaemonSet’s current state.

      DaemonSetCondition describes the state of a DaemonSet at a certain point.

      • conditions.status (string), required

        Status of the condition, one of True, False, Unknown.

      • conditions.type (string), required

        Type of DaemonSet condition.

      • conditions.lastTransitionTime (Time)

        Last time the condition transitioned from one status to another.

        Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.

      • conditions.message (string)

        A human readable message indicating details about the transition.

      • conditions.reason (string)

        The reason for the condition’s last transition.

    • observedGeneration (int64)

      The most recent generation observed by the daemon set controller.

    DaemonSetList is a collection of daemon sets.



    HTTP Request

    GET /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}

    Parameters

    • name (in path): string, required

      name of the DaemonSet

    • namespace (in path): string, required

      namespace

    • pretty (in query): string

    Response

    200 (): OK

    401: Unauthorized

    get read status of the specified DaemonSet

    HTTP Request

    GET /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status

    Parameters

    • name (in path): string, required

      name of the DaemonSet

    • namespace (in path): string, required

    • pretty (in query): string

      pretty

    Response

    401: Unauthorized

    list or watch objects of kind DaemonSet

    HTTP Request

    GET /apis/apps/v1/namespaces/{namespace}/daemonsets

    Parameters

    • namespace (in path): string, required

    • allowWatchBookmarks (in query): boolean

      allowWatchBookmarks

    • continue (in query): string

    • fieldSelector (in query): string

      fieldSelector

    • labelSelector (in query): string

    • limit (in query): integer

      limit

    • pretty (in query): string

    • resourceVersion (in query): string

      resourceVersion

    • resourceVersionMatch (in query): string

    • timeoutSeconds (in query): integer

      timeoutSeconds

    • watch (in query): boolean

    Response

    200 (): OK

    401: Unauthorized

    HTTP Request

    GET /apis/apps/v1/daemonsets

    Parameters

    • allowWatchBookmarks (in query): boolean

      allowWatchBookmarks

    • continue (in query): string

    • fieldSelector (in query): string

      fieldSelector

    • labelSelector (in query): string

    • limit (in query): integer

      limit

    • pretty (in query): string

    • resourceVersion (in query): string

      resourceVersion

    • resourceVersionMatch (in query): string

    • timeoutSeconds (in query): integer

      timeoutSeconds

    • watch (in query): boolean

    Response

    200 (): OK

    401: Unauthorized

    create create a DaemonSet

    HTTP Request

    POST /apis/apps/v1/namespaces/{namespace}/daemonsets

    Parameters

    • body: , required

    • dryRun (in query): string

      dryRun

    • fieldManager (in query): string

    • fieldValidation (in query): string

      fieldValidation

    • pretty (in query): string

    Response

    200 (): OK

    201 (DaemonSet): Created

    202 (): Accepted

    401: Unauthorized

    update replace the specified DaemonSet

    HTTP Request

    PUT /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}

    Parameters

    • name (in path): string, required

      name of the DaemonSet

    • namespace (in path): string, required

    • body: DaemonSet, required

    • dryRun (in query): string

    • fieldManager (in query): string

      fieldManager

    • fieldValidation (in query): string

    • pretty (in query): string

      pretty

    Response

    200 (DaemonSet): OK

    201 (): Created

    401: Unauthorized

    HTTP Request

    PUT /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status

    Parameters

    • name (in path): string, required

      name of the DaemonSet

    • namespace (in path): string, required

      namespace

    • body: , required

    • dryRun (in query): string

      dryRun

    • fieldManager (in query): string

    • fieldValidation (in query): string

    • pretty (in query): string

      pretty

    Response

    200 (DaemonSet): OK

    201 (): Created

    401: Unauthorized

    patch partially update the specified DaemonSet

    HTTP Request

    PATCH /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}

    Parameters

    • name (in path): string, required

      name of the DaemonSet

    • namespace (in path): string, required

    • body: Patch, required

    • dryRun (in query): string

    • fieldManager (in query): string

      fieldManager

    • fieldValidation (in query): string

    • force (in query): boolean

      force

    • pretty (in query): string

    Response

    200 (): OK

    201 (DaemonSet): Created

    401: Unauthorized

    patch partially update status of the specified DaemonSet

    HTTP Request

    PATCH /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status

    Parameters

    • name (in path): string, required

      name of the DaemonSet

    • namespace (in path): string, required

      namespace

    • body: , required

    • dryRun (in query): string

      dryRun

    • fieldManager (in query): string

    • fieldValidation (in query): string

      fieldValidation

    • force (in query): boolean

    • pretty (in query): string

      pretty

    Response

    200 (DaemonSet): OK

    201 (): Created

    401: Unauthorized

    HTTP Request

    DELETE /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}

    Parameters

    • name (in path): string, required

      name of the DaemonSet

    • namespace (in path): string, required

      namespace

    • body:

    • dryRun (in query): string

      dryRun

    • gracePeriodSeconds (in query): integer

    • pretty (in query): string

      pretty

    • propagationPolicy (in query): string

    Response

    200 (): OK

    202 (Status): Accepted

    401: Unauthorized

    delete collection of DaemonSet

    HTTP Request

    DELETE /apis/apps/v1/namespaces/{namespace}/daemonsets

    Parameters

    • namespace (in path): string, required

      namespace

    • body:

    • continue (in query): string

      continue

    • dryRun (in query): string

    • fieldSelector (in query): string

      fieldSelector

    • gracePeriodSeconds (in query): integer

    • labelSelector (in query): string

      labelSelector

    • limit (in query): integer

    • pretty (in query): string

      pretty

    • propagationPolicy (in query): string

    • resourceVersion (in query): string

      resourceVersion

    • resourceVersionMatch (in query): string

    Response

    200 (): OK

    401: Unauthorized

    Last modified April 09, 2022 at 9:47 AM PST: Update API Reference multi-pages for v1.24 (363eea4e22)