Paso 11: Instala Apigee hybrid con Helm

Instalar los componentes del entorno de ejecución de Apigee Hybrid

En este paso, usarás Helm para instalar los siguientes componentes de Apigee hybrid:

  • Operador de Apigee
  • Almacén de datos de Apigee
  • Telemetría de Apigee
  • Apigee Redis
  • Gestor de entrada de Apigee
  • Organización de Apigee
  • Tus entornos de Apigee

Instalará los gráficos de cada entorno uno a uno. El orden en el que instales los componentes es importante.

Notas previas a la instalación

  1. Si aún no has instalado Helm 3.14.2 o una versión posterior, sigue las instrucciones de Instalar Helm.
  2. Apigee hybrid usa las protecciones de Helm para verificar la configuración antes de instalar o actualizar un gráfico. Puede que vea información específica sobre las medidas de protección en el resultado de cada uno de los comandos de esta sección. Por ejemplo:

    # 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 falla alguno de los comandos de helm upgrade, puedes usar el resultado de las medidas de protección para diagnosticar la causa. Consulta Diagnosticar problemas con las medidas de protección.

  3. Antes de ejecutar cualquiera de los comandos de actualización o instalación de Helm, usa la función de prueba de Helm añadiendo --dry-run al final del comando. Consulta helm install --h para ver una lista de los comandos, las opciones y el uso admitidos.
  4. Si va a instalar los gráficos en un clúster que ha migrado de la gestión de apigeectl a la gestión de Helm con la herramienta de migración de Apigee Helm, omita la marca --atomic de todos los comandos siguientes.

Pasos de instalación

  1. Verifica que tengas una versión adecuada de Helm.

    helm version

    La versión de Helm necesaria para esta instalación es la 3.14.2 o una posterior. Si la versión que se muestra no es adecuada, actualiza Helm ejecutando los comandos que se indican a continuación. La secuencia de comandos get_helm.sh obtendrá la versión más reciente y la instalará.

    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

    Después, vuelve a comprobar la versión de Helm.

    helm version
  2. Ve al directorio APIGEE_HELM_CHARTS_HOME. Ejecuta los siguientes comandos desde ese directorio.
  3. Instala Apigee Operator o Controller:

    Prueba de funcionamiento:

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

    Instala el gráfico:

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

    Verifica la instalación del operador de 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.4   1.12.4
    

    Para comprobar que funciona correctamente, consulta su disponibilidad:

    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. Instala el almacén de datos de Apigee:

    Prueba de funcionamiento:

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

    Instala el gráfico:

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

    Comprueba que apigeedatastore esté en funcionamiento consultando su estado antes de continuar con el siguiente paso:

    kubectl -n apigee get apigeedatastore default
    
    NAME      STATE       AGE
    default   running    2d
    
  5. Instala la telemetría de Apigee:

    Prueba de funcionamiento:

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

    Instala el gráfico:

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

    Para comprobar que funciona correctamente, consulta su estado:

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

    Prueba de funcionamiento:

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

    Instala el gráfico:

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

    Para comprobar que funciona correctamente, consulta su estado:

    kubectl -n apigee get apigeeredis default
    
    NAME      STATE     AGE
    default   running   2d
    
  7. Instala Apigee Ingress Manager:

    Prueba de funcionamiento:

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

    Instala el gráfico:

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

    Para comprobar que funciona correctamente, consulta su disponibilidad:

    kubectl -n apigee get deployment apigee-ingressgateway-manager
    
    NAME                            READY   UP-TO-DATE   AVAILABLE   AGE
    apigee-ingressgateway-manager   2/2     2            2           2d
    
  8. Instala la organización de Apigee. Si has definido la variable de entorno $ORG_NAME en tu shell, puedes usarla en los siguientes comandos:

    Prueba de funcionamiento:

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

    Instala el gráfico:

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

    Comprueba que está en funcionamiento consultando el estado de la organización correspondiente:

    kubectl -n apigee get apigeeorg
    
    NAME                      STATE     AGE
    apigee-org1-xxxxx          running   2d
    
  9. Instala el entorno.

    Debes instalar un entorno cada vez. Especifica el entorno con --set env=ENV_NAME. Si has definido la variable de entorno $ENV_NAME en tu shell, puedes usarla en los siguientes comandos:

    Prueba de funcionamiento:

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

      ENV_RELEASE_NAME es un nombre que se usa para hacer un seguimiento de la instalación y las actualizaciones del gráfico apigee-env. Este nombre debe ser único y diferente de los demás nombres de lanzamientos de Helm de tu instalación. Normalmente, es la misma que ENV_NAME. Sin embargo, si tu entorno tiene el mismo nombre que tu grupo de entornos, debes usar nombres de lanzamiento diferentes para el entorno y el grupo de entornos (por ejemplo, dev-env-release y dev-envgroup-release). Para obtener más información sobre las versiones de Helm, consulta la sección Tres conceptos importantes de la documentación de Helm.

    Instala el gráfico:

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

    Para comprobar que está en funcionamiento, consulta el estado del entorno correspondiente:

    kubectl -n apigee get apigeeenv
    
    NAME                          STATE       AGE   GATEWAYTYPE
    apigee-org1-dev-xxx            running     2d
    
  10. Instala los grupos de entornos (virtualhosts).
    1. Debes instalar un grupo de entornos (virtualhost) a la vez. Especifica el grupo de entornos con --set envgroup=ENV_GROUP. Si has definido la variable de entorno $ENV_GROUP en tu shell, puedes usarla en los siguientes comandos. Repite los siguientes comandos para cada grupo de entorno mencionado en tu archivo overrides.yaml:

      Prueba de funcionamiento:

      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 es un nombre que se usa para hacer un seguimiento de la instalación y las actualizaciones del gráfico apigee-virtualhosts. Este nombre debe ser único y diferente de los demás nombres de lanzamientos de Helm de tu instalación. Normalmente, es la misma que ENV_GROUP. Sin embargo, si tu grupo de entornos tiene el mismo nombre que un entorno de tu instalación, debes usar nombres de lanzamiento diferentes para el grupo de entornos y el entorno (por ejemplo, dev-envgroup-release y dev-env-release). Para obtener más información sobre las versiones de Helm, consulta Tres conceptos importantes en la documentación de Helm.

      Instala el gráfico:

      helm upgrade $ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \
        --install \
        --namespace apigee \
        --atomic \
        --set envgroup=$ENV_GROUP \
        -f overrides.yaml
      
    2. Comprueba el estado de ApigeeRoute (AR).

      Al instalar virtualhosts se crea ApigeeRouteConfig (ARC), que a su vez crea ApigeeRoute (AR) una vez que el watcher de Apigee extrae los detalles relacionados con el grupo de entornos del plano de control. Por lo tanto, comprueba que el estado de la AR correspondiente sea "running":

      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
      

Paso siguiente

Instalaciones que usan Workload Identity

Si vas a instalar Apigee hybrid en GKE y vas a configurar Workload Identity para autenticar cuentas de servicio, en el siguiente paso configurarás las asociaciones entre las cuentas de servicio de Kubernetes y las cuentas de servicio de Google de tu clúster.

1 2 3 4 5 6 7 8 9 10 11 (SIGUIENTE) Paso 12: Configurar Workload Identity

Todas las demás instalaciones

En el siguiente paso, configurará la puerta de enlace de entrada de Apigee e implementará un proxy para probar la instalación.

(SIGUIENTE) Paso 1: exponer el ingreso de Apigee 2