Paso 2: Instala y configura GKE On-Prem

En este paso, se explica cómo descargar y, luego, instalar apigeectl en tu máquina de administrador local implementada de Anthos GKE. Los pasos incluyen la configuración de los directorios de instalación, la creación de cuentas de servicio de GCP necesarias para que los componentes híbridos se comuniquen y la creación de credenciales TLS necesarias para que Apigee Hybrid funcione.

Descarga y, luego, instala apigeectl

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

Para obtener apigeectl, haz lo siguiente:

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

    Mac (64 bits)

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

    Linux de 64 bits

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

    Mac de 32 bits:

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

    Linux de 32 bits

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.2.0/apigeectl_linux_32.tar.gz
  2. Crea un directorio en tu sistema a fin de que funcione como el directorio base para la instalación de Apigee Hybrid.
  3. Extrae el contenido del archivo gzip que descargaste 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, los contenidos del archivo tar se expanden a 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. cd en el directorio. Por ejemplo:
  7. cd ./apigeectl

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

  8. Crea una variable de entorno para guardar esta ruta de acceso del directorio principal:

    export APIGEECTL_HOME=$PWD

  9. Verifica que la variable guarde la ruta correcta:
    echo $APIGEECTL_HOME

Configura la estructura del directorio del proyecto.

La estructura del directorio que se describe a continuación es un enfoque sugerido. Separa el software de actualización de Apigee Hybrid de los archivos de configuración que debes crear. Mediante el uso de la variable $APIGEECTL_HOME y los vínculos simbólicos que crearás, puedes cambiar con facilidad a una nueva versión de software si lo deseas. Consulta también Actualiza Apigee Hybrid.

  1. Asegúrate de estar en el directorio base (el directorio en el que se encuentra el directorio apigeectl).
  2. Crea una carpeta nueva llamada hybrid-files. Puedes asignar el nombre que desees al directorio, pero en los documentos, el nombre hybrid-files se usará de forma coherente. Más adelante, almacenarás archivos de configuración, claves de cuenta de servicio y certificados TLS en esta carpeta. Esta carpeta te permite mantener tus archivos de configuración separados de la instalación de software apigeectl:
    mkdir hybrid-files
  3. La estructura de directorios actual ahora luce de la siguiente manera:
    pwd && ls
    /hybrid-base-directory
      apigeectl
      hybrid-files
  4. cd en la carpeta hybrid-files:
    cd hybrid-files
  5. Dentro del directorio hybrid-files, crea los siguientes tres subdirectorios para organizar los archivos que crearás más adelante:
    mkdir overrides
    mkdir service-accounts
    mkdir certs
  6. Dentro del directorio hybrid-files, crea vínculos simbólicos a $APIGEECTL_HOME. Estos symlinks 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 verificar que los symlinks se hayan creado correctamente, ejecuta este comando y asegúrate de que las rutas de los vínculos apunten a las ubicaciones correctas:
    ls -l | grep ^l
    

Crea cuentas de servicio

Apigee Hybrid usa cuentas de servicio de GCP para permitir que los componentes híbridos se comuniquen mediante llamadas a la API 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 las cuentas de servicio por ti. Luego, debes agregar estas claves a tu archivo de configuración de clúster de Apigee Hybrid.

Crea las claves:

  1. Asegúrate de estar en el directorio base_directory/hybrid-files:
  2. Ejecuta el siguiente comando desde el directorio hybrid-files: Con este comando, se crea una cuenta de servicio para el componente apigee-metrics y se coloca la clave que descargaste en el directorio ./service-accounts:
    ./tools/create-service-account apigee-metrics ./service-accounts

    Cuando veas este mensaje, ingresa 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 servicio con el nombre exacto asignado por la herramienta, la herramienta solo la crea, y no tienes que realizar ninguna otra acción.

    Sin embargo, si ves el siguiente mensaje y la instrucción que se muestra, selecciona y para generar claves nuevas:

    [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 crearon las claves de la cuenta de servicio. Eres responsable de almacenar estas claves privadas de forma segura. Los nombres de los archivos tienen el prefijo del nombre del 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

Crea certificados TLS

Debes proporcionar certificados TLS para las puertas de enlace de entrada de MART y del entorno de ejecución en la configuración Apigee Hybrid. Las credenciales que se usan para la puerta de enlace de MART deben estar autorizadas por una autoridad certificada (CA). A los fines de esta guía de inicio rápido (una instalación de prueba que no es de producción), la puerta de enlace del entorno de ejecución puede aceptar credenciales autofirmadas.

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

Crea credenciales TLS para la puerta de enlace del entorno de ejecución

La puerta de enlace de entrada del entorno de ejecución (la puerta de enlace que controla el tráfico del proxy de API) requiere un par de claves o un certificado TLS autorizado. Para esta instalación de la guía de inicio rápido, puedes usar credenciales autofirmadas. En los siguientes pasos, openssl se usa para generar las credenciales.

  1. Asegúrate de estar 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 autofirmado de certificado y clave que puedes usar para la guía de inicio rápido. El CN mydomain.net puede ser cualquier valor que desees para las credenciales autofirmadas.

  3. Verifica para asegúrate de que los archivos estén en el directorio ./certs:
    ls ./certs
      keystore.pem
      keystore.key

    En el ejemplo anterior, keystore.pem es el archivo de certificado TLS autofirmado, y keystore.key es el archivo de claves.

Crea credenciales TLS para la puerta de enlace MART

Como se indica en Antes de comenzar, debes usar un par de claves o un certificado TLS autorizado para la configuración de la puerta de enlace de MART. Si aún no lo hiciste, obtén o crea estas credenciales ahora.

  1. Obtén o crea un par de claves o un certificado TLS autorizado por una autoridad certificada. Se proporciona un ejemplo que muestra cómo obtener estas credenciales mediante la CA Let's Encrypt. Tenga en cuenta que el nombre común del certificado (CN) debe ser un nombre de DNS válido. Para conocer los pasos de ejemplo, consulta Obtén credenciales TLS: un ejemplo.
  2. Copia las credenciales en el directorio base_directory/hybrid-files/certs.
  3. Cuando termines, 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

    En el ejemplo anterior, fullchain.pem es el archivo de certificado TLS autorizado, y privkey.key es el archivo de claves autorizado.

Resumen

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

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