Al ejecutar microservices Java en Kubernetes, se requiere gestión del ciclo de vida de la aplicación, monitoreo y gobernanza de servicios además del entorno de ejecución del clúster. Enterprise Distributed Application Service (EDAS) añade estas capacidades a Container Service for Kubernetes (ACK), lo que permite desplegar, monitorear y gobernar aplicaciones Java en contenedores desde una sola consola.
Esta guía le acompaña a través de tres etapas: creación de un clúster de ACK, importación a EDAS y despliegue de una aplicación Java desde una imagen de contenedor.
Funcionamiento

Cree un clúster de ACK en la consola de ACK.
Importe el clúster a EDAS para habilitar la gestión, el monitoreo y la gobernanza de aplicaciones.
Despliegue su aplicación Java desde una imagen de contenedor en la consola de EDAS.
Requisitos previos
Antes de empezar, asegúrese de haber cumplido con lo siguiente:
-
Activado EDAS y ACK para su cuenta de Alibaba Cloud
Creado un namespace de microservicios. Consulte Manage a microservice namespace
Otorgado los roles predeterminados de ACK a su cuenta. Consulte ACK default roles
Paso 1: Crear un clúster de ACK
Inicie sesión en la consola de ACK y cree un clúster administrado de Kubernetes. Para obtener instrucciones, consulte Crear un clúster administrado de Kubernetes.
Clústeres ACK Serverless: Para utilizar Alibaba Cloud Service Mesh (ASM) después de importar un clúster ACK Serverless a EDAS, aplique la siguiente configuración durante la creación del clúster:
|
Configuración |
Valor |
|
VPC |
Create VPC |
|
Service Discovery |
PrivateZone |
Si establece VPC en Select Existing VPC, compruebe que el clúster contenga los recursos de VPC y vSwitch obligatorios. Para más información, consulte Crear un clúster ACK Serverless.
Paso 2: Importar el clúster de ACK a EDAS
La importación de un clúster de ACK instala automáticamente los siguientes componentes:
|
Componente |
Propósito |
|
ack-ahas-sentinel-pilot |
Limitación de velocidad y degradación (protección de aplicaciones) |
|
ack-arms-pilot |
Agente de Application Real-Time Monitoring Service (ARMS) |
|
ack-arms-prometheus |
Monitoreo con Prometheus |
Para importar el clúster:
Inicie sesión en la consola de EDAS.
En el panel de navegación izquierdo, seleccione Resource Management > Container Service Kubernetes Clusters.
En la barra de navegación superior, seleccione la región de su clúster de ACK y luego haga clic en Synchronize Container Service Kubernetes Cluster.
Localice su clúster y haga clic en Import en la columna Actions.
En el cuadro de diálogo Precheck for Import, haga clic en Continue.
-
En el cuadro de diálogo Import Kubernetes Cluster:
Seleccione un namespace de microservicios de la lista desplegable Microservice Namespace.
Active o desactive Service Mesh según sus necesidades.
Haga clic en Import.
Verificación de la importación: La importación se considera exitosa cuando Cluster Status muestra Running y Import Status muestra Imported.
Paso 3: Desplegar la aplicación Java
3a. Crear la aplicación
Inicie sesión en la consola de EDAS.
En el panel de navegación izquierdo, seleccione Application Management > Applications.
En la barra de navegación superior, seleccione una región y un namespace de microservicios.
Haga clic en Create Application.
3b. Configurar la información básica
En el paso Basic Information, establezca los siguientes parámetros y haga clic en Next.
|
Parámetro |
Valor para esta guía |
|
Cluster Type |
Kubernetes Clusters. Los clústeres de Kubernetes son compatibles con ASM. |
|
Application Source Type |
Default |
|
Hosted Applications |
Java |
|
Select Application |
Custom. Una imagen personalizada proporciona su propio entorno de ejecución integrado. |
OpenJDK 17 es compatible con Dubbo 2.7.14 y versiones posteriores, o Dubbo 3.0.6 y versiones posteriores.
Datos de pruebas de compatibilidad de OpenJDK 17
|
Versión de Dubbo |
Versión de Spring Boot |
Versión del cliente Nacos |
Llamada a API |
Monitoreo ARMS |
Lista de servicios |
|
2.7.14 |
2.7.9 |
1.4.4 |
Compatible |
Compatible |
Compatible |
|
2.7.14 |
2.7.9 |
2.1.2 |
Compatible |
Compatible |
Compatible |
|
2.7.14 |
2.7.9 |
2.2.0 |
Compatible |
Compatible |
Compatible |
|
2.7.22 |
2.7.9 |
1.4.4 |
Compatible |
Compatible |
Compatible |
|
2.7.22 |
2.7.9 |
2.1.2 |
Compatible |
Compatible |
Compatible |
|
2.7.22 |
2.7.9 |
2.2.0 |
Compatible |
Compatible |
Compatible |
|
3.0.6 |
2.7.9 |
1.4.4 |
Compatible |
Compatible |
Compatible |
|
3.0.6 |
2.7.9 |
2.1.2 |
Compatible |
Compatible |
Compatible |
|
3.0.6 |
2.7.9 |
2.2.0 |
Compatible |
Compatible |
Compatible |
|
3.1.7 |
2.7.9 |
1.4.4 |
Compatible |
Compatible |
Compatible |
|
3.1.7 |
2.7.9 |
2.1.2 |
Compatible |
Compatible |
Compatible |
|
3.1.7 |
2.7.9 |
2.2.0 |
Compatible |
Compatible |
Compatible |
3c. Configurar el despliegue
En el paso Configurations, establezca los siguientes parámetros y haga clic en Next.
Entorno
|
Parámetro |
Descripción |
|
Microservice Namespace |
Seleccione el namespace que creó anteriormente. Si no se especifica, el valor predeterminado es Default. Para crear uno nuevo, haga clic en Create Microservice Namespace. Consulte la sección "Crear un namespace" en Gestión de namespaces de microservicios. |
|
Cluster |
Seleccione un clúster de Kubernetes. Si el clúster aún no se ha importado a EDAS, seleccione This cluster is used for the first time in EDAS para importarlo durante la creación de la aplicación y, a continuación, verifique si Alibaba Cloud Service Mesh está activado. La importación del clúster tarda cierto tiempo. No es necesario que el clúster pertenezca al mismo namespace de microservicios. |
|
K8s Namespace |
Namespace de Kubernetes para la aplicación. Opciones: default, kube-system (objetos del sistema), kube-public (legible por todos los usuarios, incluidos los no autenticados). Para crear un namespace personalizado, haga clic en Create Kubernetes Namespace. Los nombres pueden contener dígitos, letras minúsculas y guiones (-); deben tener entre 1 y 63 caracteres, y comenzar y terminar con una letra o un dígito. |
Detalles de la aplicación
|
Parámetro |
Descripción |
|
Application Name |
Debe comenzar con una letra. Puede contener dígitos, letras y guiones (-). Máximo de 36 caracteres. |
|
Application Description |
Opcional. Máximo de 128 caracteres. |
Origen de la imagen
|
Parámetro |
Descripción |
|
Image Type: Configure Image |
Utilice una imagen de contenedor de Alibaba Cloud Container Registry (ACR). |
|
-- Current Account |
Seleccione la Region, el Container Registry, el Image Repository Namespace, el Image Repository Name y una versión de imagen. |
|
-- Other Alibaba Cloud Accounts (repositorio público) |
Introduzca la Full Image Address. |
|
-- Other Alibaba Cloud Accounts (repositorio privado) |
Utilice el componente aliyun-acr-credential-helper para extraer imágenes sin necesidad de un secreto. Consulte Use the aliyun-acr-credential-helper component to pull images without secrets. |
|
Image Type: Demo Image |
Utilice una imagen de demostración proporcionada por EDAS y seleccione una versión de imagen. Las imágenes de demostración no están disponibles para Apsara Stack. |
Los usuarios de RAM deben contar con los permisos necesarios para usar imágenes de Container Registry Enterprise Edition. Consulte Configure policies for RAM users to access Container Registry.
Recursos
|
Parámetro |
Descripción |
|
Total Pods |
Número de pods a desplegar. El máximo depende de la capacidad del clúster. |
|
Single-pod Resource Quota |
CPU, memoria y almacenamiento efímero por pod. El valor predeterminado |
3d. Configurar opciones avanzadas (opcional)
En el paso Advanced Settings, configure cualquiera de las siguientes opciones según sea necesario:
Si su aplicación utiliza JDK 11 o JDK 17, agregue la anotación correspondiente:
|
Versión de JDK |
Anotación |
|
JDK 11 |
|
|
JDK 17 |
|
3e. Enviar y verificar el despliegue
Después de configurar las opciones avanzadas, haga clic en Create Application.
En el paso Creation Completed, haga clic nuevamente en Create Application.
En el cuadro de diálogo Confirm Application Change Precheck, haga clic en Start Precheck.
-
Revise los resultados de la comprobación previa y haga clic en Continue.
Para volver a ejecutar la comprobación previa después de realizar cambios, haga clic en Check Again.
El despliegue tarda unos minutos. Siga el progreso en la página Change List.
Verificación del despliegue: En la página Application Overview, confirme que todos los pods muestren el estado running. Haga clic en el estado de un pod para consultar sus Deployments, pods y configuraciones avanzadas.
Configuración del acceso de red
Después del despliegue, configure el acceso de red para su aplicación:
Acceso público: Vincule una instancia de Server Load Balancer (SLB) orientada a Internet. Consulte Vincular instancias CLB.
Acceso interno: Vincule una instancia de SLB interna para permitir el acceso desde otros recursos en la misma VPC. Consulte Reutilizar una instancia CLB.
Contacto
Si tiene preguntas o sugerencias sobre clústeres de ACK y clústeres ACK Serverless en EDAS, únase al grupo de DingTalk (ID de grupo: 23197114) para obtener soporte técnico.