0% found this document useful (0 votes)
14 views12 pages

Nodes: Daemonset Kubelet

A GPU cluster for Kubernetes is a network of GPU-equipped nodes designed for high-performance computing tasks like AI training. The architecture includes a Control Plane for management and Worker Nodes for executing workloads, utilizing specialized software like the NVIDIA GPU Operator and high-speed networking for efficient resource sharing. Advanced strategies like Multi-Instance GPU and time-slicing are employed to maximize GPU utilization across the cluster.

Uploaded by

nmb3la
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views12 pages

Nodes: Daemonset Kubelet

A GPU cluster for Kubernetes is a network of GPU-equipped nodes designed for high-performance computing tasks like AI training. The architecture includes a Control Plane for management and Worker Nodes for executing workloads, utilizing specialized software like the NVIDIA GPU Operator and high-speed networking for efficient resource sharing. Advanced strategies like Multi-Instance GPU and time-slicing are employed to maximize GPU utilization across the cluster.

Uploaded by

nmb3la
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

a gpu cluster consists of multiple gpu nodes architecture for kubernetes

A GPU cluster for Kubernetes is

a network of interconnected servers, known as nodes, specifically


architected to manage and schedule Graphics Processing Units (GPUs) for
parallel workloads like AI training and high-throughput inference.

Core Cluster Architecture

The architecture follows a standard Kubernetes client-server model but


includes specialized layers for high-performance computing:

 Control Plane (Head Node): Acts as the "brain," managing cluster


state, scheduling pods, and coordinating resources across the fleet.

 Worker Nodes (GPU Nodes): Individual servers equipped with one or


more GPUs (typically 2–8 per node). These nodes also contain high-
performance CPUs for orchestration and non-parallel tasks, along with
massive RAM (often 256GB+) for data buffering.

 Networking Layer: Uses ultra-fast interconnects to prevent


bottlenecks.

o Intra-node: NVIDIA NVLink or PCIe Gen5 for rapid data


exchange between GPUs in the same server.

o Inter-node: RDMA-capable networking like InfiniBand or 100–


400 Gbps Ethernet for communication between different nodes.

 Storage Layer: High-speed NVMe SSDs provide local caching, while


shared distributed storage (e.g., Ceph or Lustre) handles large
datasets.

Kubernetes GPU Node Software Stack

Standard Kubernetes cannot natively see GPU hardware; it requires a


specialized software stack on every worker node:

 NVIDIA GPU Operator: A standard tool that automates the


deployment of all necessary components, including drivers and
runtimes.

 Device Plugin: A DaemonSet that registers GPUs with the Kubelet as


"extended resources" (e.g., [Link]/gpu), allowing the scheduler to
place GPU-requesting pods.
 Container Runtime: Must be configured (e.g., NVIDIA Container
Toolkit) to allow containers to access the underlying GPU hardware.

 GPU Feature Discovery (GFD): Automatically labels nodes with


specific hardware details (like GPU model or memory) to help the
scheduler match workloads to the right hardware.

Advanced Resource Management

Modern architectures employ strategies to maximize the utility of expensive


GPU hardware:

 MIG (Multi-Instance GPU): Partitions a single physical GPU (like the


A100 or H100) into up to seven isolated hardware instances for multi-
tenancy.

 Time-Slicing: Allows multiple pods to share a single GPU by


interleaving their execution, though without the strict hardware
isolation provided by MIG.

 Topology-Aware Scheduling: Ensures the scheduler places pods on


GPUs with the fastest physical interconnects to avoid performance
degradation.

Would you like to see a specific YAML configuration for deploying a GPU-
enabled pod or a comparison of different GPU models like the H100 versus
the A100?

19 sites
 What Is a GPU Cluster and How to Build One - GreenNode

21 Oct 2025 — What is a GPU cluster? If you've ever trained a deep learning
model or run a complex simulation, you've probably hit that moment w...

GreenNode

 What is a GPU cluster? Use cases for AI developers | Blog

12 Sept 2025 — Quick summary. A GPU cluster is a network of


interconnected computers equipped with multiple GPUs working together to
handle massi...

Northflank

 Kubernetes GPU Resource Management Best Practices

10 Feb 2025 — GPU support in Kubernetes helps us in intensive computing


tasks like training machine learning models or handling big data. As mor...
Perfect Scale

Show all

give system design

A system design for a GPU-enabled Kubernetes cluster integrates specialized


hardware and software layers to manage high-performance compute
resources. The architecture is split between the

Control Plane (orchestration) and the GPU Worker Nodes (execution).

1. High-Level Architecture

The design follows a standard Kubernetes master-worker pattern but with a


specialized software stack on the worker nodes to expose GPU hardware.

Component Responsibility

Control Manages cluster state, scheduling, and API requests. Typically


Plane runs on CPU-only nodes.

GPU Worker Host the actual workloads (Pods) and contain physical GPU
Nodes hardware.

GPU A Kubernetes operator that automates the deployment of


Operator drivers, runtimes, and monitoring tools across all GPU nodes.

2. GPU Node Software Stack

Standard Kubernetes cannot interact with GPUs directly. The NVIDIA GPU
Operator (or equivalent) installs a multi-layer stack on each node:

 NVIDIA Driver: Communicates directly with the hardware; often


deployed via a DaemonSet in a containerized format.

 Container Toolkit: Extends the container runtime (e.g., containerd) to


allow containers to access the GPU.
 NVIDIA Device Plugin: Registers GPUs as "allocatable resources"
with the Kubelet. This allows users to request GPUs in YAML
using [Link]/gpu: <count>.

 GPU Feature Discovery (GFD): Automatically labels nodes with


specific hardware info (e.g., ://[Link]) to aid in Node
Affinity scheduling.

 DCGM Exporter: Collects and exports GPU metrics (utilization,


temperature, memory) to Prometheus.

3. Interconnect & Networking Design

For distributed training (scaling across nodes), networking is the primary


bottleneck:

 Intra-node (Inside the server): High-speed NVLink or PCIe Gen4/5


connect multiple GPUs within a single node for fast data exchange.

 Inter-node (Between servers): Uses RDMA (Remote Direct


Memory Access) via InfiniBand or 100GbE+ Ethernet (RoCE) to allow
GPUs to communicate directly across the network without involving the
host CPU.

4. Storage Architecture

 Local Storage: High-speed NVMe SSDs are used on each node for
local data caching and high IOPS during model training.

 Shared Storage: Distributed file systems (like Lustre, Ceph,


or Amazon FSx) are mounted to provide consistent access to massive
datasets across the entire cluster.

5. Resource Sharing Strategies

To maximize expensive hardware, architectures often use sharing


techniques:

 Multi-Instance GPU (MIG): Physically partitions a single GPU (e.g.,


A100/H100) into up to 7 hardware-isolated instances.

 Time-Slicing: Oversubscribes a single GPU by allowing multiple pods


to share it through temporal multiplexing (no hardware isolation).

Would you like to see a sample YAML pod definition for requesting a GPU
or a detailed hardware list for a typical 8-GPU training node?
15 sites

 NVIDIA GPU Operator: Simplifying GPU Management in Kubernetes

21 Oct 2019 — NVIDIA GPU Operator: Simplifying GPU Management in


Kubernetes * The NVIDIA GPU Operator automates the management of
NVIDIA softwar...

NVIDIA Developer

 Building a Kubernetes Cluster with Linux GPU Nodes for MLOps

25 Dec 2025 — Because of the quickly decreasing amount of time it takes an


enterprise to train a model, it enables them to do so using GPUs whil...
CloudMinister

 The NVIDIA GPU Operator real-word guide for Kubernetes AI

7 May 2025 — Meet the NVIDIA GPU Operator. AI is a 'killer app' for
Kubernetes. In our 2024 State of Production Kubernetes research, more
than ...

Spectro Cloud

Show all

give with example of 5 node cluster

In a 5-node GPU cluster design, the architecture typically consists of

one Control Plane (Master) node and four GPU Worker nodes. This
configuration balances centralized orchestration with parallel processing
power.

5-Node Cluster Topology


Node Quanti Recommended Role
Type ty Specs

Control 1 4 vCPU, 8GB+ Orchestrates the cluster, manages


Plane RAM the API Server, and schedules pods.
(Master)

GPU 4 8+ vCPU, 32GB+ Executes the actual GPU-intensive


Worker RAM, 1-8 GPUs pods
Nodes (e.g., PyTorch or TensorFlow jobs).

Example: Distributed Training Setup

In this 5-node scenario, the cluster is optimized for distributed machine


learning:

1. Hardware Interconnect: The 4 worker nodes are connected via a


high-speed 100Gbps+ InfiniBand or Ethernet network to
support RDMA (Remote Direct Memory Access), allowing GPUs to talk
to each other across nodes with minimal latency.

2. Software Layer: Each worker node runs the NVIDIA GPU Operator,
which automatically installs the drivers, container runtime, and
the NVIDIA Device Plugin.

3. Scheduling Logic:

1. Node Labels: Workers are labeled (e.g., accelerator=nvidia-


h100).

2. Taints & Tolerations: The Master node is often "tainted" to


prevent GPU workloads from running on it, ensuring it stays
dedicated to cluster management.

4. Workload Example: A single large model training job (like Llama 3) is


split into 4 "shards." One shard runs on each worker node, and they
sync gradients across the high-speed network during each training
step.

Verification and Monitoring

To ensure the 5-node system is healthy:


 Resource Check: Run kubectl get nodes to confirm all 5 nodes
are Ready.

 GPU Capacity: Use kubectl describe node <gpu-node-name> to verify


that ://[Link] is listed under the "Allocatable" resources.

 Live Metrics: Use the DCGM Exporter to send real-time GPU


temperature and utilization data to a Grafana dashboard for
monitoring.

Would you like to see a YAML manifest to deploy a distributed training job
across these 4 worker nodes, or should we look at storage options for the
training datasets?

11 sites

 Building a Kubernetes Cluster with Linux GPU Nodes for MLOps

25 Dec 2025 — The device plugin enables Kubernetes to allocate and


manage GPU resource scheduling for a kubernetes cluster. The NVIDIA device
pl...
CloudMinister

 Monitoring GPUs in Kubernetes with DCGM | NVIDIA Technical Blog

4 Nov 2020 — Generating a load To generate a load, you must first download
DCGM and containerize it. The following script creates a container t...

NVIDIA Developer

 Schedule GPUs - Kubernetes

20 Sept 2024 — Manage clusters with different types of GPUs If different


nodes in your cluster have different types of GPUs, then you can use Nod...

Kubernetes

Show all

yes please, explain in layman's method


To explain a 5-node GPU cluster in layman's terms, imagine a

professional kitchen designed to handle a massive banquet (like training


an AI model).

1. The "Head Chef" (1 Control Plane Node)

This is the "Brain" of the cluster.

 Role: The Head Chef doesn't actually cook the food. Instead, they take
orders, look at the available ingredients (data), and decide which cook
is free to handle which dish.

 Kubernetes Equivalent: The Control Plane (or Master Node) that


manages scheduling and ensures the "kitchen" is running smoothly.

2. The "Line Cooks" (4 Worker Nodes)

These are the "Muscle" of the cluster where the actual work happens.

 The Cook (CPU): Every node has a CPU. Think of it as the cook’s
hands that handle general tasks like chopping vegetables or reading
the recipe.

 The Super-Blender (GPU): Each worker node has 1 or more GPUs. A


GPU is like a high-speed industrial blender that can process thousands
of items at once. While a cook (CPU) is good at one task at a time, the
blender (GPU) is what makes the "AI soup" fast.

3. The "Service Window" (Networking)

In a 5-node cluster, the nodes must talk to each other constantly.

 The Hallway (Standard Networking): A regular 1Gbps or 10Gbps


connection used for the Head Chef to send simple instructions to the
cooks.

 The Super-Fast Conveyor Belt (InfiniBand/RDMA): For the big AI


jobs, the "cooks" need to share massive amounts of data instantly. This
is a specialized, ultra-fast connection that lets the blenders (GPUs) in
different nodes work together as if they were in the same machine.

4. The "Pantry" (Shared Storage)

 The Role: All 4 worker nodes need access to the same ingredients (the
massive dataset). Instead of giving each cook their own tiny fridge,
there is one giant, central pantry that everyone can grab from at the
same time.

Why 5 Nodes?

 Efficiency: If you only had 1 node, the job might take 4 days. With 4
worker nodes working in parallel, you can finish it in roughly 1 day.

 Redundancy: If one "cook" (worker node) gets sick or crashes, the


"Head Chef" (Control Plane) simply moves their work to the other three
so the banquet isn't ruined.

Would you like to see the YAML "Recipe" that the Head Chef uses to assign
a job to these nodes?

You might also like