arrow_back

Cloud Functions : Qwik Start – Outil de ligne de commande

Testez vos connaissances et partagez-les avec notre communauté
done
Accédez à plus de 700 ateliers pratiques, badges de compétence et cours

Cloud Functions : Qwik Start – Outil de ligne de commande

Atelier 30 minutes universal_currency_alt 1 crédit show_chart Débutant
info Cet atelier peut intégrer des outils d'IA pour vous accompagner dans votre apprentissage.
Testez vos connaissances et partagez-les avec notre communauté
done
Accédez à plus de 700 ateliers pratiques, badges de compétence et cours

GSP080

Google Cloud – Ateliers adaptés au rythme de chacun

Présentation

Une fonction Cloud est une portion de code qui s'exécute en réponse à un événement, tel qu'une requête HTTP, un message issu d'un service de messagerie ou une importation de fichier. Les événements cloud sont des choses qui se produisent dans votre environnement cloud. Il peut s'agir de modifications apportées aux données d'une base de données, de l'ajout de fichiers à un système de stockage ou de la création d'une instance de machine virtuelle.

Dans la mesure où les fonctions Cloud sont basées sur des événements, elles ne s'exécutent que lorsqu'il se passe quelque chose. Elles sont particulièrement utiles pour les tâches qui doivent être effectuées rapidement ou qui n'ont pas besoin d'être exécutées en permanence.

Par exemple, vous pouvez utiliser une fonction Cloud pour :

  • générer automatiquement des vignettes pour les images qui sont importées dans Cloud Storage ;
  • envoyer une notification sur le téléphone d'un utilisateur lorsqu'il reçoit un message sur Cloud Pub/Sub ;
  • traiter les données d'une base de données Cloud Firestore et générer un rapport.

Vous pouvez rédiger votre code dans n'importe quel langage compatible avec Node.js et le déployer dans le cloud en quelques clics. Une fois votre fonction Cloud déployée, elle s'exécutera automatiquement en réponse aux événements concernés.

Dans cet atelier, vous allez découvrir comment créer, déployer et tester une fonction Cloud dans la console Google Cloud.

Vous apprendrez ici à créer, déployer et tester une fonction Cloud à l'aide de la ligne de commande Google Cloud Shell.

Objectifs de l'atelier

  • Créer une fonction Cloud
  • Déployer et tester la fonction Cloud
  • Afficher les journaux

Préparation

Avant de cliquer sur le bouton "Démarrer l'atelier"

Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.

Cet atelier pratique vous permet de suivre vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Nous vous fournissons des identifiants temporaires pour vous connecter à Google Cloud le temps de l'atelier.

Pour réaliser cet atelier :

  • vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome) ;
Remarque : Ouvrez une fenêtre de navigateur en mode incognito/navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le temporaire étudiant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
  • vous disposez d'un temps limité ; une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Si vous possédez déjà votre propre compte ou projet Google Cloud, veillez à ne pas l'utiliser pour réaliser cet atelier afin d'éviter que des frais supplémentaires ne vous soient facturés.

Démarrer l'atelier et se connecter à la console Google Cloud

  1. Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous trouverez le panneau Détails concernant l'atelier, qui contient les éléments suivants :

    • Le bouton Ouvrir la console Google Cloud
    • Le temps restant
    • Les identifiants temporaires que vous devez utiliser pour cet atelier
    • Des informations complémentaires vous permettant d'effectuer l'atelier
  2. Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée si vous utilisez le navigateur Chrome).

    L'atelier lance les ressources, puis ouvre la page Se connecter dans un nouvel onglet.

    Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.

    Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
  3. Si nécessaire, copiez le nom d'utilisateur ci-dessous et collez-le dans la boîte de dialogue Se connecter.

    {{{user_0.username | "Username"}}}

    Vous trouverez également le nom d'utilisateur dans le panneau Détails concernant l'atelier.

  4. Cliquez sur Suivant.

  5. Copiez le mot de passe ci-dessous et collez-le dans la boîte de dialogue Bienvenue.

    {{{user_0.password | "Password"}}}

    Vous trouverez également le mot de passe dans le panneau Détails concernant l'atelier.

  6. Cliquez sur Suivant.

    Important : Vous devez utiliser les identifiants fournis pour l'atelier. Ne saisissez pas ceux de votre compte Google Cloud. Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
  7. Accédez aux pages suivantes :

    • Acceptez les conditions d'utilisation.
    • N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
    • Ne vous inscrivez pas à des essais gratuits.

Après quelques instants, la console Cloud s'ouvre dans cet onglet.

Remarque : Pour afficher un menu contenant la liste des produits et services Google Cloud, cliquez sur le menu de navigation en haut à gauche. Icône du menu de navigation

Activer Cloud Shell

Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud. Cloud Shell vous permet d'accéder via une ligne de commande à vos ressources Google Cloud.

  1. Cliquez sur Activer Cloud Shell Icône Activer Cloud Shell en haut de la console Google Cloud.

Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET. Le résultat contient une ligne qui déclare YOUR_PROJECT_ID (VOTRE_ID_PROJET) pour cette session :

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.

  1. (Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
  1. Cliquez sur Autoriser.

  2. Vous devez à présent obtenir le résultat suivant :

Résultat :

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project

Résultat :

[core] project = <ID_Projet>

Exemple de résultat :

[core] project = qwiklabs-gcp-44776a13dea667a6 Remarque : Pour consulter la documentation complète sur gcloud, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.

Tâche 1 : Créer une fonction

Tout d'abord, vous allez créer une fonction simple intitulée helloWorld. Cette fonction écrit un message dans les journaux Cloud Functions. Elle est déclenchée par des événements Cloud Functions et accepte une fonction de rappel pour indiquer la fin de l'exécution de la fonction.

Dans cet atelier, l'événement Cloud Functions correspond à un sujet Cloud Pub/Sub. Pub/Sub est un service de messagerie où les expéditeurs des messages sont découplés des destinataires. Le destinataire d'un message envoyé ou publié doit être abonné pour être averti et pouvoir recevoir ce message. Pour en savoir plus sur Pub/Sub, consultez la page Google Cloud Pub/Sub : un service de messagerie à l'échelle de Google dans les guides Cloud Pub/Sub.

Pour en savoir plus sur les paramètres d'événement et de rappel, consultez la page Fonctions d'arrière-plan dans la documentation sur Cloud Functions.

Pour créer une fonction Cloud :

  1. Dans Cloud Shell, exécutez la commande suivante pour définir la région par défaut :

    gcloud config set run/region {{{project_0.default_region |REGION}}}
  2. Créez un répertoire pour le code de la fonction :

    mkdir gcf_hello_world && cd $_
  3. Créez le fichier index.js et ouvrez-le pour le modifier :

    nano index.js
  4. Copiez ce qui suit dans le fichier index.js :

    const functions = require('@google-cloud/functions-framework'); // Register a CloudEvent callback with the Functions Framework that will // be executed when the Pub/Sub trigger topic receives a message. functions.cloudEvent('helloPubSub', cloudEvent => { // The Pub/Sub message is passed as the CloudEvent's data payload. const base64name = cloudEvent.data.message.data; const name = base64name ? Buffer.from(base64name, 'base64').toString() : 'World'; console.log(`Hello, ${name}!`); });
  5. Quittez nano (en appuyant sur Ctrl+X), puis enregistrez le fichier (en appuyant sur Y).

  6. Créez le fichier package.json et ouvrez-le pour le modifier :

  7. Copiez le code suivant dans le fichier package.json :

    { "name": "gcf_hello_world", "version": "1.0.0", "main": "index.js", "scripts": { "start": "node index.js", "test": "echo \"Error: no test specified\" && exit 1" }, "dependencies": { "@google-cloud/functions-framework": "^3.0.0" } }
  8. Quittez nano (en appuyant sur Ctrl+X), puis enregistrez le fichier (en appuyant sur Y).

  9. Installez les dépendances du package

    npm install

    Résultat attendu :

    added 140 packages, and audited 141 packages in 9s 27 packages are looking for funding run `npm fund` for details found 0 vulnerabilities

Tâche 2 : Déployer la fonction

Dans cet atelier, vous allez définir cf_demo comme déclencheur --trigger-topic.

Remarque :
Les fonctions Cloud sont basées sur des événements, ce qui signifie qu'un type de déclencheur doit être spécifié. Pour déployer une nouvelle fonction, les événements de déclenchement courants sont "--trigger-topic", "--trigger-bucket" ou "--trigger-http". Si vous déployez une mise à jour d'une fonction existante, cette dernière conserve le déclencheur déjà défini, sauf indication contraire.
  1. Déployez la fonction helloPubSub sur un sujet Pub/Sub nommé cf-demo.

    gcloud functions deploy nodejs-pubsub-function \ --gen2 \ --runtime=nodejs20 \ --region={{{ project_0.default_region | REGION }}} \ --source=. \ --entry-point=helloPubSub \ --trigger-topic cf-demo \ --stage-bucket {{{ project_0.project_id | PROJECT_ID }}}-bucket \ --service-account cloudfunctionsa@{{{ project_0.project_id | PROJECT_ID }}}.iam.gserviceaccount.com \ --allow-unauthenticated Remarque :
    Si vous recevez une notification serviceAccountTokenCreator pour un compte de service, sélectionnez n.
  2. Vérifiez l'état de la fonction :

    gcloud functions describe nodejs-pubsub-function \ --region={{{ project_0.default_region | REGION }}}

    L'état "ACTIVE" indique que la fonction a bien été déployée.

    Résultat attendu :

    BuildConfig: automaticUpdatePolicy: {} build: projects/630521560493/locations/{{{ project_0.default_region | REGION }}}/builds/7ff9d415-50d9-4557-9bcd-5afad42a6390 dockerRegistry: ARTIFACT_REGISTRY dockerRepository: projects/{{{ project_0.project_id | PROJECT_ID }}}/locations/{{{ project_0.default_region | REGION }}}/repositories/gcf-artifacts entryPoint: helloPubSub ... State: ACTIVE ... UpdateTime: '2024-08-05T13:51:05.317298824Z' Url: https://{{{ project_0.default_region | REGION }}}-{{{ project_0.project_id | PROJECT_ID }}}.cloudfunctions.net/nodejs-pubsub-function

Chaque message publié dans le sujet déclenche l'exécution de la fonction, et son contenu est transmis sous forme de données d'entrée.

Tester la tâche terminée

Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si votre tâche a bien été exécutée, vous recevez une note d'évaluation.

Déployer la fonction

Tâche 3 : Tester la fonction

Une fois la fonction déployée et active, vérifiez qu'elle écrit un message dans le journal cloud lorsqu'elle détecte un événement.

  1. Appelez le sujet Pub/Sub avec des données.

    gcloud pubsub topics publish cf-demo --message="Cloud Function Gen2"

    Exemple de résultat :

    messageIds: - '11927162971409664'

Affichez les journaux pour vérifier qu'il existe bien des messages associés à cet ID d'exécution.

Tâche 4 : Afficher les journaux

  1. Consultez les journaux pour visualiser les messages de l'historique :

    gcloud functions logs read nodejs-pubsub-function \ --region={{{ project_0.default_region | REGION }}} Remarque :
    L'affichage des journaux peut prendre environ 10 minutes. Vous pouvez également consulter les journaux en passant par Journalisation > Explorateur de journaux.

    La fonction Cloud devrait générer un résultat semblable à celui-ci :

    LEVEL: NAME: nodejs-pubsub-function EXECUTION_ID: h4v6akxf4sxt TIME_UTC: 2024-08-05 15:15:25.723 LOG: Hello, Cloud Function Gen2! LEVEL: I NAME: nodejs-pubsub-function EXECUTION_ID: TIME_UTC: 2024-08-05 15:15:25.711 LOG: LEVEL: NAME: nodejs-pubsub-function EXECUTION_ID: h4oxfjn7zlyu TIME_UTC: 2024-08-05 15:10:34.303 LOG: Hello, Friend! LEVEL: I NAME: nodejs-pubsub-function EXECUTION_ID: TIME_UTC: 2024-08-05 15:10:34.291 LOG: LEVEL: NAME: nodejs-pubsub-function EXECUTION_ID: h4fjhyfxua3k TIME_UTC: 2024-08-05 15:03:16.342 LOG: Hello, "SGVsbG8gZnJvbSB0aGUgY29tbWFuZCBsaW5l"!

Vous avez déployé et testé votre application, et vous pouvez afficher les journaux.

Tâche 5 : Tester vos connaissances

  1. Voici quelques questions à choix multiples qui vous permettront de mieux maîtriser les concepts abordés lors de cet atelier. Répondez-y du mieux que vous le pouvez.

Félicitations !

Vous avez utilisé la console Google Cloud pour créer, déployer et tester une fonction Cloud à l'aide de la ligne de commande.

Atelier suivant

Cet atelier fait partie d'une série appelée "Qwik Starts". Les ateliers de cette série sont conçus pour vous donner un aperçu des nombreuses fonctionnalités proposées par Google Cloud. Pour suivre un autre atelier, recherchez "Qwik Starts" dans le catalogue.

Étapes suivantes et informations supplémentaires

Formations et certifications Google Cloud

Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.

Dernière mise à jour du manuel : 5 août 2024

Dernier test de l'atelier : 5 août 2024

Copyright 2024 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.

Ce contenu n'est pas disponible pour le moment

Nous vous préviendrons par e-mail lorsqu'il sera disponible

Parfait !

Nous vous contacterons par e-mail s'il devient disponible