Las políticas de extensiones globales te permiten administrar extensiones en varias zonas y regiones dentro de un proyecto. Cuando aplicas una política global, VM Extension Manager garantiza que las VMs de cualquier región o zona que coincidan con los criterios de la política tengan instaladas y en ejecución las extensiones especificadas.
En el siguiente diagrama, se ilustra cómo puedes usar una política de extensión global para aplicar extensiones a VMs en diferentes zonas y regiones de tu proyecto:
Como se muestra en el diagrama anterior, puedes definir una política de extensión global a nivel del proyecto. VM Extension Manager aplica esta política a todas las VMs que coinciden con tus criterios de selección. Por ejemplo, si seleccionas VMs con la etiqueta env=prod en todas las zonas y regiones del proyecto, VM Extension Manager aplicará las extensiones que especifiques, como el Agente de operaciones y la extensión para SAP, solo a estas VMs.
Planes de lanzamiento de políticas globales
Las políticas globales usan planes de lanzamiento para administrar la implementación de extensiones en zonas y regiones. Un plan de lanzamiento te permite controlar la implementación de extensiones, lo que ayuda a minimizar el riesgo de problemas generalizados. Con un plan de lanzamiento, puedes definir el orden y el tiempo de las actualizaciones para garantizar un lanzamiento gradual y controlado.
Cuando creas o actualizas una política global, puedes especificar uno de los siguientes planes de lanzamiento:
- Lanzamiento lento: Este lanzamiento implementa extensiones de forma gradual en diferentes zonas durante un período determinado. El período predeterminado es de cinco días. Se recomienda este enfoque porque te permite identificar y abordar posibles problemas en lanzamientos anteriores antes de que afecten a toda tu flota.
- Lanzamiento rápido: Este lanzamiento implementa extensiones en todas las VMs segmentadas de todas las zonas y regiones de inmediato. Este enfoque es útil en situaciones en las que necesitas implementar una extensión o un parche rápidamente en entornos que no son de producción.
También puedes definir planes de lanzamiento personalizados para especificar las fases de implementación según las zonas o regiones, y el tiempo de espera entre las fases. Para obtener más información, consulta el método rolloutPlans.insert.
Comportamiento de conflictos de lanzamiento
Cuando creas o actualizas una política de extensión global, es posible que se produzca un conflicto en las siguientes situaciones:
- Cuando se crea una política global: Si ya existe en una zona una política zonal que entra en conflicto con la política global
- Cuando se actualiza una política global: Si se modificó una política zonal existente de forma independiente de la implementación de la política global (por ejemplo, con una llamada a la API zonal)
Para ayudarte a evitar estos conflictos, puedes especificar un comportamiento de conflicto para el lanzamiento, que determina si la política global debe anular las políticas zonales en conflicto durante un lanzamiento. Puedes especificar uno de los siguientes comportamientos:
- No reemplazar (predeterminado): Si no especificas un comportamiento de conflicto, la implementación de la política global no reemplaza las políticas zonales en conflicto. La configuración de la política zonal tiene prioridad en esa zona.
- Anular: Si configuras el comportamiento de conflicto como
overwrite, la política global anula las políticas zonales en conflicto, y se aplica la configuración de la política global en esa zona.
Para obtener más información, consulta el parámetro conflictBehavior en el método globalVmExtensionPolicies.insert.
Cómo reintentar un lanzamiento
Cuando actualizas o borras una política de extensión global, VM Extension Manager inicia una nueva implementación para aplicar los cambios según el plan de implementación. Si se interrumpe un lanzamiento o se agregan zonas nuevas, puedes volver a intentar la operación iniciando un lanzamiento nuevo para la misma política.
Cómo reintentar el lanzamiento de una política de actualización
En la siguiente lista, se describen situaciones en las que es posible que debas volver a intentar la implementación de una política de actualización:
- Se agregaron zonas nuevas: Si hay nuevas zonas Google Cloud disponibles después de que implementes una política global, VM Extension Manager no aplicará automáticamente las políticas existentes a las VMs de la zona nueva. Puedes volver a intentar la implementación de la actualización para aplicar la política de extensión a las VMs en las zonas nuevas.
- Cómo revertir los cambios en las políticas zonales: Si las políticas zonales se modificaron de forma independiente (por ejemplo, con una llamada a la API zonal para modificar una política zonal), puedes volver a intentar una implementación de actualización con
conflictBehaviorestablecido enoverwritepara volver a aplicar la configuración de la política global y anular los cambios en la política zonal. - Lanzamiento interrumpido: Si un lanzamiento anterior falla antes de completarse, puedes iniciar uno nuevo para volver a intentar la actualización.
- Acelerar una actualización progresiva: Si una actualización progresiva en curso avanza demasiado lento, puedes iniciar una nueva con un plan
FAST_ROLLOUTo un plan de actualización progresiva personalizado para acelerar el proceso.
Para obtener más información, consulta el parámetro retryUuid en el método globalVmExtensionPolicies.update.
Cuando reintentes una implementación, debes proporcionar un identificador único universal (UUID) para identificar la solicitud de reintento.
Puedes usar cualquier generador de UUID para crear uno. El UUID debe usar el formato hexadecimal de 32 caracteres, por ejemplo, a1a2a3a4-b1b2-c1c2-d1d2-d3d4d5d6d7d8.
Cómo volver a intentar la implementación de una política de eliminación
En la siguiente lista, se describen situaciones en las que es posible que debas volver a intentar el lanzamiento para borrar una política:
- Lanzamiento interrumpido: Si se interrumpió un lanzamiento anterior para borrar una política o no se completó correctamente, puedes iniciar un nuevo lanzamiento para volver a intentar la operación de borrado.
- Acelerar un lanzamiento: Si un lanzamiento de eliminación en curso avanza demasiado lento, puedes iniciar un lanzamiento nuevo con un plan
FAST_ROLLOUTo un plan de lanzamiento personalizado para acelerar el proceso de eliminación.
Para obtener más información, consulta el parámetro retryUuid en el método globalVmExtensionPolicies.delete.
¿Qué sigue?
Para obtener más información sobre la administración de extensiones, consulta los siguientes recursos:
- Instala extensiones de VM creando políticas de extensiones
- Administra extensiones de VM con políticas de extensiones