Étape 11 : Installer Apigee hybrid à l'aide de Helm

Installer les composants d'exécution Apigee hybrid

Au cours de cette étape, vous allez utiliser Helm pour installer les composants Apigee hybrid suivants :

  • Opérateur Apigee
  • Datastore Apigee
  • Télémétrie Apigee
  • Apigee Redis
  • Gestionnaire d'entrée Apigee
  • Organisation Apigee
  • Votre ou vos environnements Apigee

Vous installerez les charts pour chaque environnement un par un. L'ordre d'installation des composants est important.

Remarques préalables à l'installation

  1. Si vous n'avez pas encore installé Helm v3.14.2+, suivez les instructions de la section Installer Helm.
  2. Apigee hybrid utilise des garde-fous Helm pour vérifier la configuration avant d'installer ou de mettre à niveau un chart. Vous pouvez voir des informations spécifiques aux garde-fous dans la sortie de chacune des commandes de cette section, par exemple :

    # Source: apigee-operator/templates/apigee-operators-guardrails.yaml
    apiVersion: v1
    kind: Pod
    metadata:
      name: apigee-hybrid-helm-guardrail-operator
      namespace: apigee-system
      annotations:
        helm.sh/hook: pre-install,pre-upgrade
        helm.sh/hook-delete-policy: before-hook-creation,hook-succeeded
      labels:
        app: apigee-hybrid-helm-guardrail
    

    Si l'une des commandes helm upgrade échoue, vous pouvez utiliser la sortie des garde-fous pour diagnostiquer la cause. Consultez Diagnostiquer les problèmes liés aux garde-fous.

  3. Remarque : Avant d'exécuter des commandes de mise à niveau ou d'installation Helm, utilisez la fonctionnalité de simulation de Helm en ajoutant --dry-run à la fin de la commande. Consultez helm install --h pour répertorier les commandes, les options et l'utilisation compatibles.
  4. Si vous installez les charts sur un cluster que vous avez migré de la gestion apigeectl vers la gestion Helm avec l'Outil de migration Helm Apigee, omettez l'option --atomic dans toutes les commandes suivantes.

Procédure d'installation

  1. Vérifiez que vous disposez d'une version appropriée de Helm.

    helm version

    La version de Helm requise pour cette installation est la version 3.14.2 ou ultérieure. Si la version affichée n'est pas satisfaisante, mettez à niveau Helm en exécutant les commandes ci-dessous. Le script get_helm.sh récupère la dernière version et l'installe.

    curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
    chmod 700 get_helm.sh
    ./get_helm.sh

    Vérifiez ensuite la version de Helm.

    helm version
  2. Accédez à votre répertoire APIGEE_HELM_CHARTS_HOME. Exécutez les commandes suivantes à partir de ce répertoire.
  3. Installez Apigee Operator/Controller :

    Effectuez un dry run :

    helm upgrade operator apigee-operator/ \
      --install \
      --create-namespace \
      --namespace apigee-system \
      --atomic \
      -f overrides.yaml \
      --dry-run
    

    Installez le chart :

    helm upgrade operator apigee-operator/ \
      --install \
      --create-namespace \
      --namespace apigee-system \
      --atomic \
      -f overrides.yaml
    

    Vérifiez l'installation de l'opérateur Apigee :

    helm ls -n apigee-system
    
    NAME       NAMESPACE       REVISION   UPDATED                                STATUS     CHART                                       APP VERSION
    operator   apigee-system   3          2023-06-26 00:42:44.492009 -0800 PST   deployed   apigee-operator-1.12.3   1.12.3
    

    Vérifiez qu'il est opérationnel en vérifiant sa disponibilité :

    kubectl -n apigee-system get deploy apigee-controller-manager
    
    NAME                        READY   UP-TO-DATE   AVAILABLE   AGE
    apigee-controller-manager   1/1     1            1           7d20h
    
  4. Installez le datastore Apigee :

    Effectuez un dry run :

    helm upgrade datastore apigee-datastore/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml \
      --dry-run
    

    Installez le chart :

    helm upgrade datastore apigee-datastore/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml
    

    Vérifiez que apigeedatastore est opérationnel en vérifiant son état avant de passer à l'étape suivante :

    kubectl -n apigee get apigeedatastore default
    
    NAME      STATE       AGE
    default   running    2d
    
  5. Installez la télémétrie Apigee :

    Effectuez un dry run :

    helm upgrade telemetry apigee-telemetry/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml \
      --dry-run
    

    Installez le chart :

    helm upgrade telemetry apigee-telemetry/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml
    

    Vérifiez qu'elle est opérationnelle en vérifiant son état :

    kubectl -n apigee get apigeetelemetry apigee-telemetry
    
    NAME               STATE     AGE
    apigee-telemetry   running   2d
    
  6. Installez Apigee Redis :

    Effectuez un dry run :

    helm upgrade redis apigee-redis/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml \
      --dry-run
    

    Installez le chart :

    helm upgrade redis apigee-redis/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml
    

    Vérifiez qu'elle est opérationnelle en vérifiant son état :

    kubectl -n apigee get apigeeredis default
    
    NAME      STATE     AGE
    default   running   2d
    
  7. Installez le gestionnaire d'entrée Apigee :

    Effectuez un dry run :

    helm upgrade ingress-manager apigee-ingress-manager/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml \
      --dry-run
    

    Installez le chart :

    helm upgrade ingress-manager apigee-ingress-manager/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml
    

    Vérifiez qu'il est opérationnel en vérifiant sa disponibilité :

    kubectl -n apigee get deployment apigee-ingressgateway-manager
    
    NAME                            READY   UP-TO-DATE   AVAILABLE   AGE
    apigee-ingressgateway-manager   2/2     2            2           2d
    
  8. Installez l'organisation Apigee. Si vous avez défini la variable d'environnement $ORG_NAME dans votre interface système, vous pouvez l'utiliser dans les commandes suivantes :

    Effectuez un dry run :

    helm upgrade $ORG_NAME apigee-org/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml \
      --dry-run
    

    Installez le chart :

    helm upgrade $ORG_NAME apigee-org/ \
      --install \
      --namespace apigee \
      --atomic \
      -f overrides.yaml
    

    Vérifiez qu'elle est opérationnelle en vérifiant l'état de l'organisation correspondante :

    kubectl -n apigee get apigeeorg
    
    NAME                      STATE     AGE
    apigee-org1-xxxxx          running   2d
    
  9. Installez l'environnement.

    Vous devez installer un environnement à la fois. Spécifiez l'environnement avec --set env=ENV_NAME. Si vous avez défini la variable d'environnement $ENV_NAME dans votre interface système, vous pouvez l'utiliser dans les commandes suivantes :

    Effectuez un dry run :

    helm upgrade ENV_RELEASE_NAME apigee-env/ \
      --install \
      --namespace apigee \
      --atomic \
      --set env=$ENV_NAME \
      -f overrides.yaml \
      --dry-run
    

      ENV_RELEASE_NAME est un nom utilisé pour suivre l'installation et les mises à niveau du graphique apigee-env. Ce nom doit être différent des autres noms de versions Helm de votre installation. Cette valeur est généralement identique à ENV_NAME. Toutefois, si votre environnement a le même nom que votre groupe d'environnements, vous devez utiliser des noms de version différents pour l'environnement et le groupe d'environnements, par exemple dev-env-release et dev-envgroup-release. Pour en savoir plus sur les versions dans Helm, consultez la section Trois grands concepts dans la documentation Helm.

    Installez le chart :

    helm upgrade ENV_RELEASE_NAME apigee-env/ \
      --install \
      --namespace apigee \
      --atomic \
      --set env=$ENV_NAME \
      -f overrides.yaml
    

    Vérifiez qu'il est opérationnel en vérifiant l'état de l'environnement correspondant :

    kubectl -n apigee get apigeeenv
    
    NAME                          STATE       AGE   GATEWAYTYPE
    apigee-org1-dev-xxx            running     2d
    
  10. Installez les groupes d'environnements (virtualhosts).
    1. Vous devez installer un groupe d'environnements (hôte virtuel) à la fois. Spécifiez le groupe d'environnement avec --set envgroup=ENV_GROUP. Si vous avez défini la variable d'environnement $ENV_GROUP dans votre interface système, vous pouvez l'utiliser dans les commandes suivantes : Répétez les commandes suivantes pour chaque groupe d'environnements mentionné dans votre fichier overrides.yaml :

      Effectuez un dry run :

      helm upgrade $ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \
        --install \
        --namespace apigee \
        --atomic \
        --set envgroup=$ENV_GROUP \
        -f overrides.yaml \
        --dry-run
      

        ENV_GROUP_RELEASE_NAME est un nom utilisé pour suivre l'installation et les mises à niveau du graphique apigee-virtualhosts. Ce nom doit être différent des autres noms de versions Helm de votre installation. Cette valeur est généralement identique à ENV_GROUP. Toutefois, si votre groupe d'environnements porte le même nom qu'un environnement de votre installation, vous devez utiliser des noms de version différents pour le groupe d'environnements et l'environnement, par exemple dev-envgroup-release et dev-env-release. Pour en savoir plus sur les versions dans Helm, consultez la section Trois grands concepts dans la documentation Helm.

      Installez le chart :

      helm upgrade $ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \
        --install \
        --namespace apigee \
        --atomic \
        --set envgroup=$ENV_GROUP \
        -f overrides.yaml
      
    2. Vérifiez l'état de la ressource ApigeeRoute (AR).

      L'installation de virtualhosts crée ApigeeRouteConfig (ARC) qui crée ApigeeRoute en interne une fois que l'observateur Apigee extrait les détails liés au groupe d'environnement du plan de contrôle. Par conséquent, vérifiez que l'état d'AR correspondant est en cours d'exécution :

      kubectl -n apigee get arc
      
      NAME                                STATE   AGE
      apigee-org1-dev-egroup                       2d
      
      kubectl -n apigee get ar
      
      NAME                                        STATE     AGE
      apigee-org1-dev-egroup-xxxxxx                running   2d
      

Étape suivante

Installations utilisant Workload Identity

Si vous installez Apigee hybrid sur GKE et que vous configurez Workload Identity pour authentifier les comptes de service, vous allez configurer les associations entre les comptes de service Kubernetes et Google pour votre cluster à l'étape suivante.

1 2 3 4 5 6 7 8 9 10 11 (SUIVANT) Étape 12 : Configurer Workload Identity

Toutes les autres installations

À l'étape suivante, vous allez configurer la passerelle d'entrée Apigee et déployer un proxy pour tester votre installation.

(SUIVANT) Étape 1 : Exposer l'entrée Apigee 2