Free practice · No sign-up required

GitOps Certified Associate free practice test

15 questions with answer explanations. Choose an answer below to begin.

Question 1 of 15

What is the primary purpose of GitOps in modern application delivery?

Show hint

Understand the foundational concept and goals of GitOps

0/15 answered · Bookmark questions to review later. Focus the practice area to use keys 1–9 and Enter.

Learn by doing

Put your answers into practice

Use official documentation and hands-on labs to work through topics you missed.

Explore all study resources →
Kubernetes application examples

Application examples from the Kubernetes project for practicing manifests and application behavior in a cluster.

Try it: Use a disposable cluster. Read a simple application's manifests, predict which Pods its Service selects, then change a label and use kubectl to diagnose the resulting connectivity problem.

Source is free. A local cluster uses your computer; hosted clusters may incur charges.

Kubernetes official tutorials

Guided tutorials for learning Kubernetes behavior and building practical skills beyond multiple-choice recall.

Try it: Complete a basic application tutorial. Repeat the task without the walkthrough, then explain the difference between declared configuration and observed cluster state.

Documentation is free. Your chosen cluster environment may have costs.

All questions and explanations

Prefer to read at your own pace? Work through each question below, then open its answer to check your reasoning. You can link directly to a question or print this reference.

  1. What is the primary purpose of GitOps in modern application delivery?

    1. To use Git as the single source of truth for declarative infrastructure and applications

    2. To store build artifacts in a version-controlled repository

    3. To replace continuous integration with continuous deployment

    4. To manage secrets exclusively through version control

    Show answer and explanation

    Correct answer

    • To use Git as the single source of truth for declarative infrastructure and applications

    GitOps centers on using Git to declaratively define desired state and automate synchronization. This ensures consistency and traceability. The other options describe related practices but not the core purpose.

  2. Which practice helps ensure that the cluster state matches the desired state defined in Git?

    1. Automated reconciliation

    2. Manual kubectl apply

    3. Periodic backup restoration

    4. Ad-hoc configuration changes

    Show answer and explanation

    Correct answer

    • Automated reconciliation

    Reconciliation is the process by which a GitOps operator continuously compares the cluster state to the declared state in Git and makes corrections. Manual actions and ad-hoc changes bypass the desired state control.

  3. What is a common benefit of using pull-based deployment over push-based deployment in GitOps?

    1. The operator runs inside the cluster and applies changes only when Git is updated

    2. It requires fewer permissions to access the cluster

    3. It eliminates the need for a version control system

    4. It guarantees zero-downtime deployments automatically

    Show answer and explanation

    Correct answer

    • The operator runs inside the cluster and applies changes only when Git is updated

    Pull-based deployment uses an operator inside the cluster to monitor Git and apply changes, reducing external access needs. Push-based methods often require external tools to trigger cluster updates.

  4. Which component is typically responsible for synchronizing the desired state from Git to the cluster?

    1. GitOps operator

    2. Container registry

    3. CI pipeline

    4. Monitoring agent

    Show answer and explanation

    Correct answer

    • GitOps operator

    The GitOps operator watches the Git repository for changes and reconciles the cluster state to match. Registries store images, CI runs tests, and monitoring observes runtime behavior.

  5. Why is declarative configuration important in a GitOps workflow?

    1. It defines the desired outcome rather than procedural steps

    2. It ensures all configurations are written in the same programming language

    3. It allows direct modification of live resources without review

    4. It reduces the need for version control

    Show answer and explanation

    Correct answer

    • It ensures all configurations are written in the same programming language

    Declarative configuration describes the intended state, enabling automation and consistency. Procedural scripts are less suitable for automated reconciliation. Direct live edits violate GitOps principles.

  6. What is a typical use case for GitOps in managing Kubernetes applications?

    1. Managing the desired state of applications and infrastructure through Git

    2. Replacing service meshes for traffic management

    3. Storing application logs for long-term retention

    4. Providing on-demand interactive debugging sessions

    Show answer and explanation

    Correct answer

    • Managing the desired state of applications and infrastructure through Git

    GitOps is commonly used to manage Kubernetes deployments by keeping configuration and desired state in Git. The other options describe functions outside the core scope of GitOps.

  7. Which practice supports security and compliance in GitOps by tracking changes over time?

    1. Git history and pull requests

    2. Unrestricted cluster access

    3. Manual configuration snapshots

    4. Ad-hoc deployment scripts

    Show answer and explanation

    Correct answer

    • Git history and pull requests

    Git provides an immutable audit trail of who changed what and when, which is essential for compliance. Pull requests enable reviews before changes are applied to the desired state.

  8. What does the desired state in GitOps typically include?

    1. Deployment manifests, configuration maps, and secrets references

    2. Only production environment settings

    3. Live cluster metrics and performance data

    4. Temporary troubleshooting scripts

    Show answer and explanation

    Correct answer

    • Deployment manifests, configuration maps, and secrets references

    The desired state includes all declarative definitions needed to run the application, such as deployments and config maps. Secrets may be referenced via approved sources, while live data is not part of the definition.

  9. Which statement best describes the relationship between GitOps and CI/CD?

    1. GitOps uses Git as the trigger and source of truth, while CI handles build and test automation

    2. GitOps replaces the need for any CI/CD pipelines

    3. CI pipelines are only used for building images, and GitOps handles everything else

    4. GitOps and CI/CD are mutually exclusive approaches

    Show answer and explanation

    Correct answer

    • GitOps uses Git as the trigger and source of truth, while CI handles build and test automation

    In GitOps, CI pipelines build and test artifacts, while Git serves as the source of truth and trigger for deployment. They complement rather than replace each other.

  10. Question 10

    Link to question

    What is a key advantage of using a Git repository as the source of truth?

    1. Enables consistent, repeatable deployments and easy rollback

    2. It allows runtime configuration changes to persist after restarts

    3. It removes the need for any automation tools

    4. It ensures all developers have direct cluster access

    Show answer and explanation

    Correct answer

    • Enables consistent, repeatable deployments and easy rollback

    Storing the desired state in Git provides versioning, collaboration, and the ability to revert changes easily. Runtime changes outside Git can cause drift and are not persistent through reconciliations.

  11. Question 11

    Link to question

    Which tool pattern is commonly used to implement GitOps on Kubernetes?

    1. An operator that watches Git and applies changes to the cluster

    2. A script that manually edits live resources via the API

    3. A database that stores runtime configurations

    4. A firewall that restricts cluster access

    Show answer and explanation

    Correct answer

    • An operator that watches Git and applies changes to the cluster

    Operators or controllers are typical patterns for implementing GitOps by continuously syncing state. Manual edits and runtime config storage do not align with GitOps principles.

  12. Question 12

    Link to question

    What is a potential risk if Git history is not protected in a GitOps workflow?

    1. Unauthorized or accidental changes can be applied to the cluster

    2. The cluster will automatically reject all deployments

    3. Git storage costs will decrease significantly

    4. Observability tools will stop collecting metrics

    Show answer and explanation

    Correct answer

    • Unauthorized or accidental changes can be applied to the cluster

    Without branch protection and review controls, any change can be merged and automatically applied, increasing risk. The other options are not typical consequences of unprotected history.

  13. Question 13

    Link to question

    Which scenario best illustrates GitOps-driven recovery from a failed deployment?

    1. Reverting the Git state to a previous known good commit and letting the operator reconcile

    2. Manually editing resources on the cluster to match old settings

    3. Restarting the cluster control plane services

    4. Disabling the monitoring system to suppress alerts

    Show answer and explanation

    Correct answer

    • Reverting the Git state to a previous known good commit and letting the operator reconcile

    GitOps recovery involves restoring the desired state in Git and allowing automation to reconcile the cluster. Manual cluster edits introduce drift and are not part of the GitOps model.

  14. Question 14

    Link to question

    What is a common prerequisite for implementing GitOps in an environment?

    1. A Kubernetes cluster with appropriate access controls

    2. A dedicated on-premises server for every microservice

    3. Disabling all forms of observability

    4. Using only imperative CLI commands for all operations

    Show answer and explanation

    Correct answer

    • A Kubernetes cluster with appropriate access controls

    GitOps requires a target cluster where the operator can apply changes, along with defined access policies. The other options contradict standard practices and operational needs.

  15. Question 15

    Link to question

    Which practice helps prevent configuration drift in a GitOps setup?

    1. Regular automated reconciliation and avoiding direct cluster changes

    2. Allowing developers to apply changes directly with kubectl

    3. Periodically deleting and recreating cluster resources

    4. Using multiple Git repositories without synchronization

    Show answer and explanation

    Correct answer

    • Regular automated reconciliation and avoiding direct cluster changes

    Automated reconciliation ensures the cluster converges to the Git-defined state. Direct changes and ad-hoc recreation cause drift and inconsistency.

Read all flashcards

Recall the answer before opening each card.

What is the primary purpose of GitOps?

To use Git as the single source of truth for declarative infrastructure and applications, ensuring consistency, traceability, and automated synchronization between the cluster state and the desired state.

What process ensures the cluster state matches the desired state in Git?

Automated reconciliation, performed by a GitOps operator that continuously compares the cluster state to the declared state in Git and makes corrections.

How does pull-based deployment work in GitOps?

An operator inside the cluster watches the Git repository and applies changes only when the repository is updated, reducing external access and ensuring changes are traceable.

What component synchronizes the desired state from Git to the cluster?

The GitOps operator, which watches the Git repository for changes and reconciles the cluster state to match the declared configuration.

Why is declarative configuration important in GitOps?

It describes the intended end state, enabling the operator to automatically determine the actions needed to achieve that state without specifying procedural steps, which prevents drift.

What is a typical use case for GitOps in Kubernetes?

Managing the desired state of applications and infrastructure through Git, using an operator to automatically deploy and reconcile resources based on Git changes.

How does Git history support security and compliance?

Git provides an immutable audit trail of who changed what and when, enabling compliance tracking. Combined with pull requests and branch protection, it prevents unauthorized changes.

What does the desired state in GitOps typically include?

Deployment manifests, configuration maps, and secrets references. Actual secrets are stored securely outside Git. It includes all declarative definitions needed to run the application.

How do GitOps and CI/CD relate?

CI handles build and test automation; GitOps uses Git as the source of truth and trigger for deployment. They complement each other—CI produces artifacts, GitOps deploys them.

What is a key advantage of using Git as the source of truth?

Enables consistent, repeatable deployments and easy rollback by reverting to a previous commit. All changes are versioned and auditable, reducing configuration drift.

What tool pattern is commonly used to implement GitOps on Kubernetes?

An operator or controller that watches a Git repository and automatically applies changes to the cluster to maintain the desired state.

What is a risk if Git history is not protected?

Unauthorized or accidental changes can be merged and automatically applied to the cluster, leading to unstable or insecure deployments without review.

How does GitOps facilitate recovery from a failed deployment?

By reverting the Git state to a previous known good commit and letting the operator reconcile the cluster, restoring the stable state without manual cluster edits.

What is a prerequisite for implementing GitOps?

A Kubernetes cluster with appropriate access controls to host a GitOps operator that can manage and reconcile resources.

How does GitOps prevent configuration drift?

Through regular automated reconciliation that ensures the cluster converges to the Git-defined state, and by avoiding direct cluster changes that would introduce drift.

What is the GitOps reconciliation loop?

The continuous process where the operator compares the current cluster state against the desired state in Git and applies corrections to eliminate any differences.

Why should direct cluster changes be avoided in GitOps?

Direct changes cause configuration drift and are overwritten during the next reconciliation. All changes must go through Git to maintain consistency and traceability.

What are the benefits of pull requests in GitOps?

They enable change review, approval, and audit before merging to the protected branch. This ensures only authorized changes are reconciled, enhancing security and compliance.

How does an operator maintain the desired state?

The operator periodically or via webhook checks the Git repository, then creates, updates, or deletes cluster resources to match the declared configuration, including pruning resources not in Git.

What is the typical recovery procedure in GitOps?

Revert the problematic commit in Git to a previous known good state. Push the revert; the operator automatically syncs the cluster back to that state, restoring stability.

Active recall deck

Practice GitOps Certified Associate with real flashcards

Read the prompt, commit to an answer, then flip the card. Move through the deck at your own pace and repeat any topic that does not come back quickly.

20 free cards

Card 1 of 20

1 reviewed this session

Connect the concepts

Your GitOps Certified Associate study mind map

Open a branch to connect a topic with its practice questions and explanations. Use the map to choose your next review topic.

GitOps Certified Associate15 questions in this practice set
Understand the foundational concept and goals of GitOps(1)
Explain the reconciliation loop in a GitOps workflow(1)
Compare deployment initiation models in GitOps(1)
Identify the role of a GitOps operator in the control loop(1)
Understand the role of declarative configuration in GitOps(1)
Identify practical scenarios where GitOps is applied(1)
Relate version control practices to security and auditability(1)
Define the scope of the desired state stored in Git(1)
Differentiate responsibilities between CI and GitOps(1)
Explain the benefits of a Git-based source of truth(1)
Recognize common implementation patterns for GitOps(1)
Understand security implications of Git repository controls(1)
More practice connections(3)
Exam-focused analysis

What this CGOA practice set measures

This is an analysis of the practice bank, not a claim about the vendor's live exam blueprint. Use it to identify the knowledge, judgment, and recall patterns exercised here, then verify your coverage against the current official exam guide.

Core Principles and Objectives of GitOps

GitOps is centered on the principle of using Git as the single source of truth for declarative infrastructure and application configurations. This practice bank emphasizes that the primary purpose is to define the desired state in Git and automate synchronization, ensuring consistency and traceability. The questions test your understanding of why declarative configuration is crucial—it describes the intended state, enabling automated reconciliation. Imperative scripts or live edits violate this principle. The foundational goal is to eliminate drift by having the cluster always converge to what is defined in Git, making deployments repeatable and auditable.

  • Git serves as the single source of truth for declarative configurations.
  • Declarative configuration is essential for automated reconciliation.
  • The primary purpose is to ensure consistency and traceability.
  • Imperative scripts and live edits are not part of GitOps.

Synchronization and Reconciliation Mechanisms

Automated reconciliation is the process by which a GitOps operator continuously compares the cluster state to the declared state in Git and makes corrections. This practice bank highlights the pull-based deployment model, where an operator inside the cluster watches Git and applies changes only when the repository updates, reducing external access needs. Pushing changes directly to the cluster bypasses this control. The questions explore how reconciliation prevents configuration drift and what tools (operators) are typically used to implement this pattern. Understanding the difference between push and pull models is key.

  • Automated reconciliation ensures cluster state matches Git.
  • Pull-based deployment uses an in-cluster operator to monitor Git.
  • Push-based methods require external triggers and increase risk.
  • Operators (controllers) are the typical implementation pattern.

Security, Compliance, and Change Management

GitOps leverages Git's history and pull request workflows to provide an immutable audit trail of all changes. The practice bank stresses that protecting Git history through branch protection and review controls is critical to prevent unauthorized or accidental changes from being applied. Without these, any merged commit can automatically trigger a reconciliation, increasing security risk. Compliance is enhanced because every change is tracked—who changed what and when—and reverting to a known good state is straightforward by reverting a commit. This section also covers that secrets should be referenced via approved external sources, not stored directly in Git.

  • Git history provides an immutable audit trail for compliance.
  • Pull requests and branch protection prevent unauthorized changes.
  • Secrets should be referenced, not stored plain in Git.
  • Rolling back is achieved by reverting a Git commit.

Integration with CI/CD and Practical Implementation

GitOps complements CI/CD but does not replace it. CI pipelines handle build, test, and artifact creation, while GitOps uses Git as the trigger and source of truth for deployment. The practice bank clarifies that GitOps requires a Kubernetes cluster with appropriate access controls to host an operator that watches the repository. Recovery from failed deployments is done by reverting the Git state to a previous commit and letting the operator reconcile. The questions also address that tools like Argo CD or Flux are common operators, and that direct cluster modifications cause drift, undermining the GitOps model.

  • CI builds and tests; GitOps triggers deployments from Git.
  • Operator requires a cluster with proper access controls.
  • Recovery: revert commit and let operator sync.
  • Direct cluster edits cause drift and should be avoided.

Study workflow

Turn one CGOA attempt into a study plan

  1. 1

    Define Desired State Declaratively

    Create declarative manifests (Deployments, ConfigMaps, etc.) for your application and infrastructure. Store them in a Git repository under version control. Ensure all configurations are defined as code, avoiding any imperative scripts or runtime manual changes. This forms the foundation of your GitOps workflow.

  2. 2

    Set Up Git Repository Controls

    Implement branch protection rules to require pull request reviews and status checks before merging. This prevents unauthorized changes from being automatically applied. Use signed commits if possible. Configure at least one protected branch (e.g., main or production) that triggers the reconciliation when updated.

  3. 3

    Install a GitOps Operator

    Deploy a GitOps operator (such as Argo CD or Flux) into your Kubernetes cluster. Configure it to watch the Git repository branch you designated. The operator will periodically compare the cluster state to the desired state in Git and automatically apply any differences.

  4. 4

    Configure Automated Sync Policy

    Set the operator to sync automatically when changes are detected in the watched Git branch. Define the synchronization frequency or use webhooks to trigger immediate reconciliation. Ensure the operator has appropriate permissions to update resources, and enable pruning to remove resources not defined in Git.

  5. 5

    Establish Rollback Procedures

    To recover from a failed deployment, revert the Git commit that introduced the change to a previous known good commit. Push the revert to the protected branch. The operator will automatically reconcile the cluster back to that state. Avoid making manual cluster edits; instead, always change state through Git.

FAQ

Questions about this CGOA practice page

Clear boundaries on what the bank covers, how to use it, and where official vendor information still matters.

What is the primary purpose of GitOps?+

GitOps uses Git as the single source of truth for declarative infrastructure and applications. The primary purpose is to ensure that the cluster state is continuously reconciled with the desired state defined in Git, providing consistency, traceability, and automated deployment management.

How does pull-based deployment differ from push-based deployment?+

In pull-based deployment, a GitOps operator inside the cluster monitors Git and pulls changes when the repository updates, reducing external access needs. Push-based deployment uses external tools to push changes directly to the cluster, which can increase security risk and bypass desired state control.

What is the role of a GitOps operator?+

The GitOps operator is a software component (e.g., Argo CD or Flux) that runs in the cluster and watches a Git repository. It continuously compares the cluster state with the desired state in Git and automatically reconciles any differences by applying changes, handling drift detection, and managing synchronization.

Why is declarative configuration important in GitOps?+

Declarative configuration describes the intended end state, enabling automation and consistency. In GitOps, it allows the operator to determine what actions are needed without specifying steps. This contrasts with imperative scripts, which are less suitable for automated reconciliation and can cause drift.

How does Git history enhance security and compliance?+

Git provides an immutable audit trail of every change, including who made it and when. Combined with pull request reviews and branch protection, this prevents unauthorized or accidental alterations. For compliance, the full change history is available, and reverting to a previous state is as simple as reverting a commit.

Keep studying

Build the next review session

Browse another free bank or use the study strategy guide to turn your misses into spaced review.