DaemonSet is a Kubernetes controller object that ensures all (or a subset of) cluster nodes run exactly one replica of a specified Pod. Unlike Deployments, DaemonSets are node-centric rather than application-centric, making them ideal for cluster-wide infrastructure services.
DaemonSet Operational Notes
Behavior Characteristics
Pod Distribution
nodeSelector
criteriaNotReady
stateNoSchedule
/NoExecute
taints (unless tolerations are configured)Number of Pods = Number of qualified nodes
Dual-Role Node Handling
Key Constraints: ❌ Excluded Nodes
Unschedulable: true
flagNotReady
statusObtain the image address. The source of the images can be from the image repository integrated by the platform administrator through the toolchain or from third-party platforms' image repositories.
For the former, the Administrator typically assigns the image repository to your project, and you can use the images within it. If the required image repository is not found, please contact the Administrator for allocation.
If it is a third-party platform's image repository, ensure that images can be pulled directly from it in the current cluster.
Container Platform, navigate to Workloads > DaemonSets in the left sidebar.
Click Create DaemonSets.
Select or Input an image, and click Confirm.
Note: When using images from the image repository integrated into web console, you can filter images by Already Integrated. The Integration Project Name, for example, images (docker-registry-projectname), which includes the project name projectname in this web console and the project name containers in the image repository.
In the Basic Info section, configure declarative parameters for Deployment workloads:
Parameters | Description |
---|---|
More > Update Strategy | Configures the rollingUpdate strategy for zero-downtime deployments: Max surge ( maxSurge ):
maxUnavailable ):
1. Default values: maxSurge=1 , maxUnavailable=1 if not explicitly set. 2. Non-running Pods (e.g., in Pending /CrashLoopBackOff states) are considered unavailable. 3. Simultaneous constraints:
For a Deployment with 10 replicas:
|
In the Pod section, please refer to Creating Deployment - Configure Pod
In the Container section, please refer to Creating Deployment - Configure Containers
Click Create. After clicking Create, the DaemonSet will:
✅ Automatically deploy Pod replicas to all eligible nodes meeting:
nodeSelector
criteria (if defined)tolerations
configurationReady
state & Schedulable: true
❌ Excluded Nodes:
NoSchedule
taint (unless tolerated)kubectl cordon
)NotReady
/Unschedulable
state