Dezember 21, 2025
12 Min. Lesezeit

Junior Cloud Engineer GCP: Interviewfragen – Der komplette Leitfaden

interview
career-advice
job-search
entry-level
Junior Cloud Engineer GCP: Interviewfragen – Der komplette Leitfaden
MB

Milad Bonakdar

Autor

Meistern Sie die wichtigsten GCP-Grundlagen mit umfassenden Interviewfragen zu Compute Engine, Cloud Storage, VPC, IAM und den wichtigsten Google Cloud-Konzepten für Junior Cloud Engineer-Positionen.


Einführung

Die Google Cloud Platform (GCP) ist eine umfassende Suite von Cloud-Computing-Diensten, die Rechen-, Speicher-, Netzwerk-, Big-Data- und Machine-Learning-Funktionen bietet. Als Junior Cloud Engineer benötigst du grundlegende Kenntnisse der wichtigsten GCP-Dienste, um Cloud-Infrastrukturen aufzubauen und zu verwalten.

Dieser Leitfaden behandelt wichtige Fragen für Vorstellungsgespräche für Junior GCP Cloud Engineers und konzentriert sich auf Compute Engine, Cloud Storage, VPC und IAM.


GCP Compute Engine

1. Was ist Google Compute Engine und was sind seine Hauptanwendungsfälle?

Antwort: Compute Engine bietet skalierbare virtuelle Maschinen, die in den Rechenzentren von Google ausgeführt werden.

Hauptmerkmale:

  • Benutzerdefinierte oder vordefinierte Maschinentypen
  • Persistente Festplatten und lokale SSDs
  • Preemptible VMs zur Kosteneinsparung
  • Live-Migration für Wartung
  • Globaler Lastausgleich

Anwendungsfälle:

  • Webhosting
  • Anwendungsserver
  • Batch-Verarbeitung
  • High-Performance Computing
# VM-Instanz erstellen
gcloud compute instances create my-instance \
  --zone=us-central1-a \
  --machine-type=e2-medium \
  --image-family=debian-11 \
  --image-project=debian-cloud

# Instanzen auflisten
gcloud compute instances list

# SSH-Verbindung zur Instanz herstellen
gcloud compute ssh my-instance --zone=us-central1-a

# Instanz stoppen
gcloud compute instances stop my-instance --zone=us-central1-a

Seltenheit: Sehr häufig Schwierigkeitsgrad: Leicht


2. Erläutere den Unterschied zwischen Persistent Disks und Local SSDs.

Antwort:

MerkmalPersistente FestplatteLokale SSD
HaltbarkeitDaten bleiben unabhängig erhaltenDaten gehen beim Stoppen der VM verloren
LeistungGutAusgezeichnet (geringe Latenz)
GrößeBis zu 64 TBBis zu 9 TB
AnwendungsfallBoot-Festplatten, DatenspeicherTemporärer Cache, Scratch-Space
KostenNiedrigerHöher
SnapshotsUnterstütztNicht unterstützt

Beispiel:

# VM mit persistenter Festplatte erstellen
gcloud compute instances create my-vm \
  --boot-disk-size=50GB \
  --boot-disk-type=pd-ssd

# VM mit lokaler SSD erstellen
gcloud compute instances create my-vm \
  --local-ssd interface=NVME

Seltenheit: Häufig Schwierigkeitsgrad: Leicht-Mittel


GCP Cloud Storage

3. Welche verschiedenen Speicherklassen gibt es in Cloud Storage?

Antwort: Cloud Storage bietet mehrere Klassen für verschiedene Zugriffsmuster:

KlasseAnwendungsfallVerfügbarkeitMindestdauerKosten
StandardHäufiger Zugriff99,95%KeineHöchste
Nearline< 1x/Monat99,9%30 TageNiedriger
Coldline< 1x/Quartal99,9%90 TageSehr niedrig
Archive< 1x/Jahr99,9%365 TageNiedrigste
# Bucket erstellen
gsutil mb -c STANDARD -l us-central1 gs://my-bucket

# Datei hochladen
gsutil cp myfile.txt gs://my-bucket/

# Objekte auflisten
gsutil ls gs://my-bucket/

# Datei herunterladen
gsutil cp gs://my-bucket/myfile.txt ./

# Speicherklasse ändern
gsutil rewrite -s NEARLINE gs://my-bucket/myfile.txt

Seltenheit: Sehr häufig Schwierigkeitsgrad: Leicht-Mittel


GCP VPC (Virtual Private Cloud)

4. Was ist eine VPC und was sind ihre Hauptkomponenten?

Antwort: VPC ist ein virtuelles Netzwerk, das Konnektivität für GCP-Ressourcen bietet.

Hauptkomponenten:

Loading diagram...

Komponenten:

  1. Subnetze: Regionale IP-Bereiche
  2. Firewall-Regeln: Steuern den Datenverkehr
  3. Routen: Definieren Datenverkehrspfade
  4. VPC-Peering: Verbinden VPCs
  5. Cloud VPN: Verbinden mit On-Premises
# VPC erstellen
gcloud compute networks create my-vpc \
  --subnet-mode=custom

# Subnetz erstellen
gcloud compute networks subnets create my-subnet \
  --network=my-vpc \
  --region=us-central1 \
  --range=10.0.1.0/24

# Firewall-Regel erstellen (SSH zulassen)
gcloud compute firewall-rules create allow-ssh \
  --network=my-vpc \
  --allow=tcp:22 \
  --source-ranges=0.0.0.0/0

Seltenheit: Sehr häufig Schwierigkeitsgrad: Mittel


5. Wie funktionieren Firewall-Regeln in GCP?

Antwort: Firewall-Regeln steuern den ein- und ausgehenden Datenverkehr.

Eigenschaften:

  • Stateful (Rückverkehr automatisch erlaubt)
  • Angewendet auf Netzwerk oder spezifische Instanzen
  • Prioritätsbasiert (0-65535, niedriger = höhere Priorität)
  • Standard: Ausgehender Datenverkehr zulassen, eingehender Datenverkehr verweigern

Regelkomponenten:

  • Richtung (eingehend/ausgehend)
  • Priorität
  • Aktion (zulassen/verweigern)
  • Quelle/Ziel
  • Protokolle und Ports
# HTTP-Datenverkehr zulassen
gcloud compute firewall-rules create allow-http \
  --network=my-vpc \
  --allow=tcp:80 \
  --source-ranges=0.0.0.0/0 \
  --target-tags=web-server

# Interne Kommunikation zulassen
gcloud compute firewall-rules create allow-internal \
  --network=my-vpc \
  --allow=tcp:0-65535,udp:0-65535,icmp \
  --source-ranges=10.0.0.0/8

# Spezifischen Datenverkehr verweigern
gcloud compute firewall-rules create deny-telnet \
  --network=my-vpc \
  --action=DENY \
  --rules=tcp:23 \
  --priority=1000

Seltenheit: Sehr häufig Schwierigkeitsgrad: Mittel


GCP IAM

6. Erläutere IAM-Rollen und -Berechtigungen in GCP.

Antwort: IAM steuert, wer was mit welchen Ressourcen tun kann.

Schlüsselkonzepte:

  • Mitglied: Benutzer, Dienstkonto oder Gruppe
  • Rolle: Sammlung von Berechtigungen
  • Richtlinie: Bindet Mitglieder an Rollen

Rollentypen:

  1. Primitiv: Inhaber, Bearbeiter, Betrachter (breit gefächert)
  2. Vordefiniert: Dienstspezifisch (z. B. Compute Admin)
  3. Benutzerdefiniert: Benutzerdefinierte Berechtigungen
# Rolle an Benutzer vergeben
gcloud projects add-iam-policy-binding my-project \
  --member=user:[email protected] \
  --role=roles/compute.instanceAdmin.v1

# Rolle an Dienstkonto vergeben
gcloud projects add-iam-policy-binding my-project \
  --member=serviceAccount:[email protected] \
  --role=roles/storage.objectViewer

# IAM-Richtlinie auflisten
gcloud projects get-iam-policy my-project

# Rolle entfernen
gcloud projects remove-iam-policy-binding my-project \
  --member=user:[email protected] \
  --role=roles/compute.instanceAdmin.v1

Bewährte Methoden:

  • Verwende wenn möglich vordefinierte Rollen
  • Befolge das Prinzip der geringsten Privilegien
  • Verwende Dienstkonten für Anwendungen
  • Regelmäßige Überprüfung der Berechtigungen

Seltenheit: Sehr häufig Schwierigkeitsgrad: Mittel


GCP Kernkonzepte

7. Was sind GCP-Regionen und -Zonen?

Antwort:

Region:

  • Geografischer Standort (z. B. us-central1, europe-west1)
  • Enthält mehrere Zonen
  • Unabhängige Fehlerbereiche
  • Wähle basierend auf Latenz, Compliance, Kosten

Zone:

  • Isolierter Standort innerhalb einer Region
  • Einzelner Fehlerbereich
  • Stelle über Zonen hinweg bereit, um hohe Verfügbarkeit zu gewährleisten
Loading diagram...

Beispiel:

# Regionen auflisten
gcloud compute regions list

# Zonen auflisten
gcloud compute zones list

# Instanz in spezifischer Zone erstellen
gcloud compute instances create my-vm \
  --zone=us-central1-a

Seltenheit: Sehr häufig Schwierigkeitsgrad: Leicht


8. Was ist ein Dienstkonto und wann verwendest du es?

Antwort: Ein Dienstkonto ist ein spezielles Konto für Anwendungen und VMs.

Eigenschaften:

  • Nicht für Menschen
  • Wird von Anwendungen verwendet
  • Kann IAM-Rollen haben
  • Kann Schlüssel zur Authentifizierung erstellen

Anwendungsfälle:

  • VM-Instanzen, die auf Cloud Storage zugreifen
  • Anwendungen, die GCP-APIs aufrufen
  • CI/CD-Pipelines
  • Projektübergreifender Zugriff
# Dienstkonto erstellen
gcloud iam service-accounts create my-sa \
  --display-name="Mein Dienstkonto"

# Rolle an Dienstkonto vergeben
gcloud projects add-iam-policy-binding my-project \
  --member=serviceAccount:[email protected] \
  --role=roles/storage.objectViewer

# An VM anhängen
gcloud compute instances create my-vm \
  [email protected] \
  --scopes=cloud-platform

Seltenheit: Häufig Schwierigkeitsgrad: Leicht-Mittel


Serverlos & Messaging

9. Was ist Cloud Pub/Sub und wann verwendest du es?

Antwort: Cloud Pub/Sub ist ein vollständig verwalteter Messaging-Dienst für asynchrone Kommunikation.

Schlüsselkonzepte:

  • Thema: Benannte Ressource, an die Nachrichten gesendet werden
  • Abonnement: Benannte Ressource, die den Nachrichtenstrom darstellt
  • Publisher: Sendet Nachrichten an Themen
  • Subscriber: Empfängt Nachrichten von Abonnements

Architektur:

Loading diagram...

Grundlegende Operationen:

# Thema erstellen
gcloud pubsub topics create my-topic

# Abonnement erstellen
gcloud pubsub subscriptions create my-subscription \
  --topic=my-topic \
  --ack-deadline=60

# Nachricht veröffentlichen
gcloud pubsub topics publish my-topic \
  --message="Hallo Welt!"

# Nachrichten abrufen
gcloud pubsub subscriptions pull my-subscription \
  --auto-ack \
  --limit=10

Publisher-Beispiel (Python):

from google.cloud import pubsub_v1
import json

# Publisher-Client erstellen
publisher = pubsub_v1.PublisherClient()
topic_path = publisher.topic_path('my-project', 'my-topic')

# Nachricht veröffentlichen
def publish_message(data):
    message_json = json.dumps(data)
    message_bytes = message_json.encode('utf-8')
    
    # Mit Attributen veröffentlichen
    future = publisher.publish(
        topic_path,
        message_bytes,
        event_type='order_created',
        user_id='123'
    )
    
    print(f'Veröffentlichte Nachrichten-ID: {future.result()}')

# Batch-Veröffentlichung für Effizienz
def publish_batch(messages):
    futures = []
    for message in messages:
        message_bytes = json.dumps(message).encode('utf-8')
        future = publisher.publish(topic_path, message_bytes)
        futures.append(future)
    
    # Warten, bis alle Nachrichten veröffentlicht wurden
    for future in futures:
        future.result()

Subscriber-Beispiel (Python):

from google.cloud import pubsub_v1

subscriber = pubsub_v1.SubscriberClient()
subscription_path = subscriber.subscription_path('my-project', 'my-subscription')

def callback(message):
    print(f'Empfangene Nachricht: {message.data.decode("utf-8")}')
    print(f'Attribute: {message.attributes}')
    
    # Nachricht verarbeiten
    try:
        process_message(message.data)
        message.ack()  # Erfolgreiche Verarbeitung bestätigen
    except Exception as e:
        print(f'Fehler beim Verarbeiten der Nachricht: {e}')
        message.nack()  # Negative Bestätigung (erneut versuchen)

# Abonnieren
streaming_pull_future = subscriber.subscribe(subscription_path, callback=callback)

print(f'Warte auf Nachrichten auf {subscription_path}...')

try:
    streaming_pull_future.result()
except KeyboardInterrupt:
    streaming_pull_future.cancel()

Abonnementtypen:

1. Pull-Abonnement:

# Subscriber ruft Nachrichten bei Bedarf ab
gcloud pubsub subscriptions create pull-sub \
  --topic=my-topic

2. Push-Abonnement:

# Pub/Sub pusht Nachrichten an HTTPS-Endpunkt
gcloud pubsub subscriptions create push-sub \
  --topic=my-topic \
  --push-endpoint=https://myapp.example.com/webhook

Anwendungsfälle:

  • Event-gesteuerte Architekturen
  • Microservices-Kommunikation
  • Stream-Verarbeitungspipelines
  • IoT-Datenerfassung
  • Asynchrone Aufgabenverarbeitung

Bewährte Methoden:

  • Verwende Nachrichtenattribute zur Filterung
  • Implementiere idempotente Nachrichtenverarbeitung
  • Lege angemessene Bestätigungsfristen fest
  • Verwende Dead-Letter-Themen für fehlgeschlagene Nachrichten
  • Überwache den Abonnement-Backlog

Seltenheit: Häufig Schwierigkeitsgrad: Mittel


10. Was ist Cloud Functions und wie stellst du eine bereit?

Antwort: Cloud Functions ist eine serverlose Ausführungsumgebung zum Erstellen ereignisgesteuerter Anwendungen.

Auslöser:

  • HTTP-Anfragen
  • Cloud Pub/Sub-Nachrichten
  • Cloud Storage-Ereignisse
  • Firestore-Ereignisse
  • Firebase-Ereignisse

HTTP-Funktionsbeispiel:

# main.py
import functions_framework
from flask import jsonify

@functions_framework.http
def hello_http(request):
    """HTTP Cloud Function"""
    request_json = request.get_json(silent=True)
    
    if request_json and 'name' in request_json:
        name = request_json['name']
    else:
        name = 'World'
    
    return jsonify({
        'message': f'Hallo, {name}!',
        'status': 'success'
    })

Pub/Sub-Funktionsbeispiel:

import base64
import json
import functions_framework

@functions_framework.cloud_event
def process_pubsub(cloud_event):
    """Ausgelöst durch Pub/Sub-Nachricht"""
    # Nachricht dekodieren
    message_data = base64.b64decode(cloud_event.data["message"]["data"]).decode()
    message_json = json.loads(message_data)
    
    print(f'Verarbeite Nachricht: {message_json}')
    
    # Nachricht verarbeiten
    result = process_data(message_json)
    
    return result

Storage-Funktionsbeispiel:

import functions_framework

@functions_framework.cloud_event
def process_file(cloud_event):
    """Ausgelöst durch Cloud Storage-Objekterstellung"""
    data = cloud_event.data
    
    bucket = data["bucket"]
    name = data["name"]
    
    print(f'Datei {name} hochgeladen nach {bucket}')
    
    # Datei verarbeiten
    process_uploaded_file(bucket, name)

Bereitstellung:

# HTTP-Funktion bereitstellen
gcloud functions deploy hello_http \
  --runtime=python39 \
  --trigger-http \
  --allow-unauthenticated \
  --entry-point=hello_http \
  --region=us-central1

# Pub/Sub-Funktion bereitstellen
gcloud functions deploy process_pubsub \
  --runtime=python39 \
  --trigger-topic=my-topic \
  --entry-point=process_pubsub \
  --region=us-central1

# Storage-Funktion bereitstellen
gcloud functions deploy process_file \
  --runtime=python39 \
  --trigger-resource=my-bucket \
  --trigger-event=google.storage.object.finalize \
  --entry-point=process_file \
  --region=us-central1

# Mit Umgebungsvariablen bereitstellen
gcloud functions deploy my_function \
  --runtime=python39 \
  --trigger-http \
  --set-env-vars DATABASE_URL=...,API_KEY=...

# Mit spezifischem Speicher und Timeout bereitstellen
gcloud functions deploy my_function \
  --runtime=python39 \
  --trigger-http \
  --memory=512MB \
  --timeout=300s

Anforderungsdatei:

# requirements.txt
functions-framework==3.*
google-cloud-storage==2.*
google-cloud-pubsub==2.*
requests==2.*

Lokales Testen:

# Functions Framework installieren
pip install functions-framework

# Lokal ausführen
functions-framework --target=hello_http --port=8080

# Mit curl testen
curl -X POST http://localhost:8080 \
  -H "Content-Type: application/json" \
  -d '{"name": "Alice"}'

Überwachung:

# Protokolle anzeigen
gcloud functions logs read hello_http \
  --region=us-central1 \
  --limit=50

# Funktionsdetails anzeigen
gcloud functions describe hello_http \
  --region=us-central1

Bewährte Methoden:

  • Halte Funktionen klein und fokussiert
  • Verwende Umgebungsvariablen zur Konfiguration
  • Implementiere ordnungsgemäße Fehlerbehandlung
  • Lege angemessene Timeout-Werte fest
  • Verwende Cloud Logging zur Fehlerbehebung
  • Minimiere die Kaltstartzeit

Seltenheit: Sehr häufig Schwierigkeitsgrad: Leicht-Mittel


CLI & Tools

11. Erläutere gängige gcloud CLI-Befehle und -Konfigurationen.

Antwort: Die gcloud CLI ist das primäre Tool zur Verwaltung von GCP-Ressourcen.

Ersteinrichtung:

# gcloud SDK installieren (macOS)
curl https://sdk.cloud.google.com | bash
exec -l $SHELL

# Initialisieren und authentifizieren
gcloud init

# Anmelden
gcloud auth login

# Standardprojekt festlegen
gcloud config set project my-project-id

# Standardregion/Zone festlegen
gcloud config set compute/region us-central1
gcloud config set compute/zone us-central1-a

Konfigurationsmanagement:

# Konfigurationen auflisten
gcloud config configurations list

# Neue Konfiguration erstellen
gcloud config configurations create dev-config

# Konfiguration aktivieren
gcloud config configurations activate dev-config

# Eigenschaften festlegen
gcloud config set account [email protected]
gcloud config set project dev-project

# Aktuelle Konfiguration anzeigen
gcloud config list

# Eigenschaft aufheben
gcloud config unset compute/zone

Gängige Befehle nach Dienst:

Compute Engine:

# Instanzen auflisten
gcloud compute instances list

# Instanz erstellen
gcloud compute instances create my-vm \
  --machine-type=e2-medium \
  --zone=us-central1-a

# SSH-Verbindung zur Instanz herstellen
gcloud compute ssh my-vm --zone=us-central1-a

# Instanz stoppen/starten
gcloud compute instances stop my-vm --zone=us-central1-a
gcloud compute instances start my-vm --zone=us-central1-a

# Instanz löschen
gcloud compute instances delete my-vm --zone=us-central1-a

Cloud Storage:

# Buckets auflisten
gsutil ls

# Bucket erstellen
gsutil mb -l us-central1 gs://my-bucket

# Datei hochladen
gsutil cp myfile.txt gs://my-bucket/

# Datei herunterladen
gsutil cp gs://my-bucket/myfile.txt ./

# Verzeichnis synchronisieren
gsutil -m rsync -r ./local-dir gs://my-bucket/remote-dir

# Bucket-Lebenszyklus festlegen
gsutil lifecycle set lifecycle.json gs://my-bucket

IAM:

# IAM-Richtlinien auflisten
gcloud projects get-iam-policy my-project

# IAM-Bindung hinzufügen
gcloud projects add-iam-policy-binding my-project \
  --member=user:[email protected] \
  --role=roles/viewer

# Dienstkonto erstellen
gcloud iam service-accounts create my-sa \
  --display-name="Mein Dienstkonto"

# Schlüssel erstellen und herunterladen
gcloud iam service-accounts keys create key.json \
  [email protected]

Kubernetes Engine:

# Cluster auflisten
gcloud container clusters list

# Anmeldeinformationen abrufen
gcloud container clusters get-credentials my-cluster \
  --zone=us-central1-a

# Cluster erstellen
gcloud container clusters create my-cluster \
  --num-nodes=3 \
  --zone=us-central1-a

Nützliche Flags:

# Ausgabe formatieren
gcloud compute instances list --format=json
gcloud compute instances list --format=yaml
gcloud compute instances list --format="table(name,zone,status)"

# Ergebnisse filtern
gcloud compute instances list --filter="zone:us-central1-a"
gcloud compute instances list --filter="status=RUNNING"

# Ergebnisse begrenzen
gcloud compute instances list --limit=10

# Ergebnisse sortieren
gcloud compute instances list --sort-by=creationTimestamp

Hilfreiche Befehle:

# Hilfe erhalten
gcloud help
gcloud compute instances create --help

# Projektinformationen anzeigen
gcloud projects describe my-project

# Verfügbare Regionen/Zonen auflisten
gcloud compute regions list
gcloud compute zones list

# Kontingente anzeigen
gcloud compute project-info describe \
  --project=my-project

# API aktivieren
gcloud services enable compute.googleapis.com

# Aktivierte APIs auflisten
gcloud services list --enabled

Bewährte Methoden:

  • Verwende Konfigurationen für verschiedene Umgebungen
  • Lege Standardprojekt und -region fest
  • Verwende --format für Skripte
  • Verwende --filter, um Ergebnisse einzugrenzen
  • Aktiviere die Befehlsvervollständigung
  • Halte das gcloud SDK auf dem neuesten Stand

Seltenheit: Sehr häufig Schwierigkeitsgrad: Leicht-Mittel


Schlussfolgerung

Die Vorbereitung auf ein Vorstellungsgespräch als Junior GCP Cloud Engineer erfordert das Verständnis von Kerndiensten und Cloud-Konzepten. Konzentriere dich auf:

  1. Compute Engine: VM-Instanzen, Maschinentypen, Festplatten
  2. Cloud Storage: Speicherklassen, Buckets, Lebenszyklus
  3. VPC: Netzwerke, Subnetze, Firewall-Regeln
  4. IAM: Rollen, Berechtigungen, Dienstkonten
  5. Kernkonzepte: Regionen, Zonen, Projekte

Übe die Verwendung der GCP Console und der gcloud CLI, um praktische Erfahrungen zu sammeln. Viel Glück!

Newsletter subscription

Wöchentliche Karrieretipps, die wirklich funktionieren

Erhalten Sie die neuesten Einblicke direkt in Ihr Postfach

Decorative doodle

Ihr nächstes Vorstellungsgespräch ist nur einen Lebenslauf entfernt

Erstellen Sie in wenigen Minuten einen professionellen, optimierten Lebenslauf. Keine Designkenntnisse erforderlich—nur bewährte Ergebnisse.

Meinen Lebenslauf erstellen

Diesen Beitrag teilen

Überwinden Sie die 75% ATS-Ablehnungsrate

3 von 4 Lebensläufen erreichen nie ein menschliches Auge. Unsere Keyword-Optimierung erhöht Ihre Erfolgsrate um bis zu 80% und stellt sicher, dass Recruiter Ihr Potenzial tatsächlich sehen.