Todos los productos
Search
Centro de documentos

Container Service for Kubernetes:Descripción general de la distribución de aplicaciones

Última actualización: Sep 09, 2026

Las instancias ACK One Fleet distribuyen aplicaciones en varios clústeres asociados mediante directivas declarativas, sin necesidad de un repositorio Git. Defina una PropagationPolicy para seleccionar los clústeres de destino y una OverridePolicy para aplicar anulaciones de configuración específicas por clúster. Después, deje que la instancia Fleet se encargue automáticamente de la sincronización.

Funcionamiento

Cree los recursos de su aplicación en una instancia Fleet. Luego, defina las directivas de distribución y anulación para controlar cómo se propagan dichos recursos a los clústeres asociados.

  1. Cree los recursos de la aplicación (Deployments, Services, ConfigMaps, entre otros) en la instancia Fleet.

  2. Cree una PropagationPolicy o una ClusterPropagationPolicy para seleccionar los clústeres de destino y establecer las reglas de programación.

  3. De manera opcional, cree una OverridePolicy o una ClusterOverridePolicy para aplicar diferencias de configuración específicas de cada clúster.

  4. La instancia Fleet sincroniza automáticamente las actualizaciones posteriores de los recursos con todos los clústeres de destino.

Nota

Cree la PropagationPolicy y la OverridePolicy solo una vez durante la configuración inicial. Ambas directivas permanecen activas después de su creación y cualquier actualización futura de los recursos se propaga automáticamente. Use kubectl amc para comprobar el progreso de la distribución en los clústeres asociados.

image

Funciones avanzadas

Programación de cargas de trabajo

Las instancias ACK One Fleet programan réplicas de pods en los clústeres asociados según las directivas de distribución. Hay dos modos de programación disponibles:

Programación por peso estático

El administrador del clúster asigna un peso fijo a cada clúster asociado. El programador coloca las réplicas de pods de forma proporcional a esos pesos.

Para más detalles sobre la configuración, consulte replicaScheduling.

Programación por peso dinámico

El programador calcula de forma dinámica el peso de cada clúster con base en los recursos disponibles en ese momento. Después, coloca las réplicas de pods de manera proporcional.

Para más detalles sobre la configuración, consulte Distribución dinámica y desprogramación.

Desprogramación

Los recursos disponibles en los clústeres asociados cambian con el tiempo. Cuando un pod no se puede programar debido a una prioridad baja o a la falta de recursos, el desprogramador lo mueve automáticamente a otro clúster donde haya recursos disponibles. La desprogramación está habilitada de forma predeterminada.

Para conocer los pasos de verificación, consulte Verify descheduling.

Failover a nivel de aplicación

Cuando las cargas de trabajo en línea y fuera de línea comparten un clúster, los trabajos fuera de línea pueden interrumpirse por fallas en los nodos, apropiación de recursos o liberación de preemptible instances. El failover a nivel de aplicación detecta cuándo un trabajo deja de ejecutarse y lo migra automáticamente a otro clúster.

Para ver un ejemplo de configuración con PyTorchJob y gang scheduling, consulte Cómo usar Kube Queue en una instancia Fleet y programar PyTorchJob mediante gang scheduling.

Gang scheduling en múltiples clústeres

El gang scheduling garantiza que todos los pods de un grupo correlacionado se programen al mismo tiempo. Si algún pod no se puede colocar, no se programa ninguno del grupo. Las instancias ACK One Fleet extienden esta función a varios clústeres mediante la preasignación de recursos o comprobaciones dinámicas de recursos para colocar todo el grupo en un solo clúster.

Esta función resulta especialmente útil para trabajos distribuidos de inteligencia artificial y procesamiento de datos:

  • Trabajos de entrenamiento de PyTorch y TensorFlow (arquitectura maestro-trabajador): garantiza que el pod maestro y todos los pods trabajadores se ubiquen en el mismo clúster, lo que mantiene la comunicación directa.

  • Trabajos de Spark (arquitectura controlador-ejecutor): garantiza que el pod controlador y todos los pods ejecutores estén en la misma ubicación, lo que evita la sobrecarga de red entre clústeres.

En conjunto con la desprogramación y el failover a nivel de aplicación, el gang scheduling en múltiples clústeres asegura que los trabajos de inteligencia artificial lleguen a clústeres con recursos suficientes y sigan ejecutándose sin intervención manual. Para más información, consulte Distribución de trabajos.

Recursos distribuibles

Tanto las directivas de distribución como las de anulación admiten todos los recursos de la siguiente tabla. De forma predeterminada, cualquier entidad de seguridad con permiso para crear recursos en una instancia Fleet también tiene permiso para distribuirlos a los clústeres asociados.

Nivel de recurso

Tipo de recurso

APIVersion

Directiva de distribución

Directiva de anulación

Clúster

Namespace

v1

Compatible

Compatible

PersistentVolume

v1

Compatible

Compatible

StorageClass

storage.k8s.io/v1

Compatible

Compatible

CustomResourceDefinition

apiextensions.k8s.io/v1

Compatible

Compatible

Namespace

Deployment

apps/v1

Compatible

Compatible

StatefulSet

apps/v1

Compatible

Compatible

DaemonSet

apps/v1

Compatible

Compatible

Job

batch/v1

Compatible

Compatible

CronJob

batch/v1

Compatible

Compatible

Ingress

networking.k8s.io/v1

Compatible

Compatible

Service

v1

Compatible

Compatible

PersistentVolumeClaim

v1

Compatible

Compatible

ConfigMap

v1

Compatible

Compatible

Secret

v1

Compatible

Compatible

Pod

v1

Compatible

Compatible

LimitRange

v1

Compatible

Compatible

ResourceQuota

v1

Compatible

Compatible

HorizontalPodAutoscaler

autoscaling/v2

Compatible

Compatible

Pasos siguientes

Tarea

Descripción

Referencia

Desplegar su primera aplicación

Use kubectl para crear una PropagationPolicy y distribuir recursos a los clústeres asociados, junto con una OverridePolicy para manejar las diferencias específicas de cada clúster.

Introducción a la distribución de aplicaciones

Comprender los parámetros de las directivas

Conozca el conjunto completo de parámetros de PropagationPolicy y OverridePolicy, incluida la selección de clústeres, la programación de réplicas y las reglas de anulación.

PropagationPolicy y OverridePolicy

Comprobar el progreso de la distribución

Ejecute kubectl amc para consultar el estado de despliegue de una aplicación en los clústeres asociados.

Uso de la línea de comandos de AMC