Requisitos previos para la integración en Kubernetes

Estás consultando la documentación de Apigee Edge.
Consulta la documentación de Apigee X.
Información

En este tema, se explican los pasos que debes completar antes de instalar Edge Microgateway como servicio en un clúster de Kubernetes.

En este tema, se analizan los siguientes temas:

  • Los requisitos mínimos para tu clúster de Kubernetes.
  • Cómo instalar y configurar Edge Microgateway.
  • Cómo instalar la configuración base de Edge Microgateway en el clúster de Kubernetes.

Requisitos para tu clúster de Kubernetes

Tu clúster de Kubernetes requiere lo siguiente:

  • Kubernetes versión 1.9 o posterior.
  • La CLI de Kubernetes kubectl v1.9 o superior.
  • Un clúster con al menos 3 nodos y 2 CPU virtuales cada uno

Ejemplo: Crea un clúster de Kubernetes en Google Kubernetes Engine (GKE)

Configura tu máquina de administración de Kubernetes

La máquina de administración de Kubernetes es la máquina local que usas para ejecutar comandos en el clúster de Kubernetes. Por lo general, es una computadora de escritorio que tiene acceso a tus VM de Kubernetes.

Debes instalar las siguientes utilidades en la máquina de administración de Kubernetes:

  • Instala la interfaz de línea de comandos de kubectl 1.9 o posterior.

  • (Solo para GKE) Instala gcloud si ejecutas Kubernetes en GKE.

Crea un clúster de Kubernetes en GKE

  1. Accede al panel de Google Kubernetes Engine (GKE) en Google Cloud Platform (GCP).
  2. Haz clic en Crear clúster.
  3. Selecciona Clúster estándar.
  4. Ingresa un nombre para tu clúster.
  5. Selecciona una zona.
  6. Seleccione Cluster Version 1.9.7-gke-*. Por ejemplo, 1.9.7-gke.6.
  7. Selecciona un tamaño de 3 nodos.
  8. Selecciona 2 CPUs virtuales con 7.5 GB de memoria.
  9. Haz clic en Crear.

    En la siguiente captura de pantalla, se muestra el panel de GKE completo como se describe en los pasos anteriores:

    Panel de GKE

Obtén las credenciales del clúster

  1. Establece el nombre de tu proyecto de GKE:

    gcloud config set project projectName
  2. Configura la zona del proyecto de GKE:

    gcloud config set compute/zone zoneName
  3. Obtén tus credenciales de contenedor de gcloud:

    gcloud container clusters get-credentials cluster-name --zone zone --project project-name

    Donde:

    • cluster-name es el nombre del clúster de Kubernetes que creaste.
    • zone es la zona en la que se encuentra el clúster.
    • project-name es el nombre de tu proyecto de GCP.

    Por ejemplo:

    gcloud container clusters get-credentials edgemicrogateway-cluster --zone us-central1-a --project edgemicro-project
  4. Ejecuta el siguiente comando exactamente como se muestra. El comando otorga permisos de administrador de clústeres al usuario actual. Se requieren permisos de administrador para crear las reglas de RBAC necesarias para el servicio de Edge Microgateway:

    kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value core/account)
    

Instala Edge Microgateway para Kubernetes

  1. Descarga Edge Microgateway para Kubernetes. Si estás en un equipo con macOS o Linux, puedes descargar la última versión o una versión en particular si especificas el nombre de la versión.

    Para obtener la versión más reciente, haz lo siguiente:

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -

    Para obtener una versión específica por número de versión. Ten en cuenta que el número de versión debe tener el prefijo de la letra “v”. Por ejemplo: v3.0.2

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s  version

    Por ejemplo:

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s v3.0.2
  2. Cambia el directorio al directorio de instalación microgateway_Version_OS_ARCH. Por ejemplo:

    cd microgateway_2.5.26_Darwin_x86_64
  3. Examina el directorio de instalación:

    • /install/kubernetes: Archivos .yaml de configuración para la implementación en Kubernetes
    • /samples: aplicaciones de muestra para probar tu instalación
    • /bin: Es el archivo ejecutable edgemicroctl. Con el comando edgemicroctl, se inserta Edge Microgateway en Kubernetes
  4. Agrega el cliente edgemicroctl a tu PATH. Por ejemplo, ejecuta el siguiente comando en un sistema MacOS o Linux:

    export PATH=$PWD/bin:$PATH
  5. Aplica la configuración básica de Edge Microgateway en el clúster de Kubernetes. Con el siguiente comando, se crea un espacio de nombres edgemicro-system y funciones de clúster.

    kubectl apply -f install/kubernetes/edgemicro.yaml
  6. Instalar el NGINX Ingress Controller en el clúster Asegúrate de que no se esté ejecutando ningún otro control Nginix. Para ello, ejecuta kubectl get pods.

    kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml

Verifica la instalación

  1. Para verificar si el controlador Ingress se inició, ejecuta el siguiente comando:

    kubectl get pods --all-namespaces -l app=edgemicro-ingress --watch

    Como se muestra en el siguiente resultado de muestra, los procesos tardan uno o dos minutos en iniciarse. Es normal ver varios ciclos de Error y Restart antes de que STATUS cambie a Running.

    NAMESPACE          NAME                                            READY     STATUS             RESTARTS   AGE
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   1          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Error              2          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   2          40s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Running            3          1m
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running            3          1m
    
  2. Cuando se ejecute el Ingress, puedes cancelar el comando anterior escribiendo Ctrl+C.

  3. Ejecuta este comando para comprobar que los servicios de Kubernetes estén implementados. Deberías ver un resultado similar al resultado de ejemplo que se muestra a continuación:

    kubectl get svc -n edgemicro-system
    

    Resultado de ejemplo:

    NAME                        TYPE           CLUSTER-IP     EXTERNAL-IP    PORT(S)                     AGE
    default-http-backend        ClusterIP      10.19.255.106  <none>         80/TCP                       2h
    edgemicro-ingress           LoadBalancer   10.19.247.156  35.224.24.13   80:30176/TCP,443:32325/TCP   2h
    
  4. Verifica que todos los pods estén en ejecución:

    kubectl get pods -n edgemicro-system
    

    Resultado de ejemplo:

    NAME                                            READY     STATUS    RESTARTS   AGE
    default-http-backend-55c6c69b88-2lvtw           1/1       Running   0          4m
    edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running   3          4m
    

Instala Edge Microgateway

  1. Debes tener instalada Edge Microgateway 2.5.26 o una versión posterior. Para verificarlo, ingresa lo siguiente:

    edgemicro --version
  2. Si no tienes instalado Edge Microgateway 2.5.26 o una versión posterior, ejecuta la secuencia de comandos de instalación:

    npm install edgemicro -g
  3. Si acabas de instalar Edge Microgateway por primera vez o la actualizaste, ejecuta este comando:

    edgemicro init

    Si necesitas ayuda adicional, consulta Instala Edge Microgateway.

Próximo paso

Ya está todo listo para implementar Edge Microgateway en Kubernetes.