En este documento, se muestra cómo instalar el agente para cargas de trabajo de Compute en instancias de Compute Engine y cómo configurar el agente para que se conecte con una carga de trabajo de MySQL que se ejecuta en esas instancias de procesamiento.
Después de instalar y configurar el agente, este recopila métricas de tu carga de trabajo de MySQL y de las instancias de procesamiento subyacentes, y las envía a Workload Manager. Luego, puedes usar la evaluación de Workload Manager para analizar tus cargas de trabajo de MySQL en busca de desviaciones de las prácticas recomendadas para las configuraciones de infraestructura, sistema operativo y carga de trabajo.
Antes de comenzar
Antes de instalar y configurar el agente para cargas de trabajo de Compute, debes asegurarte de que se cumplan los siguientes requisitos previos:
- Implementaste una carga de trabajo de MySQL en una o más instancias de procesamiento.
- Otorgaste los roles de IAM necesarios para el agente.
- Habilitaste el acceso a las APIs de Cloud.
Roles de IAM obligatorios para el agente
El agente para cargas de trabajo de Compute usa la cuenta de servicio conectada a la instancia de procesamiento para la autenticación y para acceder a los recursos de Google Cloud .
Para mejorar la seguridad, te recomendamos que uses una cuenta de servicio de propósito único en lugar de la cuenta de servicio predeterminada de Compute Engine.
Para garantizar que la cuenta de servicio tenga los permisos necesarios para permitir que Agent for Compute Workloads se autentique conGoogle Cloud y acceda a los recursos de Google Cloud , pídele a tu administrador que le otorgue a la cuenta de servicio los siguientes roles de IAM en tu proyecto:
-
Visualizador de Compute (
roles/compute.viewer): para recopilar métricas de la instancia de procesamiento. -
Escritor de estadísticas del administrador de cargas de trabajo (
roles/workloadmanager.insightWriter): para escribir datos en el almacén de datos de Workload Manager -
(Recomendado) Logs Writer (
roles/logging.logWriter): para enviar registros del agente a Cloud Logging -
(Opcional) Descriptor de acceso a secretos de Secret Manager (
roles/secretmanager.secretAccessor): si usas Secret Manager para almacenar la contraseña para conectarte con la instancia de MySQL
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Es posible que tu administrador también pueda otorgar a la cuenta de servicio los permisos necesarios a través de roles personalizados o de otros roles predefinidos.
Habilita el acceso a las API de Cloud
Compute Engine recomienda configurar las instancias para permitir todos los permisos de acceso a todas las API de Cloud y usar solo los permisos de IAM de la cuenta de servicio de la instancia para controlar el acceso a los recursos deGoogle Cloud . Para obtener más información, consulta Crea una VM que use una cuenta de servicio administrada por el usuario.
Si limitas el acceso a las API de Cloud, el agente para cargas de trabajo de Compute requiere, como mínimo, los siguientes permisos de acceso a las API de Cloud en la instancia de procesamiento del host:
https://www.googleapis.com/auth/cloud-platform
Para obtener más información, consulta Prácticas recomendadas para los permisos.
Si ejecutas aplicaciones de MySQL en una instancia de procesamiento que no tiene una dirección IP externa, debes habilitar el Acceso privado a Google en la subred de la instancia para que el agente para cargas de trabajo de Compute pueda acceder a los servicios y las APIs de Google. Para obtener información sobre cómo habilitar el Acceso privado a Google, consulta Configura el Acceso privado a Google.
Instala y configura el agente con el administrador de paquetes
En esta sección, se muestra cómo instalar el agente para cargas de trabajo de Compute en tu instancia de procesamiento y configurarlo para que se conecte con una instancia de MySQL a través de un administrador de paquetes.
Para instalar el agente para cargas de trabajo de Compute, completa los siguientes pasos:
RHEL
En Red Hat Enterprise Linux (RHEL), debes instalar el Agente para cargas de trabajo de Compute con el comando de administración de paquetes yum. Este comando completa las siguientes tareas:
- Descarga la versión más reciente del agente.
- Crea un servicio
systemdpara el agente, llamadogoogle-cloud-workload-agent. - Habilita e inicia el servicio
google-cloud-workload-agent.
Para instalar y configurar el agente para cargas de trabajo de Compute en una instancia de procesamiento basada en RHEL, completa los siguientes pasos:
Establece una conexión SSH con tu instancia de procesamiento.
En tu terminal, instala el agente:
sudo tee /etc/yum.repos.d/google-cloud-workload-agent.repo << EOM [google-cloud-workload-agent] name=Google Cloud Agent for Compute Workloads baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-$basearch enabled=1 gpgcheck=0 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOM sudo yum install google-cloud-workload-agentReemplaza el archivo de configuración del agente:
/etc/google-cloud-workload-agent/configuration.jsonEspecifica valores para todos los parámetros obligatorios, como se describe en Parámetros de configuración.
Guarda el archivo de configuración
Reinicia el agente para que se apliquen los cambios.
SLES
En SUSE Linux Enterprise Server (SLES), debes instalar el Agente para cargas de trabajo de Compute con el comando de administración de paquetes zypper. Este comando completa las siguientes tareas:
- Descarga la versión más reciente del agente.
- Crea un servicio
systemdpara el agente, llamadogoogle-cloud-workload-agent. - Habilita e inicia el servicio
google-cloud-workload-agent.
Para instalar y configurar el agente para cargas de trabajo de Compute en una instancia de procesamiento basada en SLES, completa los siguientes pasos:
Establece una conexión SSH con tu instancia de procesamiento.
En tu terminal, instala el agente:
sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-$basearch google-cloud-workload-agent sudo zypper install google-cloud-workload-agentReemplaza el archivo de configuración del agente:
/etc/google-cloud-workload-agent/configuration.jsonEspecifica valores para todos los parámetros obligatorios, como se describe en Parámetros de configuración.
Guarda el archivo de configuración
Reinicia el agente para que se apliquen los cambios.
Debian
En Debian, se instala el agente para cargas de trabajo de Compute con el comando de administración de paquetes apt. Este comando completa las siguientes tareas:
- Descarga la versión más reciente del agente.
- Crea un servicio
systemdpara el agente, llamadogoogle-cloud-workload-agent. - Habilita e inicia el servicio
google-cloud-workload-agent.
Para instalar y configurar el Agente para cargas de trabajo de Compute en una instancia de procesamiento basada en Debian, completa los siguientes pasos:
Establece una conexión SSH con tu instancia de procesamiento.
En tu terminal, instala el agente:
echo 'deb https://packages.cloud.google.com/apt google-cloud-workload-agent-x86-64-apt main' | sudo tee -a /etc/apt/sources.list.d/google-cloud-workload-agent.list sudo apt-get update sudo apt-get install google-cloud-workload-agentReemplaza el archivo de configuración del agente:
/etc/google-cloud-workload-agent/configuration.jsonEspecifica valores para todos los parámetros obligatorios, como se describe en Parámetros de configuración.
Guarda el archivo de configuración
Reinicia el agente para que se apliquen los cambios.
Windows
En Windows, instalas el agente para cargas de trabajo de Compute con el comando de administración de paquetes googet. Este comando completa las siguientes tareas:
- Descarga la versión más reciente del agente.
- Crea un servicio de Windows llamado
google-cloud-workload-agent. - Crea una tarea programada que se ejecuta cada minuto para comprobar si el servicio se está ejecutando y, si es necesario, reiniciarlo.
Para instalar y configurar el agente para cargas de trabajo de Compute en una instancia de procesamiento basada en Windows, completa los siguientes pasos:
Establece una conexión con tu instancia de procesamiento a través de RDP.
Para obtener información sobre cómo hacerlo, consulta Conéctate a las VMs de Windows mediante RDP.
Como administrador, ejecuta los siguientes comandos desde PowerShell:
googet addrepo google-cloud-workload-agent https://packages.cloud.google.com/yuck/repos/google-cloud-workload-agent-windows-x86_64 googet install google-cloud-workload-agentReemplaza el archivo de configuración del agente:
%ProgramFiles%\Google\google-cloud-workload-agent\conf\configuration.jsonEspecifica valores para todos los parámetros obligatorios, como se describe en Parámetros de configuración.
Guarda el archivo de configuración
Reinicia el agente para que se apliquen los cambios.
Instala y administra el agente en una flota de VMs con VM Extension Manager
Configura VM Extension Manager
Para configurar VM Extension Manager, completa los siguientes pasos:
- En la documentación de VM Extension Manager, revisa la sección Antes de comenzar.
Configura los roles de IAM necesarios para crear y administrar políticas de VM Extension Manager. Para obtener más información, consulta lo siguiente:
Instala el agente en una flota de VMs
Para instalar la versión más reciente del agente para cargas de trabajo de Compute en tu flota de VMs dentro de una zona específica con una política de VM Extension Manager, completa los siguientes pasos:
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
1000.En las listas Región y Zona, selecciona la zona en la que deseas aplicar esta política.
En la sección Extensiones, haz clic en Agregar extensión y, luego, haz lo siguiente:
- En la lista Extension, selecciona Google Cloud's Extension for Compute Workloads.
Deja en blanco el campo Versión.
Esto indica a la política que instale la versión más reciente del agente para cargas de trabajo de Compute.
En el campo Contenido del archivo de configuración, ingresa la configuración que deseas aplicar al agente.
Para obtener información sobre los parámetros de configuración admitidos por el agente para tu carga de trabajo de MySQL, consulta Parámetros de configuración.
Haz clic en Listo.
Opcional: Para limitar el lanzamiento de la política a las VMs requeridas, haz lo siguiente:
- Haz clic en Agregar etiquetas y agrega las etiquetas que identifican las VMs requeridas.
- Haz clic en Listo.
Haz clic en Crear.
gcloud
gcloud beta compute zone-vm-extension-policies create POLICY_NAME \ --zone=ZONE \ --extensions=google-cloud-workload-extension \ --config-from-file=google-cloud-workload-extension=CONFIG_FILE_PATH \ [--description="DESCRIPTION" \] [--inclusion-labels=KEY_1=VALUE_1 \] [--inclusion-labels=KEY_2=VALUE_2,KEY_3=VALUE_3 \] [--priority=PRIORITY]
Reemplaza lo siguiente:
POLICY_NAME: Es el nombre de la política de extensión de VM.El comando falla si ya existe una política con el nombre especificado en la zona.
ZONE: Es la zona en la que deseas aplicar esta política.CONFIG_FILE_PATH: Es la ruta de acceso local al archivo JSON que contiene la configuración para que el agente de Compute Workloads se conecte con tu carga de trabajo de MySQL.- Como alternativa, para proporcionar la configuración como una cadena intercalada, usa la marca
--configen lugar de--config-from-file. Por ejemplo,--config=google-cloud-workload-extension="CONFIG". Google Cloud te recomienda que uses--config-from-file. - Puedes usar
--config-from-fileo--config, pero no ambos en el mismo comando. - Para obtener información sobre los parámetros de configuración admitidos por el agente para tu carga de trabajo de MySQL, consulta Parámetros de configuración.
- Como alternativa, para proporcionar la configuración como una cadena intercalada, usa la marca
DESCRIPTION: Es una descripción opcional de la política.KEY_1=VALUE_1: Es una lista separada por comas de pares clave-valor que definen las etiquetas con las que la política segmenta las VMs.- Para que tu política se aplique a una VM, esta debe tener todas las etiquetas especificadas.
- Si especificas
--inclusion-labelsvarias veces, la política se aplica a las VMs que coinciden con cualquiera de los selectores proporcionados (ORlógico). Si omites esta marca, la política se aplica a todas las VMs de la zona especificada.
PRIORITY: Es un número entero del0al65535que define la prioridad de la política. Los números más bajos indican una mayor prioridad. El valor predeterminado es1000.
Ejemplo:
El siguiente comando crea una política llamada test-agent-policy en el proyectoGoogle Cloud llamado test-project, que instala la versión más reciente del agente para cargas de trabajo de Compute en todas las VMs implementadas en la zona us-centrail-f.
La configuración especificada en agent-config.json se aplica al agente.
gcloud beta compute zone-vm-extension-policies create test-agent-policy \ --project=test-project \ --zone=us-central1-f \ --extensions=google-cloud-workload-extension \ --config-file-path=google-cloud-workload-extension="/usr/agent-config.json"
Verifica la instalación del agente
Para verificar que el agente se ejecute según lo previsto, completa los siguientes pasos:
RHEL
Establece una conexión SSH con tu instancia de procesamiento.
Verifica el estado del paquete del agente:
systemctl status google-cloud-workload-agentSi el paquete del agente se ejecuta según lo previsto, el resultado contiene
active (running). Por ejemplo:google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago Main PID: 14412 (google_cloud_sq) Tasks: 7 Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M) CGroup: /system.slice/google-cloud-workload-agent.service └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run
SLES
Establece una conexión SSH con tu instancia de procesamiento.
Verifica el estado del paquete del agente:
systemctl status google-cloud-workload-agentSi el paquete del agente se ejecuta según lo previsto, el resultado contiene
active (running). Por ejemplo:google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago Main PID: 14412 (google_cloud_sq) Tasks: 7 Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M) CGroup: /system.slice/google-cloud-workload-agent.service └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run
Debian
Establece una conexión SSH con tu instancia de procesamiento.
Verifica el estado del paquete del agente:
systemctl status google-cloud-workload-agentSi el paquete del agente se ejecuta según lo previsto, el resultado contiene
active (running). Por ejemplo:google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago Main PID: 14412 (google_cloud_sq) Tasks: 7 Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M) CGroup: /system.slice/google-cloud-workload-agent.service └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run
Windows
Establece una conexión con tu instancia de procesamiento a través de RDP.
Para obtener información sobre cómo hacerlo, consulta Conéctate a las VMs de Windows mediante RDP.
Como administrador, ejecuta el siguiente comando desde PowerShell:
$(Get-Service -Name 'google-cloud-workload-agent' -ErrorAction Ignore).StatusSi el agente se ejecuta según lo previsto, verás el estado como
Running.
Archivo de configuración de ejemplo
A continuación, se muestra un ejemplo de configuración que permite que el agente para cargas de trabajo de Compute se conecte con una instancia de MySQL. Para la autenticación, se usa un secreto de Secret Manager, que se almacena en el mismo proyecto de Google Cloud en el que se ejecuta la instancia de MySQL.
{
"log_level": "INFO",
"common_discovery": {
"collection_frequency": "10800s"
},
"mysql_configuration": {
"enabled": true,
"connection_parameters": {
"username": "db_user_name",
"secret": {
"secret_name": "db_pwd_secret_name",
"project_id": ""
},
"host": "localhost",
"port": 1433
}
}
}
Parámetros de configuración
En la siguiente tabla, se describen los parámetros de configuración del agente para cargas de trabajo de Compute que admiten evaluaciones para cargas de trabajo de MySQL:
| Parámetros | |
|---|---|
log_level |
Para establecer el nivel de registro del agente, establece el valor requerido. Los niveles de registro disponibles son los siguientes:
El nivel de registro predeterminado es |
log_to_cloud |
Para redireccionar los registros del agente a Cloud Logging, especifica |
agent_properties.log_usage_metrics |
Para habilitar el registro de las métricas de estado del agente, establece el valor en |
common_discovery.collection_frequency |
Especifica la frecuencia, en segundos, con la que se ejecuta el servicio de detección de cargas de trabajo del agente. El valor predeterminado es Asegúrate de que el valor de este parámetro termine con una |
mysql_configuration.enabled
|
Para permitir que el agente recopile métricas de la instancia de MySQL, establece el valor en |
mysql_configuration.connection_parameters.username |
Especifica la cuenta de usuario que el agente usa para consultar la instancia de MySQL. |
mysql_configuration.connection_parameters.password |
Especifica la contraseña de texto sin formato para la cuenta de usuario que el agente usa para consultar la instancia de MySQL. En lugar de especificar una contraseña de texto sin formato, te recomendamos que uses los parámetros Para la autenticación, el agente usa el siguiente orden de preferencia: si se especifica, se prefiere el conjunto de parámetros |
mysql_configuration.connection_parameters.secret.secret_name |
Es opcional. Para proporcionar de forma segura la contraseña de la cuenta de usuario que el agente usa para consultar la instancia de MySQL, especifica el nombre del secreto de Secret Manager que contiene la contraseña. Para la autenticación, el agente usa el siguiente orden de preferencia: si se especifica, se prefiere el conjunto de parámetros |
mysql_configuration.connection_parameters.secret.project_id |
Es opcional. Para usar el parámetro Si el secreto y la carga de trabajo están en el mismo proyecto Google Cloud , establece el valor de este parámetro en una cadena vacía ( |
mysql_configuration.connection_parameters.host |
Especifica el nombre de host de MySQL. |
mysql_configuration.connection_parameters.port |
Especifica el puerto en el que tu instancia de MySQL acepta consultas. |
¿Qué sigue?
- Crea y ejecuta una evaluación
- Obtén información sobre las prácticas recomendadas del Administrador de cargas de trabajo para MySQL