En este documento, se proporciona una descripción general de las políticas globales en Gestor de extensiones de VM. Puedes usar políticas de extensiones globales para administrar extensiones en varias zonas y regiones dentro de un proyecto. Cuando aplicas una política global, Gestor de extensiones de VM 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.
Para obtener más información, consulta Acerca de Gestor de extensiones de VM.
En el siguiente diagrama, se ilustra cómo puedes usar una política de extensiones global para aplicar extensiones a las VMs en diferentes zonas y regiones de tu proyecto:
Como se muestra en el diagrama anterior, puedes definir una política de extensiones global a nivel del proyecto. Gestor de extensiones de VM aplica esta política a todas las VMs que coinciden con tus criterios de selección. Por ejemplo, puedes seleccionar VMs con la etiqueta env=prod en todas las zonas y regiones del proyecto. En este caso, Gestor de extensiones de VM aplica las extensiones que especificas, como el Agente de operaciones y la extensión para SAP, solo a estas VMs.
Planes de lanzamiento para 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. Si usas 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. El período predeterminado para este lanzamiento 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 de destino en todas las zonas y regiones de inmediato. Este enfoque es útil para 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 ondas de implementación según las zonas o regiones y el tiempo de espera entre las ondas. Para obtener más
información, consulta el rolloutPlans.insert
método.
Comportamiento de conflicto de lanzamiento
Cuando creas o actualizas una política de extensiones global, puede ocurrir un conflicto en las siguientes situaciones:
- Cuando creas una política global. Se produce un conflicto en el nombre de la política si ya existe una política zonal con el mismo nombre que la política global en una zona.
- Cuando actualizas una política global. Se produce un conflicto en el contenido de la política si se modificó una política zonal existente de forma independiente del lanzamiento de la política global. Por ejemplo, si modificas una política zonal con una llamada a la API zonal y un lanzamiento posterior de la política global intenta modificar esa misma política zonal, se produce un conflicto.
Para evitar estos conflictos, puedes especificar un comportamiento de conflicto para el lanzamiento. Este parámetro de configuración determina si la política global debe reemplazar 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, el lanzamiento 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.
- Reemplazar. Si estableces el comportamiento de conflicto en
overwrite, la política global reemplaza las políticas zonales en conflicto y se aplica la configuración de la política global en esa zona.
Los conflictos de lanzamiento y la prioridad de la política son funciones distintas que funcionan de forma independiente. Para obtener más información sobre la prioridad de la política, consulta Prioridad de la política y resolución de conflictos.
Para obtener más información sobre el conflicto de lanzamiento, consulta el conflictBehavior parámetro en el globalVmExtensionPolicies.insert
método.
Reintenta un lanzamiento
Cuando actualizas o borras una política de extensiones global, Gestor de extensiones de VM inicia un lanzamiento nuevo para aplicar los cambios según el plan de lanzamiento. 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.
Reintenta un lanzamiento de política de actualización
En la siguiente lista, se describen situaciones en las que es posible que debas volver a intentar un lanzamiento de política de actualización:
- Se agregaron zonas nuevas. Si las zonas nuevas Cloud de Confiance están disponibles después de lanzar una política global, Gestor de extensiones de VM no aplica automáticamente las políticas existentes a las VMs de la zona nueva. Puedes volver a intentar el lanzamiento de la actualización para aplicar la política de extensiones a las VMs de las zonas nuevas.
- Revierte los cambios en la política zonal. 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 un lanzamiento de actualización con
conflictBehaviorestablecido enoverwrite. Este parámetro de configuración vuelve a aplicar la configuración de la política global y reemplaza los cambios en la política zonal. - Lanzamiento interrumpido. Si falla un lanzamiento anterior antes de completarse, puedes iniciar un lanzamiento nuevo para volver a intentar la actualización.
- Acelera un lanzamiento. Si un lanzamiento 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 actualización.
Para obtener más información, consulta el parámetro retryUuid en el
globalVmExtensionPolicies.update método.
Cuando vuelvas a intentar un lanzamiento, 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.
Reintenta un lanzamiento de política de eliminación
En la siguiente lista, se describen situaciones en las que es posible que debas volver a intentar un 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 lanzamiento nuevo para volver a intentar la operación de eliminación.
- Acelera 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
globalVmExtensionPolicies.delete método.
¿Qué sigue?
Para obtener más información sobre la administración de extensiones, consulta los siguientes recursos: