NVIDIANVIDIA-Certified Professional: Agentic AI2026-100 Prerequisites
Separate images, workloads, and service addresses
Completed by the knowledge check
Learning objective
Explain Docker images and Kubernetes pods, deployments, and services.
Core idea
An image packages software; a container runs it. Kubernetes places containers in Pods, controllers maintain the desired workload, and Services expose network endpoints. These objects answer different questions: what runs, where it runs, how it is replaced, and how callers reach it.
For an inference application, distinguish the packaged model server from the agent application that calls it. Sharing a container platform does not make them the same workload or give them identical scaling needs.
How it works
A Docker image is a read-only template used to create containers. A Dockerfile describes its construction. A registry stores images for distribution. A container is a runnable image instance plus runtime configuration; removing it discards changes that are not in persistent storage. Packaging a server is therefore different from preserving its runtime data.
A Pod is Kubernetes’ smallest deployable unit. It holds one or more co-located, co-scheduled containers with shared networking and storage resources. Containers that must run together can share a Pod. Independent agent and inference services usually need separate workload lifecycles rather than being grouped merely because they communicate.
A Deployment describes a desired set of Pods. Its .spec.template defines the Pod template, .spec.replicas sets the desired count, and .spec.selector identifies the managed Pods. A ReplicaSet maintains that count; changing the template starts a controlled rollout. Pods are disposable instances, so depend on the controller’s desired state rather than treating an individual Pod as a permanent server.
A Service exposes a logical set of endpoints. With a selector-based Service, .spec.selector matches Pod labels and Kubernetes maintains the corresponding EndpointSlices. .spec.ports describes the exposed ports. A ClusterIP Service provides an internal cluster address; callers need not track each Pod’s changing IP. Creating that Service does not create the application containers.
Key distinctions and trade-offs
A Deployment controls workload lifecycle; a Service controls network access to endpoints. Scaling .spec.replicas changes the desired number of Pods, whereas changing a Service selector changes which Pods its traffic reaches. Neither action changes the model’s numerical precision.
The two objects reach the same Pods from different sides: the Deployment sets the desired number of Pods, and the Service decides which Pods callers’ traffic reaches.
Readiness is also different from process existence. NIM for LLM and VLM documents /v1/health/live for container liveness and /v1/health/ready for a loaded model available for inference. A running container can still be loading its model. See 4.4.1 for GPU resource requests and health probes, and 7.2.3 for NIM deployment through Helm or the NIM Operator.
Architecture / decision scenario
A manufacturer runs an on-premises maintenance assistant with six agent replicas and two approved inference replicas. The platform owner must update the agent prompt-processing code without restarting model serving, whose measured startup takes four minutes in this example.
One proposal puts an agent and model server together in every Pod. That ties the rollout and replica counts together, creating six model instances where the GPU budget permits two. The owner instead uses separate Deployments, with .spec.replicas set to six and two, and an internal Service selecting inference Pods by label. Agent Pods call the Service address.
During a model rollout, the readiness check must represent model availability rather than merely container liveness. When a configured readiness probe fails, Kubernetes removes the Pod from matching Services’ endpoints. Pointing the probe at /v1/health/ready rather than /v1/health/live keeps ordinary Service traffic off a replacement still loading its model. Detailed probe configuration belongs to 4.4.1; the prerequisite decision is which object owns each responsibility.
Common exam traps
- Treating an image as a running process or a durable data store.
- Treating a Pod IP as a permanent application endpoint.
- Expecting a Service to maintain the replica count.
- Equating a live model-server container with inference readiness.
What to remember
Build an image, run containers in Pods, maintain suitable workloads with a Deployment, and expose endpoints through a Service. Keep lifecycle, network identity, readiness, and capacity as separate decisions.
Knowledge check
A maintenance assistant runs six agent replicas and two inference replicas, the most its GPU budget allows. The agent code changes weekly; the model server takes four minutes to start and must not restart for an agent change, and agents must keep reaching inference as its Pods are replaced. How should the platform owner structure the workloads?
During a rollout of the inference Deployment, agent requests sent through the Service fail for several minutes because each new Pod receives traffic while its NIM is still loading the model. The Pods’ readiness probe calls /v1/health/live, and agents must keep calling the Service. Which change removes the cause of the failures?
/v1/health/ready.spec.replicas/v1/health/live answers once the container runs, before the model is loaded; /v1/health/ready answers when the model is loaded and inference is available. While a readiness probe fails, Kubernetes removes the Pod from the endpoints of matching Services, so a probe on the ready endpoint keeps loading replacements out of rotation. More replicas still admit each new Pod too early.A team created a ClusterIP Service selecting app: inference and one standalone Pod carrying that label, expecting Kubernetes to keep two serving instances. Only one instance ever exists, and when it is deleted nothing replaces it. What is missing?
.spec.ports.spec.selector on the Service.spec.template and .spec.replicas , and its ReplicaSet replaces Pods that disappear. Ports and selectors change how traffic reaches Pods, and an image only packages the software a Pod runs.An evaluation helper writes its result files into its container’s own filesystem. After the Deployment rolls out a new Pod template, the earlier results are gone. The results must survive any replacement of the helper’s Pods. What does the helper need?
ClusterIP Service in front of the helper’s PodsReferences
- Docker, What is Docker?
- Kubernetes, Pods
- Kubernetes, Pod Lifecycle
- Kubernetes, Deployments
- Kubernetes, Service
- NVIDIA, API Reference