En este documento, se describe cómo crear políticas de extensiones de VM, que te permiten instalar y administrar automáticamente extensiones en una flota de máquinas virtuales (VMs) de Compute Engine. Si defines una política, puedes asegurarte de que las extensiones específicas se instalen y mantengan en cualquier VM que coincida con los criterios que especifiques, como las etiquetas de VM.
Antes de comenzar
- Instala el componente beta ejecutando el siguiente comando:
gcloud components install beta
- Revisa los conceptos básicos sobre VM Extension Manager.
- Revisa las cuotas del Administrador de extensiones de VM.
- Habilita la API de Compute Engine en tu proyecto Google Cloud si aún no está habilitada.
- Asegúrate de que tu VM ejecute la versión
20241209.01o posterior del agente invitado. - Para ver los registros de depuración de los eventos de VM Extension Manager, configura los parámetros de configuración de registro del agente invitado.
-
Si aún no lo hiciste, configura la autenticación.
La autenticación verifica tu identidad para acceder a los servicios y las APIs de Google Cloud . Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Instala Google Cloud CLI. Después de instalarla, inicializa Google Cloud CLI ejecutando el siguiente comando:
gcloud initSi usas un proveedor de identidad (IdP) externo, primero debes Acceder a gcloud CLI con tu identidad federada.
- Set a default region and zone.
Roles de IAM obligatorios
Para obtener el permiso que necesitas para crear una política de extensión, pídele a tu administrador que te otorgue el rol de IAM 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.Este rol predefinido contiene el permiso
compute.vmExtensionPolicies.create, que se requiere para crear una política de extensión.También puedes obtener este permiso 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.
Crea una política de extensión de VM
Usa uno de los siguientes métodos para crear una política de extensión de VM. Esta política define qué extensiones se instalarán y en qué VMs.
Console
- En la consola de Google Cloud , ve a la página Políticas de extensiones de VM.
- Haz clic en Crear política de extensión.
- En el campo Nombre, ingresa un nombre para la política.
- Opcional: En el campo Descripción, ingresa una descripción para la política.
- En el campo Prioridad, especifica un número de prioridad para resolver conflictos entre políticas. Los números más bajos indican una mayor prioridad. El valor predeterminado es 1,000.
- En la lista Zona, selecciona la zona en la que deseas aplicar esta política.
- En la sección Extensiones, haz clic en Agregar extensión y realiza las siguientes acciones para cada extensión que quieras instalar en las VMs de destino:
- En la lista Extensión, selecciona una extensión. Consulta las extensiones compatibles.
- En la lista Versión, especifica el número de versión de la extensión. Déjalo en blanco para seleccionar la versión más reciente.
- En el caso del Agente de operaciones, puedes especificar la versión
2.58.0o posterior. - Para las cargas de trabajo de Extension for SAP y Extension for Compute, deja el campo en blanco para seleccionar la versión más reciente.
- En el caso del Agente de operaciones, puedes especificar la versión
- Opcional: En el campo Contenido del archivo de configuración, ingresa los parámetros de configuración de la extensión.
- En la sección Instancias de VM de destino, selecciona las VMs para la política. Para seleccionar VMs con etiquetas específicas, haz clic en Agregar etiquetas y agrega el par clave-valor.
- Haz clic en Crear.
gcloud
Para crear una política de extensiones de VM y, luego, implementarla en las VMs de una zona específica, usa el comando
gcloud beta compute zone-vm-extension-policies create:gcloud beta compute zone-vm-extension-policies create POLICY_NAME \ --zone=ZONE \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY
Reemplaza lo siguiente:
POLICY_NAME: Es el nombre de la política de extensión de VM.ZONE: Es la zona en la que se aplica esta política.DESCRIPTION: Es una descripción opcional de la política.EXTENSION_NAME_1,EXTENSION_NAME_2: Es una lista separada por comas de las extensiones que se agregarán a la política. Debes especificar al menos una extensión. Los valores válidos para las extensiones son los siguientes:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: Es una lista separada por comas de pares clave-valor en la que la clave es el nombre de la extensión y el valor es la versión de la extensión. Si no especificas una versión para una extensión, VM Extension Manager usa la última versión disponible y la actualiza automáticamente cuando hay versiones nuevas disponibles.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: Es una lista separada por comas de pares clave-valor en la que la clave es el nombre de la extensión y el valor es la ruta de acceso al archivo de configuración de esa extensión. Esta ruta de acceso se encuentra en la VM en la que ejecutas el comandogcloud, no en la VM en la que instalas la extensión.Como alternativa, para proporcionar la configuración como una cadena intercalada, usa la marca
--configen lugar de--config-from-file, por ejemplo,EXTENSION_NAME_1="CONFIG_1". Puedes usar--config-from-fileo--config, pero no ambos en el mismo comando.KEY_1=VALUE_1: Es una lista separada por comas de pares clave-valor que definen etiquetas de inclusión para un selector. Las VMs deben tener todas las etiquetas especificadas en un selector para que se les aplique la segmentación. Si especificas--inclusion-labelsvarias veces, la política se aplica a las VMs que coinciden con cualquiera de los selectores proporcionados (OR lógica). Si omites esta marca, la política se aplicará a todas las VMs de la zona especificada.PRIORITY: Es un número entero del 0 al 65535 que define la prioridad de la política. Los números más bajos indican una mayor prioridad. El valor predeterminado es 1,000.El comando falla si ya existe una política con el nombre especificado en la zona.
Ejemplo 1
El siguiente comando crea una política llamada
test-extension-policyque instala la extensiónops-agenten la zonaus-central1-fpara el proyectotest-project. La marca--config-from-fileespecifica la ruta de acceso a un archivo local que contiene una configuración YAML para el agente de operaciones.gcloud beta compute zone-vm-extension-policies create test-extension-policy \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml"
Ejemplo 2
El siguiente comando crea una política llamada
test-extension-policy-2que instala la extensiónops-agenten la zonaus-central1-fpara el proyectotest-projecten las VMs con la etiquetaenv=prod. La prioridad de la política se establece en500, y la marca--config-from-fileespecifica la ruta de acceso a un archivo local que contiene una configuración en formato YAML para el agente de operaciones.gcloud beta compute zone-vm-extension-policies create test-extension-policy-2 \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --priority=500 \ --inclusion-labels=env=prod
¿Qué sigue?
- Obtén más información para administrar extensiones de VM.
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-12-10 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-12-10 (UTC)"],[],[]] -