Guide de démarrage rapide : Avant de commencer

Ce guide de démarrage rapide vous présente les actions à effectuer avant de pouvoir déployer l'API de reconnaissance vocale sur site. Pour en savoir plus sur les paramètres d'API configurables exposés pendant l'installation et la configuration, consultez la page Configurations d'API.

  1. Souscrivez une formule.
  2. Attribuez les rôles IAM (Identity Access Management) requis à un compte de service.
  3. Installez les outils nécessaires.
  4. Créez un cluster Kubernetes.
  5. Préconfigurez l'API depuis la ligne de commande (facultatif, pour l'installation sur la CLI uniquement).
  6. Installez Istio pour l'équilibrage de charge gRPC (facultatif).

Configurer la facturation

Sur la page des solutions Google Cloud Platform, cliquez sur SOUSCRIRE UNE FORMULE : Cette opération doit être effectuée par un administrateur de compte de facturation. Pour le vérifier, accédez à la barre de navigation de gauche de la console Google Cloud Platform : Facturation -> Gestion du compte, puis cochez le rôle/compte principal approprié à droite. Cette étape n'est requise qu'une seule fois.

Rôles IAM requis

  1. Recherchez le menu déroulant du projet Google Cloud Platform dans votre tableau de bord :

  2. Dans la fenêtre qui s'affiche, vous pouvez choisir un projet Google Cloud Platform existant ou en créer un. Après avoir sélectionné le projet que vous souhaitez associer à la reconnaissance vocale sur site, cliquez sur l'icône à trois barres en haut à gauche, puis sélectionnez IAM et administration --> IAM pour afficher la liste des comptes de service associés à ce projet :

  3. Attribuez les rôles suivants aux comptes de service appartenant au projet Google Cloud Platform que vous allez utiliser lors de l'installation. Ils peuvent être attribués à un seul compte de service ou à plusieurs comptes distincts, mais tous les comptes doivent appartenir au même projet. Pour modifier les autorisations du compte de service, cliquez sur l'icône en forme de crayon située à droite du nom du compte de service. Vous pouvez également créer des comptes de service en cliquant sur le bouton + AJOUTER en haut de la page IAM de la console Google Cloud Platform.

    Rôles IAM requis :

    • Lecteur de projets
    • Administrateur de compte de facturation (obligatoire pour souscrire une formule, non requis pour le déploiement)
    • Administrateur Kubernetes Engine (si vous effectuez le déploiement sur GKE)
    • Administrateur de clusters Kubernetes Engine (si vous effectuez le déploiement sur Anthos)

Outils requis

  1. Installez Google Cloud CLI.
  2. Installez kubectl.

Créez un cluster Kubernetes

Assurez-vous d'exécuter un cluster GKE ou Anthos. Les clusters Kubernetes sont disponibles sur Google Cloud Platform. Si vous disposez de clusters préexistants, vous pouvez en choisir un dans la liste qui s'affiche en cochant la case située à l'extrême gauche du nom du cluster :

Si vous ne possédez pas de cluster préexistant, vous êtes invité à en créer un. Vérifiez que les paramètres du cluster correspondent aux recommandations de la liste ci-dessous (les paramètres par défaut ne sont pas suffisants). Enregistrez le nom et l'emplacement du cluster, ainsi que le nom du projet Google Cloud Platform dans lequel le cluster est déployé.

Recommandations de base pour la configuration du cluster :

  • Version disponible : standard
  • La taille du pool de nœuds doit être supérieure ou égale à celle de $REPLICA.
  • Type de machine de nœud : e2-standard-4 (4 processeurs virtuels, 16 Go de mémoire) ou type supérieur
  • Activer l'autoscaling
  • Activez Istio si vous avez besoin de l'équilibrage de charge gRPC (facultatif).
  • Activez Kubernetes Engine Monitoring si vous souhaitez exporter des métriques vers Stackdriver (facultatif).

Installer Istio pour l'équilibrage de charge gRPC (facultatif)

Pour effectuer le scaling de la reconnaissance vocale sur site, nous utilisons un équilibreur de charge L7 compatible avec gRPC. Bien que plusieurs options soient disponibles, nous fournissons ici un exemple de configuration Istio. Sachez que la stratégie d'équilibrage de charge L3 par défaut du service Kubernetes n'est pas suffisante. Pour installer Istio, vous pouvez suivre le guide officiel Google Cloud ou consultez la page officielle d'Istio. Si vous souhaitez également exporter les métriques, suivez les étapes 1 et 2 (dans la section "Configurer votre cluster Kubernetes" ci-dessous), puis exécutez la commande suivante :

    kubectl get deployment/istio-pilot -n istio-system \
    && kubectl set env deployment/istio-pilot -n istio-system PILOT_HTTP10=1 \
    || kubectl set env deployment/istiod -n istio-system PILOT_HTTP10=1

L'option PILOT_HTTP10=1 autorise notre application à envoyer des requêtes HTTP 1.0. Cette démarche est essentielle pour permettre à l'application de s'authentifier auprès de Stackdriver (à l'aide du serveur de métadonnées Google Cloud Platform) afin de publier la télémétrie.

Préconfigurer l'API depuis la ligne de commande (facultatif)

Si vous envisagez d'effectuer une installation sur la CLI, suivez les instructions de cette section.

Configurer votre environnement

  1. Installez Docker.
  2. Installez l'outil mpdev.

Configurer votre cluster Kubernetes

  1. Définissez les variables d'environnement PROJECT et NAMESPACE. PROJECT correspond à l'ID du projet Google Cloud Platform dans lequel votre cluster est déployé. NAMESPACE correspond au nom du nouvel espace de noms que vous allez créer à l'étape 3 ci-dessous. Vous pouvez saisir n'importe quelle valeur pour NAMESPACE, mais "speech" est une valeur par défaut sûre.

    export PROJECT=<my-project-id>
    export CLUSTER_NAME=<name of the cluster>
    export LOCATION=<location of the cluster>
    export NAMESPACE=<new name for NAMESPACE>
    
  2. Récupérez les identifiants de votre cluster :

    gcloud container clusters get-credentials $CLUSTER_NAME
    --project $PROJECT --zone $LOCATION
    
  3. Créez l'espace de noms dans lequel l'application va être déployée et attribuez-le au nom NAMESPACE créé à l'étape 1 ci-dessus :

    kubectl create namespace ${NAMESPACE:?}
    
  4. Installez l'objet CRD Application requis pour utiliser les applications Marketplace de Google Cloud Platform :

    kubectl apply -f "https://raw.githubusercontent.com/GoogleCloudPlatform/marketplace-k8s-app-tools/master/crd/app-crd.yaml"
    
  5. Créez un secret de création de rapports. L'application utilise cette valeur pour indiquer l'utilisation à Google et pour les futurs cycles de facturation. Sous l'onglet "Déployer via la ligne de commande" de la page de la solution, suivez uniquement les instructions 1 et 2 pour générer et déployer le secret de création de rapports de licence.

Étape suivante

Apprenez à déployer l'API de reconnaissance vocale sur site.