Se puede utilizar un controlador de entrada a nivel de clúster para enrutar el tráfico a una implementación de ArcGIS Enterprise en Microsoft Azure Kubernetes Service (AKS). Para obtener más información, consulte Controladores de entrada a nivel de clúster.
Nota:
Realice este flujo de trabajo antes de crear una organización de ArcGIS Enterprise. Puede acceder a ArcGIS Enterprise Manager desde un navegador una vez que se haya implementado y configurado un equilibrador de carga.
Requisitos previos
Revise los requisitos previos generales y asegúrese de que se cumplen los siguientes requisitos previos específicos de AKS:
- Debe haber preparado un clúster de Kubernetes en AKS.
- El controlador de entrada de la pasarela de aplicaciones debe implementarse en su clúster. También debe disponer de Azure Application Gateway en su suscripción. Para obtener más información sobre cómo asegurarse de que el controlador de entrada de la pasarela de aplicaciones está correctamente implementado y configurado para su uso con una pasarela de aplicaciones, consulte la documentación de Azure.
- El CLI de Azure debe estar instalado en su máquina cliente. Asegúrese de que puede autenticarse desde el CLI en la suscripción en la que existe su clúster de AKS.
- Kubectl debe estar instalado en su máquina cliente. Asegúrese de que puede conectarse y emitir comandos al servidor API de Kubernetes asociado al clúster que ha creado.
- Debe haber creado un TLS Secret para almacenar la información del certificado para su objeto Ingress. El certificado TLS almacenado en este secreto debe ser válido para el nombre de dominio totalmente calificado que haya elegido para su espacio de nombres de la implementación de ArcGIS Enterprise on Kubernetes.
- Debe haber creado un registro DNS en el proveedor DNS de su elección, que asigne la dirección IP del front-end de la pasarela de aplicaciones al nombre de dominio totalmente calificado que haya elegido para su implementación de ArcGIS Enterprise on Kubernetes.
Implementar un controlador de entrada a nivel de clúster
Para implementar un controlador de entrada a nivel de clúster para enrutar el tráfico a una implementación de ArcGIS Enterprise en Microsoft AKS, siga estos pasos:
- Abra la plantilla de la carpeta layer-7-templates o copie el siguiente ejemplo en un archivo de su equipo cliente:
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: arcgis-enterprise-ingress namespace: <deploymentNamespace> annotations: kubernetes.io/ingress.class: azure/application-gateway appgw.ingress.kubernetes.io/ssl-redirect: "true" appgw.ingress.kubernetes.io/backend-protocol: "https" appgw.ingress.kubernetes.io/backend-hostname: <deploymentFQDN> appgw.ingress.kubernetes.io/health-probe-hostname: <deploymentFQDN> appgw.ingress.kubernetes.io/health-probe-port: "443" appgw.ingress.kubernetes.io/health-probe-status-codes: "200-399" appgw.ingress.kubernetes.io/health-probe-path: "/<context>/admin" appgw.ingress.kubernetes.io/request-timeout: "600" labels: id: custom-ingress-resource spec: tls: - hosts: - <deploymentFQDN> secretName: <tlsSecretName> rules: - host: <deploymentFQDN> http: paths: - backend: service: name: arcgis-ingress-nginx port: number: 443 path: /<context> pathType: Prefix
- Sustituya los siguientes valores:
- deploymentFQDN: proporcione el nombre de dominio completamente cualificado que se especificó durante la implementación inicial.
- tlsSecretName: proporcione el nombre del TLS Secret que se creó en el espacio de nombres de la implementación.
- namespace: proporcione el espacio de nombres en el que ha implementado ArcGIS Enterprise on Kubernetes.
- context: proporcione el contexto que se especificó durante la implementación.
Nota:
Este valor aparece dos veces y debe sustituirse en ambos casos. Asegúrese de actualizar el valor de la anotación de appgw.ingress.kubernetes.io/health-probe-path.
- Guarde el archivo en su máquina cliente.
Por ejemplo, ingress.yaml.
- Cree el objeto Ingress realizando una de las siguientes acciones:
- Aplique los datos YAML de Ingress a su clúster utilizando el siguiente comando:
kubectl apply -f ingress.yaml
- Al ejecutar el script de implementación de forma silenciosa, defina CLUSTER_INGRESS_CONTROLLER_YAML_FILENAME en la ubicación del archivo YAML de Ingress.
- Aplique los datos YAML de Ingress a su clúster utilizando el siguiente comando:
Una vez completado este flujo de trabajo, se crea el objeto Ingress arcgis-enterprise-ingress. El controlador de entrada de la pasarela de aplicaciones utilizará la información definida en este objeto Ingress YAML para configurar la pasarela de aplicaciones asociada para enrutar el tráfico a su implementación de ArcGIS Enterprise. Una vez que se haya aplicado correctamente este Ingress, su implementación de ArcGIS Enterprise debería ser accesible a través de la pasarela de aplicaciones.
Nota:
Puede que sea necesario actualizar la implementación de arcgis-ingress-controller para establecer una conexión adecuada a través del Ingress recién creado. Si recibe un error al acceder a ArcGIS Enterprise Manager después de crear el Ingress, ejecute lo siguiente:kubectl rollout restart deployment/arcgis-ingress-controller -n <deploymentNamespace>