Paso 2: Instala y configura GKE On-Prem

En este paso se explica cómo descargar e instalar apigeectl en tu máquina de administrador de Anthos GKE desplegada on-premise. Entre los pasos se incluyen los siguientes: configurar los directorios de instalación, crear cuentas de servicio de GCP que sean necesarias para que se comuniquen los componentes híbridos y crear credenciales TLS que sean necesarias para que funcione Apigee hybrid.

Descargar e instalar apigeectl

apigeectl es la interfaz de línea de comandos (CLI) para instalar y gestionar Apigee Hybrid en un clúster de Kubernetes.

Para obtener apigeectl:

  1. Descarga el paquete de lanzamiento en tu máquina de administrador de GKE On-prem:

    Mac de 64 bits:

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

    Linux de 64 bits

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

    Mac de 32 bits:

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

    Linux de 32 bits

    curl -LO https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.1.1/apigeectl_linux_32.tar.gz
  2. Crea un directorio en tu sistema que sirva como directorio base para la instalación de Apigee hybrid.
  3. Extrae el contenido del archivo gzip descargado en el directorio base que acabas de crear. Por ejemplo:

    tar xvzf filename.tar.gz -C path-to-base-directory
  4. cd al directorio base.
  5. De forma predeterminada, el contenido de tar se expande en un directorio con la versión y la plataforma en su nombre. Por ejemplo: ./apigeectl_1.0.0-f7b96a8_linux_64. Cambia el nombre de ese directorio a apigeectl:

    mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl
  6. cden el directorio. Por ejemplo:
  7. cd ./apigeectl

    Este directorio será el directorio principal de apigeectl. Es donde se encuentra el comando ejecutable apigeectl.

  8. Crea una variable de entorno para almacenar la ruta de este directorio principal:

    export APIGEECTL_HOME=$PWD

  9. Comprueba que la variable contenga la ruta correcta:
    echo $APIGEECTL_HOME

Configurar la estructura del directorio del proyecto

La estructura de directorios que se describe a continuación es una sugerencia. Separa el software de lanzamiento de Apigee hybrid de los archivos de configuración que debes crear. Si utilizas la variable $APIGEECTL_HOME y los enlaces simbólicos que crearás, podrás cambiar fácilmente a una nueva versión del software si quieres. Consulta también Actualizar la versión de Apigee Hybrid.

  1. Asegúrate de que estás en el directorio base (el directorio en el que se encuentra el directorio apigeectl).
  2. Crea una carpeta llamada hybrid-files. Puedes asignar el nombre que quieras al directorio, pero en la documentación se usará el nombre hybrid-files de forma coherente. Más adelante, almacenarás archivos de configuración, claves de cuentas de servicio y certificados TLS en esta carpeta. Esta carpeta te permite mantener tus archivos de configuración separados de la instalación del software apigeectl:
    mkdir hybrid-files
  3. La estructura de directorios actual ahora es la siguiente:
    pwd && ls
    /hybrid-base-directory
      apigeectl
      hybrid-files
  4. cd en la carpeta hybrid-files:
    cd hybrid-files
  5. En el directorio hybrid-files, crea los tres subdirectorios siguientes para organizar los archivos que crearás más adelante:
    mkdir overrides
    mkdir service-accounts
    mkdir certs
  6. En el directorio hybrid-files, crea enlaces simbólicos a $APIGEECTL_HOME. Estos enlaces simbólicos te permiten ejecutar el comando apigeectl desde el directorio 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. Para comprobar que los enlaces simbólicos se han creado correctamente, ejecuta este comando y asegúrate de que las rutas de los enlaces apuntan a las ubicaciones correctas:
    ls -l | grep ^l
    

Crear cuentas de servicio

Apigee hybrid usa cuentas de servicio de GCP para permitir que los componentes híbridos se comuniquen haciendo llamadas a APIs autorizadas. En este paso, usarás una herramienta de línea de comandos de Apigee hybrid para crear un conjunto de cuentas de servicio. La herramienta también descarga las claves privadas de la cuenta de servicio. A continuación, debes añadir estas claves al archivo de configuración de tu clúster híbrido de Apigee.

Crea las claves:

  1. Asegúrate de que estás en el directorio base_directory/hybrid-files:
  2. Ejecuta el siguiente comando desde el directorio hybrid-files. Este comando crea una cuenta de servicio para el componente apigee-metrics y coloca la clave descargada en el directorio ./service-accounts:
    ./tools/create-service-account apigee-metrics ./service-accounts

    Cuando veas este mensaje, introduce 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 es la primera vez que se crea una AS con el nombre exacto asignado por la herramienta, esta se creará y no tendrás que hacer nada más.

    Sin embargo, si ves el siguiente mensaje y la siguiente petición, selecciona y para generar nuevas claves:

    [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. Ahora, crea el resto de las cuentas de servicio:
    ./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. Verifica que se hayan creado las claves de cuenta de servicio. Eres responsable de almacenar estas claves privadas de forma segura. Los nombres de los archivos de claves tienen como prefijo el nombre de tu proyecto de GCP. Por ejemplo:
    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

Crear certificados TLS

Debes proporcionar certificados TLS para las pasarelas de entrada de MART y de tiempo de ejecución en tu configuración de Apigee hybrid. Las credenciales que se usen para la pasarela MART deben estar autorizadas por una autoridad de certificación (CA). Para esta guía de inicio rápido (una instalación de prueba que no es de producción), la pasarela de tiempo de ejecución puede aceptar credenciales autofirmadas.

En este paso, crearás los archivos de credenciales TLS y los añadirás al directorio base_directory/hybrid-files/certs. En el paso 3: Configura el clúster, añadirás las rutas de los archivos al archivo de configuración del clúster.

Crear credenciales TLS para la pasarela de tiempo de ejecución

La pasarela de entrada del entorno de ejecución (la pasarela que gestiona el tráfico del proxy de API) requiere un par de clave y certificado TLS. Para esta instalación de inicio rápido, puedes usar credenciales autofirmadas. En los siguientes pasos, se usa openssl para generar las credenciales.

  1. Asegúrate de que estás en el directorio base_directory/hybrid-files.
  2. Ejecuta el siguiente comando desde el directorio hybrid-files:
    openssl req  -nodes -new -x509 -keyout ./certs/keystore.key -out \
        ./certs/keystore.pem -subj '/CN=mydomain.net' -days 3650

    Este comando crea un par de clave y certificado autofirmado que puedes usar para la instalación de la guía de inicio rápido. El CN mydomain.net puede ser cualquier valor que quieras para las credenciales autofirmadas.

  3. Comprueba que los archivos estén en el directorio ./certs:
    ls ./certs
      keystore.pem
      keystore.key

    Donde keystore.pem es el archivo de certificado TLS con firma automática y keystore.key es el archivo de clave.

Crear credenciales TLS para la pasarela MART

Como se indica en la sección Antes de empezar, debes usar un par de clave y certificado TLS autorizado para la configuración de la pasarela MART. Si aún no lo has hecho, obtén o crea estas credenciales ahora.

  1. Obtenga o cree un par de claves y certificado TLS autorizado por una autoridad de certificación. Se proporciona un ejemplo que muestra cómo obtener estas credenciales mediante la autoridad de certificación Let's Encrypt. Ten en cuenta que el nombre común (CN) del certificado debe ser un nombre de DNS válido. Para ver los pasos del ejemplo, consulta Ejemplo sobre cómo obtener credenciales TLS.
  2. Copia las credenciales en el directorio base_directory/hybrid-files/certs.
  3. Cuando hayas terminado, deberías tener dos pares de archivos de credenciales en el directorio ./certs. Por ejemplo:
    ls ./certs
      fullchain.pem
      privkey.key
      keystore.pem
      keystore.key

    donde fullchain.pem es el archivo de certificado TLS autorizado y privkey.key es el archivo de clave autorizado.

Resumen

Ahora tienes una base desde la que puedes configurar, desplegar y gestionar Apigee hybrid en tu clúster de Kubernetes. A continuación, crearás un archivo que Kubernetes usará para desplegar los componentes del tiempo de ejecución híbrido en el clúster.

1 2 (SIGUIENTE) Paso 3: Configurar el clúster 4