Google ACE: Implementatie, configuratie en automatisering — Studiegids
Onderdeel van de Google Associate Cloud Engineer — Studiegids. Oefen met geverifieerde antwoorden in het Google-examencentrum, of doe getimede oefentests op ExamRoll.io.
Overzicht
Deployment, configuratie en automatisering op Google Cloud zijn gericht op herhaalbare, auditeerbare en veilige levering van wijzigingen. Een goede praktijk steunt op infrastructure as code (IaC), declaratieve templates, onveranderlijke (immutable) artefacten en gestandaardiseerde pipelines. Operationele uitmuntendheid wordt bereikt door te ontwerpen voor idempotentieresistentie, wijzigingen vooraf te bekijken, beleid af te dwingen en gecontroleerde rollouts te plannen met duidelijke rollback-paden. De volgende secties bieden praktische patronen, voorbeelden van commando’s en de redenering achter ontwerpkeuzes, inclusief veelvoorkomende valkuilen en afwegingen.
Fundamenten van Infrastructure as Code en Configuratie
Principes:
- Declaratieve templates beschrijven de gewenste eindtoestand; tooling brengt de werkelijke staat in overeenstemming. Dit verbetert de idempotentieresistentie, herhaalbaarheid en auditeerbaarheid.
- Onveranderlijke (immutable) infrastructuur implementeert nieuwe instances of revisies in plaats van bestaande aan te passen, wat rollback vereenvoudigt en drift vermindert.
- Scheiding van verantwoordelijkheden: parameteriseer omgevingsspecifieke waarden terwijl gedeelde modules of templates worden hergebruikt.
Terraform op Google Cloud:
- Configuratie: HCL-bestanden definiëren resources, variabelen en outputs. Gebruik modules om VPC’s, serviceaccounts of GKE-clusters in te kapselen; publiceer gedeelde modules intern om patronen te standaardiseren.
- State: Houd de state extern en geversioneerd. Gebruik een Cloud Storage-backend met object versioning en bucket retention waar van toepassing.
- Voorbeeld backend-blok:
undefined
- Faalmodi: lokale state of niet-geversioneerde buckets brengen risico’s op dataverlies en gelijktijdige schrijfacties met zich mee. Dwing toegang met de minste privileges (least-privilege) af tot de state-bucket; geef de voorkeur aan kortlevende credentials en service account impersonation boven sleutels.
- Plans en applies:
terraform plangeeft een preview; beveilig ‘applies’ in CI/CD met menselijke goedkeuring voor productie. Gebruik-targetspaarzaam; frequent gebruik van ’targeting’ verhoogt het risico op drift. - Modules: versioneer modules semantisch; pin versies om ongeplande wijzigingen te voorkomen. Valideer met
terraform validateen beleidscontroles vóór de ‘apply’. - Imports en drift:
terraform importbrengt bestaande resources onder beheer; volg dit op met een zorgvuldige review van de state. Detecteer drift doorterraform planregelmatig uit te voeren. - Externe uitvoering: voer Terraform uit in Cloud Build- of Cloud Run-jobs met Workload Identity Federation om service account-sleutels te vermijden. Cache providers om de build-tijd te verkorten.
Deployment Manager:
- Hoewel veel teams standaardiseren op Terraform, kunt u Deployment Manager tegenkomen. Update een deployment zonder downtime door de config bij te werken:
undefined
Configuratiestandaarden:
- Naamgeving: pas consistente, parseerbare namen toe met omgeving, regio, doel en volgorde, bijv. vpc-prod-usw1-core.
- Labels: voeg labels zoals
env,cost_center,ownerenapptoe aan alle resources; dwing dit af via beleid of validatie. - Tags: gebruik netwerktags om het bereik van firewallregels te bepalen; vermijd het overbelasten van tags voor identiteit of eigendom (labels zijn hiervoor beter).
- Metadata: gebruik instance metadata voor opstartscripts en configuratie; geef de voorkeur aan metadata met checksum- of versievlaggen om herhaalde uitvoeringen te beheren. Plaats geen secrets in metadata; gebruik Secret Manager.
API’s, service-activering, quota’s en serviceaccounts:
- Schakel de benodigde services vroeg in het automatiseringsproces in:
undefined
- Valideer de quota-ruimte tijdens de planning; schaaltesten moeten quotacontroles omvatten om throttling te voorkomen.
- Gebruik toegewijde serviceaccounts per workload en omgeving; ken IAM-rollen met de minste privileges (least-privilege) toe op het kleinst mogelijke bereik. Geef de voorkeur aan groepslidmaatschap voor menselijke toegang en service account impersonation voor automatisering.
Delivery Pipelines en Promotie van Artefacten
Cloud Build:
- Definieer Cloud Build-stappen om artefacten te bouwen, testen en verpakken. Gebruik substituties voor dynamische waarden en gebruik Secret Manager voor credentials.
- Start builds op basis van wijzigingen in de broncode; isoleer build service accounts per repository of omgeving en ken alleen de benodigde permissies toe.
- Cache Docker-lagen en taalafhankelijkheden om build-tijden te verkorten. Houd de limieten voor gelijktijdige builds en de quota’s voor tijdelijke workers in de gaten.
Promotie van artefacten:
- Sla container-images of taalpakketten op in Artifact Registry. Promoot door:
- Het opnieuw taggen van onveranderlijke (immutable) digests voor een omgeving (bijv.
:qa,:prod) of - Het kopiëren van artefacten naar een omgevingsspecifieke repository.
- Het opnieuw taggen van onveranderlijke (immutable) digests voor een omgeving (bijv.
- Afwegingen: één enkele repository met tags vereenvoudigt de vindbaarheid, maar vereist strikt beheer; repositories per omgeving versterken de isolatie en de handhaving van beleid.
Cloud Deploy:
- Modelleer een delivery pipeline met geordende doelen (bijv. dev → qa → prod). Releases verwijzen naar een specifieke artefact-digest en een deployment-manifest.
- Voor GKE en Cloud Run gebruikt Cloud Deploy Skaffold-configuraties om manifesten te renderen en toe te passen. Configureer goedkeuringen, verificaties en poorten (gates).
- Rollout en rollback:
- Canary met incrementele verkeersverschuiving verkleint de ‘blast radius’.
- Blue/green maakt een snelle omschakeling en rollback mogelijk ten koste van extra capaciteit.
- Voer een rollback uit door te pinnen op de laatst bekende goede release; vermijd ‘in-place’ fixes die drift veroorzaken.
- Faalmodi: niet-overeenkomende cluster-permissies, ontbrekende API’s en schemafouten in het manifest. Detecteer dit vroegtijdig door manifesten te renderen tijdens de build en te valideren aan de hand van clusterbeleid.
Planning van veilige wijzigingen:
- Vereis een preview (plan of render), geautomatiseerde tests, beleidsvalidatie en menselijke goedkeuring voor productie.
- Voor Compute Engine managed instance groups, pas de update policy
maxSurge/maxUnavailableen de health check-instellingen aan om overprovisioning te voorkomen wanneer de applicatie traag opstart.
Command-Line-operaties en Omgevingsbeheer
Cloud Shell en gcloud-configuraties:
- Cloud Shell biedt een beheerde admin-omgeving met vooraf geauthenticeerde gcloud en een persistente home directory.
- Gebruik benoemde configuraties om snel te wisselen tussen accounts, projecten en regio’s: gcloud config configurations create prod gcloud config set project my-prod gcloud config set compute/region us-central1 gcloud config set compute/zone us-central1-a gcloud config configurations activate prod
- Inspecteer de actieve configuratie met gcloud config list. Voor GKE, verkrijg credentials: gcloud container clusters get-credentials my-cluster –region us-central1
Compute-commando patronen:
- Creëer een VM met een gereserveerd intern IP-adres: gcloud compute addresses create license-ip –region=us-central1 –subnet=default –addresses=10.0.3.21 gcloud compute instances create license-server –zone=us-central1-a –subnet=default –private-network-ip=10.0.3.21 –tags=license
- Creëer een custom VPC, subnet en firewall-regel: gcloud compute networks create core –subnet-mode=custom gcloud compute networks subnets create core-us –network=core –range=10.0.0.0/20 –region=us-central1 gcloud compute firewall-rules create allow-https –network=core –allow=tcp:443 –target-tags=web
IAM-patronen:
- Ken een rol toe op projectniveau: gcloud projects add-iam-policy-binding my-project –member=group:ops@example.com –role=roles/logging.viewer
- Kopieer custom rollen tussen projecten: gcloud iam roles copy myCustomRole –source=my-dev –destination=my-prod
Storage-patronen:
- Creëer een bucket en upload objecten: gcloud storage buckets create gs://backups-prod –location=us-central1 –class=coldline –uniform-bucket-level-access gcloud storage cp ./backup.tar.gz gs://backups-prod/
- Configureer de lifecycle via een bestand en pas toe met gcloud storage buckets update –lifecycle-file=policy.json
API-activering en -verificatie:
- Activeer Pub/Sub voor een app: gcloud services enable pubsub.googleapis.com
- Lijst van geactiveerde services: gcloud services list –enabled
Governance, Drift en Automatisering
Configuratiedrift en beleidshandhaving:
- Detecteer drift door
terraform planop gezette tijden uit te voeren; laat builds falen bij onverwachte wijzigingen. - Dwing beleidsbeperkingen van de organisatie af (bijv. externe IP’s beperken) en valideer resource-configuraties met policy-as-code vóór de
apply. - Gebruik voor Kubernetes Config Sync en Policy Controller om continu te reconciliëren en niet-conforme wijzigingen tegen te houden.
- Auditeerbaarheid: vertrouw op Admin Activity en Data Access logs; routeer naar BigQuery voor analyse. Gebruik Cloud Asset Inventory voor query’s van de status op een specifiek moment en in het verleden.
Quota’s en limieten:
- Inspecteer quota’s per regio en project; plan speelruimte voor autoscaling en rollouts:
undefined
- Vraag verhogingen aan voorafgaand aan geplande groei of grote rollouts.
Geautomatiseerde operationele taken:
- Cloud Scheduler triggert HTTP-eindpunten, Pub/Sub-topics of Workflows volgens een cron-schema. Zorg voor idempotente handlers; configureer retries en dead-letter topics.
- Workflows orkestreren automatisering in meerdere stappen over Google API’s met retries, parallelle stappen en compensatielogica.
- Cloud Run jobs voeren gecontaineriseerde batch- of administratieve taken uit op aanvraag of via Scheduler. Geef de voorkeur aan jobs voor eenmalige of iteratieve workloads; gebruik minimale permissies op de service account van de job.
Veiligheid en observeerbaarheid van rollouts:
- Integreer health checks en readiness probes in services. Verhoog voor MIGs met een trage opstarttijd de
initial delayom voortijdige schaalacties te voorkomen. - Verzamel deployment-metrics en error budgets; pauzeer of breek rollouts automatisch af wanneer SLO’s verslechteren.
Praktisch Probleemscenario
Altostrat Media moet implementaties in meerdere omgevingen voor een op GKE gebaseerde service standaardiseren, terwijl configuratiedrift wordt geëlimineerd en snelle rollbacks worden gegarandeerd. Ze moeten ook een vast intern IP-adres reserveren voor een legacy licentieserver zonder de applicatie opnieuw te configureren.
- Creëer fundamentele Terraform-modules en remote state
- Implementeer modules voor VPC, subnets, GKE, service accounts en firewallregels. Configureer een Cloud Storage-backend met versioning en een retentiebeleid voor de state bucket.
- Rationale: Modularisatie bevordert hergebruik en consistentie; remote, geversioneerde state maakt samenwerking, herstelbaarheid en locking mogelijk.
- Schakel vereiste services in en stel automation-identiteiten met minimale rechten in
- Schakel
compute.googleapis.com,container.googleapis.com,clouddeploy.googleapis.com,artifactregistry.googleapis.comin. - Creëer per omgeving service accounts voor Terraform, Cloud Build en Cloud Deploy; ken minimale rollen toe (bijv.
roles/container.adminaan deployers, niet aan builders). - Rationale: Vooraf inschakelen en het afbakenen van rollen verminderen deployment-fouten en beperken de blast radius.
- Provisioneer het netwerk en reserveer het legacy IP-adres
- Creëer met Terraform een custom VPC, regionale subnets en firewallregels op basis van netwerktags.
- Reserveer het interne IP-adres:
undefined
- Rationale: Declaratief netwerken zorgt voor herhaalbaarheid; het reserveren van het IP-adres behoudt de aannames van de applicatie.
- Bouw artefacten met Cloud Build en publiceer naar Artifact Registry
- Definieer
cloudbuild.yamlom tests uit te voeren, de container te bouwen, te scannen en een immutable digest te pushen naar Artifact Registry. - Rationale: Immutable, gescande artefacten vormen de basis voor veilige promoties en provenance.
- Configureer een Cloud Deploy-pipeline met dev → qa → prod targets
- Definieer een delivery pipeline en targets; verwijs naar de Skaffold-configuratie om manifesten te renderen. Vereis handmatige goedkeuring voor prod en configureer verificaties.
- Rationale: Gestructureerde promotie dwingt controles af; beleid per target voorkomt onbedoelde implementaties naar prod.
- Rol GKE-updates uit met een canary-strategie en health gates
- Gebruik een canary-rolloutbeleid om 10%, dan 50%, dan 100% van het verkeer te verschuiven, afhankelijk van controles op SLO’s en foutpercentages.
- Rationale: Progressieve delivery vermindert risico’s en biedt natuurlijke rollback-punten.
- Elimineer drift met geplande plans en beleidscontroles
- Een nachtelijke job voert
terraform planen een policy-as-code validator uit; waarschuwt bij onverwachte verschillen of overtredingen. - Rationale: Vroege detectie voorkomt dat drift zich ophoopt en toekomstige
apply-acties verstoort.
- Operationaliseer de licentieserver-VM met het gereserveerde IP-adres
- Creëer de VM gekoppeld aan het gereserveerde adres en de juiste tags:
undefined
- Rationale: Garandeert bereikbaarheid zonder de applicatie te wijzigen; tags houden firewallregels nauw afgebakend.
- Automatiseer terugkerende taken met Scheduler, Workflows en jobs
- Cloud Scheduler triggert een Workflow om service account keys te roteren waar dit onvermijdelijk is en om een Cloud Run job te starten voor wekelijkse database-vacuumtaken.
- Rationale: Gecentraliseerde planning plus orkestratie levert betrouwbaarheid en observeerbaarheid op met retries en compensatie.
- Plan rollbacks en valideer readiness-drempels
- Definieer rollback-draaiboeken om de laatste goede release opnieuw te promoten. Stem readiness probes af en verhoog, voor alle op MIG gebaseerde workloads, de initiële health check delays zodat deze overeenkomen met de opwarmtijd van de app.
- Rationale: Vooraf geplande rollbacks en afgestemde health checks voorkomen cascade-storingen en overprovisioning tijdens incidenten.
Deze aanpak combineert immutable artefacten, declaratieve infra, gecontroleerde promoties en automatisering met minimale rechten om veilige, auditeerbare en herhaalbare operaties op Google Cloud te leveren.
← Opslag · Alle domeinen · Monitoring →
Oefen deze vragen → · Getimede oefening op ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Slaag voor je examen →