Skip to main content

Quiz Module 8 - Ingress and Load Balancing

Instructions​

This quiz contains 30 multiple-choice questions.


Question 1​

What is Ingress in Kubernetes?

View explanation

Correct answer: A resource that exposes HTTP/HTTPS Services from outside the cluster

Explanation: Ingress enables HTTP/HTTPS routing based on the path or hostname, with TLS/SSL support.


Question 2​

What is an Ingress Controller?

View explanation

Correct answer: A Pod that watches Ingress resources and configures a load balancer to expose them

Explanation: An Ingress Controller (such as NGINX Ingress, Traefik) watches Ingress resources and configures a reverse proxy/load balancer to expose Services.


Question 3​

What is the most popular Ingress Controller?

View explanation

Correct answer: NGINX Ingress Controller

Explanation: NGINX Ingress Controller is the most popular and widely used, maintained by the Kubernetes community and NGINX.


Question 4​

What is ingressClassName in an Ingress resource?

View explanation

Correct answer: The Ingress class that specifies which Ingress Controller should manage this resource

Explanation: ingressClassName allows specifying which Ingress Controller should manage this Ingress resource, useful when multiple Ingress Controllers are installed.


Question 5​

How do you configure TLS/SSL for an Ingress?

View explanation

Correct answer: Via the tls section with a Secret containing the certificate and private key

Explanation: The tls section in an Ingress references a Secret of type kubernetes.io/tls containing tls.crt (certificate) and tls.key (private key).


Question 6​

What is cert-manager?

View explanation

Correct answer: A Kubernetes operator that automatically manages TLS/SSL certificates

Explanation: cert-manager obtains, renews, and automatically manages TLS certificates from Let's Encrypt or other certificate authorities.


Question 7​

What is the difference between an Ingress and a LoadBalancer Service?

View explanation

Correct answer: Ingress enables HTTP/HTTPS routing based on path/hostname, LoadBalancer exposes a Service directly

Explanation: Ingress offers advanced routing (multiple Services via a single entry point), while LoadBalancer exposes a single Service directly.


Question 8​

What is a pathType in an Ingress rule?

View explanation

Correct answer: How the path is interpreted: Exact, Prefix, or ImplementationSpecific

Explanation: pathType determines how the path is matched: Exact (exact match), Prefix (prefix match), or ImplementationSpecific (depends on the implementation).


Question 9​

What is the command to view Ingresses?

View explanation

Correct answer: kubectl get ingress

Explanation: kubectl get ingress (or ing) displays all Ingresses and their status, including assigned IP addresses.


Question 10​

What is an annotation in an Ingress?

View explanation

Correct answer: Metadata that configures the behavior of the Ingress Controller

Explanation: Annotations allow configuring specific features of the Ingress Controller (rewrite rules, SSL redirect, etc.).


Question 11​

What is an Ingress with multiple rules?

View explanation

Correct answer: An Ingress that can route to multiple Services based on different hostnames or paths

Explanation: An Ingress can have multiple rules, each defining different routing based on hostname or path, allowing exposure of multiple Services via a single entry point.


Question 12​

What is the command to install NGINX Ingress Controller?

View explanation

Correct answer: kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/main/deploy/static/provider/cloud/deploy.yaml

Explanation: NGINX Ingress Controller can be installed via kubectl apply with the official manifest, or via Helm.


Question 13​

What is an Ingress with rewrite-target?

View explanation

Correct answer: An Ingress that rewrites the URL path before forwarding it to the backend Service

Explanation: The annotation nginx.ingress.kubernetes.io/rewrite-target allows modifying the URL path, useful when the backend Service expects a different path.


Question 14​

What is the difference between an Ingress and a NodePort Service for exposing an application?

View explanation

Correct answer: Ingress offers HTTP/HTTPS routing and TLS, NodePort exposes directly on a port

Explanation: Ingress enables path/hostname-based routing with TLS support, while NodePort simply exposes a Service on a static port.


Question 15​

What is an Ingress with pathType: Prefix?

View explanation

Correct answer: An Ingress where the path matches if the URL starts with the specified prefix

Explanation: pathType: Prefix means the path matches if the URL starts with the prefix (for example: /api matches /api/v1/users).


Question 16​

What is the command to view the Ingress Controller Pods?

View explanation

Correct answer: kubectl get pods -n ingress-nginx (or the namespace where the Ingress Controller is installed)

Explanation: Ingress Controllers generally run in a dedicated namespace (such as ingress-nginx). Use -n to specify the namespace.


Question 17​

What is an Ingress with multiple hostnames?

View explanation

Correct answer: An Ingress that can route to different Services based on the request hostname

Explanation: An Ingress can have multiple rules with different hostnames, allowing routing to different Services based on the request domain (e.g., app1.example.com, app2.example.com).


Question 18​

What is the best practice for exposing multiple applications via Ingress?

View explanation

Correct answer: Use an Ingress with multiple rules based on hostname or path

Explanation: A single Ingress with multiple rules is more efficient and easier to manage than multiple Ingresses, allowing exposure of multiple Services via a single entry point.


Question 19​

What is an Ingress with the ssl-redirect annotation?

View explanation

Correct answer: An Ingress that automatically redirects HTTP traffic to HTTPS

Explanation: The annotation nginx.ingress.kubernetes.io/ssl-redirect: "true" forces redirection from HTTP to HTTPS to improve security.


Question 20​

What is the difference between an Ingress and a Service Mesh?

View explanation

Correct answer: Ingress manages incoming HTTP/HTTPS traffic, Service Mesh manages inter-service communication with observability and security

Explanation: Ingress is for external incoming traffic, while a Service Mesh (like Istio) manages communication between microservices with mTLS, observability, and traffic control.


Question 21​

What is an Ingress with a backend service?

View explanation

Correct answer: An Ingress that routes traffic to a specified Kubernetes Service

Explanation: Each rule in an Ingress specifies a backend service that receives traffic matching the rule's hostname/path.


Question 22​

What is the command to test an Ingress locally?

View explanation

Correct answer: curl -H "Host: [hostname]" http://[ingress-ip] or use port-forward to the Ingress Controller

Explanation: To test an Ingress, use curl with the Host header to specify the hostname, or use kubectl port-forward to access the Ingress Controller locally.


Question 23​

What is an Ingress with defaultBackend?

View explanation

Correct answer: An Ingress that specifies a default Service for requests that do not match any rule

Explanation: defaultBackend allows defining a Service that receives traffic not matching any rule, useful for a custom 404 page.


Question 24​

What is the best practice for managing TLS certificates with Ingress?

View explanation

Correct answer: Use cert-manager for automatic certificate management with Let's Encrypt

Explanation: cert-manager automates the obtaining, renewal, and management of TLS certificates, eliminating manual work and ensuring valid certificates.


Question 25​

What is an Ingress with CORS (Cross-Origin Resource Sharing)?

View explanation

Correct answer: An Ingress configured with annotations to allow cross-origin requests

Explanation: CORS annotations (like nginx.ingress.kubernetes.io/enable-cors) allow configuring CORS headers to permit requests from different domains.


Question 26​

What is the difference between an Ingress and an API Gateway?

View explanation

Correct answer: Ingress is for basic HTTP/HTTPS routing, API Gateway offers advanced features (rate limiting, authentication, transformation)

Explanation: Ingress offers basic routing, while an API Gateway (like Kong, Ambassador) offers advanced features such as rate limiting, authentication, request transformation, etc.


Question 27​

What is an Ingress with rate limiting?

View explanation

Correct answer: An Ingress configured with annotations to limit the number of requests per client

Explanation: Rate limiting annotations (like nginx.ingress.kubernetes.io/limit-rps) allow limiting the number of requests per second to protect backends.


Question 28​

What is the command to view Ingress Controller logs?

View explanation

Correct answer: kubectl logs -n ingress-nginx [ingress-controller-pod-name]

Explanation: The Ingress Controller logs are in the Ingress Controller Pods. Use kubectl logs with the namespace and Pod name.


Question 29​

What is an Ingress with session affinity?

View explanation

Correct answer: An Ingress configured to direct requests from the same client to the same backend Pod

Explanation: Session affinity (sticky sessions) ensures that requests from the same client always go to the same backend Pod, useful for application sessions.


Question 30​

What is the best practice for exposing an application in production with Ingress?

View explanation

Correct answer: Use HTTPS with cert-manager, configure ssl-redirect, and use annotations for security

Explanation: In production, always use HTTPS with cert-manager for automatic certificates, enable ssl-redirect, and configure appropriate security annotations.


Quiz Result​

Congratulations on completing the Module 8 Quiz!

Score:

  • 25-30 correct answers: Excellent! You master Ingress and Load Balancing.
  • 20-24 correct answers: Very good! Review the concepts where you had difficulties.
  • 15-19 correct answers: Good! Review the chapters on Ingress and Ingress Controllers.
  • Less than 15: Recommended to review the module before continuing.

Quiz created: December 2024