Overview
Configuring cloud-native applications for deployment has two subsections, each centered on one of Google's container runtimes. Subsection 3.1 covers Cloud Run: deploying from source code, invoking services through Eventarc and Pub/Sub triggers, configuring event receivers that accept CloudEvents or push messages, and versioning, exposing and securing APIs with Apigee.
Subsection 3.2 covers GKE: deploying containerized applications with Kubernetes objects, implementing health checks through liveness, readiness and startup probes, and setting Horizontal Pod Autoscaler attributes such as replica bounds and the metrics that drive scaling. Questions mix platform behavior with configuration detail, so you need both concepts and the knobs that control them.
How it's tested
Items describe an application that fails to start, drops events, scales poorly or exposes an API insecurely after deployment. You pick the configuration change: a trigger filter, an invoker permission, a probe, an autoscaler target or an Apigee proxy. Distractors are usually settings that exist but solve a different problem.
-
Event wiring
You connect a source such as Cloud Storage, Pub/Sub or audit logs to a Cloud Run service through Eventarc and grant the trigger identity permission to invoke it.
-
Health and readiness
You pick liveness, readiness or startup probes to fix restarts, early traffic or slow initialization on GKE.
-
Scaling configuration
You set HPA metrics and bounds on GKE, or concurrency and instance limits on Cloud Run, to match load without wasting resources.
A GKE service loads a large model file at startup and Kubernetes keeps restarting the pods before they finish. Raising the liveness timeout for every check would also delay detection of real hangs later. Adding a startup probe holds off liveness checks until initialization succeeds, after which a normal liveness probe catches deadlocks quickly, so the slow start and fast failure detection both work.
Objectives 2
Official objectives from the Google Cloud outline, in outline order.
3.1 Deploying applications to Cloud RunSource deployments, triggers, event receivers and API versioning and security.
- What it means
- This objective covers deploying applications to Cloud Run directly from source code, invoking Cloud Run services with triggers such as Eventarc and Pub/Sub, configuring event receivers for those triggers, and versioning, exposing and securing the APIs in those applications, with Apigee as the named example.
- What to understand
- A source deploy with gcloud run deploy --source uploads code, builds it with buildpacks or a Dockerfile in Cloud Build, stores the image in Artifact Registry and creates a new revision. Revisions are immutable, and tags plus traffic percentages control which ones serve users. Eventarc routes events from Google sources, audit logs and Pub/Sub to a service as CloudEvents over HTTP; the trigger's service account needs the Cloud Run Invoker role. Pub/Sub push subscriptions can call a service directly with an OIDC token. Receivers should return a success code quickly and be idempotent because delivery is at least once. Apigee adds versioned proxies, keys, quotas and OAuth in front of services.
- How it shows up
- Questions focus on which identity invokes the service, how an event reaches it, and how a new API version is released safely.
- Common confusion
- Allowing unauthenticated invocations is not needed for Eventarc or Pub/Sub push; grant the invoker role to their service accounts instead.
3.2 Deploying containers to GKEDeploying containerized apps, Kubernetes health checks and Horizontal Pod Autoscaler attributes.
- What it means
- This objective covers deploying containerized applications to GKE, implementing Kubernetes health checks to improve availability, and incorporating Horizontal Pod Autoscaler attributes such as scaling bounds and metrics.
- What to understand
- A Deployment manages ReplicaSets and rolling updates for stateless pods, while a Service gives them a stable address and an Ingress or Gateway exposes HTTP routes. Liveness probes restart a container that is stuck; readiness probes remove a pod from Service endpoints until it can serve; startup probes protect slow starters. HPA scales replica counts between minReplicas and maxReplicas based on CPU, memory, custom or external metrics, and needs resource requests set for utilization targets. Autopilot clusters handle node scaling, while Standard clusters use the cluster autoscaler. Workload Identity Federation for GKE lets pods call Google APIs as an IAM principal.
- How it shows up
- Expect a symptom such as traffic to unready pods or restart loops, then a choice among probe types or HPA settings.
- Common confusion
- A failed readiness probe stops traffic to the pod but does not restart it; only a failed liveness probe triggers a restart.
High-yield concepts
The terms, rules and formulas this domain turns into questions most often.
-
Cloud Run source deploy
gcloud run deploy --source builds and deploys code in one command.
- Remember
- Uses Cloud Build and buildpacks or a Dockerfile, storing the image in Artifact Registry.
- Tested as
- First bullet of 3.1.
- Trap
- Thinking a pre-built image is mandatory for Cloud Run.
-
Revisions and tags
Each deployment creates an immutable revision that can be tagged with its own URL.
- Remember
- Test a tagged revision with zero traffic before shifting users.
- Tested as
- Safe release scenarios.
- Trap
- Deploying a new service name for every version.
-
Eventarc triggers
Route events from Google sources, audit logs or Pub/Sub to Cloud Run.
- Remember
- Events arrive as CloudEvents over HTTP POST.
- Tested as
- Named for triggers and receivers.
- Trap
- Forgetting to grant the trigger's service account the invoker role.
-
Pub/Sub push to Cloud Run
Push subscription calls the service URL with each message.
- Remember
- Use an OIDC token from a service account to authenticate the push.
- Tested as
- Alternative trigger path in the guide.
- Trap
- Opening the service to allUsers so pushes succeed.
-
Idempotent receivers
Handlers that produce the same result if an event is delivered twice.
- Remember
- At-least-once delivery means duplicates happen.
- Tested as
- Event receiver correctness.
- Trap
- Assuming exactly-once delivery by default.
-
Apigee API proxies
Managed proxies that version, secure and throttle APIs.
- Remember
- Use base paths or revisions for versions, plus quotas and OAuth policies.
- Tested as
- Named for API versioning and security.
- Trap
- Versioning APIs by overwriting the existing backend.
-
Cloud Run concurrency
Number of simultaneous requests one instance handles.
- Remember
- Raise it for I/O-bound apps; lower it for CPU-heavy or non-thread-safe code.
- Tested as
- Scaling questions on Cloud Run.
- Trap
- Assuming one request per instance is always required.
-
Liveness probe
Checks whether a container is still functioning.
- Remember
- Failure restarts the container.
- Tested as
- Kubernetes health checks bullet.
- Trap
- Using it to delay traffic during warm-up.
-
Readiness probe
Checks whether a pod can accept traffic.
- Remember
- Failure removes it from Service endpoints without a restart.
- Tested as
- Common fix for errors during rollouts.
- Trap
- Expecting it to recover hung processes.
-
Startup probe
Gates other probes until the app has started.
- Remember
- Prevents slow starters from being killed by liveness checks.
- Tested as
- Slow initialization scenarios.
- Trap
- Setting huge liveness delays instead.
-
Horizontal Pod Autoscaler
Adjusts pod replicas from metrics.
- Remember
- Set minReplicas, maxReplicas, target metrics and resource requests.
- Tested as
- Third bullet of 3.2.
- Trap
- Confusing HPA with the cluster autoscaler, which adds nodes.
Side by side
Concepts candidates mix up, compared on the point that decides the answer.
Kubernetes probe types
| Concept | Meaning | Key difference | Common trap |
|---|---|---|---|
| Liveness | Is the container still healthy? | Failure restarts the container. | Making it depend on downstream services, causing cascading restarts. |
| Readiness | Can the pod serve traffic now? | Failure removes the pod from load balancing only. | Expecting it to restart broken pods. |
| Startup | Has the app finished starting? | Disables liveness and readiness checks until it succeeds. | Leaving it off for apps with long initialization. |
Ways to invoke a Cloud Run service
| Concept | Meaning | Key difference | Common trap |
|---|---|---|---|
| Direct HTTPS | Clients call the service URL. | Needs IAM invoker or public access, depending on design. | Making internal services public. |
| Eventarc | Event router delivering CloudEvents. | Supports many Google event sources and audit log events with filters. | Missing invoker role for the trigger identity. |
| Pub/Sub push | Subscription posts messages to the URL. | Simple message-driven invocation with retries. | Not acknowledging quickly, causing redelivery. |
| Cloud Scheduler or Cloud Tasks | Timed or queued HTTP calls. | Schedules or rate-controls invocations. | Using Eventarc for cron-style jobs. |
Scaling on Cloud Run and GKE
| Concept | Meaning | Key difference | Common trap |
|---|---|---|---|
| Cloud Run autoscaling | Instances scale from requests, concurrency and CPU. | Configure min and max instances and concurrency. | Expecting HPA objects on Cloud Run. |
| GKE HPA | Scales pod replicas from metrics. | Requires resource requests for utilization targets. | Forgetting maxReplicas limits or requests. |
Exam traps
Each trap is an answer that looks right. Learn the clue that should change your mind.
-
Public service for event delivery
- What candidates pick
- Allow unauthenticated invocations on the Cloud Run service.
- Why it looks right
- It instantly fixes 403 errors from the trigger.
- Why it's wrong
- It exposes the service to the internet; the proper fix is granting the invoker role to the trigger or push service account.
Clue to watch for Eventarc or Pub/Sub deliveries fail with permission errors.
-
Liveness for warm-up
- What candidates pick
- Increase the liveness probe initial delay to several minutes.
- Why it looks right
- It stops early restarts.
- Why it's wrong
- It also delays detection of genuine hangs after every restart; a startup probe solves warm-up cleanly.
Clue to watch for The app takes a long, variable time to initialize.
-
HPA to add nodes
- What candidates pick
- Raise HPA maxReplicas to fix pending pods.
- Why it looks right
- More replicas sounds like more capacity.
- Why it's wrong
- HPA scales pods, not nodes; pending pods need node capacity from Autopilot or the cluster autoscaler.
Clue to watch for Pods are stuck in Pending with insufficient resources.
-
New service per API version
- What candidates pick
- Deploy v2 as a separate service and email clients the new URL.
- Why it looks right
- It isolates versions.
- Why it's wrong
- It skips managed versioning, quotas and security; Apigee proxies or Cloud Run revisions with tags manage versions cleanly.
Clue to watch for Clients need a stable, governed API with versions.
-
Exactly-once assumption
- What candidates pick
- Write the handler to process each event once without checks.
- Why it looks right
- Most events do arrive once.
- Why it's wrong
- Eventarc and Pub/Sub can redeliver, so non-idempotent handlers create duplicates such as double charges.
Clue to watch for The handler changes money, inventory or state.
Answer framework
Work through these checks when a deployment question describes a symptom or a release goal.
- Name the runtime first, Cloud Run or GKE, because the fixes, objects and terminology differ between the two platforms.
- For invocation problems, trace the path: event source, Eventarc trigger or push subscription, identity used, and invoker permission.
- For releases, use Cloud Run revisions with tags and traffic percentages, or Kubernetes rolling updates, and manage API versions through Apigee.
- For availability symptoms on GKE, match the probe: startup for slow boots, readiness for traffic gating, liveness for hangs.
- For load issues, tune Cloud Run concurrency and instance limits, or HPA metrics, replica bounds and container resource requests on GKE, then confirm with load tests.
Practice question
Want more like this? The GCP PCD practice test has questions for every domain.
Checklist
0 of 11
Tick each one you can do without notes. Your ticks stay in this browser.
Study strategy
Split your study evenly between Cloud Run and GKE, since each subsection is a full runtime. For Cloud Run, deploy the same small app three ways: from source, from an image in Artifact Registry, and as a second revision with a tag and zero traffic. Add an Eventarc trigger on a Cloud Storage bucket and a Pub/Sub push subscription, keep the service private, and fix the permission errors you hit.
For GKE, use an Autopilot cluster and write the Deployment, Service and HPA manifests yourself. Break things on purpose: make the app slow to start, hang it, or make it briefly unready, and observe how each probe type reacts. Generate load and watch the HPA change replica counts.
Then read the Apigee overview pages on proxies, versioning, quotas and OAuth policies. End with timed question sets that describe symptoms and ask for configuration changes, and write down which setting each wrong option actually controls.
FAQ
How much weight does Configuring cloud-native applications for deployment have?
Domain 3, Configuring cloud-native applications for deployment, is about 24% of the exam, making it the second-largest section. Plan for roughly 12 to 14 questions; that count is an editorial estimate.
Is Cloud Deploy part of this section?
The current guide does not name Cloud Deploy. It focuses on Cloud Run deployments, Eventarc and Pub/Sub triggers, Apigee, and GKE deployments with probes and autoscaling.
Do I need to write Kubernetes YAML?
You should be able to read and reason about Deployment, Service, probe and HPA definitions. Exact field syntax matters less than knowing what each setting does.
Why does Apigee appear in a deployment section?
Subsection 3.1 includes versioning, exposing and securing APIs, and Apigee is the named example. Know proxies, API products, quotas and OAuth verification at a conceptual level.
What should I know about Eventarc?
Know event sources, trigger filters, CloudEvents format, the service account used by the trigger and the invoker role it needs. Also know Pub/Sub as the transport for many triggers.
Are Cloud Run jobs in scope?
The guide focuses on services, triggers and receivers. Jobs may appear as context for batch work, but service deployment and invocation deserve most of your time.
Other Cloud Computing certifications
Where the same subject shows up in other exams. Cards marked "Same subject" open the matching domain.
- AWS Certified Solutions Architect - Associate Study guide
- AWS Certified Cloud Practitioner Study guide
- AWS Certified SysOps Administrator - Associate Study guide
- AWS Certified Solutions Architect - Professional Study guide
- Microsoft 365 Fundamentals Study guide
- Azure Developer Associate Study guide
- Google Cloud Associate Cloud Engineer Study guide
- CompTIA Cloud+ Study guide
- Microsoft Certified: Azure Fundamentals Study guide
- AWS Certified Developer - Associate Study guide
- HashiCorp Certified: Terraform Associate Study guide
- Azure Administrator Associate Study guide
- Azure Solutions Architect Expert Study guide
Test your Domain 3 knowledge
Try timed Section 3 questions on Cloud Run triggers, Apigee versioning, GKE probes and autoscaling to confirm you can choose the right setting quickly.
Keep going
- Training Training Built on your Weak areas
- Practice test Questions by domain, with explanations
- Mock exam Full length, timed like the real exam
- Readiness test Find your weakest domain in minutes
- Cheat sheet Key terms and formulas on one page
- Ask the GCP PCD AI tutor Get any concept explained your way