Courseiva

Certified GitOps Associate (CGOA, CNCF/Linux Foundation) (CGOA) (CGOA) — Questions 76150

325 questions total · 5pages · All types, answers revealed

Page 1

Page 2 of 5

Page 3
76
MCQeasy

What does the 'prune' policy in GitOps do?

A.It deletes resources from the cluster that are no longer in Git.
B.It cleans up old container logs.
C.It synchronizes the Git repo with the latest upstream changes.
D.It restarts pods that have been running for too long.
AnswerA

This is the core function of pruning in GitOps.

Why this answer

Pruning removes resources from the cluster that are no longer defined in the source Git repository, ensuring the cluster only contains what is declared.

77
Multi-Selectmedium

Which THREE components are essential for a complete GitOps CI/CD pipeline?

Select 3 answers
A.An automated controller that reconciles the cluster to the Git state.
B.A CI system that updates the manifest repository.
C.A human-operated dashboard for manual deployment.
D.A version control system (Git) acting as the source of truth.
E.A dedicated server for storing logs.
AnswersA, B, D

This is the engine of the GitOps process.

Why this answer

A complete GitOps pipeline requires a Git repository for state, a CI process for artifact creation, and a CD operator for reconciliation.

78
Multi-Selecteasy

Which TWO of the following tools allow for GitOps policy enforcement?

Select 2 answers
A.OPA Gatekeeper
B.Helm
C.ArgoCD
D.Flux
E.Kyverno
AnswersA, E

Standard policy engine for K8s.

Why this answer

OPA (Gatekeeper) and Kyverno are the two industry-standard policy engines for Kubernetes.

79
Multi-Selecteasy

Which TWO of the following are core principles of the GitOps model?

Select 2 answers
A.All code is written in Go.
B.Changes are automatically reconciled to match the declared state.
C.Manual updates are preferred for emergency fixes.
D.The desired state is defined in a version-controlled repository.
E.Developers have direct SSH access to the production cluster.
AnswersB, D

This is the core duty of the GitOps operator.

Why this answer

GitOps is based on the system state being explicitly declared in a version control system and then continuously reconciled by an automated operator.

80
MCQhard

In a multi-cluster environment, you are managing resources across 50 clusters. Which pattern prevents the 'Control Plane' bottleneck?

A.Storing all YAML in a single massive monorepo.
B.Manual kubectl context switching.
C.ApplicationSets with Cluster Generators.
D.Centralized Cluster Management.
AnswerC

ApplicationSets allow for dynamic cluster discovery and distributed reconciliation.

Why this answer

The 'Hub-and-Spoke' pattern with local agents (like Argo CD ApplicationSets or Flux controllers on each cluster) prevents a single central controller from having to manage thousands of API connections.

81
MCQeasy

Which GitOps tool is primarily associated with the 'pull' deployment model?

A.Jenkins
B.Flux
C.Ansible
D.Terraform
AnswerB

Flux is a well-known GitOps operator designed for pull-based workflows.

Why this answer

Flux and Argo CD are both popular examples of pull-based GitOps operators.

82
Multi-Selecteasy

A team is reviewing their deployment practices against OpenGitOps standards. Which THREE conditions are required to satisfy the 'Declarative Desired State' and 'Versioned and Immutable State' principles?

Select 3 answers
A.The target system's desired state is expressed in a software-interpretable, declarative format like YAML or JSON.
B.The desired state is stored in a version-controlled repository that maintains an append-only change history.
C.Every state revision is uniquely identified (e.g., by a Git commit SHA) and fully reproducible.
D.Live cluster state is permitted to override repository configurations during peak traffic periods.
E.System changes are made by executing manual shell scripts directly on production control plane nodes.
AnswersA, B, C

Declarative state specification ensures that system state is defined by static declaration rather than procedural steps.

Why this answer

OpenGitOps principles state that desired state must be expressed declaratively, stored in a system that enforces versioning and immutability (like Git), and serve as the single source of truth.

83
MCQhard

Your team is using a pull-based GitOps pattern. Which component is responsible for initiating the communication to the Git repository to check for updates?

A.The developer's local kubectl client.
B.The agent running inside the Kubernetes cluster.
C.The CI/CD pipeline pushes updates to the cluster.
D.The Git server pushes changes to the cluster webhook.
AnswerB

The agent pulls the desired state, maintaining security and reducing firewall complexity.

Why this answer

In a pull-based model, the agent/controller running inside the cluster actively polls the Git repository.

84
MCQmedium

Your organization uses the App-of-Apps pattern in Argo CD to manage hundreds of microservices. You need to ensure that when a developer updates a repository structure, the root application automatically discovers and syncs new child applications without manual intervention. Which feature should be enabled in the Application resource?

A.Use the 'ignoreDifferences' field for the child application manifests
B.Enable automated sync policy with self-healing and allow-empty
C.Set the sync policy to 'manual' and use a post-sync hook
D.Configure a manual webhook trigger on the root application
AnswerB

Self-healing ensures the live state matches the desired state defined in Git, while automatic sync ensures new directories are picked up.

Why this answer

The self-healing and automated sync policies, combined with directory recursion, allow the App-of-Apps pattern to maintain state automatically.

85
Multi-Selectmedium

Which TWO of the following are standard ways to structure environment configurations?

Select 2 answers
A.Using separate repositories for each environment
B.Using an external database to store config
C.Hardcoding environment names in the deployment script
D.Using different folders for different environments (e.g., dev/prod)
E.Embedding all environments in a single flat file
AnswersA, D

This is a robust approach for strict separation.

Why this answer

Using directories or separate repos are the standard patterns.

86
Multi-Selectmedium

Which TWO are common pitfalls in a GitOps implementation?

Select 2 answers
A.Using Git for version control.
B.Having too many branches.
C.Allowing manual 'kubectl edit' changes.
D.Automating too many processes.
E.Committing plaintext secrets to Git.
AnswersC, E

This breaks the GitOps source of truth.

Why this answer

Common pitfalls include failing to secure credentials and relying on imperative patterns, such as manual cluster edits.

87
MCQeasy

Which of these is a primary benefit of 'Infrastructure as Code' (IaC) in a GitOps workflow?

A.It replaces the need for monitoring.
B.It enables the entire infrastructure to be versioned and reconciled automatically.
C.It reduces the number of developers needed.
D.It makes the cloud provider cheaper.
AnswerB

This is the core benefit of applying GitOps principles to infrastructure.

Why this answer

IaC allows infrastructure to be treated with the same rigor as application code, enabling versioning, testing, and automated reconciliation.

88
MCQeasy

Your organization requires that all Kubernetes manifest changes be signed and encrypted before being pushed to Git. Which tool is primarily designed for this 'at-rest' encryption approach?

A.Kyverno
B.Mozilla SOPS
C.Sealed Secrets
D.HashiCorp Vault
AnswerB

SOPS supports file-level encryption for various formats including YAML.

Why this answer

Mozilla SOPS is the standard tool for encrypting sensitive values within manifest files (like YAML) before they are committed to Git.

89
Multi-Selectmedium

Which TWO of the following help ensure successful multi-cluster GitOps rollouts? (Select two)

Select 2 answers
A.Deploying to all clusters at the same time.
B.Using only one Git repository for all cluster configurations.
C.Using canary deployment phases per cluster group.
D.Grouping clusters by geography or environment for staggered rollouts.
E.Hardcoding cluster IPs in the manifest files.
AnswersC, D

This limits the impact of potential failures.

Why this answer

Phased rollouts and cluster grouping ensure that if a deployment fails, it is contained to a specific set of clusters rather than the entire fleet.

90
Multi-Selecthard

Which THREE of the following represent advanced GitOps patterns for multi-cluster management? (Select three)

Select 3 answers
A.ApplicationSets with custom generators.
B.GitOps-driven traffic management with Service Mesh.
C.Policy-as-Code for multi-cluster compliance.
D.Always using a single cluster for everything.
E.Using manual shell scripts for cluster provisioning.
AnswersA, B, C

This is the gold standard for scaling.

Why this answer

Advanced patterns include using ApplicationSets for dynamic generation, using Git submodules or monorepos for structure, and implementing policy-driven deployments.

91
MCQmedium

In the context of GitOps, what is meant by 'Pull-based' architecture?

A.The cluster agent proactively pulls configurations from the repository.
B.The repository pulls changes from the cluster.
C.The cluster is pulled into the development network.
D.Developers push code to the cluster API.
E.External systems pull logs from the cluster.
AnswerA

This removes the need for the CI system to have cluster-admin privileges.

Why this answer

The controller pulls the desired state from Git, which is more secure than pushing secrets out to the cluster.

92
MCQeasy

In the context of GitOps, what is the primary role of the 'Source of Truth'?

A.To store the database backups for the application.
B.To host the container images used by the applications.
C.To act as the runtime environment where pods are scheduled.
D.To serve as the definitive, version-controlled repository for the system's desired configuration.
AnswerD

Git acts as the record of what the infrastructure and application state should be.

Why this answer

The Source of Truth (typically a Git repository) holds the desired state of the entire system, ensuring that all cluster changes are versioned, audited, and reproducible.

93
Multi-Selecthard

Which THREE actions occur when a GitOps controller detects drift?

Select 3 answers
A.The controller generates an alert/notification.
B.The controller automatically deletes the cluster.
C.The controller marks the resource as 'OutOfSync'.
D.The controller applies the desired state from Git to the cluster.
E.The controller pushes the manual changes back to Git.
AnswersA, C, D

Alerting is essential for maintaining visibility.

Why this answer

When drift occurs, the controller flags the resource as 'OutOfSync', alerts the relevant teams, and optionally applies the correction to restore the desired state.

94
MCQmedium

A platform team manages 50 Kubernetes clusters using GitOps. They need to ensure that an emergency rollback of an application across all clusters can be executed cleanly and audited effectively. What is the standard GitOps mechanism to achieve this rollback?

A.Execute 'helm rollback' on each individual cluster CLI in parallel.
B.Delete the target namespace in each cluster and let the API server re-download the manifest from cache.
C.Revert the bad commit in the Git repository using 'git revert' and merge the change.
D.Power down the GitOps controller pods so the clusters automatically default to their initial factory settings.
AnswerC

Reverting the commit in Git updates the target desired state declaratively, allowing automated agents across all clusters to roll back safely while preserving history.

Why this answer

In GitOps, all changes—including rollbacks—are executed by interacting with Git. Reverting the Git commit to a previous known-good state causes the GitOps controllers across all 50 clusters to reconcile to that restored desired state, maintaining a complete audit trail.

95
Multi-Selecthard

Which THREE of these are valid methods for handling configuration differences across environments (e.g., Dev vs Prod)?

Select 3 answers
A.Using separate directories for each environment's manifests.
B.Using Helm values files for different environments.
C.Manually SSHing into nodes to run sed.
D.Hardcoding every environment in one massive file.
E.Using Kustomize overlays.
AnswersA, B, E

This is a clean and common GitOps structure.

Why this answer

Effective GitOps uses tools like Helm, Kustomize, or directory separation to manage environmental differences without code duplication.

96
MCQmedium

You are using ArgoCD and need to inject a value into a manifest that is not present in Git, such as a temporary credential. Which feature would you use to do this dynamic injection?

A.Helm values override in Application manifest
B.Secret injection controller
C.Resource hooks
D.Git commit override
AnswerA

Values can be injected via the 'helm.parameters' field in the Application spec.

Why this answer

ArgoCD supports 'Helm parameters' or 'Kustomize vars', but specifically for dynamic external values, the 'argocd-vault-plugin' or similar sidecar approaches are common, but using 'Application parameters' is the core supported way to override Helm values.

97
MCQmedium

An application is configured with 'Automated Sync'. What happens when a developer merges a change to the main branch?

A.The operator waits for a manual override
B.The operator deletes the application
C.The cluster crashes
D.The operator pulls the new state and updates the cluster
AnswerD

The reconciliation loop detects the change and pushes the new configuration to the API server.

Why this answer

The controller detects the commit and immediately triggers a sync to update the cluster.

98
MCQeasy

Which action should a developer take to deploy a new version of an application in a GitOps-based workflow?

A.Wait for the automated CI/CD tool to trigger a redeployment.
B.Submit a pull request to the Git repository containing the configuration update.
C.Run 'kubectl apply' from their local machine.
D.Log into the Argo CD dashboard and click 'Deploy'.
AnswerB

This is the standard GitOps workflow for requesting and applying changes.

Why this answer

The developer updates the manifest (e.g., image tag) in the Git repository and merges it, triggering the GitOps operator to update the cluster.

99
MCQhard

You are debugging a flux-system reconciliation loop. You notice the Kustomization is stuck in 'Retrying'. What command shows the current status and reason for the failure?

A.flux get kustomizations
B.flux logs
C.kubectl describe kustomization
D.flux wait
AnswerA

This command displays status and reconciliation failure info.

Why this answer

The 'flux get kustomizations' command provides a summary including the status and any error messages.

100
MCQhard

A platform engineer wants to configure an application state declaratively. They write an imperative script containing commands like 'kubectl scale deployment --replicas=5' and push this script into a Git repository for execution by a cron job. Why does this approach fail to satisfy the core GitOps principle of 'Declarative Desired State'?

A.The state is defined as a series of execution steps rather than a static description of the target system configuration.
B.GitOps tools only support JSON files and reject any YAML or shell-based configurations.
C.Cron jobs running in Kubernetes cannot execute kubectl commands against the internal API server.
D.Imperative scripts cannot be stored in Git repositories due to file permission limitations.
AnswerA

Declarative state specifies the desired end-state (e.g., replicas: 5) rather than the operational actions required to get there.

Why this answer

Imperative scripts define 'how' to achieve a state through a sequence of steps, rather than expressing 'what' the target system should look like (declarative). Declarative state relies on static configuration documents (like YAML manifests) that express target end-states.

101
MCQhard

You have a Git repository that contains multiple Kustomizations. You want Flux to update all of them based on a single trigger. How should you structure the repository?

A.Using one Git repo per application
B.Disabling Kustomize
C.Using a base directory and multiple overlays
D.Combining all manifests into one large file
AnswerC

This is the best-practice pattern for multi-environment management.

Why this answer

Using a base directory with common configurations and multiple overlay directories allows you to trigger updates across the entire hierarchy.

102
MCQhard

When configuring an App-of-Apps pattern, which field in the 'Application' manifest controls the order in which child applications are deployed?

A.argocd.argoproj.io/sync-wave
B.spec.project
C.spec.syncPolicy.automated.prune
D.spec.source.targetRevision
AnswerA

The 'sync-wave' annotation is the standard way to order the synchronization of resources within Argo CD.

Why this answer

The 'syncPolicy.syncOptions' field, specifically 'ApplyOutOfSyncOnly=true' or using 'wave' annotations, manages deployment ordering. However, standard Argo CD 'syncWaves' are the primary mechanism for ordering resources within an app.

103
MCQhard

A company uses Terraform for IaC and Argo CD for application delivery. How should they manage the dependency between infrastructure provisioning and app deployment to ensure GitOps consistency?

A.Use Crossplane to represent infrastructure as Kubernetes objects, managing both IaC and apps via GitOps.
B.Execute Terraform via a CI job that triggers Argo CD after completion.
C.Manually trigger Terraform runs before pushing new app manifests to Git.
D.Embed Terraform binary execution within a K8s deployment container.
AnswerA

Crossplane extends the GitOps pattern to infrastructure, ensuring the state is reconciled by an operator.

Why this answer

Using a tool like Crossplane or an orchestrator ensures that infrastructure and applications are synchronized through the same Git-based reconciliation loop.

104
MCQhard

Your organization requires an audit trail of all changes to infrastructure. Why is GitOps superior to imperative 'kubectl' commands for this?

A.Kubectl allows editing the live state without record.
B.Git is faster than kubectl for large clusters.
C.The cluster automatically emails admins when kubectl is used.
D.Git provides a permanent, immutable, and auditable history of who made what change and when.
AnswerD

Git's log and commit history satisfy strict compliance and auditing requirements.

Why this answer

Git provides a cryptographically signed, timestamped, and versioned history of all changes, which is ideal for auditing.

105
MCQmedium

When implementing a CI/CD pipeline for GitOps, how should you handle image tag updates?

A.Having the CD operator pull the 'latest' tag directly from the registry.
B.Manually updating the YAML file with the new image tag and committing to Git.
C.Triggering a shell script to update the cluster state directly from the CI pipeline.
D.Using an automated agent that detects new images and commits the tag change back to the Git repo.
AnswerD

Automated updates ensure the desired state in Git remains current without manual intervention.

Why this answer

Automating image updates through a tool like Renovate or Argo CD Image Updater ensures the repository is kept in sync with the latest build artifacts.

106
Multi-Selecthard

Which THREE activities are part of the 'Automated Pull-Based Reconciliation' process?

Select 3 answers
A.Applying updates to the cluster API.
B.Sending a push notification to developers.
C.Downloading updated manifest files.
D.Polling the Git repository for changes.
E.Compiling binaries on the local cluster node.
AnswersA, C, D

Executing the reconciliation.

Why this answer

The process involves detecting changes, fetching manifests, and applying them.

107
MCQmedium

Which of the following is a potential downside of using a 'Pull' model?

A.It requires public IP addresses
B.It requires maintaining an operator within the cluster
C.It is slower than pushing
D.It creates a security hole
AnswerB

An operator is a component that must be deployed, monitored, and updated.

Why this answer

Pull models require an agent to be installed in the cluster, which adds complexity to the management of that agent.

108
Multi-Selecthard

Which TWO scenarios represent 'drift' in a GitOps environment?

Select 2 answers
A.A developer manually modifies a Service load balancer IP.
B.A cluster administrator adds an annotation to a Pod using kubectl.
C.A developer submits a valid Pull Request.
D.The controller logs an error about connectivity.
E.The GitOps controller successfully updates a deployment.
AnswersA, B

This is a direct, manual change that drifts from Git.

Why this answer

Drift occurs when the cluster state deviates from the version-controlled Git state.

109
MCQmedium

You are using OPA Gatekeeper with GitOps. You want to prevent any deployment that does not have an 'owner' label. Where should this policy be applied to ensure it is enforced for all GitOps-driven changes?

A.Git pre-receive hook
B.Flux Source Controller
C.Validating Admission Webhook
D.ArgoCD AppProject
AnswerC

This ensures every request is checked against policies.

Why this answer

Validating admission webhooks (which Gatekeeper uses) enforce policies regardless of the source of the change, whether manual or GitOps.

110
Multi-Selecteasy

Which TWO of the following are core components of a mature GitOps-based DevSecOps practice?

Select 2 answers
A.Using manual SSH access for emergency production troubleshooting.
B.Ensuring all developers have cluster-admin privileges for rapid debugging.
C.Relying primarily on graphical user interfaces for cluster management.
D.Integrating automated security policies (like OPA) into the deployment workflow.
E.Defining infrastructure as code to ensure repeatability.
AnswersD, E

Policy enforcement ensures that all deployments meet security standards.

Why this answer

IaC and automated policy gates are essential to manage infrastructure safely and securely.

111
Multi-Selectmedium

Which TWO of the following are primary benefits of storing the entire desired state of a system in a versioned Git repository?

Select 2 answers
A.Comprehensive audit trail of all configuration changes
B.Automatic hardware repair
C.Simplified recovery to a previous known-good state
D.High-availability of the Git server
E.Automatic scaling of cluster nodes
AnswersA, C

Git commit history serves as an immutable audit log.

Why this answer

Version control provides a clear audit trail of who changed what, and enables easy restoration to a previous known-good state.

112
MCQmedium

What is the primary function of a 'GitOps Pipeline' versus a 'GitOps Controller'?

A.The pipeline manages the Git state directly.
B.They are the same thing.
C.The controller builds the images.
D.The pipeline prepares the artifacts, while the controller reconciles the state.
AnswerD

This division of labor is a hallmark of robust GitOps.

Why this answer

The pipeline handles the CI (build/test/publish) process, while the controller handles the CD (pull/reconcile) process.

113
Multi-Selectmedium

Which TWO items are typically included in a GitOps repository?

Select 2 answers
A.User password lists.
B.Kustomize overlays or Helm charts.
C.Database backups.
D.Kubernetes manifest files.
E.Application source code.
AnswersB, D

These are standard for managing configuration variations.

Why this answer

A GitOps repository contains the declarative definitions of the infrastructure (Kubernetes manifests) and the configuration required to manage them.

114
MCQhard

You are using ArgoCD and need to ensure that a Helm chart is rendered correctly with a specific set of values. Where do you specify these values in the ArgoCD Application resource?

A.spec.syncPolicy.values
B.spec.parameters
C.spec.destination.values
D.spec.source.helm.values
AnswerD

This field manages value overrides for Helm charts.

Why this answer

The 'spec.source.helm.values' field allows for either direct YAML values or a reference to a values file within the repository.

115
Multi-Selecthard

Which THREE of the following represent common symptoms of 'drift' in a GitOps-managed cluster?

Select 3 answers
A.Unexpected changes to resource labels or annotations
B.Manual editing of a ConfigMap via kubectl
C.Successful CI pipeline execution
D.Unauthorized scaling of a deployment
E.Git commit history being too long
AnswersA, B, D

Often caused by automated cluster tools that are not GitOps-aware.

Why this answer

Drift occurs when the runtime state deviates from the Git-stored state.

116
MCQmedium

What happens if the 'revision' in an Argo CD Application points to a branch that does not exist?

A.It will create the branch automatically.
B.It will stop the Argo CD controller.
C.The application will be marked as 'Invalid' or 'Degraded'.
D.It will sync the 'main' branch instead.
AnswerC

Argo CD cannot pull the manifest, leading to an error status.

Why this answer

Argo CD will report an 'Invalid' state because it cannot resolve the target revision specified in the manifest.

117
MCQmedium

In a GitOps workflow, where does the 'source of truth' reside?

A.In the Git repository.
B.In the application's environment variables.
C.In the Kubernetes etcd database.
D.In the developer's local workstation.
AnswerA

Git serves as the immutable source of truth for the desired configuration.

Why this answer

The Git repository holds the declarative state that the cluster must match.

118
MCQmedium

You want to use Helm for your GitOps deployments. Where should the 'values.yaml' file reside for environment-specific overrides?

A.In the Git repository, per environment.
B.In a local machine folder not tracked by Git.
C.In the Argo CD global settings.
D.Inside the container image.
AnswerA

This allows GitOps to manage environment-specific configurations.

Why this answer

Environment-specific values files (e.g., values-prod.yaml) are typically stored in the Git repository alongside the chart or in a separate environment-specific folder, allowing for clear separation of concerns.

119
MCQeasy

What is the primary benefit of using a pull-based GitOps operator compared to a push-based CI/CD system?

A.It eliminates the need for container registries.
B.You can use fewer Git branches.
C.The CI system runs faster.
D.The cluster does not need inbound access from the CI pipeline.
AnswerD

The operator pulls from within the cluster, removing the need for exposed API server credentials in the CI tool.

Why this answer

Pull-based systems don't require the CI system to have credentials for the cluster, improving security and enabling autonomous reconciliation.

120
MCQeasy

Which of the following describes the 'Declarative' aspect of GitOps?

A.Manually clicking buttons in a UI to scale a service.
B.Defining the desired state in a YAML file.
C.Creating a list of commands to run in order.
D.Writing a shell script to upgrade a deployment.
AnswerB

This is the essence of declarative configuration.

Why this answer

Declarative means describing the 'what' (the final state) rather than the 'how' (the steps to achieve it).

121
MCQmedium

Why do you use a separate repository for application code and application manifests (deployment manifests) in GitOps?

A.It is required by the Kubernetes specification.
B.Because they are written in different languages.
C.To allow different teams to manage code and configuration independently and securely.
D.It makes the CI/CD pipeline run faster.
AnswerC

This separation allows for a clear boundary between development and operations/delivery.

Why this answer

Separating the source code from the environment configuration allows for independent lifecycle management and improved security scoping.

122
Multi-Selecthard

Which THREE of the following are valid components of the ArgoCD architecture?

Select 3 answers
A.API Server
B.Application Controller
C.Repo Server
D.Source Controller
E.Kustomization Controller
AnswersA, B, C

Handles the UI and CLI requests.

Why this answer

ArgoCD core consists of the API server, the Repo Server, and the Application Controller.

123
MCQhard

During an audit, an organization discovers that a secret was accidentally committed to a Git repository managed by Flux. An engineer deletes the commit containing the secret using 'git push --force' with a rewritten history. Why is this action problematic in a production GitOps environment?

A.Force-pushing history breaks the cryptographic chain of custody and can desynchronize agents expecting immutable, append-only history.
B.Kubernetes secrets created before the force-push are automatically converted into ConfigMaps by the API server.
C.Flux automatically restores deleted Git commits by fetching missing objects from the live cluster memory.
D.Git repositories permanently reject future commits if a force-push is detected by the GitOps operator.
AnswerA

GitOps relies on Git as an append-only, immutable audit log. Rewriting history disrupts reconciler tracking and undermines auditability.

Why this answer

Rewriting Git history invalidates the audit log and can cause synchronization issues or unexpected behaviors across distributed reconcilers that rely on immutable commit SHAs. In GitOps, secrets should be removed properly (e.g., using secret management tools like Sealed Secrets or SOPS) and rotated immediately rather than altering historical commits.

124
MCQmedium

When migrating to GitOps, why is 'Pull' preferred over 'Push' for CD?

A.It makes the deployment process faster.
B.It removes the need for exposed API server credentials in the CI tool.
C.It eliminates the need for Git.
D.It allows developers to push code directly to production.
AnswerB

By pulling from within the cluster, the cluster remains secure behind firewalls.

Why this answer

Pull-based systems are more secure as they don't require external entities to have write access to the cluster's internal credentials.

125
Multi-Selecteasy

Which THREE of the following are benefits of using the App-of-Apps pattern? (Select THREE)

Select 3 answers
A.Centralized management of multiple applications.
B.Elimination of the need for Helm.
C.Simplified visualization of related applications in the UI.
D.Ability to sync all related applications with one click.
E.Automatic promotion of code between environments.
AnswersA, C, D

It allows managing a fleet of applications from a single root.

Why this answer

The App-of-Apps pattern simplifies management by providing a single point of visibility, enabling bulk operations, and allowing for hierarchical organization of applications.

126
Multi-Selectmedium

Which TWO of the following are considered advantages of the GitOps approach?

Select 2 answers
A.Increased reliance on manual CLI interventions.
B.Automatic creation of new business requirements.
C.Improved auditability through version-controlled commits.
D.Simplified rollback of infrastructure configurations.
E.Ability to bypass security protocols.
AnswersC, D

Every change is documented and linked to a commit/user.

Why this answer

GitOps improves auditability through Git logs and reduces the risk of manual configuration errors.

127
Multi-Selecthard

Which THREE factors should be considered when choosing a GitOps controller?

Select 3 answers
A.The color scheme of the controller's UI.
B.The controller's support for multi-cluster deployments.
C.Whether it uses a proprietary language.
D.Compatibility with existing CI/CD pipelines.
E.Built-in integration or compatibility with secret management solutions.
AnswersB, D, E

Crucial for scaling infrastructure.

Why this answer

Key considerations include support for multi-cluster environments, secret management capabilities, and how well it integrates with existing CI tools.

128
MCQeasy

What is the key difference between Configuration as Code and Infrastructure as Code in the context of GitOps?

A.Configuration as Code is only for databases.
B.Config as Code is always written in YAML.
C.They are the same thing.
D.IaC defines the underlying resources, while Config as Code defines the application-level settings.
AnswerD

This is the standard distinction between infrastructure and configuration.

Why this answer

Infrastructure as Code focuses on the underlying environment (VMs, networks), while Configuration as Code focuses on the software services and their settings.

129
MCQhard

What is the most effective approach to handle 'secrets' in GitOps when you require strict compliance that mandates secrets never exist in plain text in the repo?

A.Use an external secret store that injects values into the cluster at runtime.
B.Store secrets in an encrypted cloud storage bucket and manually map them.
C.Use standard Kubernetes secrets and hope for the best.
D.Use Sealed Secrets with a public key in Git.
AnswerA

This keeps secrets completely out of Git, meeting the strictest security requirements.

Why this answer

External Secrets Operator or HashiCorp Vault integration fetches secrets from a secure, external source and injects them into the cluster, so they are never in the Git repo.

130
MCQeasy

What is the primary function of the Flux Image Reflector Controller?

A.Enforcing policies
B.Scanning container registries for updates
C.Applying Kubernetes manifests
D.Encrypting secrets
AnswerB

It tracks metadata for images.

Why this answer

The Image Reflector Controller scans container registries and reflects image metadata into the cluster as ImageRepository objects.

131
MCQhard

You are migrating a legacy application deployment process to GitOps. The application requires a specific sequence of database migrations to run before the new container version is deployed. How do you implement this in a GitOps-friendly way?

A.Use a Kubernetes 'Job' resource that runs before the Deployment, and manage dependencies with initContainers or Helm hooks.
B.Add a 'kubectl apply' command to the end of the CI pipeline to execute migrations.
C.Hardcode the migration logic into the application source code to run on startup.
D.Create a manual trigger in the GitOps dashboard to execute the migration after the deployment starts.
E.Configure the GitOps agent to execute a shell script on the node before pulling the image.
AnswerA

Helm hooks or Kubernetes Jobs allow declarative definition of prerequisites that the GitOps controller can manage.

Why this answer

GitOps relies on reconciliation. Pre-deployment tasks should be managed via Kubernetes Jobs or hooks that maintain the declarative nature of the cluster state.

132
MCQmedium

Your team is using Flux CD to manage Kubernetes resources. You notice that the application status is 'Suspended'. What is the most likely reason for this state in the context of GitOps principles?

A.The cluster is out of memory
B.A user explicitly set the suspend field to true in the resource manifest
C.The controller is unable to connect to the container registry
D.The Git repository contains syntax errors
AnswerB

Setting 'suspend: true' is a deliberate configuration to pause reconciliation.

Why this answer

Suspending a Kustomization or HelmRelease in Flux stops the reconciliation process, meaning the controller will no longer apply changes from Git to the cluster.

133
MCQeasy

Which of these is a primary reason for using Helm charts in a GitOps workflow?

A.Encrypting all traffic
B.Replacing the need for Kubernetes
C.Creating Git commits automatically
D.Templating and packaging complex applications
AnswerD

Helm simplifies managing complex sets of manifests.

Why this answer

Helm charts allow packaging complex applications into a single templateable format, which is easier to version and manage than hundreds of individual YAML files.

134
MCQmedium

You are performing a Canary deployment using Argo Rollouts. You notice that the analysis template is failing even though the metrics are within range. What is the most common cause of this in a GitOps workflow?

A.The analysis template is missing the 'rollback' flag.
B.The Prometheus metric query does not match the 'args' passed from the Rollout object.
C.The Rollout image version is not updated in the Git repository.
D.The ReplicaSet is failing to scale to the desired state.
AnswerB

AnalysisTemplates rely on accurately passed arguments to correctly query the metrics provider.

Why this answer

If the analysis template fails despite metrics being valid, the culprit is often an incorrectly configured 'provider' field pointing to the wrong Prometheus endpoint or incorrect authentication credentials within the secret referenced by the analysis run.

135
MCQhard

In a GitOps environment, what is the 'Reconciliation Loop' primarily responsible for?

A.Running unit tests on application code
B.Generating new Kubernetes manifests
C.Managing user authentication for the Git provider
D.Continuously ensuring the cluster state matches the Git repository
AnswerD

The loop is a control mechanism that maintains consistency.

Why this answer

The loop calculates the difference between current and desired state and applies actions to minimize that difference.

136
Multi-Selecthard

Which THREE of the following are true about 'Resource Hooks' in Argo CD? (Select three)

Select 3 answers
A.They can be triggered pre-sync, post-sync, or on-sync-fail.
B.They are defined using Kubernetes annotations.
C.They replace the need for the CI/CD pipeline.
D.They run as standard pods in the cluster.
E.They allow for custom logic during the deployment lifecycle.
AnswersA, B, E

These are the standard hook phases.

Why this answer

Hooks allow execution of pre/post-sync logic, such as database migrations or notifications, as part of the sync process.

137
MCQmedium

Why should you avoid using 'latest' as a container image tag in GitOps?

A.It prevents the controller from knowing exactly what version is deployed.
B.It causes the cluster to crash.
C.It's slower to pull.
D.It requires more storage space.
AnswerA

Deterministic state is a GitOps requirement.

Why this answer

Using 'latest' makes the deployment non-deterministic because the image associated with the tag can change, making it impossible to know exactly what is running in the cluster.

138
Multi-Selecteasy

Which TWO of the following are considered 'Anti-Patterns' in a GitOps workflow? (Choose two)

Select 2 answers
A.Storing sensitive secrets as plain text in the Git repository.
B.Using a Git branch to represent a specific environment (e.g., prod vs dev).
C.Applying manual configuration changes directly to the production cluster.
D.Automating the deployment process using a GitOps operator.
E.Storing application manifests in a central repository.
AnswersA, C

Secrets must be encrypted using tools like Sealed Secrets or Vault.

Why this answer

Making manual changes via kubectl and committing secrets in plain text are significant security and operational anti-patterns.

139
MCQhard

In a GitOps pattern, how do you manage a rollback when an application deployment fails?

A.Revert the commit in Git and let the GitOps operator reconcile.
B.Delete the pods and let the operator recreate them.
C.Stop the GitOps operator to prevent it from correcting the state.
D.Run 'kubectl rollout undo' on the deployment.
AnswerA

Reverting the state in Git ensures the desired state is returned to a known good version.

Why this answer

Rolling back involves reverting the commit in Git, which the operator then detects and reconciles to return the cluster to the previous working state.

140
Multi-Selecthard

Which THREE items should be excluded from a GitOps repository?

Select 3 answers
A.Container images (binaries).
B.Plaintext passwords/API keys.
C.Ephemeral cache files.
D.Rendered Kubernetes YAML.
E.Documentation files.
AnswersA, B, C

Store these in a registry.

Why this answer

GitOps repositories should focus on declarative config, not binary build artifacts, secrets, or transient runtime information.

141
MCQmedium

You are auditing a GitOps process. Which of the following is an indicator that the process is NOT truly following GitOps principles?

A.Secrets are encrypted in the Git repo.
B.The cluster automatically reconciles changes pushed to Git.
C.Developers use PRs to propose changes to the environment.
D.An administrator manually updates a Kubernetes Deployment manifest directly on the cluster.
AnswerD

Manual cluster modifications lead to drift and undermine the Git source of truth.

Why this answer

If a developer manually modifies a resource using kubectl, they are bypassing the Git source of truth, which is the definition of a GitOps violation.

142
MCQmedium

What is the primary function of a 'Namespace' in an Argo CD Application?

A.To store container images
B.To restrict where the operator deploys resources
C.To store Git history
D.To provide network isolation
AnswerB

Namespaces allow for multi-tenancy and resource segregation.

Why this answer

The namespace defines the logical boundary within the cluster where the resources should be deployed.

143
MCQhard

You notice that your GitOps pipeline is stuck in a loop. What is the most likely cause?

A.The deployment process automatically commits changes back to the same Git branch that triggers the deployment.
B.The cluster is too small.
C.The Git repository contains a circular reference.
D.The container registry is offline.
AnswerA

This creates a feedback loop where each deployment triggers another deployment.

Why this answer

A loop often occurs when the GitOps operator updates the cluster, and that update triggers a process that then modifies the Git repository, creating a feedback cycle.

144
MCQmedium

What is the primary role of a 'GitOps controller'?

A.To watch the repository and reconcile the cluster state
B.To host the container registry
C.To generate user tokens
D.To manage Git branches
AnswerA

This is the primary function of the controller.

Why this answer

The controller (or operator) is the brain of the GitOps platform that manages the lifecycle of the infrastructure.

145
MCQmedium

You are using the App-of-Apps pattern in Argo CD to manage hundreds of microservices. You notice that the parent application is stuck in a 'Syncing' state indefinitely. What is the most likely cause?

A.The parent application is not using a Helm chart source.
B.The Argo CD API server has exceeded its connection limit.
C.The child application's manifests include the parent application as a dependency.
D.The parent application is missing the sync-policy configuration.
AnswerC

A circular dependency occurs when a child application defines the parent as a source, preventing the sync process from completing.

Why this answer

In an App-of-Apps pattern, if the parent application has 'self-heal' or 'prune' enabled, it may conflict with child applications if the sync policy is misconfigured, often caused by circular dependencies or the parent attempting to manage its own child resources.

146
Multi-Selectmedium

Which TWO aspects of GitOps help ensure 'Continuous Drift Detection'?

Select 2 answers
A.Daily manual audit reports.
B.Forcing all developers to use SSH.
C.Comparing live state with the desired state in Git.
D.Regular polling or event-based monitoring of cluster state.
E.Using a database to store current cluster state.
AnswersC, D

This comparison defines the drift detection process.

Why this answer

Drift detection relies on comparing the live state against the repository state and alerting on discrepancies.

147
Multi-Selectmedium

Which TWO of the following are benefits of using Git as the 'Source of Truth'?

Select 2 answers
A.Clear audit trail of who changed what and when
B.Automated rollback via git revert
C.Automatic removal of unused cloud accounts
D.Increased reliance on manual terminal access
E.Faster CPU performance for applications
AnswersA, B

Git commits provide a timestamped and signed history of changes.

Why this answer

Git provides history, auditability, and collaboration features.

148
MCQmedium

What is the purpose of 'Image Tagging' in a GitOps workflow?

A.To force the container to restart.
B.To ensure that the exact version of the application is deployed consistently.
C.To track how many users are logged in.
D.To allow the container registry to delete old images.
AnswerB

Immutability requires referencing exact versions.

Why this answer

Using specific image tags (e.g., SHA-based, not 'latest') ensures that the deployment remains deterministic and immutable.

149
Multi-Selecthard

Which THREE of the following are common components of a GitOps platform?

Select 3 answers
A.CI Pipeline (e.g., GitHub Actions)
B.External Load Balancer
C.Git Repository (Source of Truth)
D.Manual Deployment Script
E.GitOps Operator (e.g., Argo CD/Flux)
AnswersA, C, E

CI validates changes before they land in the GitOps repo.

Why this answer

A GitOps platform consists of a Git repo, an operator, and a target infrastructure.

150
Multi-Selectmedium

Which TWO of the following are characteristics of a 'GitOps Operator'?

Select 2 answers
A.It is a purely external monitoring tool
B.It generates application source code
C.It runs inside the Kubernetes cluster
D.It requires manual triggers for every update
E.It observes, compares, and acts to reconcile state
AnswersC, E

Operators are native to the cluster environment.

Why this answer

Operators run inside the cluster and act autonomously.

Page 1

Page 2 of 5

Page 3

All pages