Red Hat Certified Advanced Developer in Cloud-native Applications Exam Prep
Free practice questions

Free EX288 Practice Questions

10 exam-style questions with answers and explanations, straight from our 1,030-question bank. Tap an answer to check yourself. When you're ready, take the scored version in the free practice test.

Start the free practice test → ★★★★★4.9/5 from 2,400+ candidates · No signup

These 10 free EX288 questions are organized by exam domain, so you can see how each part of the Red Hat Certified Advanced Developer in Cloud-native Applications blueprint is tested. Reveal the answer and explanation under each question.

Domain 1: Work with Red Hat OpenShift Container Platform

Question 1

During a brief database failover, a checkout process remains responsive but cannot serve transactions. It reconnects automatically when the database returns. Its /live endpoint reports event-loop health; /ready reports whether transactions can be served. Both endpoints are implemented correctly. How should health monitoring handle this outage without turning a recoverable dependency failure into a restart storm?

Show answer & explanation

Correct answer: A - Use /ready for readiness and /live for liveness; keep the process running while it reconnects.

Question 2

Before approving a rollout, a developer checks a Deployment with 7 desired replicas, maxSurge: 25%, and maxUnavailable: 25%. All existing replicas are available. The application must keep at least 6 replicas available, and the rollout policy must cap this Deployment at 8 non-terminating Pods. No other failures occur, and terminating Pods are excluded from the capacity check. Which assessment and adjustment meet both requirements?

Show answer & explanation

Correct answer: B - The settings allow 9 Pods and 6 available replicas; set maxSurge to the integer 1.

Domain 2: Deploy multi-container applications

Question 3

A Helm chart renders replicas from .Values.replicaCount and the container tag from .Values.image.tag; neither expression refers to .Chart.AppVersion. The chart's values.yaml specifies replicaCount: 1 and image.tag: "2.0". The file prod.yaml specifies replicaCount: 3 and image.tag: "2.4". A developer changes Chart.yaml's appVersion to "3.0" and runs: helm template storefront ./storefront -f prod.yaml --set replicaCount=5 The rendered Deployment will request:

Show answer & explanation

Correct answer: B - 5 replicas using image tag 2.4.

Domain 3: Work with container images in OpenShift Container Platform

Question 4

An application image works locally as UID 1001 but fails on OpenShift when creating /opt/app/cache/index. OpenShift assigns an arbitrary non-root UID, and the process belongs to group 0. The image directory is owned by 1001:1001 with mode 0750; no volume covers it, and the image filesystem is writable. Security policy must remain unchanged, and users outside the owning group must not gain access. The repair step can run as root during image construction. Select the appropriate build-time permission change.

Show answer & explanation

Correct answer: D - RUN chgrp -R 0 /opt/app/cache && chmod -R g=u /opt/app/cache

Domain 4: Troubleshoot application builds and deployment issues

Question 5

Minutes after a Service manifest is changed, the orders Route begins returning HTTP 503. Its TLS handshake succeeds. All three orders Pods are Ready, declare containerPort: 8080, and answer HTTP requests at their Pod IPs on port 8080. The Route still targets the Service's port named http. The relevant Service fields are: selector: {app: orders} ports: - name: http port: 80 targetPort: 8081 The Service's EndpointSlices contain the three expected Pod IPs. What is the smallest correction that restores the intended request path?

Show answer & explanation

Correct answer: B - Change the Service's targetPort from 8081 to 8080.

Domain 5: Work with image streams

Question 6

Pods in project storefront use ServiceAccount web and pull an image from the integrated registry's shared-images/catalog repository. The image exists, registry authentication works, and the pull is denied because web lacks access to the source project. Only this ServiceAccount should receive pull access. Which authorization should an administrator add?

Show answer & explanation

Correct answer: C - Bind system:image-puller to system:serviceaccount:storefront:web in project shared-images.

Domain 6: Work with configuration maps and secrets

Question 7

A support engineer changes LOG_LEVEL from info to debug in a mutable ConfigMap. One running container consumes that key in three ways: an environment variable, a file in an ordinary ConfigMap directory mount, and a separate file mounted with subPath. No container restarts, no controller changes the Pod template, and the ordinary directory projection has refreshed. The engineer checks the process environment and freshly reads both files. In that order, which values should appear?

Show answer & explanation

Correct answer: D - info in the environment; debug in the directory file; info in the subPath file.

Domain 7: Work with the source-to-image (S2I) framework

Question 8

A repository overrides an S2I builder's assemble script. The original assembler is /usr/libexec/s2i/assemble. With no shell errexit option enabled, the override contains: #!/bin/sh /usr/libexec/s2i/assemble printf '%s\n' 'Assembly finished' The original assembler exits 2, but the override reports success because printf succeeds. A supplied /opt/check-artifacts program must run only after successful assembly, and either program's failure must fail the override. Which replacement body preserves that contract?

Show answer & explanation

Correct answer: A - /usr/libexec/s2i/assemble && /opt/check-artifacts

Domain 8: Work with build hooks and build triggers

Question 9

An OpenShift Docker-strategy build uses a successful postCommit hook to write /opt/app/release.txt and then run a verification program. The logs confirm that the file exists during verification. The build pushes successfully, yet a container started from the pushed digest has no release.txt. The file must be part of the published image, and verification must still block publication on failure. Where should the two operations run?

Show answer & explanation

Correct answer: D - Create the file in a Dockerfile RUN instruction and retain verification in postCommit.

Domain 10: Work with OpenShift Pipelines

Question 10

A Tekton Pipeline's clone task writes a repository to $(workspaces.source.path). The test task declares runAfter: [clone] and reads that same relative directory. Both tasks map their source workspace to the Pipeline workspace checkout, which the PipelineRun binds to emptyDir: {}. Clone succeeds, but test reports that the source directory is empty. A suitable, writable PVC is available. What change addresses the missing files while preserving the task separation?

Show answer & explanation

Correct answer: C - Bind checkout to the same PVC for both tasks, retaining their dependency.

The rest of the EX288 blueprint

The EX288 exam also covers these domains. Drill them in the full free practice test:

That's 10 of 1,030

The full bank has 1,020 more EX288 questions with explanations.

Continue in the free practice test →

View plans