NodeD is one of the MindCluster cluster scheduling components, deployed on compute nodes. It detects abnormal node states, retrieves CPU, memory, and disk fault information from IPMI, and reports it to ClusterD.
When certain faults occur in a node's CPU, memory, or disk, training jobs will fail. To enable training jobs to exit quickly when node faults occur and prevent new jobs from being scheduled to faulty nodes, MindCluster provides the NodeD component for detecting node abnormalities.
Starting from version v26.1.0, tags follow the format below:
<version>-<os>
| Field | Example | Description |
|---|---|---|
version | v26.1.1 | Version Number of NodeD |
os | ubuntu22.04 | Operating System for NodeD Images |
The following are all images of the latest released 26.1.1 version of NodeD. For all historical version Tags, please refer to Supported Tags.
| Tag | Dockerfile | Image Content |
|---|---|---|
v26.1.1-ubuntu22.04 | Dockerfile.ubuntu | NodeD v26.1.1 (Base Image: Ubuntu 22.04) |
v26.1.1-openeuler24.03 | Dockerfile.openeuler | NodeD v26.1.1 (Base Image: openEuler 24.03) |
The tags of versions before v26.1.0 follow the format below:
<version>
| Field | Example | Description |
|---|---|---|
version | v26.0.0 | Version Number of NodeD |
| Tag | Dockerfile | Image Content |
|---|---|---|
v26.0.0 | Dockerfile | NodeD v26.0.0 (Base Image: Ubuntu 22.04) |
| Software | Supported Versions | Installation Location | Description |
|---|---|---|---|
| Kubernetes | 1.17.x~1.34.x (1.19.x or later recommended) | All nodes | See Kubernetes Documentation |
| ClusterD | Same version as NodeD | Management nodes | Fault information reported by NodeD is aggregated and processed by ClusterD |
| UMDK software package | See version compatibility table | Compute nodes | Necessary for Atlas 850、Atlas 950 SuperPod Products |
| Resource | Requirement |
|---|---|
| CPU | 0.5 cores |
| Memory | 0.3 GB |
Pull the official image
Pull the NodeD image from AscendHub, replacing {tag} with the actual version.
docker pull swr.cn-south-1.myhuaweicloud.com/ascendhub/noded:{tag}
Retag the image
Retag the official image with a local tag for consistent naming and easier operations management.
docker tag swr.cn-south-1.myhuaweicloud.com/ascendhub/noded:{tag} noded:{tag}
Example: build an NodeD image of architecture linux-aarch64, version v26.1.1, based on Ubuntu 22.04.
Obtain the target Dockerfile
Navigate to the chapter Supported Tags and Dockerfile Links, open the Dockerfile.ubuntu link corresponding to your target version, and save the file to a local directory on your aarch64 environment.
Build the Docker image locally (disable cache to ensure a clean build)
docker build --no-cache -t noded:v26.1.1 ./ -f Dockerfile.ubuntu
Important Notes If your Docker version is earlier than 18.09 or BuildKit is not manually enabled, the TARGETPLATFORM variable cannot be read during image building, which will cause the image build to fail.
- TARGETPLATFORM is a built-in global variable of Docker BuildKit for identifying the target build platform, e.g. linux/amd64, linux/arm64.
- This variable is automatically injected only after BuildKit is enabled. It cannot be used in legacy Docker environments or environments where BuildKit is disabled by default.
- Run the following command before building to enable BuildKit temporarily:
export DOCKER_BUILDKIT=1
Example: Build an NodeD image of architecture linux-aarch64, version v26.0.0, based on Ubuntu 22.04.
Download the officially released component package
wget https://gitcode.com/Ascend/mind-cluster/releases/download/v26.0.0/Ascend-mindxdl-noded_26.0.0_linux-aarch64.zip
Extract the package to a custom directory
unzip Ascend-mindxdl-noded_26.0.0_linux-aarch64.zip -d Ascend-mindxdl-noded_26.0.0_linux-aarch64
Enter the extracted working directory
cd Ascend-mindxdl-noded_26.0.0_linux-aarch64
Build the Docker image locally (disable cache to ensure a clean build)
docker build --no-cache -t noded:v26.0.0 ./ -f Dockerfile
Label Kubernetes nodes
Add labels to the corresponding nodes for cluster scheduling matching. Replace <node-name> with the actual node
name.
kubectl label nodes <node-name> workerselector=dls-worker-node
Start NodeD
Before deployment, replace the image {tag} in the YAML file with the actual image version.
kubectl apply -f noded-{version}.yaml
Verify deployment
kubectl get pods -A | grep noded
Expected result: The noded related Pods in the corresponding namespace should be in Running state.
View the license information for the Mind series software contained in these images.
As with all container images, pre-installed software packages (Python, system libraries, etc.) may be subject to their respective license agreements.
Content type
Image
Digest
sha256:5f4c9e687…
Size
54.1 MB
Last updated
11 days ago
docker pull ascendai/noded:v26.1.1-ubuntu22.04