Implementación de una puerta de enlace autohospedada en Kubernetes con Helm
SE APLICA A: Desarrollador | Premium
Helm es una herramienta de empaquetado de código abierto que ayuda a instalar y administrar el ciclo de vida de las aplicaciones de Kubernetes. Permite administrar gráficos de Kubernetes, que son paquetes de recursos de Kubernetes preconfigurados.
En este artículo se proporcionan los pasos para implementar un componente de puerta de enlace autohospedada de Azure API Management en un clúster de Kubernetes mediante Helm.
Nota:
También puede implementar una puerta de enlace autohospedada en un clúster de Kubernetes habilitado para Azure Arc como una extensión de clúster.
Requisitos previos
- Cree un clúster de Kubernetes u obtenga acceso a uno existente.
Sugerencia
Los clústeres de un solo nodo funcionan bien con fines de desarrollo y evaluación. Use clústeres de varios nodos certificados de Kubernetes en un entorno local o en la nube para cargas de trabajo de producción.
- Creación de una instancia de Azure API Management.
- Aprovisione un recurso de puerta de enlace en la instancia de API Management.
- Instalación de Helm v3.
Adición del repositorio de Helm
Agregue API Management de Azure como nuevo repositorio de Helm.
helm repo add azure-apim-gateway https://azure.github.io/api-management-self-hosted-gateway/helm-charts/
Actualice el repositorio para capturar los gráficos de Helm más recientes.
helm repo update
Compruebe la configuración de Helm enumerando todos los gráficos disponibles.
$ helm search repo azure-apim-gateway NAME CHART VERSION APP VERSION DESCRIPTION azure-apim-gateway/azure-api-management-gateway 1.0.0 2.0.0 A Helm chart to deploy an Azure API Management ...
Implementación de la puerta de enlace autohospedada en Kubernetes
Seleccione Puertas de enlace en Deployment and infrastructure (Implementación e infraestructura).
Seleccione el recurso de puerta de enlace autohospedada que desea implementar.
Seleccione Implementación.
En el cuadro de texto Token se ha generado automáticamente un nuevo token con los valores predeterminados de Expiración y Clave secreta. Ajuste uno o ambos si lo desea y seleccione Generar para crear un nuevo token.
Anote el token y la dirección URL de configuración.
Instalación de la puerta de enlace autohospedada mediante el gráfico de Helm
helm install azure-api-management-gateway \ --set gateway.configuration.uri='<your configuration url>' \ --set gateway.auth.key='<your token>' \ azure-apim-gateway/azure-api-management-gateway
Ejecute el comando. El comando indica al clúster de Kubernetes que:
- Descargue la imagen de la puerta de enlace autohospedada desde Microsoft Container Registry y lo ejecute como contenedor.
- Configure el contenedor para exponer los puertos HTTP (8080) y HTTPS (8081).
Importante
De manera predeterminada, la puerta de enlace usa un servicio ClusterIP y solo se expone dentro del clúster. Puede cambiarlo especificando el tipo de servicio de Kubernetes durante la instalación.
Por ejemplo, puede exponerlo a través de un equilibrador de carga agregando
--set service.type=LoadBalancer
Ejecute el siguiente comando para comprobar que el pod de puerta de enlace se está ejecutando. El nombre del pod será diferente.
kubectl get pods NAME READY STATUS RESTARTS AGE azure-api-management-gateway-59f5fb94c-s9stz 1/1 Running 0 1m
Ejecute el siguiente comando para comprobar que el servicio de puerta de enlace se está ejecutando. El nombre del servicio y las direcciones IP serán diferentes.
kubectl get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE azure-api-management-gateway ClusterIP 10.0.229.55 <none> 8080/TCP,8081/TCP 1m
Vuelva a Azure Portal y confirme que el nodo de puerta de enlace que ha implementado notifica que su estado es correcto.
Sugerencia
Use el comando kubectl logs <gateway-pod-name>
para ver una instantánea del registro de la puerta de enlace autohospedada.
Pasos siguientes
- Para obtener más información sobre la puerta de enlace autohospedada, consulte Introducción a la puerta de enlace autohospedada de Azure API Management.
- Aprenda más sobre las instrucciones para ejecutar la puerta de enlace auto-hospedada en Kubernetes en producción.
- Obtenga información sobre cómo implementar una puerta de enlace autohospedada de API Management en clústeres de Kubernetes habilitados para Azure Arc.
- Obtenga más información sobre las funcionalidades de observabilidad de las puertas de enlace de Azure API Management.