ARC109

Übersicht
In einem Challenge-Lab geht es um ein bestimmtes Szenario mit mehreren Aufgaben. Anders als bei einem normalen Lab erhalten Sie jedoch keine Schritt-für-Schritt-Anleitung, sondern nutzen die in den Labs des jeweiligen Kurses erlernten Fähigkeiten, um die Aufgaben selbst zu lösen. Ihre Lösungen werden automatisch bewertet. Die erzielten Punkte finden Sie rechts oben auf dieser Seite.
In Challenge-Labs werden keine neuen Grundlagen zu Google Cloud vermittelt. Sie sollen dabei Ihr Wissen erweitern und es wird erwartet, dass Sie beispielsweise Standardwerte ändern und Fehlermeldungen lesen und recherchieren, um Ihre eigenen Fehler zu beheben.
Die volle Punktzahl erreichen Sie nur, wenn Sie alle Aufgaben innerhalb der vorgegebenen Zeit lösen.
Einrichtung
Vor dem Klick auf „Start Lab“ (Lab starten)
Lesen Sie diese Anleitung. Labs sind zeitlich begrenzt und können nicht pausiert werden. Der Timer beginnt zu laufen, wenn Sie auf Lab starten klicken, und zeigt Ihnen, wie lange Google Cloud-Ressourcen für das Lab verfügbar sind.
In diesem praxisorientierten Lab können Sie die Lab-Aktivitäten in einer echten Cloud-Umgebung durchführen – nicht in einer Simulations- oder Demo-Umgebung. Dazu erhalten Sie neue, temporäre Anmeldedaten, mit denen Sie für die Dauer des Labs auf Google Cloud zugreifen können.
Für dieses Lab benötigen Sie Folgendes:
- Einen Standardbrowser (empfohlen wird Chrome)
Hinweis: Nutzen Sie den privaten oder Inkognitomodus (empfohlen), um dieses Lab durchzuführen. So wird verhindert, dass es zu Konflikten zwischen Ihrem persönlichen Konto und dem Teilnehmerkonto kommt und zusätzliche Gebühren für Ihr persönliches Konto erhoben werden.
- Zeit für die Durchführung des Labs – denken Sie daran, dass Sie ein begonnenes Lab nicht unterbrechen können.
Hinweis: Verwenden Sie für dieses Lab nur das Teilnehmerkonto. Wenn Sie ein anderes Google Cloud-Konto verwenden, fallen dafür möglicherweise Kosten an.
Das Szenario
Sie haben gerade Ihre neue Stelle als Junior Data Analyst angetreten. Bisher haben Sie Teams beim Erstellen, Verwalten und Zugreifen auf Backend-Datenressourcen unterstützt.
Das Know-how für diese Aufgaben wird vorausgesetzt.
Die Aufgabe
Sie werden gebeten, einem neu gebildeten Entwicklungsteam bei den ersten Schritten zum Erstellen eines neuen Projekts zu helfen, bei dem es darum geht, Backend-Dienste als APIs bereitzustellen. Sie sollen das Team bei der Verwendung von API Gateway unterstützen und dazu folgende Aufgaben ausführen:
- Backend-System mit einer Cloud Run-Funktion entwickeln
- Eine API bereitstellen und verwalten, die den Backend-Dienst mit einem vollständig verwalteten Gateway verfügbar macht
- Nachrichten abonnieren, die in einem Pub/Sub-Thema veröffentlicht werden, um auf Ereignisse zu reagieren
Die einzelnen Aufgaben sind nachfolgend genauer beschrieben. Viel Erfolg!
Aufgabe 1: Cloud Run-Funktion erstellen
Hinweis: Cloud Run-Funktionen (2. Generation) sind von den Cloud Run Admin APIs abhängig. Die Cloud Run Admin APIs wurden zu Beginn dieses Labs für Sie aktiviert. Es kann jedoch einige Minuten dauern, bis alle aktivierten Dienste bereitgestellt sind. Wenn bei der Bereitstellung Ihrer Cloud Run-Funktion ein Problem auftritt, warten Sie einige Minuten und versuchen Sie es dann noch einmal.
Erstellen Sie eine neue Cloud Run-Funktion (2. Generation
) mit dem Namen gcfunction
in der Region mit Node.js 22
und erlauben Sie Aufrufe ohne Authentifizierung. Lassen Sie die Funktion vorerst einfach „Hello World!“ zurückgeben, wenn sie aufgerufen wird.
Klicken Sie auf Fortschritt prüfen.
Cloud Run-Funktion erstellen
Aufgabe 2: API Gateway erstellen
Nachdem die Cloud Run-Funktion bereitgestellt wurde, konfigurieren Sie ein API Gateway, um Anfragen an das Backend weiterzuleiten.
Erstellen Sie eine Datei namens openapispec.yaml
(mit dem unten stehenden Code), die auf die in Aufgabe 1 bereitgestellte Cloud Run-Funktion verweist.
Verwenden Sie openapispec.yaml
, wenn Sie das API Gateway mit den folgenden Eigenschaften bereitstellen:
Name |
Wert |
Anzeigename |
gcfunction API (wo immer erforderlich) |
API-ID |
gcfunction-api |
Dienstkonto auswählen |
Compute Engine-Standarddienstkonto |
Standort |
|
Konfigurationsname |
gcfunction-api |
swagger: '2.0'
info:
title: gcfunction API
description: Sample API on API Gateway with a Google Cloud Run functions backend
version: 1.0.0
schemes:
- https
produces:
- application/json
x-google-backend:
address: https://gcfunction-{{{ project_0.startup_script.project_number | PROJECT_NUMBER }}}.{{{project_0.default_region | REGION}}}.run.app
paths:
/gcfunction:
get:
summary: gcfunction
operationId: gcfunction
responses:
'200':
description: A successful response
schema:
type: string
Hinweis: Es dauert ca. 10 Minuten, bis der Vorgang zum Erstellen des Gateways abgeschlossen ist. Wenn Sie den Status des Erstellungs- und Bereitstellungsprozesses prüfen möchten, können Sie auf das Symbol „Benachrichtigung“ (Glockensymbol) in der oberen Hauptnavigationsleiste klicken, um eine Statusbenachrichtigung anzuzeigen. Prüfen Sie, ob neben Gateway „gcfunction API“ wird erstellt ein grünes Häkchen angezeigt wird, bevor Sie fortfahren.
Klicken Sie auf Fortschritt prüfen.
API Gateway erstellen
Aufgabe 3: Pub/Sub-Thema erstellen und Nachrichten über das API-Backend veröffentlichen
Das Entwicklungsteam möchte, dass das API-Backend Nachrichten in einem neuen Pub/Sub-Thema mit dem Namen demo-topic
veröffentlicht.
Erstellen Sie ein neues Pub/Sub-Thema (demo-topic
) und senden Sie über die zuvor bereitgestellte Cloud Run-Funktion Nachrichten and dieses Thema. Achten Sie darauf, dass die Option zum Erstellen eines Standardabos aktiviert ist, wenn Sie das Thema erstellen.
Verwenden Sie das folgende Snippet, um die Datei package.json
und den Code index.js
in der Cloud Run-Funktion zu aktualisieren, die Sie in Aufgabe 1 bereitgestellt haben.
package.json
{
"dependencies": {
"@google-cloud/functions-framework": "^3.0.0",
"@google-cloud/pubsub": "^3.4.1"
}
}
index.js
/**
* Responds to any HTTP request.
*
* @param {!express:Request} req HTTP request context.
* @param {!express:Response} res HTTP response context.
*/
const {PubSub} = require('@google-cloud/pubsub');
const pubsub = new PubSub();
const topic = pubsub.topic('demo-topic');
const functions = require('@google-cloud/functions-framework');
exports.helloHttp = functions.http('helloHttp', (req, res) => {
// Send a message to the topic
topic.publishMessage({data: Buffer.from('Hello from Cloud Run functions!')});
res.status(200).send("Message sent to Topic demo-topic!");
});
Stellen Sie die Cloud Run-Funktion neu bereit, nachdem die Dateien index.js
und package.json
aktualisiert wurden.
Rufen Sie als Nächstes die Cloud Run-Funktion über API Gateway auf. Wenn Sie alles richtig gemacht haben, wird eine Nachricht im Thema demo-topic
veröffentlicht, das Sie in dieser Aufgabe erstellt haben.
Hinweis: Es dauert ca. 5 Minuten, bis die veröffentlichten Nachrichten im Abschnitt „Nachrichten“ des Abos angezeigt werden, nachdem Sie den API Gateway-Endpunkt aufgerufen haben.
Klicken Sie auf Fortschritt prüfen.
Pub/Sub-Thema erstellen und Nachrichten über API-Backend veröffentlichen
Das wars! Sie haben das Lab erfolgreich abgeschlossen.
Sie haben die Challenge abgeschlossen, eine API bereitzustellen und zu verwalten, die den Backend-Dienst mit einem vollständig verwalteten Gateway verfügbar macht.
Google Cloud-Schulungen und -Zertifizierungen
In unseren Schulungen erfahren Sie alles zum optimalen Einsatz unserer Google Cloud-Technologien und können sich entsprechend zertifizieren lassen. Unsere Kurse vermitteln technische Fähigkeiten und Best Practices, damit Sie möglichst schnell mit Google Cloud loslegen und Ihr Wissen fortlaufend erweitern können. Wir bieten On-Demand-, Präsenz- und virtuelle Schulungen für Anfänger wie Fortgeschrittene an, die Sie individuell in Ihrem eigenen Zeitplan absolvieren können. Mit unseren Zertifizierungen weisen Sie nach, dass Sie Experte im Bereich Google Cloud-Technologien sind.
Anleitung zuletzt am 01. April 2025 aktualisiert
Lab zuletzt am 01. April 2025 getestet
© 2025 Google LLC. Alle Rechte vorbehalten. Google und das Google-Logo sind Marken von Google LLC. Alle anderen Unternehmens- und Produktnamen können Marken der jeweils mit ihnen verbundenen Unternehmen sein.