- A
The backend service is using a hardcoded IP address instead of the service DNS name.
Why wrong: The stem states the backend uses DB_HOST=database-service, so it uses DNS, not a hardcoded IP.
- B
The backend service's readiness probe is failing, so it is not receiving traffic, but the backend still tries to connect.
Why wrong: If the backend readiness probe fails, the backend pod would be removed from service endpoints, but the error is on the backend trying to connect to the database, not the backend itself.
- C
The database pod is being killed due to memory limits, causing frequent restarts and temporary unavailability; the backend's connection attempts fail during the restart window.
The OOMKilled errors indicate the database pod exceeds memory limits. When it restarts, there is a brief period of unavailability, causing 'Connection refused' errors.
- D
The DNS entry for database-service is cached and pointing to the old pod IP after the database pod restarts.
Why wrong: ClusterIP services use a virtual IP that does not change; pod restarts do not affect the ClusterIP. DNS caching is not the issue.
Quick Answer
The answer is that the database pod being repeatedly killed by OOMKilled due to exceeding its 512Mi memory limit causes intermittent connection refused errors. When Kubernetes terminates the pod for out-of-memory, the backend service’s connection attempts to the ClusterIP service fail because no ready database pod exists during the restart window. This scenario tests your understanding of how resource limits interact with pod lifecycle and service discovery in Kubernetes, a key concept for the Cisco DevNet Associate 200-901 exam. A common trap is blaming the liveness or readiness probes, but the probes only detect unavailability—they don’t cause the restarts. Instead, focus on the OOMKilled event in pod logs as the root cause. Memory tip: “OOM kills the pod, probes just watch the clock”—the limit is the trigger, not the probe.
200-901 Application Deployment and Security Practice Question
This 200-901 practice question tests your understanding of application deployment and security. The scenario asks you to isolate a root cause — eliminate options that address a different problem before choosing. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.
A company runs a microservices application on a Kubernetes cluster with 10 worker nodes. The application consists of 3 services: frontend, backend, and database. The database service is stateful and uses persistent volumes. Recently, the operations team noticed that the backend service is experiencing intermittent failures with 'Connection refused' errors when trying to connect to the database. The database service is exposed via a ClusterIP service named 'database-service'. The backend service uses environment variable DB_HOST=database-service to connect. The pod logs show that the connection is attempted to an IP address that does not correspond to any database pod. Further investigation reveals that the database pod has been restarted multiple times due to OOMKilled errors. The backend service is configured with a liveness probe that checks the health endpoint every 10 seconds, and a readiness probe that checks the same endpoint every 5 seconds. The database pod has resource limits set to 512Mi memory and 500m CPU. The node running the database pod has 4Gi memory and 2 CPU cores. What is the most likely cause of the intermittent connection failures?
Clue words in this question
Noticing these words before you look at the options changes how you read each choice.
Clue:
"most likely"Why it matters: Probability qualifier — the question wants the most probable cause or outcome, not a guaranteed one. Eliminate low-probability options.
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
The database pod is being killed due to memory limits, causing frequent restarts and temporary unavailability; the backend's connection attempts fail during the restart window.
The intermittent 'Connection refused' errors are caused by the database pod being repeatedly killed due to exceeding its memory limit (512Mi), which triggers OOMKilled restarts. During the restart window, the database pod is unavailable, and the backend's connection attempts to the ClusterIP service (which resolves to the pod's IP) fail because no pod is ready to accept connections. The frequent restarts create a pattern of temporary unavailability that aligns with the observed symptoms.
Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
The backend service is using a hardcoded IP address instead of the service DNS name.
Why it's wrong here
The stem states the backend uses DB_HOST=database-service, so it uses DNS, not a hardcoded IP.
- ✗
The backend service's readiness probe is failing, so it is not receiving traffic, but the backend still tries to connect.
Why it's wrong here
If the backend readiness probe fails, the backend pod would be removed from service endpoints, but the error is on the backend trying to connect to the database, not the backend itself.
- ✓
The database pod is being killed due to memory limits, causing frequent restarts and temporary unavailability; the backend's connection attempts fail during the restart window.
Why this is correct
The OOMKilled errors indicate the database pod exceeds memory limits. When it restarts, there is a brief period of unavailability, causing 'Connection refused' errors.
Clue confirmation
The clue word "most likely" in the question point toward this answer.
Related concept
Read the scenario before looking for a memorised answer.
- ✗
The DNS entry for database-service is cached and pointing to the old pod IP after the database pod restarts.
Why it's wrong here
ClusterIP services use a virtual IP that does not change; pod restarts do not affect the ClusterIP. DNS caching is not the issue.
Common exam traps
Common exam trap: answer the scenario, not the keyword
Cisco often tests the distinction between pod-level failures (like OOMKilled causing restarts) and service-level issues (like DNS caching or readiness probes), leading candidates to incorrectly attribute the problem to DNS or probe misconfiguration instead of the resource constraint causing the database pod to be temporarily unavailable.
Detailed technical explanation
How to think about this question
When a pod is OOMKilled, Kubernetes restarts it, but during the container startup (including init containers and application initialization), the pod is not ready to accept traffic. The ClusterIP service uses iptables or IPVS rules to forward traffic to the pod's IP, but if the pod is not running, the connection is refused at the transport layer (TCP RST). The backend's connection attempt to the service's ClusterIP results in a direct connection to the pod's IP via kube-proxy, and if that pod is down, the kernel returns 'Connection refused' immediately, not a timeout.
KKey Concepts to Remember
- Read the scenario before looking for a memorised answer.
- Find the constraint that changes the correct option.
- Eliminate answers that are true in general but not in this case.
TExam Day Tips
- Watch for words such as best, first, most likely and least administrative effort.
- Review why wrong options are wrong, not only why the correct option is correct.
Key takeaway
Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Real-world example
How this comes up in practice
A small business has 20 workstations on the 192.168.1.0/24 network and one public IP from its ISP. The router uses PAT (NAT overload) so all 20 devices share one public address using different source ports. NAT questions test whether you understand the four address terms and which direction each translation applies.
What to study next
Got this wrong? Here's your next step.
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
- →
Application Deployment and Security — study guide chapter
Learn the concepts, then practise the questions
- →
Application Deployment and Security practice questions
Targeted practice on this topic area only
- →
All 200-901 questions
505 questions across all exam domains
- →
Cisco DevNet Associate 200-901 study guide
Full concept coverage aligned to exam objectives
- →
200-901 practice test guide
How to use practice tests most effectively before exam day
Related practice questions
Related 200-901 practice-question pages
Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.
Software Development and Design practice questions
Practise 200-901 questions linked to Software Development and Design.
Understanding and Using APIs practice questions
Practise 200-901 questions linked to Understanding and Using APIs.
Cisco Platforms and Development practice questions
Practise 200-901 questions linked to Cisco Platforms and Development.
Application Deployment and Security practice questions
Practise 200-901 questions linked to Application Deployment and Security.
Infrastructure and Automation practice questions
Practise 200-901 questions linked to Infrastructure and Automation.
Network Fundamentals practice questions
Practise 200-901 questions linked to Network Fundamentals.
200-901 fundamentals practice questions
Practise 200-901 questions linked to 200-901 fundamentals.
200-901 scenario practice questions
Practise 200-901 questions linked to 200-901 scenario.
200-901 troubleshooting practice questions
Practise 200-901 questions linked to 200-901 troubleshooting.
Practice this exam
Start a free 200-901 practice session
Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.
FAQ
Questions learners often ask
What does this 200-901 question test?
Application Deployment and Security — This question tests Application Deployment and Security — Read the scenario before looking for a memorised answer..
What is the correct answer to this question?
The correct answer is: The database pod is being killed due to memory limits, causing frequent restarts and temporary unavailability; the backend's connection attempts fail during the restart window. — The intermittent 'Connection refused' errors are caused by the database pod being repeatedly killed due to exceeding its memory limit (512Mi), which triggers OOMKilled restarts. During the restart window, the database pod is unavailable, and the backend's connection attempts to the ClusterIP service (which resolves to the pod's IP) fail because no pod is ready to accept connections. The frequent restarts create a pattern of temporary unavailability that aligns with the observed symptoms.
What should I do if I get this 200-901 question wrong?
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
Are there clue words in this question I should notice?
Yes — watch for: "most likely". Probability qualifier — the question wants the most probable cause or outcome, not a guaranteed one. Eliminate low-probability options.
What is the key concept behind this question?
Read the scenario before looking for a memorised answer.
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Keep practising
More 200-901 practice questions
- A company uses a CI/CD pipeline to deploy network configurations. The pipeline includes a stage that runs automated test…
- Which TWO statements about REST API design best practices are correct?
- A network engineer is using the Cisco Meraki API to retrieve a list of SSIDs for a specific network. The API returns an…
- When designing a REST API client for a Cisco DNA Center deployment, which authentication method should be used to obtain…
- A Python script uses the Cisco Meraki API to create a new network and then immediately attempts to configure an SSID on…
- A DevOps team manages a multi-site Cisco Meraki network with 50 MX appliances and 200 MR access points. They use a Pytho…
Last reviewed: Jun 11, 2026
This 200-901 practice question is part of Courseiva's free Cisco 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 200-901 exam.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.