Courseiva
Services and NetworkinghardMultiple ChoiceObjective-mapped

CKAD Services and Networking Practice Question

You have a Deployment with multiple replicas. You want to expose it via a Service that has a stable IP address and is accessible from outside the cluster on a static port on each node. Which Service type should you use?

⚠ Common exam trap

Test-takers frequently choose LoadBalancer thinking it is required for external access, but NodePort suffices when the requirement is only a static port on each node, not a cloud-managed public IP.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

NodePort

A NodePort Service type exposes the application on a static port (in the range 30000-32767) on every node's IP address, making it accessible from outside the cluster. This satisfies the requirement for a stable IP (the node's IP) and a static port on each node, while also providing a stable ClusterIP for internal use.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • NodePort

    Why this is correct

    A NodePort Service allocates a static port in the 30000–32767 range on every cluster node, forwarding traffic to the Pods. This satisfies the requirement for a stable, externally accessible IP address on a static port per node, without needing a cloud load balancer. The mechanism maps the node’s IP and that port directly to the Service’s cluster IP, enabling external access from outside the cluster.

  • LoadBalancer

    Why it's wrong here

    Incorrect. LoadBalancer also works but requires a cloud provider and is not strictly 'static port on each node' (it does provide a NodePort as well, but the question emphasizes static port on each node, which NodePort does directly).

  • ClusterIP

    Why it's wrong here

    ClusterIP provisions a stable virtual IP that is only routable from inside the cluster network, typically via kube-proxy, and does not allocate any host-level static port on the nodes. To reach the pods from outside, you would need an additional mechanism such as a port-forward, a proxy, or an ingress controller, none of which match the requirement of a fixed port on every node's IP. Therefore, while ClusterIP is useful for internal service discovery, it fails the explicit need for external access on a static per-node port.

  • ExternalName

    Why it's wrong here

    ExternalName is a special Service type that returns a CNAME record pointing to an external DNS name, so it does not create any selector, endpoints, or cluster IP, and traffic is never forwarded to the deployment's pods. Because it is designed to expose an external domain as the service endpoint, it cannot satisfy the need to reach the application pods themselves from outside the cluster. The requirement calls for a service that routes to pods on a static node port, which is fundamentally incompatible with how ExternalName works.

About these practice questions

One of 160 original CKAD practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This CKAD practice question is part of Courseiva's free CNCF certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the CKAD exam.