Para cambiar la forma en que una política administra el Agente de operaciones, actualiza la política. Cuando actualizas una política, el Gestor de extensiones de VM implementa los cambios en todas las VMs aplicables, por lo general, en un minuto. Según cómo se cambie una política, el Agente de operaciones se puede instalar en VMs nuevas o desinstalar de VMs existentes.
Antes de comenzar
Antes de comenzar a usar las políticas de extensión del Gestor de extensiones de VM, haz lo siguiente:
Otorga los roles necesarios para administrar las políticas del Gestor de extensiones de VM.
Si quieres usar una interfaz de línea de comandos para crear y administrar políticas de extensiones y aún no instalaste Google Cloud CLI, instala gcloud.
Puedes crear y administrar políticas de extensión de VM zonales con la consola deGoogle Cloud o Google Cloud CLI, gcloud. Puedes crear y administrar políticas de extensión de VM globales con gcloud.
Otorga los roles necesarios para administrar las políticas del Gestor de extensiones de VM
Para obtener los permisos que necesitas para ver, modificar y borrar políticas de extensiones de VM, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto:
-
Para ver las políticas de extensión, haz lo siguiente:
- Visualizador de políticas de extensión de VMs (
roles/compute.vmExtensionPolicyViewer) - Administrador de políticas de extensiones de VM (
roles/compute.vmExtensionPolicyAdmin)
- Visualizador de políticas de extensión de VMs (
-
Para modificar las políticas de extensión:
Administrador de políticas de extensión de VM (
roles/compute.vmExtensionPolicyAdmin) -
Para borrar políticas de extensión:
Administrador de políticas de extensiones de VM (
roles/compute.vmExtensionPolicyAdmin)
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para ver, modificar y borrar las políticas de extensión de VM. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para ver, modificar y borrar las políticas de extensión de VM:
-
Para ver las políticas de extensión, haz lo siguiente:
compute.vmExtensionPolicies.list -
Para ver los detalles de una política de extensión, haz lo siguiente:
compute.vmExtensionPolicies.get -
Para modificar las políticas de extensiones, haz lo siguiente:
compute.vmExtensionPolicies.update -
Para borrar políticas de extensiones, haz lo siguiente:
compute.vmExtensionPolicies.delete
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Para obtener más información sobre los roles y permisos de IAM en Compute Engine, consulta Roles y permisos de Compute Engine.
Modifica las políticas de extensiones que administran el Agente de operaciones
Para cambiar la forma en que una política administra el Agente de operaciones, actualiza la política. Cuando actualizas una política, el Gestor de extensiones de VM implementa los cambios en todas las VMs aplicables, por lo general, en un minuto. Si modificas las etiquetas de inclusión, es posible que el Agente de operaciones se instale en VMs nuevas o se desinstale de las VMs existentes según si las VMs coinciden con las etiquetas actualizadas.
En las siguientes secciones, se muestra cómo cambiar una política para hacer lo siguiente:
- Actualiza la versión fijada del agente en todas las VMs
- Modifica la configuración del Agente de operaciones en todas las VMs
Actualiza la versión fijada del Agente de operaciones en todas las VMs de una zona
Para cambiar la versión fijada del Agente de operaciones en todas las VMs de una zona, haz lo siguiente:
Console
Para crear una política zonal, puedes usar la consola de Google Cloud .
-
En la consola de Google Cloud , ve a la página Políticas de extensiones:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Compute Engine.
- Selecciona la política que quieres actualizar.
- Haz clic en Editar.
- En la sección Administra extensiones, haz lo siguiente:
- En la lista Extensión, selecciona
Google Cloud's Extension for Ops Agent. - Modifica el campo Versión. Usa la versión 2.58.0 o una posterior.
- Haz clic en Listo.
- En la lista Extensión, selecciona
- Haz clic en Guardar.
gcloud
Para crear una política zonal o global, puedes usar gcloud CLI.
Zonal
Usa el comando gcloud compute zone-vm-extension-policies update
con la opción --version para modificar la versión del agente fijada.
Cuando actualizas una política con gcloud, la solicitud actúa como un reemplazo completo. Por lo tanto, cualquier campo opcional que omitas de la solicitud volverá a sus valores predeterminados en lugar de conservar los valores existentes de la política modificada.
Para cambiar la versión del Agente de operaciones instalado en todas las VMs de una zona mediante una política, usa el siguiente comando:
gcloud compute zone-vm-extension-policies update POLICY_NAME \
--project=PROJECT_ID \
--zone=ZONE \
--extensions=ops-agent
--version=ops-agent=VERSION
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- ZONE: Es la zona de destino, por ejemplo,
us-central1-f. - VERSION: Es la versión del Agente de operaciones que se instalará.
Usa la versión 2.58.0 o una posterior.
Para obtener una lista de versiones, consulta la
página de versiones del Agente de operaciones en
GitHub.
Si omites la opción
--version, la política instala la versión más reciente y actualiza el Agente de operaciones cuando se lanza una versión nueva, como se muestra en el ejemplo que instala la versión más reciente.
Global
Usa el comando gcloud compute global-vm-extension-policies update
con la opción --version para modificar la versión del agente fijada.
Cuando actualizas una política con gcloud, la solicitud actúa como un reemplazo completo. Por lo tanto, cualquier campo opcional que omitas de la solicitud volverá a sus valores predeterminados en lugar de conservar los valores existentes de la política modificada.
Para cambiar la versión del Agente de operaciones instalado en todas las VMs con una política global, usa el siguiente comando:
gcloud compute global-vm-extension-policies update POLICY_NAME \
--project=PROJECT_ID \
--extensions=ops-agent \
--rollout-predefined-plan=slow_rollout \
--version=ops-agent=VERSION
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- VERSION: Es la versión del Agente de operaciones que se instalará.
Usa la versión 2.58.0 o una posterior.
Para obtener una lista de versiones, consulta la
página de versiones del Agente de operaciones en
GitHub.
Si omites la opción
--version, la política instala la versión más reciente y actualiza el Agente de operaciones cuando se lanza una versión nueva, como se muestra en el ejemplo que instala la versión más reciente.
Modifica la configuración del Agente de operaciones en todas las VMs
Para modificar la configuración del Agente de operaciones, haz lo siguiente:
Console
Para crear una política zonal, puedes usar la consola de Google Cloud .
-
En la consola de Google Cloud , ve a la página Políticas de extensiones:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Compute Engine.
- Selecciona la política que quieres actualizar.
- Haz clic en Editar.
- En la sección Administra extensiones, haz lo siguiente:
- En la lista Extensión, selecciona
Google Cloud's Extension for Ops Agent. - En el campo Contenido del archivo de configuración, ingresa la cadena de configuración YAML para el Agente de operaciones.
- Haz clic en Listo.
- En la lista Extensión, selecciona
- Haz clic en Guardar.
gcloud
Para crear una política zonal o global, puedes usar gcloud CLI.
Zonal
Usa el comando gcloud compute zone-vm-extension-policies update
con la opción
--config-from-file o la opción --config
para especificar una configuración nueva.
Cuando actualizas una política con gcloud, la solicitud actúa como un reemplazo completo. Por lo tanto, cualquier campo opcional que omitas de la solicitud volverá a sus valores predeterminados en lugar de conservar los valores existentes de la política modificada.
Para cambiar la configuración del Agente de operaciones instalado en todas las VMs de una zona por una política, usa el siguiente comando:
gcloud compute zone-vm-extension-policies update POLICY_NAME \
--project=PROJECT_ID \
--zone=ZONE \
--extensions=ops-agent
--config-from-file=ops-agent="OPS_AGENT_CONFIG_PATH"
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- ZONE: Es la zona de destino, por ejemplo,
us-central1-f. - OPS_AGENT_CONFIG_PATH: Es la ruta de acceso a un archivo que contiene la
cadena de configuración YAML
para el Agente de operaciones. Este archivo debe existir en el entorno en el que ejecutas el
comando de gcloud.
El archivo YAML de configuración del Agente de operaciones puede ser extenso. Colocar la configuración en un archivo y pasarlo a gcloud CLI es mucho menos propenso a errores que intentar ingresar un YAML con el formato correcto en la línea de comandos.
Global
Usa el comando gcloud compute global-vm-extension-policies update
con la opción
--config-from-file o la opción --config
para especificar una configuración nueva.
Cuando actualizas una política con gcloud, la solicitud actúa como un reemplazo completo. Por lo tanto, cualquier campo opcional que omitas de la solicitud volverá a sus valores predeterminados en lugar de conservar los valores existentes de la política modificada.
Para cambiar la configuración del Agente de operaciones instalado en todas las VMs por una política, usa el siguiente comando:
gcloud compute global-vm-extension-policies update POLICY_NAME \
--project=PROJECT_ID \
--extensions=ops-agent \
--rollout-predefined-plan=slow_rollout \
--config-from-file=ops-agent="OPS_AGENT_CONFIG_PATH"
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- OPS_AGENT_CONFIG_PATH: Es la ruta de acceso a un archivo que contiene la
cadena de configuración YAML
para el Agente de operaciones. Este archivo debe existir en el entorno en el que ejecutas el
comando de gcloud.
El archivo YAML de configuración del Agente de operaciones puede ser extenso. Colocar la configuración en un archivo y pasarlo a gcloud CLI es mucho menos propenso a errores que intentar ingresar un YAML con el formato correcto en la línea de comandos.
Si proporcionas una configuración personalizada para el Agente de operaciones cuando creas o actualizas una política de extensión, la política implementa el Agente de operaciones con la configuración personalizada. No es necesario que reinicies el agente de forma manual.
La configuración se almacena con la política de extensión, por lo que no debes incluir
datos sensibles, como contraseñas, en la configuración. Debido a que la configuración
se almacena con la política de extensión, modificar el archivo de configuración no
cambia la configuración del agente. Debes actualizar la configuración
almacenada con la política usando el comando
gcloud adecuado:
- Para las políticas zonales, usa el comando
gcloud compute zone-vm-extension-policiesupdate. - Para las políticas globales, usa el
comando
gcloud compute global-vm-extension-policiesupdate.
Cuando proporcionas una configuración personalizada para el Agente de operaciones, el Gestor de extensiones de VM copia la configuración en la ubicación que usa el Agente de operaciones para los archivos de configuración especificados por el usuario en la VM de destino:
- Linux:
/etc/google-cloud-ops-agent/config.yaml - Windows:
C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml
Si hay un archivo config.yaml presente en la VM, la política de extensión lo reemplaza.
Para obtener información general sobre el uso de la consola deGoogle Cloud y gcloud CLI para administrar las políticas de extensiones de VM, consulta Modifica las extensiones actualizando una política de extensiones VM VMs.
Extiende una política global existente para incluir zonas nuevas (solo global)
Cuando se crean VMs en zonas nuevas después de que se creó y lanzó una política global, el Gestor de extensiones de VM no aplica automáticamente la política a las VMs de las zonas nuevas. Para incluir las VMs en zonas nuevas, debes reiniciar el lanzamiento de la política global.
Para reiniciar el lanzamiento de una política global, usa el comando
gcloud compute global-vm-extension-policies update
y proporciona la opción --rollout-retry-uuid=UUID.
Por ejemplo, supongamos que creaste y lanzaste una política global con el siguiente comando:
gcloud compute global-vm-extension-policies create POLICY_NAME \
--project=PROJECT_ID \
--extensions=ops-agent \
--version=ops-agent=2.61.0 \
--rollout-predefined-plan=slow_rollout \
--config-from-file=ops-agent="/usr/ops-agent-config.yaml"
Para extender la política a las VMs creadas en zonas que no se usaron antes, reinicia el lanzamiento con el siguiente comando:
gcloud compute global-vm-extension-policies update test-policy POLICY_NAME \
--project=PROJECT_ID \
--extensions=ops-agent \
--version=ops-agent=2.61.0 \
--rollout-predefined-plan=slow_rollout \
--config-from-file=ops-agent="/usr/ops-agent-config.yaml" \
--rollout-retry-uuid=UUID
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- UUID: Es un identificador único universal (UUID) que identifica la solicitud de reintento. Puedes usar cualquier generador de UUID para crear uno. Para obtener más información, consulta Reintenta un lanzamiento .
Actualiza una política global para excluir un conjunto de zonas (solo global)
Para actualizar las zonas a las que se aplica una política global que excluye algunas zonas en un
proyecto deGoogle Cloud , debes usar un nuevo plan de lanzamiento personalizado que especifique las
zonas en las que se aplicará la política. Para obtener información sobre cómo crear
planes de lanzamiento personalizados, consulta
Acerca de los planes de lanzamiento. Para especificar un conjunto
de zonas, usa el campo locationSelector.includedLocations
cuando crees el plan de lanzamiento.
Para actualizar una política de extensión que usa un plan de lanzamiento personalizado, usa
el siguiente comando de gcloud compute global-vm-extension-policies update:
gcloud compute global-vm-extension-policies update POLICY_NAME \
--project=PROJECT_ID \
--extensions=ops-agent \
--rollout-custom-plan=projects/PROJECT_ID/locations/global/rolloutPlans/NEW_CUSTOM_PLAN_NAME \
--rollout-retry-uuid=UUID
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- NEW_CUSTOM_PLAN_NAME: Es el nombre asociado con tu plan de lanzamiento personalizado actualizado.
- UUID: Es un identificador único universal (UUID) que identifica la solicitud de reintento. Puedes usar cualquier generador de UUID para crear uno. Para obtener más información, consulta Reintenta un lanzamiento .
Desinstala el Agente de operaciones borrando las políticas de extensión de VM
Para desinstalar el Agente de operaciones, borra la política de extensión de VM que administra el agente. Si se aplica otra política activa de menor prioridad a una VM y también administra el Agente de operaciones, este permanecerá instalado en esa VM según la política de menor prioridad.
El Gestor de extensiones de VM quita el Agente de operaciones de todas las VMs accesibles en un minuto después de borrar la política. Si no se puede acceder a una VM, el Gestor de extensiones de VM omite la eliminación del agente. Si la VM vuelve a estar disponible, el Gestor de extensiones de VM quita el agente en ese momento.
Console
-
En la consola de Google Cloud , ve a la página Políticas de extensiones:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Compute Engine.
- Selecciona la política que quieres borrar.
- Haz clic en Borrar.
- En el diálogo de confirmación, haz clic en Borrar.
gcloud
Zonal
Para borrar la política de extensión de VM que administra el Agente de operaciones, usa el comando
gcloud compute zone-vm-extension-policies delete:
gcloud compute zone-vm-extension-policies delete POLICY_NAME \
--project=PROJECT_ID \
--zone=ZONE
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- ZONE: Es la zona de destino, por ejemplo,
us-central1-f.
Global
Para borrar la política global de extensión de VM que administra el Agente de operaciones, usa el comando
gcloud compute global-vm-extension-policies delete:
gcloud compute global-vm-extension-policies delete POLICY_NAME \
--project=PROJECT_ID \
--rollout-predefined-plan=slow_rollout
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
Para acelerar un lanzamiento de eliminación que ya se inició, emite un comando de eliminación nuevo que use el plan fast_rollout. También debes especificar la opción
--rollout-retry-uuid=UUID:
gcloud compute global-vm-extension-policies delete POLICY_NAME \
--project=PROJECT_ID \
--rollout-predefined-plan=fast_rollout \
--rollout-retry-uuid=UUID
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- UUID: Es un identificador único universal (UUID) que identifica la solicitud de reintento. Puedes usar cualquier generador de UUID para crear uno. Para obtener más información, consulta Reintenta un lanzamiento .
Recupera información sobre las políticas de extensión de VM
Puedes recuperar la siguiente información sobre las políticas de extensión de VM existentes:
- Una lista de todas las políticas de tu proyecto de Google Cloud .
- Información de configuración sobre una política específica.
Console
-
En la consola de Google Cloud , ve a la página Políticas de extensiones:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Compute Engine.
En esta página, se enumeran todas las políticas de extensión de VM de tu proyecto. - Para ver los detalles de una política de extensión específica, haz clic en el nombre de la política.
gcloud
Zonal
Enumera las políticas de extensión de VMs
Para enumerar información sobre todas las políticas de extensiones de VM en una zona, usa el comando
gcloud compute zone-vm-extension-policies list:
gcloud compute zone-vm-extension-policies list \
--project=PROJECT_ID \
--zone=ZONE \
--page-size=PAGE_SIZE_INTEGER
Reemplaza las siguientes variables en el comando:
- PROJECT_ID: Es el identificador del proyecto.
- ZONE: Es la zona de destino, por ejemplo,
us-central1-f. - PAGE_SIZE_INTEGER: Es la cantidad de políticas que se mostrarán por página, por ejemplo,
2. Para obtener más información sobre las opciones de ordenamiento y filtrado, consultagcloud compute zone-vm-extension-policieslist.
Describe una política de extensión de VM con nombre
Para recuperar la configuración de una política con nombre en una zona, usa el comando
gcloud compute zone-vm-extension-policies describe:
gcloud compute zone-vm-extension-policies describe POLICY_NAME \
--project=PROJECT_ID \
--zone=ZONE
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- ZONE: Es la zona de destino, por ejemplo,
us-central1-f.
Global
Enumera las políticas de extensión de VM globales
Para enumerar información sobre las políticas de extensión de VM globales, usa el comando
gcloud compute global-vm-extension-policies list:
gcloud compute global-vm-extension-policies list \
--project=PROJECT_ID \
--page-size=PAGE_SIZE_INTEGER
Reemplaza las siguientes variables en el comando:
- PROJECT_ID: Es el identificador del proyecto.
- PAGE_SIZE_INTEGER: Es la cantidad de políticas que se mostrarán por página, por ejemplo,
2. Para obtener más información sobre las opciones de ordenamiento y filtrado, consultagcloud compute global-vm-extension-policieslist.
Describe una política de extensión de VM global con nombre
Para recuperar la configuración de una política con nombre en una zona, usa el comando
gcloud compute global-vm-extension-policies describe:
gcloud compute global-vm-extension-policies describe POLICY_NAME \
--project=PROJECT_ID
Reemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
Para obtener información general sobre el uso de la consola deGoogle Cloud y gcloud CLI para recuperar información sobre las políticas de extensión de VM, consulta Visualiza las políticas de extensión.
Reinicia un Agente de operaciones instalado por una política de extensión
Cuando el Gestor de extensiones de VM instala y administra el Agente de operaciones, este no se administra con el servicio de administración del sistema del sistema operativo, es decir, systemd en Linux
o el Administrador de servicios de Windows en Windows. Por lo tanto, los comandos systemctl de Linux
y los comandos *-Service de Windows no funcionan con un Agente de operaciones
instalado por una política de extensión.
Para reiniciar un Agente de operaciones que se instaló con una política de extensión, haz lo siguiente:
Vuelve a crear la política.
Usa una política temporal de mayor prioridad. Si la política original afecta a una gran cantidad de VMs, pero solo quieres reiniciar el Agente de operaciones en una pequeña cantidad, agrega una etiqueta a esas VMs y configura la nueva política para que filtre por la etiqueta.
Por ejemplo, si una política con prioridad 1000 no pudo iniciar el Agente de operaciones en una VM, puedes agregar una etiqueta como
status=faileda la VM. Luego, crea una política nueva con una prioridad más alta, como 500. Por ejemplo, un comando de Google Cloud CLI podría verse de la siguiente manera:Zonal
gcloud compute zone-vm-extension-policiescreatePOLICY_NAME \ --project=PROJECT_ID \ --zone=ZONE \ --extensions=ops-agent \ --inclusion-labels=status=failed \ --priority=500 \ --config-from-file=ops-agent=/usr/ops-agent-config.yamlReemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
- ZONE: Es la zona de destino, por ejemplo,
us-central1-f.
Global
gcloud compute global-vm-extension-policiescreatePOLICY_NAME \ --project=PROJECT_ID \ --extensions=ops-agent \ --inclusion-labels=status=failed \ --priority=500 \ --config-from-file=ops-agent=/usr/ops-agent-config.yaml \ --rollout-predefined-plan=fast_rolloutReemplaza las siguientes variables en el comando:
- POLICY_NAME: Es un nombre para la política de extensión de VM.
- PROJECT_ID: Es el identificador del proyecto.
Después de que la política nueva instale correctamente el Agente de operaciones, bórrala y quita la etiqueta de las VMs. El Agente de operaciones permanece instalado en la VM porque la política original sigue activa.
Habilita el registro de depuración del agente de invitado en la VM
Las políticas del Gestor de extensiones de VM usan el agente invitado de Compute Engine para administrar el Agente de operaciones como una extensión de VM. Para obtener información sobre cómo habilitar el registro de depuración para el agente invitado, consulta Visualiza los registros de depuración del agente invitado.
¿Qué sigue?
- Soluciona problemas en las políticas de extensiones.
- Consulta información detallada sobre cómo configurar el Agente de operaciones.
- Obtén más información sobre el Gestor de extensiones de VM.