Todos los productos
Search
Centro de documentos

Enterprise Distributed Application Service:Uso de la consola de EDAS para implementar una publicación por fases de una aplicación en un clúster de Kubernetes

Última actualización: Sep 03, 2026

Puede publicar una aplicación desplegada en un gran número de instancias o con una arquitectura de servicios compleja en varias fases. En cada fase, la aplicación se actualiza solo en algunas instancias. La publicación por fases se completa cuando la aplicación se ha actualizado en todas las instancias. Este tema describe cómo implementar una publicación por fases de una aplicación en la consola de Enterprise Distributed Application Service (EDAS).

Descripción general

Durante una publicación por fases, la aplicación se actualiza solo en algunas instancias en cada fase. Si ocurre un error durante el proceso, puede finalizarlo y revertir la aplicación. Una vez corregido el error, puede volver a publicar la aplicación por fases.

Cuando una aplicación en un clúster de Kubernetes se publica en varias fases, las instancias de la aplicación se distribuyen equitativamente entre cada fase. Si no es posible una distribución equitativa, se asigna un menor número de instancias a las primeras fases en comparación con las posteriores.

Escenario

Por ejemplo, suponga que una aplicación está desplegada en 10 instancias y es necesario actualizar su versión de V1 a V2 en todas ellas.

La siguiente figura muestra cómo se publica la aplicación en las instancias según una directiva específica en tres fases.

ED分批发布示意图AS

Notas de uso

Si publica una aplicación en un clúster de Kubernetes en varias fases, se crea un Deployment para dicha publicación.

Procedimiento

  1. Inicie sesión en la consola de EDAS consola de EDAS.

  2. En el panel de navegación izquierdo, seleccione Application Management > Applications. En la barra de navegación superior, seleccione una región. En la parte superior de la página Applications, seleccione un namespace de microservicios en la lista desplegable Microservices Namespace. A continuación, haga clic en el nombre de la aplicación que desea gestionar.

  3. En la esquina superior derecha de la página de application overview, seleccione Deploy > Deploy.

  4. En la sección Phased Release de la página Select Deployment Mode, haga clic en Start Deployment en la esquina superior derecha.

  5. En la página Phased Release, cargue el paquete de despliegue de la nueva versión de la aplicación.

    Parámetro

    Descripción

    Application Runtime Environment

    Especifique un entorno de ejecución para la aplicación. Valor predeterminado: Standard Java Application Runtime Environment.

    Java Environment

    Especifique un entorno de Java para la aplicación. Valores válidos: Open JDK 8 [Latest Version:1.8.0_191], Open JDK 7, Open JDK 17, Open JDK 11, JDK 8, JDK 7, Dragonwell 8, Dragonwell 17 y Dragonwell 11.

    Current Environment

    Se muestra el entorno de ejecución actual de la aplicación. Este entorno solo se visualiza si la aplicación se desplegó mediante un paquete JAR o WAR. EDAS actualiza automáticamente el entorno de Java o el entorno de ejecución de su aplicación a la versión más reciente.

    File Uploading Method

    Especifique un método de carga de archivos. Valores válidos: Upload JAR Package y JAR Package Address.

    Nota

    El método de carga de archivos que especifique debe coincidir con el método utilizado para desplegar la aplicación. Se admiten paquetes JAR, paquetes WAR e imágenes. En este ejemplo se utiliza un paquete JAR.

    Upload JAR Package

    Si establece el parámetro File Uploading Method en Upload JAR Package, haga clic en Click to Upload para cargar un paquete JAR.

    JAR Package Address

    Si establece el parámetro File Uploading Method en JAR Package Address, introduzca la URL de un paquete JAR.

    Nota

    Si introduce la URL de un objeto de Object Storage Service (OSS) con firma, EDAS almacena el objeto en caché para operaciones posteriores, como reversiones y escalados horizontales, al publicar la aplicación por fases.

    Container Registry Repository Type

    Nota
    • El parámetro Container Registry Repository Type solo está disponible si despliega aplicaciones Java, Tomcat o EDAS-Container (HSF) en clústeres de ACK. Este parámetro no está disponible si despliega aplicaciones en clústeres de ACK Serverless (ASK).

    • Debe instalar el componente aliyun-acr-credential-helper. Para obtener más información, consulte Use the aliyun-acr-credential-helper component to pull images without secrets.

    • Si desea utilizar un repositorio de imágenes de Container Registry Enterprise Edition, configure el acceso a través de VPC. Para obtener más información, consulte Configure access over VPCs.

    • La tarea de compilación de imágenes para la aplicación se ejecuta en su clúster y consume sus recursos. El límite de recursos predeterminado para una sola tarea de compilación de imágenes es de 1 GB por núcleo. Para obtener más información sobre cómo ajustar los límites de recursos para las tareas de compilación de imágenes, consulte How do I adjust resource limits for image building?

    Si utiliza un repositorio de Container Registry Personal Edition o Container Registry Enterprise Edition para almacenar la imagen creada, la tarea de compilación de imágenes se ejecuta en su clúster. Las tareas de compilación están sujetas a las siguientes reglas de afinidad de programación y tolerancia:

    • EDAS no programa tareas de compilación en nodos que tengan la etiqueta edas.image.build=disable.

    • EDAS programa preferentemente tareas de compilación en nodos que tengan la etiqueta edas.image.build=enable. Sin embargo, también puede programar tareas de compilación en nodos que no tengan la etiqueta edas.image.build.

    • Las tareas de compilación pueden tolerar nodos que tengan el taint key=edas.image.build, effect=NoSchedule.

    Nota
    • Si no desea programar tareas de compilación en nodos específicos, agregue la etiqueta edas.image.build=disable a dichos nodos.

    • Si desea usar un nodo como nodo dedicado para una tarea de compilación, agregue la etiqueta edas.image.build=enable y el taint key=edas.image.build, effect=NoSchedule al nodo. Esto evita que los pods que no toleran el taint se programen en ese nodo.

    Region of Container Registry

    Seleccione la región donde reside su imagen de Container Registry. Este parámetro es obligatorio solo si establece el parámetro Container Registry Repository Type en Container Registry Enterprise Edition.

    Container Registry

    Seleccione su imagen de contenedor. Este parámetro es obligatorio solo si establece el parámetro Container Registry Repository Type en Container Registry Enterprise Edition.

    Image Repository Namespace

    Seleccione el namespace de microservicios donde reside su repositorio de imágenes en la lista desplegable. También puede hacer clic en + Create Namespace para crear un namespace de microservicios.

    Version

    Número de versión del paquete de despliegue JAR. Especifique un número de versión o haga clic en Use Timestamp as Version Number para generar un número de versión.

    Time Zone

    Zona horaria de la aplicación. Especifique la zona horaria de la región indicada en formato UTC.

    Single-pod Resource Quota

    CPU, memoria y almacenamiento temporal que desea reservar para un pod. Si desea especificar un límite, introduzca un valor numérico. Valor predeterminado: 0. Un valor de 0 indica que no se impone ningún límite. Las cuotas máximas o mínimas de CPU, memoria y almacenamiento temporal dependen del rendimiento del clúster.

  6. Configure los parámetros en la sección Release Policy.

    分批发布-发布策略

    Parámetro

    Descripción

    Release Batch

    Número de fases en las que se publica la aplicación en las instancias.

    Batch Mode

    Nota

    El parámetro Batch Mode solo se muestra si establece el parámetro Release Batch en un valor mayor que 1.

    Valores válidos: Automatic y Manual.

    • Automatic: El sistema publica automáticamente la aplicación por fases en un intervalo especificado por el parámetro Interval. El parámetro Interval define el tiempo entre cada fase. Unidad: minutos.

    • Manual: Debe activar manualmente la publicación de la siguiente fase.

    Deployment Interval Between Batches

    Especifique un intervalo para desplegar la aplicación en las instancias de cada fase si el número de instancias es mayor que 1. Unidad: segundos.

  7. (Opcional) Configure los ajustes avanzados según sus requisitos empresariales, como los parámetros en las secciones Scheduling Rules, Startup Commands, Environment Variables, Persistent Storage, Local Storage, Application Life Cycle Management y Log Collection Settings. Para obtener más información, consulte Advanced settings.

  8. Después de configurar los parámetros, haga clic en OK.

Comprobación del resultado

En la página de change list de la aplicación, consulte el estado de la publicación por fases y el valor del parámetro Version a la derecha del parámetro Description. Si todas las fases muestran el estado Success y el valor del parámetro Version ha cambiado a V2, la publicación por fases se completó correctamente.

Reversión de una aplicación

Si durante una publicación por fases la aplicación no se actualiza a la nueva versión en una o más instancias, la publicación permanecerá en estado Executing. Al actualizar una aplicación, si una instancia de la primera fase deja de responder, vaya a la página de change list y haga clic en Roll Back para revertir la aplicación en esa instancia al paquete de despliegue y las configuraciones de la versión anterior.

Pueden ocurrir errores durante una publicación por fases. Para obtener más información sobre cómo solucionar errores, consulte How do I troubleshoot issues in a change process?

  • Errores como la indisponibilidad del paquete de despliegue o fallos en las comprobaciones de estado pueden provocar fallos en las actualizaciones de la aplicación. La actualización actual se finaliza automáticamente y la aplicación se revierte.

  • Durante una actualización, el tiempo máximo de espera para una sola fase es de 30 minutos. Si el proceso de actualización se suspende debido a un error de tiempo de espera, vaya a la página de change list para finalizar el proceso y revertir la aplicación.