Paso 2: Instala y configura GKE

En este paso se explica cómo descargar e instalar apigeectl, configurar los directorios de instalación y crear cuentas de servicio de Google Cloud y credenciales de TLS que son necesarias para que funcione Apigee hybrid.

Descarga e instala apigeectl

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

Sigue estos pasos para obtener apigeectl:

  1. Descarga el paquete de lanzamiento de tu sistema operativo con el siguiente comando:

    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. Cambia 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 con el siguiente comando:

    mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl
  6. Cambia al directorio. Por ejemplo:
    cd ./apigeectl

    Este directorio es el apigeectldirectorio principal. Es donde se encuentra el comando ejecutable apigeectl.

  7. Crea una variable de entorno para almacenar esta ruta de directorio principal con el siguiente comando:
    export APIGEECTL_HOME=$PWD
  8. Verifica que la variable contiene la ruta correcta con el siguiente comando:
    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 crees, puedes 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 usa el nombre hybrid-files de forma sistemática. 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 es la siguiente:
    pwd && ls
    /hybrid-base-directory
      apigeectl
      hybrid-files
  4. Cambia al directorio hybrid-files con el siguiente comando:
    cd hybrid-files
  5. En el directorio hybrid-files, crea los siguientes subdirectorios para organizar los archivos que crearás más adelante con los siguientes comandos:
    mkdir overrides
    mkdir service-accounts
    mkdir certs
  6. En el directorio hybrid-files, crea los siguientes enlaces simbólicos a $APIGEECTL_HOME. Estos enlaces 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 el siguiente 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 Google Cloud para permitir que los componentes híbridos se comuniquen haciendo llamadas a las 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 a tu archivo de configuración del 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 la siguiente petición, 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 cuenta de administrador de servicios 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 petición, introduce 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 con los siguientes comandos:
    ./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 Google Cloud. 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 con el siguiente comando:
    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: Configura el clúster 4