Étape 2 : Installer et configurer pour GKE

Cette étape explique comment télécharger et installer apigeectl, configurer les répertoires d'installation et créer des comptes de service Google Cloud, ainsi que les identifiants TLS requis pour faire fonctionner Apigee hybrid.

Télécharger et installer apigeectl

apigeectl est l'interface de ligne de commande (CLI) permettant d'installer et de gérer Apigee hybrid dans un cluster Kubernetes.

Les étapes suivantes expliquent comment télécharger apigeectl :

  1. Téléchargez le package de version de votre système d'exploitation à l'aide de la commande suivante :

    Mac 64 bits :

    curl -LO https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.1.1/apigeectl_mac_64.tar.gz

    Linux 64 bits :

    curl -LO https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.1.1/apigeectl_linux_64.tar.gz

    Mac 32 bits :

    curl -LO https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.1.1/apigeectl_mac_32.tar.gz

    Linux 32 bits :

    curl -LO https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.1.1/apigeectl_linux_32.tar.gz
  2. Créez un répertoire sur votre système qui servira de répertoire de base pour l'installation d'Apigee hybrid.
  3. Extrayez le contenu du fichier gzip téléchargé dans le répertoire de base que vous venez de créer. Exemple :

    tar xvzf filename.tar.gz -C path-to-base-directory
  4. Remplacez le répertoire par le répertoire de base.
  5. Le contenu du fichier tar est, par défaut, développé dans un répertoire dont le nom contient la version et la plate-forme. Exemple : ./apigeectl_1.0.0-f7b96a8_linux_64. Changez le nom de ce répertoire en apigeectl à l'aide de la commande suivante :

    mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl
  6. Remplacez le répertoire par votre répertoire. Exemple :
    cd ./apigeectl

    Ce répertoire correspond au répertoire d'accueil apigeectl. Il s'agit de l'emplacement de la commande exécutable apigeectl.

  7. Créez une variable d'environnement destinée à contenir le chemin d'accès à ce répertoire d'accueil à l'aide de la commande suivante :
    export APIGEECTL_HOME=$PWD
  8. Vérifiez que la variable contient le chemin d'accès correct à l'aide de la commande suivante :
    echo $APIGEECTL_HOME

Configurer la structure de répertoire du projet

La structure de répertoire décrite ci-dessous est suggérée. Elle sépare le logiciel Apigee hybrid des fichiers de configuration que vous devez créer. Grâce à l'utilisation de la variable $APIGEECTL_HOME et des liens symboliques que vous créez, vous pouvez facilement passer à une nouvelle version du logiciel si vous le souhaitez. Consultez également Mise à niveau d'Apigee hybrid.

  1. Vérifiez que vous êtes bien dans le répertoire de base (le répertoire où se trouve le répertoire apigeectl).
  2. Créez un nouveau dossier nommé hybrid-files. Vous pouvez attribuer le nom de votre choix au répertoire. Toutefois, dans les documents, le nom hybrid-files est utilisé systématiquement. Plus tard, vous stockerez les fichiers de configuration, les clés de compte de service et les certificats TLS dans ce dossier. Ce dossier vous permet de séparer vos fichiers de configuration de l'installation logicielle apigeectl :
    mkdir hybrid-files
  3. La structure de répertoire actuelle se présente maintenant comme suit :
    pwd && ls
    /hybrid-base-directory
      apigeectl
      hybrid-files
  4. Remplacez le répertoire par le dossier hybrid-files à l'aide de la commande suivante :
    cd hybrid-files
  5. Dans le répertoire hybrid-files, créez les sous-répertoires suivants pour organiser les fichiers que vous créerez plus tard à l'aide des commandes suivantes :
    mkdir overrides
    mkdir service-accounts
    mkdir certs
  6. Dans le répertoire hybrid-files, créez les liens symboliques suivants vers $APIGEECTL_HOME. Ces liens vous permettent d'exécuter la commande apigeectl à partir du répertoire hybrid-files.
    ln -s $APIGEECTL_HOME/tools tools
    ln -s $APIGEECTL_HOME/config config
    ln -s $APIGEECTL_HOME/templates templates
    ln -s $APIGEECTL_HOME/plugins plugins
  7. Pour vérifier que les liens symboliques ont été créés correctement, exécutez la commande suivante et assurez-vous que les chemins d'accès aux liens pointent vers les emplacements appropriés :
    ls -l | grep ^l
    

Créer des comptes de service

Apigee hybrid utilise des comptes de service Google Cloud pour permettre aux composants Apigee hybrid de communiquer en effectuant des appels d'API autorisés. Dans cette étape, vous allez utiliser un outil de ligne de commande Apigee hybrid pour créer un ensemble de comptes de service. L'outil télécharge aussi automatiquement les clés privées du compte de service. Vous devez ensuite ajouter ces clés à votre fichier de configuration de cluster Apigee hybrid.

Créez les clés :

  1. Vérifiez que vous êtes bien dans le répertoire base_directory/hybrid-files.
  2. Exécutez la commande suivante à partir du répertoire hybrid-files. Cette commande crée un compte de service pour le composant apigee-metrics et place la clé téléchargée dans le répertoire ./service-accounts.
    ./tools/create-service-account apigee-metrics ./service-accounts

    Lorsque l'invite suivante s'affiche, saisissez y :

    [INFO]: gcloud configured project ID is project_id.
     Press: y to proceed with creating service account in project: project_id
     Press: n to abort.

    Si c'est la première fois qu'un compte de service portant le nom exact attribué par l'outil a été créé, l'outil le crée et vous n'avez rien à faire.

    Toutefois, si le message et l'invite suivants s'affichent, saisissez y pour générer de nouvelles clés :

    [INFO]: Service account apigee-metrics@project_id.iam.gserviceaccount.com already exists.
    ...
     [INFO]: The service account might have keys associated with it. It is recommended to use existing keys.
     Press: y to generate new keys.(this does not de-activate existing keys)
     Press: n to skip generating new keys.
     
  3. Créez maintenant les autres comptes de service à l'aide des commandes suivantes :
    ./tools/create-service-account apigee-synchronizer ./service-accounts
    ./tools/create-service-account apigee-udca ./service-accounts
    ./tools/create-service-account apigee-mart ./service-accounts
    ./tools/create-service-account apigee-cassandra ./service-accounts
    ./tools/create-service-account apigee-logger ./service-accounts
  4. Vérifiez que les clés de compte de service ont été créées. Vous avez la responsabilité de stocker ces clés privées en lieu sûr. Les noms de fichiers de clés commencent par le nom de votre projet Google Cloud. Exemple :
    ls ./service-accounts
    gcp-project-id-apigee-cassandra.json
    gcp-project-id-apigee-logger.json
    gcp-project-id-apigee-mart.json
    gcp-project-id-apigee-metrics.json
    gcp-project-id-apigee-synchronizer.json
    gcp-project-id-apigee-udca.json

Créer des certificats TLS

Vous devez fournir des certificats TLS pour les passerelles d'entrée MART et d'exécution dans votre configuration Apigee hybrid. Les identifiants utilisés pour la passerelle MART doivent être autorisés par une autorité de certification (CA). Pour les besoins de ce guide de démarrage rapide (une installation d'essai hors production), la passerelle d'exécution peut accepter des identifiants autosignés.

Lors de cette étape, vous allez créer les fichiers d'identifiants TLS et les ajouter au répertoire base_directory/hybrid-files/certs. À l'Étape 3 : Configurer le cluster, vous allez ajouter les chemins d'accès des fichiers au fichier de configuration du cluster.

Créer des identifiants TLS pour la passerelle d'exécution

La passerelle d'entrée d'exécution (la passerelle qui gère le trafic du proxy d'API) requiert une paire clé/certificat TLS. Pour cette installation rapide, vous pouvez utiliser des identifiants autosignés. Dans les étapes suivantes, openssl est utilisé pour générer les identifiants.

  1. Vérifiez que vous êtes bien dans le répertoire base_directory/hybrid-files.
  2. Exécutez la commande suivante à partir du répertoire hybrid-files à l'aide de la commande suivante :
    openssl req  -nodes -new -x509 -keyout ./certs/keystore.key -out \
        ./certs/keystore.pem -subj '/CN=mydomain.net' -days 3650

    Cette commande crée une paire certificat/clé autosignée que vous pouvez utiliser pour l'installation rapide. Le nom commun mydomain.net peut correspondre à n'importe quelle valeur que vous souhaitez pour les identifiants autosignés.

  3. Vérifiez que les fichiers se trouvent dans le répertoire ./certs à l'aide de la commande suivante :
    ls ./certs
      keystore.pem
      keystore.key

    keystore.pem correspond au fichier de certificat TLS autosigné et keystore.key au fichier de clé.

Créer des identifiants TLS pour la passerelle MART

Comme indiqué dans la section Avant de commencer, vous devez utiliser une paire certificat TLS/clé autorisée pour la configuration de la passerelle MART. Si vous ne l'avez pas déjà fait, procurez-vous ces identifiants ou créez-les maintenant.

  1. Récupérez ou créez une paire certificat TLS/clé autorisée par une autorité de certification. Vous trouverez un exemple montrant comment récupérer ces identifiants à l'aide de l'autorité de certification Let's Encrypt. Notez que le nom commun du certificat doit être un nom DNS valide. Pour obtenir des exemples d'étapes, consultez la section Exemple de récupération des identifiants TLS.
  2. Copiez les identifiants dans le répertoire base_directory/hybrid-files/certs.
  3. Lorsque vous avez terminé, vous devez avoir deux paires de fichiers d'identifiants dans le répertoire ./certs. Exemple :
    ls ./certs
      fullchain.pem
      privkey.key
      keystore.pem
      keystore.key

    fullchain.pem correspond au fichier de certificat TLS autorisé et privkey.key au fichier de clé autorisé.

Résumé

Vous disposez désormais d'une base principale vous permettant de configurer, de déployer et de gérer Apigee hybrid dans votre cluster Kubernetes. Vous allez ensuite créer un fichier que Kubernetes utilisera pour déployer les composants d'exécution hybride sur le cluster.

1 2 (SUIVANT) Étape 3 : Configurer le cluster 4