Google Cloud Certified — Associate Cloud Engineer prüft die tägliche Arbeit: Projekte und
Abrechnung einrichten, Rechenleistung, Speicher und Netz bereitstellen, den Betrieb überwachen und
Zugriffe sauber vergeben. Erwartet wird, dass man den Weg in der Konsole und den passenden
gcloud-Befehl kennt.
online oder im Testzentrum
Einfach- und Mehrfachauswahl
Google veröffentlicht keine Grenze
danach Verlängerungsprüfung
Stand September 2026. Die Prüfung wird nicht auf Deutsch angeboten — abgelegt wird sie auf Englisch. Deshalb steht hier jede Frage in beiden Sprachen. Gebühr rund 125 USD zuzüglich Steuern. Google empfiehlt mindestens sechs Monate Praxis mit Google Cloud; Voraussetzungen gibt es keine.
Keine veröffentlichte Bestehensgrenze: Google nennt weder Punktzahl noch Prozentwert. Die Simulation hier rechnet mit 70 % als Richtwert, nicht als offizielle Angabe.
Bereiche 2 und 3 machen zusammen rund 60 % aus und behandeln dieselben Dienste einmal beim Anlegen und einmal im Betrieb. Wer eine Ressource anlegen kann, sollte deshalb immer gleich mitlernen, wie man sie später ändert, vergrößert, sichert und wieder abbaut.
create statt update,
--zone statt --region).Google Cloud ordnet alles in einem Baum an. Von oben nach unten: Organisation → Ordner → Projekt → Ressource. Diese Reihenfolge ist Prüfungsstoff und wird gern in vertauschter Form angeboten — ein Projekt steht nie über einem Ordner.
| Ebene | Was sie leistet |
|---|---|
| Organisation | Wurzel der Hierarchie, eine je Domain; zentrale Stelle für Zulassungsrichtlinien (IAM) und Organisationsrichtlinien |
| Ordner | bündelt Projekte nach Abteilung, Umgebung oder Kunde; Ordner lassen sich schachteln |
| Projekt | Grenze für Abrechnung, APIs, Kontingente und Ressourcennamen; jede Ressource gehört zu genau einem Projekt |
| Ressource | die einzelne VM, der Bucket, die Datenbank |
Vererbung läuft immer nach unten und ist additiv: Eine auf einem Ordner vergebene Rolle gilt in allen Projekten darunter — auch in solchen, die erst später in diesem Ordner entstehen. Eine Nachpflege je Projekt ist deshalb nicht nötig; Rechte lassen sich weiter unten auch nicht wieder wegnehmen.
Eine Organisationsressource entsteht nicht von Hand. Sie wird automatisch angelegt, sobald für die Domain Cloud Identity oder Google Workspace eingerichtet ist. Wer bisher nur Projekte unter privaten Google-Konten betreibt, braucht also zuerst eine verwaltete Domain; bestehende Projekte lassen sich danach in die Hierarchie migrieren.
Jedes Projekt trägt drei Bezeichner, die auseinandergehalten werden müssen:
| Bezeichner | Eigenschaft |
|---|---|
| Projektname | reine Anzeigebezeichnung, jederzeit änderbar, nicht eindeutig |
| Projekt-ID | weltweit eindeutig, wird in Befehlen und APIs verwendet, nach dem Anlegen unveränderlich |
| Projektnummer | von Google vergeben, numerisch, ebenfalls unveränderlich |
Ein Projekt wird mit gcloud projects delete nicht sofort entfernt, sondern geht in den Zustand „gelöscht“ über. Innerhalb von 30 Tagen holt gcloud projects undelete es mitsamt Ressourcen zurück; danach löscht Google Cloud endgültig. Projekt-ID und Projektnummer bleiben dauerhaft belegt und werden nie an ein anderes Projekt vergeben. Das verknüpfte Abrechnungskonto ist eine eigenständige Ressource und bleibt bestehen; IAM-Bindungen wandern nicht nach oben.
Verschieben in einen Ordner erledigt gcloud beta projects move PROJECT_ID --folder=FOLDER_ID. Dafür braucht es die Rolle Project Mover auf Quelle und Ziel. gcloud projects update ändert dagegen nur den Anzeigenamen.
Rollen der Hierarchie nach dem Prinzip der geringsten Rechte: Project Creator erlaubt genau das Anlegen neuer Projekte unterhalb der Ressource, auf der die Rolle vergeben wurde — für ein Team mit eigenem Sandbox-Ordner also die richtige Wahl. Folder Admin ginge deutlich weiter, da sie den Ordner selbst und dessen IAM-Richtlinie einschließt. Gebunden werden Rollen an Google-Gruppen, nicht an Einzelpersonen: Die Bindung fällt einmal je Projekt an, alles Weitere regelt die Gruppenmitgliedschaft. Dienstkonten mit verteilten Schlüsseldateien sind für Personen nie die Antwort.
In einem frischen Projekt ist fast nichts freigeschaltet. Bevor eine Ressource entsteht, muss die zugehörige API aktiv sein: gcloud services enable compute.googleapis.com. gcloud services list zeigt nur an, was verfügbar oder aktiv ist, und ändert nichts. Damit in einem leeren Projekt eine Compute Engine-Instanz entstehen kann, sind genau zwei Schritte Pflicht: Abrechnungskonto verknüpfen und API aktivieren. Budgets, Ordnerzuordnung und Organisationsrichtlinien sind organisatorisch sinnvoll, aber keine technische Voraussetzung.
Kontingente (Quotas) werden je Projekt, Dienst und Region geführt — etwa CPUs in europe‑west3. Ist ein Kontingent ausgeschöpft, hilft weder ein höheres Budget noch eine andere Organisationsrichtlinie: Die Erhöhung wird in der Konsole unter IAM und Verwaltung → Kontingente eingesehen und beantragt. Ein zusätzliches Projekt anzulegen, um das Kontingent zu umgehen, ist in Prüfungsfragen die falsche Antwort.
gcloud init führt auf einem neuen Rechner durch Anmeldung, Standardprojekt und Standardregion und legt dabei eine Konfiguration an. Benannte Konfigurationen halten mehrere Sätze aus Konto, Projekt und Region nebeneinander — für Beratung mit mehreren Kundenorganisationen der vorgesehene Weg. Umgeschaltet wird mit gcloud config configurations activate, nicht durch wiederholtes Ab- und Anmelden oder eine zweite CLI-Installation.
Soll ein einzelner Befehl gegen ein anderes Projekt laufen, ohne die aktive Konfiguration zu verändern, genügt das Flag --project=PROJECT_ID. gcloud config set project würde den Standardwert dauerhaft ändern.
Anmeldung: gcloud auth login meldet ein Nutzerkonto an und verlangt eine Bestätigung im Browser. Auf einem Build-Server ohne Browser wird stattdessen ein Dienstkonto nicht interaktiv aktiviert: gcloud auth activate-service-account --key-file=key.json.
Cloud Shell ist ein Terminal im Browser mit vorinstalliertem CLI und einem dauerhaften Home-Verzeichnis. Dateien dort überstehen das Beenden der Sitzung und Neustarts der zugrunde liegenden VM; nur was außerhalb des Home-Verzeichnisses liegt, geht verloren.
| Befehl | Wirkung |
|---|---|
gcloud init | geführte Ersteinrichtung: Anmeldung, Projekt, Region |
gcloud config list | aktuelle Werte anzeigen (ändert nichts) |
gcloud config set project ID | Standardprojekt dauerhaft setzen |
gcloud config configurations create/activate NAME | benannte Konfiguration anlegen bzw. aktivieren |
gcloud auth login | Nutzerkonto anmelden (Browser nötig) |
gcloud auth activate-service-account --key-file=… | Dienstkonto nicht interaktiv anmelden |
gcloud services enable API | API im aktiven Projekt freischalten |
gcloud projects create / update / delete / undelete | Projekt anlegen, umbenennen, löschen, zurückholen |
gcloud beta projects move ID --folder=… | Projekt in einen Ordner verschieben |
gcloud projects add-iam-policy-binding | Rolle auf einem Projekt vergeben |
gcloud billing projects link / unlink ID | Projekt mit Abrechnungskonto verknüpfen oder trennen |
gcloud resource-manager folders create | Ordner anlegen |
gcloud resource-manager org-policies set-policy | Organisationsrichtlinie setzen |
Zwei Begriffe werden regelmäßig verwechselt:
Trennen statt löschen: Soll ein Testprojekt keine Kosten mehr verursachen, seine Konfiguration und IAM-Richtlinie aber erhalten bleiben, löst gcloud billing projects unlink die Verknüpfung. Die Abrechnung ist damit deaktiviert und kostenpflichtige Dienste werden gestoppt, das Projekt selbst bleibt bestehen. Ein Budget wäre der falsche Hebel — es warnt nur.
| Rolle | Darf |
|---|---|
| Billing Account Administrator | alles am Abrechnungskonto: Rollen, Budgets, Export, Verknüpfungen |
| Billing Account User (auf dem Konto) | Projekte an dieses Abrechnungskonto hängen |
| Project Billing Manager (auf dem Projekt) | die Abrechnung dieses Projekts ändern, ohne Rechte an den Ressourcen |
| Billing Account Viewer | Kosten und Transaktionen nur lesen |
| Billing Account Costs Manager | Kosten lesen sowie Budgets und Warnungen anlegen und ändern |
Unterkonten (Abrechnungsunterkonten) trennen die Kosten je Endkunde, während die Rechnung weiterhin an den Wiederverkäufer geht. Sie sind die Antwort für Partner mit mehreren Endkunden — ein zusätzliches Zahlungsprofil je Kunde würde die Abrechnung dagegen vollständig trennen.
Budgets warnen, sie bremsen nicht. Ein Cloud Billing-Budget verschickt Benachrichtigungen an den gesetzten Schwellen (etwa 50, 90 und 100 %), sperrt aber keine Ressourcen und beendet keine Nutzung. Der Umfang lässt sich auf Projekte, Dienste und Labels einschränken. Eine harte Obergrenze, ab der Google Cloud selbst abschaltet, gibt es nicht.
Wer trotzdem automatisch reagieren will, leitet die Budgetmeldungen an ein Pub/Sub-Thema und wertet sie mit einer Cloud Run function als Abonnent aus — diese kann dann etwa VMs stoppen oder die Abrechnung trennen. Das ist der vorgesehene Weg zur programmatischen Reaktion.
| Frage | Werkzeug |
|---|---|
| Welcher Dienst war letzten Monat am teuersten? — schnell, ohne Einrichtung | Berichte im Cloud Billing-Bereich der Konsole, gruppiert nach Projekt, Dienst, Region oder Label |
| Eigene Abfragen über viele Monate, nach Projekt, Dienst und Label | Abrechnungsexport nach BigQuery aktivieren und mit SQL auswerten |
Der Export beginnt erst ab dem Zeitpunkt der Aktivierung und liefert keine Daten aus der Vergangenheit — für eine einmalige Rückschau ist deshalb der Konsolenbericht richtig, für dauerhafte Auswertung der Export.
Labels gegen Netzwerk-Tags — eine beliebte Verwechslung:
Organisationsrichtlinien (Organization Policies) begrenzen, was in der Hierarchie überhaupt konfiguriert werden darf. Sie werden auf Organisation, Ordner oder Projekt gesetzt, nach unten vererbt — auch an später angelegte Projekte — und wirken unabhängig von den IAM-Rollen der handelnden Personen. Sie ersetzen die IAM-Richtlinie nicht, sondern treten neben sie, und sie hängen nicht an Labels.
| Einschränkung | Zweck |
|---|---|
constraints/gcp.resourceLocations | zulässige Ressourcenstandorte begrenzen, etwa auf EU-Regionen — einmal auf Organisationsebene gesetzt, gilt für alles darunter |
constraints/iam.disableServiceAccountKeyCreation | das Anlegen neuer Dienstkontoschlüssel organisationsweit unterbinden |
Abzugrenzen davon: VPC Service Controls ziehen einen Perimeter gegen Datenabfluss, begrenzen aber keine Regionen. Eine logbasierte Messung in Cloud Logging meldet neue Schlüssel erst nachträglich und verhindert sie nicht. Eine benutzerdefinierte IAM-Rolle je Person wäre Verwaltungsaufwand ohne durchsetzbare Wirkung.
Stand September 2026: Der Dienst heißt Cloud Run functions (früher Cloud
Functions) — in Budget-Szenarien ist er der Abonnent des Pub/Sub-Themas. Beim Verschieben von
Projekten ist gcloud beta projects move weiterhin der geprüfte Befehl; das
beta im Pfad gehört zur richtigen Antwort.
Eine VM ist immer zonal. Die Zone bestimmt Ausfallgrenze und Latenz, die Region bestimmt Datenresidenz und Preis. Der Maschinentyp entscheidet über Leistungsprofil und Kosten:
| Familie | Wofür |
|---|---|
| E2 | kostenoptimiert, kleine und mittlere Dienste ohne besondere Ansprüche |
| N-Serie (N2, N4) | allgemeiner Zweck, ausgewogenes Verhältnis von vCPU zu Arbeitsspeicher |
| C-Serie (C3, C4) | rechenoptimiert, hohe Taktleistung je Kern |
| M-Serie | speicheroptimiert, sehr viel RAM je vCPU — für In-Memory-Datenbanken |
| A- und G-Serie | Beschleuniger, GPU-Arbeitslasten |
Passt keine vordefinierte Kombination, ist der benutzerdefinierte Maschinentyp (custom machine type) die Antwort: vCPU-Zahl und Speichermenge werden innerhalb der Grenzen einer Familie frei gewählt, bezahlt wird nur das Angeforderte. Den nächstgrößeren vordefinierten Typ zu nehmen ist in Prüfungsfragen die teure Falschantwort. Sole-Tenant-Knoten sind kein Sparmodell, sondern dienen der physischen Isolation aus Lizenz- oder Compliance-Gründen.
Die drei Preishebel unterscheiden sich in der Lastform, nicht im Dienst:
Eine Instanzvorlage (instance template) beschreibt Maschinentyp, Bootimage, Laufwerke, Netzwerk-Tags, Dienstkonto und Metadaten. Sie ist unveränderlich: Änderungen bedeuten eine neue Vorlage, nicht eine Bearbeitung. Aus der Vorlage entsteht die verwaltete Instanzgruppe (MIG) — die einzige Gruppenart mit Autoskalierung, automatischer Reparatur und rollierender Aktualisierung. Nicht verwaltete Gruppen sind bloße Sammlungen bestehender VMs und können nichts davon.
startup-script in der Vorlage
oder an der VM. Das Skript läuft bei jedem Start als Root — der Weg, Agenten zu installieren, ohne
sich per SSH anzumelden. Projektweit geht das über gcloud compute project-info add-metadata.Drei Abbilder, die gern verwechselt werden:
| Ressource | Enthält | Typischer Einsatz |
|---|---|---|
| Snapshot | ein Laufwerk, inkrementell gesichert | Sicherung und Wiederherstellung einzelner Laufwerke |
| Benutzerdefiniertes Image | ein Laufwerk, meist das Bootlaufwerk; global verfügbar | Standardvorlage für neue VMs und Instanzvorlagen |
| Maschinen-Image | alle Laufwerke plus Metadaten, Instanzkonfiguration und Berechtigungen | eine komplette VM klonen oder in ein anderes Projekt übernehmen |
Wiederkehrende Sicherungen erledigt ein Snapshot-Zeitplan — eine Ressourcenrichtlinie, die an ein persistentes Laufwerk gebunden wird, Snapshots nach Plan erzeugt und sie nach der eingestellten Aufbewahrungsdauer selbst löscht. Skripte auf den VMs sind hier nie die gesuchte Lösung. Bei den Laufwerken gilt: persistente Laufwerke (Balanced, SSD, Standard, Extreme) überleben Stopp und Löschung der VM und lassen sich im Betrieb vergrößern — aber nie verkleinern. Die lokale SSD sitzt physisch am Host, liefert die höchsten IOPS bei niedrigster Latenz und verliert ihren Inhalt beim Stoppen der VM: ausschließlich für temporäre Daten und Scratch-Bereiche.
GKE Autopilot gegen GKE Standard ist eine Frage der Verantwortung: Im Autopilot-Modus
verwaltet Google Knoten, Dimensionierung, Aktualisierung und Knotensicherheit, abgerechnet werden die
von den Pods angeforderten Ressourcen. Im Standard-Modus gehören Knotenpools dem Team. Ein
Knotenpool bündelt Knoten gleicher Konfiguration; der Maschinentyp eines bestehenden Pools lässt
sich nicht nachträglich ändern. Braucht eine Arbeitslast andere Knoten, wird ein zusätzlicher Pool
angelegt (gcloud container node-pools create) und die Pods per nodeSelector oder Taints
dorthin gelenkt — ohne Ausfallzeit, ohne Neuanlage des Clusters.
Cloud Run führt Container vollständig verwaltet aus, skaliert bei ausbleibenden Anfragen auf null Instanzen und verursacht dann keine Rechenkosten. Cloud Run functions sind dieselbe Plattform für einzelne Funktionen mit Auslösern — HTTP oder Ereignisse aus Cloud Storage, Pub/Sub und Eventarc. Eine Miniaturansicht beim Objekt-Upload ist der Musterfall; abfragende Schleifen auf VMs oder CronJobs sind die teure Falschantwort.
Stand September 2026: Der Dienst heißt Cloud Run functions, nicht mehr „Cloud Functions“; Container-Images liegen in der Artifact Registry, nicht mehr in der Container Registry.
Anforderung → Compute-Dienst:
| Anforderung | Dienst |
|---|---|
| volle Kontrolle über Betriebssystem, Kernelmodule, Altsoftware | Compute Engine |
| gleiche VMs, automatisch skaliert und repariert | verwaltete Instanzgruppe mit Instanzvorlage |
| Kubernetes, aber ohne Knotenpflege | GKE Autopilot |
| Kubernetes mit eigenen Knotentypen, GPUs, DaemonSets | GKE Standard mit Knotenpools |
| Container per HTTP, schubweise Last, Skalierung auf null | Cloud Run |
| wenige Zeilen Code auf ein Ereignis hin | Cloud Run functions |
| unterbrechbarer Batch zu minimalen Kosten | Spot-VMs, gern in einer MIG |
Der Standorttyp wird beim Anlegen festgelegt und bestimmt Residenz, Verfügbarkeit und Preis: Region (eine Region, günstigste Variante, erfüllt Residenzvorgaben), Dual-Region (zwei benannte Regionen mit Georedundanz) und Multi-Region (mehrere Regionen eines Kontinents, für weltweite Leser). Darf ein Bestand seine Region nicht verlassen, scheiden Dual- und Multi-Region aus.
| Speicherklasse | Zugriffsmuster | Mindesthaltedauer |
|---|---|---|
| Standard | häufig, „heiße“ Daten | keine |
| Nearline | etwa monatlich | 30 Tage |
| Coldline | etwa vierteljährlich | 90 Tage |
| Archive | seltener als jährlich, Langzeitarchiv | 365 Tage |
Alle vier Klassen liefern Objekte sofort aus — es gibt keine Wartezeit auf das Auftauen. Der Unterschied liegt in Speicherpreis gegen Abrufpreis und in der Gebühr bei vorzeitigem Löschen.
Cloud SQL ist verwaltetes MySQL, PostgreSQL und SQL Server. Drei Funktionen, drei verschiedene Probleme: die Hochverfügbarkeitskonfiguration hält eine Standby-Instanz in einer zweiten Zone und schaltet bei Zonenausfall automatisch um; ein Lesereplikat nimmt lesende Berichtsabfragen auf und entlastet die Primärinstanz, schützt aber nicht vor Ausfällen; Point-in-Time-Recovery setzt auf fortlaufende Transaktionslogs auf und stellt einen beliebigen Zeitpunkt innerhalb des Aufbewahrungszeitraums wieder her — vorher aktiviert, sonst bleibt nur der Stand der letzten Sicherung.
| Dienst | Erkennungsmerkmal in der Frage |
|---|---|
| Cloud SQL | klassische relationale Anwendung, eine Region, überschaubare Größe |
| Spanner | relationales SQL und starke Konsistenz über Regionen und horizontale Skalierung |
| Bigtable | NoSQL, sehr hoher Schreibdurchsatz, Zugriff über einen Zeilenschlüssel, Petabyte |
| Firestore | Dokumente, mobile und Web-Clients, Offline-Synchronisierung |
| BigQuery | analytische Abfragen über große Bestände, Data Warehouse — kein Ziel für Einzelschreibvorgänge |
| Filestore | verwaltetes NFS, das mehrere VMs gleichzeitig schreibend einbinden |
| Memorystore | verwalteter Cache mit Redis oder Memcached, Daten im Arbeitsspeicher |
Ein persistentes Laufwerk lässt sich nur an eine VM schreibend anhängen — sobald mehrere VMs gleichzeitig in dasselbe Dateisystem schreiben sollen, ist Filestore die Antwort, nicht ein weiteres Laufwerk und nicht ein Bucket.
Ein VPC-Netzwerk ist global, Subnetze sind regional und decken alle Zonen ihrer
Region ab — VMs in verschiedenen Zonen teilen sich also denselben Bereich. Im automatischen Modus
legt Google je Region ein Subnetz aus einem festen Bereich an; im benutzerdefinierten Modus
(custom mode) werden Netz und Bereiche selbst bestimmt, was bei Überschneidungsfreiheit zum lokalen
Rechenzentrum die einzig brauchbare Wahl ist. Ein Subnetzbereich lässt sich mit
gcloud compute networks subnets expand-ip-range im laufenden Betrieb vergrößern,
aber niemals verkleinern. Für VPC-native GKE-Cluster erhält das Subnetz zwei sekundäre Bereiche,
einen für Pods und einen für Services.
Firewallregeln sind zustandsbehaftet und werden nach Priorität (0 bis 65535, niedriger gewinnt) ausgewertet. Jedes Netzwerk trägt zwei implizite Regeln mit der niedrigsten Priorität: implied deny ingress und implied allow egress. Ohne eigene Regel kommt also nichts herein, aber alles hinaus. Ziele werden über Netzwerk-Tags oder Ziel-Dienstkonten gesetzt; das Dienstkonto ist die sicherere Wahl, weil seine Zuweisung an eine IAM-Berechtigung gebunden ist, während ein Tag jeder setzen kann, der VMs erstellen darf. Drei Bereiche muss man auswendig können:
| Bereich | Wofür eine Ingress-Allow-Regel nötig ist |
|---|---|
| 130.211.0.0/22 und 35.191.0.0/16 | Integritätsprüfungen und weitergeleiteter Verkehr der Google-Lastverteiler |
| 35.235.240.0/20 | IAP-TCP-Weiterleitung — SSH und RDP auf VMs ohne externe Adresse, ohne Bastion-Host |
| 199.36.153.8/30 | private.googleapis.com für Private Google Access über eigene Routen |
Regeln für viele Projekte auf einmal — auch für künftige — gehören in eine hierarchische Firewallrichtlinie an Organisation oder Ordner; sie wirkt vor den VPC-Regeln. Organisationsrichtlinien steuern dagegen Konfiguration, nicht Verkehr.
Adressen und Ausgang: Eine kurzlebige (ephemere) externe Adresse wird beim Stoppen der VM freigegeben — steht sie in einem DNS-Eintrag, ist der Dienst danach nicht mehr erreichbar. Gefragt ist dann eine reservierte statische Adresse. Cloud NAT verschafft VMs ohne externe Adresse ausgehenden Internetzugang, ohne eingehende Verbindungen zu öffnen. Private Google Access lässt dieselben VMs Google-APIs erreichen, ohne dass der Verkehr das Google-Netzwerk verlässt, und hat dabei Vorrang vor Cloud NAT. Beides wird oft zusammen gebraucht und schließt sich nicht aus. Cloud DNS verwaltet öffentliche Zonen für Namen im Internet und private Zonen, die an ein oder mehrere VPC-Netzwerke gebunden und nur aus diesen auflösbar sind.
| Anforderung | Lastverteiler |
|---|---|
| weltweit, eine Anycast-Adresse, HTTP(S), Weiterleitung nach URL-Pfad | globaler externer Application Load Balancer |
| HTTP(S) nur innerhalb einer Region, aus dem Internet erreichbar | regionaler externer Application Load Balancer |
| HTTP(S) zwischen Ebenen im selben VPC, interne Adresse, nicht im Internet | interner Application Load Balancer |
| TCP oder UDP auf Ebene 4, unveränderte Quell-IP der Clients | externer Passthrough Network Load Balancer |
| TCP/UDP intern, etwa Datenbank- oder Back-End-Ebene | interner Passthrough Network Load Balancer |
| TCP oder SSL terminieren, ohne HTTP-Logik | Proxy Network Load Balancer (extern oder intern) |
Merkmal des Passthrough-Typs: Er verteilt Pakete unverändert, kennt keine URL-Pfade und behält die Quelladresse. Proxy-basierte Verteiler terminieren die Verbindung, ersetzen die Quelladresse und unterstützen kein UDP. Cloud CDN wird am Back-End-Dienst eines externen Application Load Balancers eingeschaltet und speichert Inhalte an Google-Edge-Standorten zwischen — der Weg, Latenz und Back-End-Last bei häufig abgerufenen statischen Inhalten zugleich zu senken.
Stand September 2026: Die Lastverteiler tragen die Namen „Application Load Balancer“ und „Network Load Balancer“ mit den Zusätzen extern/intern und Passthrough/Proxy. Ältere Bezeichnungen wie „HTTP(S) Load Balancing“ oder „TCP/UDP Network Load Balancing“ meinen dieselben Dienste.
Hybride Anbindung: HA VPN baut IPsec-Tunnel über das Internet auf, ist in Tagen eingerichtet und tauscht Routen über Cloud Router per BGP aus — die Wahl bei geringem Volumen und kurzer Frist. Dedicated Interconnect braucht eine physische Kreuzverbindung an einem Colocation-Standort, Partner Interconnect läuft über einen Anbieter; beide bieten hohe Bandbreite ohne Internet, aber mit deutlich mehr Vorlauf.
Bereitstellungswerkzeuge: die Konsole zum Ausprobieren und Nachsehen, gcloud für
einzelne, wiederholbare Schritte und Skripte, Terraform für deklarative Infrastruktur als Code.
Im Team gehört die Terraform-Zustandsdatei in ein Remote-Backend in einem Cloud Storage Bucket — dort ist
sie für alle zugänglich und wird während eines Laufs gesperrt —, und vor jedem Apply zeigt
terraform plan, was entstehen, sich ändern oder verschwinden würde. Handgriffe in der
Konsole zwischendurch erzeugen Abweichungen (drift). Infrastructure Manager führt dieselben
Terraform-Konfigurationen als verwalteter Dienst aus, verwahrt den Zustand selbst und arbeitet unter
einem Dienstkonto. Cloud Marketplace liefert fertige Lösungen samt VMs, Netzwerk und Lizenz in
einem geführten Ablauf, wenn nichts Eigenes beschrieben werden soll.
Eine Compute Engine-Instanz kennt die Zustände RUNNING, TERMINATED und —
kurzzeitig — STOPPING. gcloud compute instances stop führt nach
TERMINATED, start wieder zurück, delete entfernt die Instanz
endgültig. Entscheidend für Kostenfragen: Im Zustand TERMINATED werden vCPU und
Arbeitsspeicher nicht mehr berechnet, angehängte Persistent Disks, reservierte statische
IP-Adressen und vorhandene Snapshots schon. Erst das Löschen der Instanz samt Laufwerken und
das Freigeben der reservierten Adresse beendet alle Kosten. Eine gestoppte Instanz behält ihre
Boot-Disk und ihre interne IP-Adresse; eine kurzlebige externe Adresse verliert sie.
Die zweithäufigste Frage dieses Bereichs lautet: Muss die Instanz dafür gestoppt werden? Die Trennlinie verläuft zwischen Eigenschaften der virtuellen Hardware und Identität einerseits und Metadaten und Anhängseln andererseits.
| Änderung | Stopp nötig? | Befehl |
|---|---|---|
| Maschinentyp wechseln (z. B. e2-standard-2 auf e2-standard-8) | ja | gcloud compute instances set-machine-type |
| Dienstkonto der Instanz austauschen | ja | gcloud compute instances set-service-account |
| Zugriffsbereiche (Scopes) ändern | ja | gcloud compute instances set-scopes |
| Netzwerkschnittstelle in ein anderes Subnetz legen | ja | Schnittstelle neu konfigurieren |
| Persistent Disk vergrößern | nein | gcloud compute disks resize, danach resize2fs |
| Weiteres Laufwerk anhängen | nein | gcloud compute instances attach-disk |
| Netzwerk-Tag setzen (wirkt auf Firewallregeln) | nein | gcloud compute instances add-tags |
| Label setzen (reine Verwaltungsmetadaten) | nein | gcloud compute instances add-labels |
| Startskript ändern | nein, wirkt beim nächsten Start | gcloud compute instances add-metadata --metadata startup-script=… |
Livemigration verschiebt eine laufende Instanz bei Wartungsarbeiten auf andere Hardware —
sie ändert nichts an der Größe und ist nie die Antwort auf „mehr CPU“. Startskripte liegen als
Instanz- oder Projektmetadaten unter dem Schlüssel startup-script und werden vom
Gast-Agent bei jedem Boot ausgeführt; /etc/rc.local verwaltet Compute Engine nicht.
gcloud compute disks resize DISK --size=…
vergrößert das Persistent Disk online, danach erweitert man das Dateisystem auf der laufenden
Instanz. Verkleinern ist nicht möglich.gcloud compute disks create --source-snapshot=…. Ein
Snapshot-Zeitplan (snapshot-schedules) automatisiert die Sicherung.gcloud compute images create --source-disk=…). Eine Instanzvorlage verweist darauf,
und neue VMs starten sofort einsatzbereit. Ein Startskript, das bei jedem Start alles neu
installiert, verlängert dagegen jede Startzeit. Images sind global, Instanzvorlagen global,
Instanzen zonal.Verbinden: gcloud compute ssh INSTANZ --zone=… erzeugt bei Bedarf ein
Schlüsselpaar und hinterlegt es. Zentral verwaltet wird der Zugang über OS Login: Das
Metadatenflag enable-oslogin=TRUE auf Projekt- oder Instanzebene verknüpft Linux-Konten
mit Google-Identitäten, der Zugriff wird dann über roles/compute.osLogin beziehungsweise
roles/compute.osAdminLogin vergeben. In Metadaten abgelegte SSH-Schlüssel umgehen IAM und
müssen von Hand gepflegt werden.
Für VMs ohne externe IP-Adresse übernimmt die IAP-TCP-Weiterleitung den Tunnel:
gcloud compute ssh INSTANZ --tunnel-through-iap. Zwei Voraussetzungen werden geprüft:
eine Ingress-Firewallregel, die TCP 22 aus 35.235.240.0/20 erlaubt, und die Rolle
roles/iap.tunnelResourceAccessor für die Nutzer. Cloud NAT ist kein Ersatz — es öffnet
nur den Weg nach außen, nicht hinein.
Verwaltete Instanzgruppen (MIG) sind das Werkzeug für gleichartige VMs. Vier Eingriffe sind prüfungsrelevant und werden gern verwechselt:
gcloud compute instance-groups managed resize --size=N setzt die
Zielgröße von Hand.set-autoscaling mit einer Richtlinie, etwa
--target-cpu-utilization oder Auslastung des Load Balancers, dazu
--min-num-replicas und --max-num-replicas. Nur das skaliert automatisch
hoch und nachts wieder herunter.rolling-action start-update --version=… tauscht die
Instanzvorlage schrittweise aus; mit --canary-version samt eigener
target-size erhält nur ein Teil der Instanzen die neue Vorlage, der Rest bleibt auf der
alten. Eine zweite Gruppe danebenzustellen wäre Blue/Green mit deutlich mehr Aufwand.gcloud container clusters get-credentials NAME --location=… schreibt
Endpunkt und Anmeldedaten in die kubeconfig und richtet das Auth-Plugin ein — das ist immer der erste
Schritt auf einer neuen Workstation, nie das Kopieren einer fremden kubeconfig. Mehr Knoten
liefert gcloud container clusters resize --node-pool=… oder das Cluster Autoscaling;
mehr Pods liefert kubectl scale. Bleiben Pods im Status Pending,
fehlt Kapazität — dann hilft nur der Knotenpool, nicht mehr Replikate.gcloud run services update-traffic --to-revisions REV=10 schickt zehn Prozent
auf die neue Revision, ein Zurückrollen ist jederzeit möglich. --no-traffic stellt nur
bereit, ohne Anfragen zuzulassen, und teilt nichts auf. Geheimnisse kommen mit
--set-secrets aus dem Secret Manager als Umgebungsvariable oder gemountete Datei; das
Dienstkonto braucht dafür roles/secretmanager.secretAccessor.
--set-env-vars würde den Wert im Klartext in der Revisionskonfiguration ablegen.docker push wird gcloud als Credential
Helper eingetragen: gcloud auth configure-docker europe-west3-docker.pkg.dev. Danach
gelten die eigenen Anmeldedaten und die IAM-Rollen des Repositorys — ein exportierter
Dienstkontoschlüssel in der Docker-Konfiguration wäre ein unnötiges Langzeit-Geheimnis.Stand September 2026: Container Registry ist abgelöst, Artifact Registry ist die Antwort auf alle Fragen nach einem Image-Repository. Ebenso heißt es Cloud Run functions statt Cloud Functions.
Cloud Storage wird mit dem aktuellen Befehlssatz gcloud storage bedient —
ls, cp, rsync, sign-url. Er löst
gsutil ab und überträgt parallel; in Prüfungsfragen ist ein Skript, das auf
gsutil umgestellt werden soll, immer auf gcloud storage umzustellen. Für
wiederkehrende Übertragungen aus anderen Clouds, von HTTP-Quellen oder zwischen Buckets gibt es den
Storage Transfer Service mit Zeitplan; für große Mengen ohne Leitung das Transfer Appliance.
SetStorageClass und
Delete und lassen sich kombinieren — etwa nach 30 Tagen nach Coldline, nach 365 Tagen
löschen. Die Mindestspeicherdauern entscheiden die Frage: Standard keine, Nearline 30 Tage,
Coldline 90 Tage, Archive 365 Tage. Wer nach 90 Tagen löschen will, darf nicht nach Archive
verschieben.daysSinceNoncurrentTime)
dazu. Eine Aufbewahrungsrichtlinie verhindert nur das Löschen und stellt nichts wieder her.gcloud storage sign-url --duration=24h, ausgestellt mit einem
berechtigten Dienstkonto. Die Rolle roles/storage.objectViewer für
allUsers macht das Objekt dagegen dauerhaft öffentlich.Cloud SQL: Automatische Sicherungen und Point-in-Time-Recovery werden je Instanz
eingeschaltet; gcloud sql backups restore spielt eine Sicherung zurück. Ein
Hochverfügbarkeits-Failover wirkt nur innerhalb derselben Region. Fällt die ganze Region
aus, wird ein regionsübergreifendes Lesereplikat hochgestuft:
gcloud sql instances promote-replica macht es zur eigenständigen, beschreibbaren Instanz
— die Replikation endet damit endgültig.
BigQuery: Abfragekosten richten sich nach der gelesenen Datenmenge.
Partitionierung nach einem Datums- oder Zeitstempelfeld beschränkt den Scan auf die betroffenen
Tage, Clustering ordnet innerhalb der Partitionen nach häufig gefilterten Spalten, und
maximum_bytes_billed bricht eine Abfrage ab, bevor mehr als erlaubt berechnet wird.
SELECT * liest alle Spalten und ist das Gegenteil davon. Zugriff wird auf
Datensatzebene vergeben: roles/bigquery.dataViewer auf dem Dataset plus
roles/bigquery.jobUser im Abfrageprojekt — dieselbe Rolle auf Projektebene würde alle
Datensätze öffnen. Speicherklassen wie Coldline gibt es nur in Cloud Storage, nie in BigQuery.
gcloud compute networks subnets expand-ip-range vergrößert
den primären Bereich im laufenden Betrieb, solange der neue Präfix den alten enthält; laufende
Instanzen behalten ihre Adressen. Löschen und neu anlegen geht nicht, solange Instanzen im Subnetz
sind. Verkleinern ist ausgeschlossen.gcloud compute addresses create --addresses=…),
wodurch genau diese Adresse erhalten bleibt. Eine neue Adresse zu reservieren würde die beim Partner
freigegebene Adresse wechseln.0.0.0.0/0 mit einer Appliance-Instanz als Next Hop und einem Instanz-Tag betrifft nur die
getaggten VMs; alle anderen behalten die Standardroute. Firewallregeln erlauben und verwerfen, sie
leiten nicht um.gcloud compute backend-services add-backend)
— ein zweiter Load Balancer mit DNS-Verteilung verlöre das globale Anycast-Verhalten. Melden alle
Back-Ends „unhealthy“, obwohl die Anwendung lokal antwortet, fehlt fast immer die Ingress-Regel für
die Prüfbereiche 35.191.0.0/16 und 130.211.0.0/22. Externe Adressen auf den Instanzen
sind dafür nicht nötig.gcloud dns record-sets update oder eine Transaktion aus
Entfernen und Hinzufügen. Ein zweiter A-Eintrag für denselben Namen führt zu wechselnden Antworten.Cloud Monitoring sammelt Messwerte, zeigt sie in Dashboards und alarmiert über Benachrichtigungsrichtlinien, die auf einen Benachrichtigungskanal zeigen — E-Mail, SMS, Pub/Sub oder ein Webhook. Eine Uptime-Prüfung testet einen öffentlichen Endpunkt aus mehreren Regionen; erst die Richtlinie darauf verschickt die Meldung. Eine Integritätsprüfung des Load Balancers nimmt dagegen nur Back-Ends aus der Rotation und benachrichtigt niemanden.
Compute Engine liefert ohne Agent CPU-Auslastung, Netzwerkbytes und Laufwerks-E/A auf Hypervisor-Ebene. Arbeitsspeicherauslastung und Dateisystembelegung sind nur im Gastsystem sichtbar und kommen erst mit dem Ops Agent — dem einen Agent, der Messwerte und Protokolle sendet und die früheren getrennten Agents ablöst.
Cloud Logging: Der Log-Explorer filtert die Einträge, Protokollbuckets haben eine einstellbare Aufbewahrungsdauer, und Senken leiten Einträge weiter — nach Cloud Storage für die günstige Langzeitablage, nach BigQuery für SQL-Auswertung über Monate und die Verknüpfung mit Geschäftsdaten, nach Pub/Sub für die Weitergabe an ein anderes System in nahezu Echtzeit. Ein Ausschlussfilter an einer Senke verwirft passende Einträge vor der Aufnahme und senkt damit die Aufnahmegebühr, ohne die weiterhin benötigten Einträge zu verlieren; die Protokollierung ganz abzuschalten wäre zu grob. Ein logbasierter Messwert zählt Einträge, die einem Filter entsprechen, und macht sie als Grundlage einer Alarmrichtlinie in Cloud Monitoring messbar — das Gegenteil eines Ausschlussfilters.
Cloud Audit Logs: Protokolle zur Administratoraktivität und zu Systemereignissen laufen immer und lassen sich nicht abschalten. Datenzugriffsprotokolle (ADMIN_READ, DATA_READ, DATA_WRITE) sind mit Ausnahme von BigQuery standardmäßig aus und werden in der IAM-Konfiguration je Dienst und Typ eingeschaltet. Dazu kommen Protokolle zu abgelehnten Richtlinien (Policy Denied).
| Symptom | Werkzeug |
|---|---|
| Verbindung kommt nicht an, Ursache unklar | Connectivity Test (statische Pfadanalyse) |
| Welche Adressen und Ports reden miteinander? | VPC-Flow-Logs je Subnetz |
| Greift diese eine Firewallregel überhaupt? | Firewallregel-Protokollierung |
| Wer hat wann welche Ressource geändert? | Cloud Audit Logs, Administratoraktivität |
| Gleiche Ausnahmen gruppiert und gezählt sehen | Error Reporting |
| Welcher nachgelagerte Aufruf kostet die Zeit? | Cloud Trace (verteilte Traces, Spans) |
| Welche Funktion verbraucht CPU oder Speicher? | Cloud Profiler |
| Ist die öffentliche Seite erreichbar? | Uptime-Prüfung plus Benachrichtigungsrichtlinie |
| Textmuster im Protokoll soll alarmieren | logbasierter Messwert plus Alarmrichtlinie |
| Arbeitsspeicher oder Plattenplatz der VM fehlt | Ops Agent installieren |
| Baustein | Was er ist |
|---|---|
| Hauptkonto (principal) | die Identität, die etwas tun will — Nutzerkonto, Gruppe, Dienstkonto, Domäne oder föderierte Identität |
| Rolle | ein fertiges Bündel von Berechtigungen im Format dienst.ressource.verb, etwa compute.instances.start. Berechtigungen werden nie einzeln vergeben, immer über eine Rolle. |
| Bindung (binding) | ein Hauptkonto + eine Rolle, optional mit Bedingung |
| Zulassungsrichtlinie (allow policy) | die Liste aller Bindungen, die an einer Ressource hängt — an Organisation, Ordner, Projekt oder direkt an Bucket, Thema, Dienstkonto |
Die Arten von Hauptkonten: Google-Konto einer Person (user:), Google-Gruppe
(group:), Dienstkonto (serviceAccount:), eine ganze Workspace- oder
Cloud-Identity-Domäne (domain:) sowie föderierte Identitäten aus Workforce- und
Workload-Identitätspools. Dazu zwei Sonderfälle, die in Prüfungsfragen fast immer die gesuchte
Schwachstelle sind: allUsers meint jede Anfrage aus dem Internet, auch völlig ohne
Anmeldung — und allAuthenticatedUsers jedes angemeldete Google-Konto, also auch jedes
fremde Privatkonto. Beide machen Objekte für Personen außerhalb der Organisation zugänglich;
allAuthenticatedUsers bedeutet nicht „nur meine Organisation“.
Vererbung ist additiv. Eine Rolle, die auf Organisation, Ordner oder Projekt gebunden ist, wirkt auf alles darunter. Eine Richtlinie weiter unten kann nur hinzufügen — eine geerbte Rolle entfernt sie niemals. Wer Rechte wegnehmen will, löst die Bindung dort, wo sie gesetzt wurde, oder setzt eine Verweigerungsrichtlinie.
Verweigerungsrichtlinien (deny policies) hängen an Organisation, Ordner oder Projekt und benennen Hauptkonten und einzelne Berechtigungen. Sie werden vor den Zulassungsrichtlinien ausgewertet und haben Vorrang: Die genannte Berechtigung greift nicht, egal welche Rollen das Hauptkonto geerbt hat — der Weg, eine Berechtigung organisationsweit zu blockieren, ohne bestehende Rollenbindungen anzufassen.
Bedingungen (IAM Conditions) hängen an einer einzelnen Bindung und machen sie nur unter Umständen wirksam:
request.time < timestamp("2026-12-31T00:00:00Z") — befristeter Zugriff, etwa für
externe Prüfer. Die Bindung läuft von selbst aus, ohne Kalendereintrag und ohne Nacharbeit.resource.name.startsWith("projects/_/buckets/logs-") — die Rolle wirkt nur auf
Ressourcen mit passendem Namen, obwohl sie auf dem Projekt gebunden ist. Für Cloud Storage
funktioniert das nur, wenn am Bucket der einheitliche Zugriff auf Bucket-Ebene (uniform
bucket-level access) eingeschaltet ist.resource.type oder die Zugriffsebene des Aufrufers.Rechte gehören an Google-Gruppen, nicht an einzelne Personen: Die Bindung bleibt stehen, Ein- und Austritte ändern nur noch die Gruppenmitgliedschaft. Einzelbindungen müssten sonst bei jedem Wechsel in jeder Richtlinie nachgezogen werden. Drei Werkzeuge beantworten die typischen Fragen:
| Werkzeug | Frage, die es beantwortet |
|---|---|
| Policy Troubleshooter | Warum darf dieses eine Hauptkonto diese eine Berechtigung auf dieser einen Ressource (nicht)? Wertet Zulassungs- und Verweigerungsrichtlinien aus und nennt die ausschlaggebende Bindung. |
| Policy Analyzer (Cloud Asset Inventory) | Wer hat organisationsweit eine bestimmte Berechtigung, und auf welchen Ressourcen? Der Weg für Audits — der Troubleshooter prüft immer nur eine Kombination. |
| IAM Recommender | Welche Rolle passt zur tatsächlichen Nutzung? Wertet die Aufrufe der letzten Wochen aus und schlägt eine engere Rolle als Ersatz für Editor oder Owner vor. |
Aufgabe → passende Rolle:
| Aufgabe | Rolle (auf der engsten Ebene) |
|---|---|
| Objekte in genau einem Bucket lesen und schreiben | Storage Object Admin auf dem Bucket |
| Objekte nur lesen | Storage Object Viewer auf dem Bucket |
| Rollen vergeben, aber keine Ressourcen anlegen | Project IAM Admin auf dem Projekt |
| Nachrichten in ein Thema schreiben | Pub/Sub Publisher auf dem Thema |
| Nachrichten aus einem Abo lesen | Pub/Sub Subscriber auf dem Abo |
| Ein Geheimnis zur Laufzeit lesen | Secret Manager Secret Accessor auf dem Secret |
| Unter der Identität eines Dienstkontos handeln | Service Account Token Creator auf dem Dienstkonto |
| Ein Dienstkonto an eine VM anhängen oder mit einem Dienst ausrollen | Service Account User auf dem Dienstkonto |
| Eine per IAP geschützte Anwendung öffnen | IAP-secured Web App User |
| Per SSH auf VMs zugreifen | Compute OS Login, für Root-Rechte OS Admin Login |
| Data-Access-Logs lesen | Private Logs Viewer |
Der entscheidende Unterschied: add-iam-policy-binding und
remove-iam-policy-binding ändern genau eine Bindung und lassen alle anderen
unberührt. set-iam-policy ersetzt die gesamte Richtlinie durch den Dateiinhalt —
was dort fehlt, ist danach weg; sinnvoll nur beim geplanten Zurückspielen einer vollständigen
Richtlinie, nie für eine einzelne Änderung.
| Befehl | Wirkung |
|---|---|
gcloud projects add-iam-policy-binding PROJEKT --member=… --role=… | eine Bindung hinzufügen |
gcloud projects remove-iam-policy-binding PROJEKT --member=… --role=… | genau diese Bindung entziehen |
gcloud projects get-iam-policy PROJEKT | die Richtlinie nur anzeigen oder exportieren |
gcloud projects set-iam-policy PROJEKT datei.json | die gesamte Richtlinie überschreiben |
gcloud storage buckets add-iam-policy-binding gs://BUCKET … | Bindung direkt auf der Ressource statt auf dem Projekt |
gcloud iam roles create … --permissions=… --stage=ALPHA | benutzerdefinierte Rolle in Projekt oder Organisation anlegen |
gcloud iam service-accounts create NAME | Dienstkonto anlegen |
gcloud compute instances set-service-account INSTANZ --service-account=… | Dienstkonto tauschen — nur im Zustand TERMINATED |
gcloud … --impersonate-service-account=… | einen einzelnen Aufruf mit den Rechten eines Dienstkontos ausführen |
Dieselben Unterbefehle gibt es auf jeder Ebene — gcloud organizations,
gcloud resource-manager folders, gcloud projects — und je Dienst auf der
Ressource selbst.
Ein Dienstkonto ist gleichzeitig Identität (es bekommt Rollen) und Ressource (auf ihm selbst liegt eine Richtlinie, die regelt, wer es benutzen darf). Es ist projektübergreifend verwendbar: Damit ein Dienstkonto aus Projekt A einen Bucket in Projekt B liest, wird es schlicht als Hauptkonto in der Richtlinie dieses Buckets gebunden — ein gleichnamiges Konto in Projekt B wäre eine andere Identität mit eigener E-Mail-Adresse.
cloud-platform setzen und allein über enge IAM-Rollen steuern.gcloud auth application-default login an diese Stelle.enable-oslogin=TRUE auf
Projekt oder Instanz; Vorteil ist der zentrale Entzug beim Austritt. Hängt an der Instanz ein
Dienstkonto, braucht der Anmeldende zusätzlich Service Account User.iam.disableServiceAccountKeyCreation verbietet neue Schlüssel organisationsweit,
iam.allowedPolicyMemberDomains verhindert Bindungen an Konten fremder Domänen, und
storage.publicAccessPrevention schließt öffentliche Buckets aus. Sie vergeben
selbst keinen Zugriff — sie schränken ein.Stand September 2026: Die frühere „IAM-Richtlinie“ heißt jetzt Zulassungsrichtlinie, weil ihr die Verweigerungsrichtlinie gegenübersteht; „Mitglied“ (member) heißt Hauptkonto (principal). Das GKE-Verfahren heißt heute Workload Identity Federation for GKE (früher schlicht Workload Identity). In neu angelegten Organisationen erhalten Standard-Dienstkonten die Rolle Editor nicht mehr automatisch.
| Ebene | Ressourcen |
|---|---|
| Global | VPC-Netzwerk, Firewallregeln, Routen, Images, Snapshots, Instanzvorlagen, globaler externer Application Load Balancer, Cloud DNS |
| Regional | Subnetz, statische regionale Adresse, regionale verwaltete Instanzgruppe, interner Load Balancer, Cloud NAT und Cloud Router, regionale persistente Laufwerke |
| Zonal | VM-Instanz, zonale persistente Laufwerke, lokale SSD, zonale Instanzgruppe, GKE-Knoten |
| Paar | Unterschied in einem Satz |
|---|---|
| Projekt-ID · Projektname · Projektnummer | Unveränderlich und weltweit eindeutig · frei änderbar · von Google vergeben, ebenfalls unveränderlich. |
| Label · Netzwerk-Tag | Kostenzuordnung und Ordnung in Berichten · Ziel von Firewallregeln und Routen. |
| Budget · Kontingent | Warnt bei Kosten, schaltet nichts ab · begrenzt tatsächlich, was angelegt werden kann. |
| Shared VPC · VPC-Peering | Ein Netz, das mehrere Projekte derselben Organisation mitbenutzen · zwei eigenständige Netze verbunden, nicht transitiv. |
| Cloud NAT · Private Google Access | Ausgehend ins Internet ohne externe Adresse · zu Google-APIs, ohne das Google-Netz zu verlassen. |
| Snapshot · Image · Maschinen-Image | Ein Laufwerk sichern · Vorlage für Bootlaufwerke · ganze VM mit allen Laufwerken und Einstellungen. |
| Persistentes Laufwerk · lokale SSD | Überlebt Stopp und Umzug · sehr schnell, aber beim Stopp der Instanz weg. |
| Hochverfügbarkeit · Lesereplikat (Cloud SQL) | Automatischer Failover auf ein Standby, dieselbe Adresse · zusätzliche Lesekapazität, muss zum Weiterbetrieb hochgestuft werden. |
| Autopilot · Standard (GKE) | Knoten verwaltet Google · Maschinentypen und Knotenpools selbst in der Hand. |
| Einfache · vordefinierte · benutzerdefinierte Rolle | Owner/Editor/Viewer, viel zu weit · fertige Rolle je Dienst, der Regelfall · selbst zusammengestellt, nur wenn keine passt. |
| Zulassungs- · Verweigerungsrichtlinie | Rechte addieren sich entlang der Hierarchie · eine Verweigerung schlägt jede Zulassung. |
| Zugriffsbereich · IAM-Rolle | Altes Instanzmerkmal, wirkt nur begrenzend · die eigentliche Berechtigung; es gilt die Schnittmenge. |
| Dienstkontoschlüssel · Identitätsübernahme | Datei, die kopiert und vergessen wird · kurzlebiges Token, an eine geprüfte Identität gebunden. |
| Application Load Balancer · Passthrough Network Load Balancer | Versteht HTTP(S), kennt Pfade und Hostnamen · reicht TCP/UDP unverändert durch, erhält die Quell-IP. |
| Cloud Trace · Cloud Profiler · Error Reporting | Wo in der Aufrufkette geht Zeit verloren · welcher Code verbraucht CPU und Speicher · welche Abstürze häufen sich. |
| VPC-Flow-Logs · Firewallregel-Protokollierung | Welche Verbindungen fließen · welche Regel hat zugeschlagen. |
| HTTP 403 · HTTP 429 | Berechtigung fehlt · Kontingent überschritten. |
| Änderung an einer VM | Instanz muss beendet sein |
|---|---|
| Maschinentyp ändern | ja |
| Dienstkonto oder Zugriffsbereiche ändern | ja |
| Bootlaufwerk oder Datenlaufwerk vergrößern | nein |
| Weiteres Laufwerk anhängen | nein |
| Netzwerk-Tags oder Labels setzen | nein |
| Externe Adresse von kurzlebig auf statisch hochstufen | nein |
35.191.0.0/16 und
130.211.0.0/22 — beide müssen die Firewall passieren dürfen, sonst gilt jedes Back-End
als ungesund.35.235.240.0/20. Damit gibt es SSH ohne
externe Adresse und ohne Bastionshost.gcloud projects undelete; die Projekt-ID bleibt danach für immer verbraucht.| Aufgabe | Befehl |
|---|---|
| Projekt für die Sitzung setzen | gcloud config set project PROJEKT |
| API freischalten | gcloud services enable DIENST.googleapis.com |
| Rolle vergeben | gcloud projects add-iam-policy-binding … --member --role |
| kubectl auf einen Cluster richten | gcloud container clusters get-credentials NAME |
| Subnetzbereich erweitern | gcloud compute networks subnets expand-ip-range NAME |
| Objekte abgleichen | gcloud storage rsync QUELLE ZIEL |
| Verkehr auf Cloud-Run-Revisionen aufteilen | gcloud run services update-traffic DIENST |