En este documento, se proporciona información para ayudarte a diagnosticar y resolver problemas durante la instalación y el inicio del Agente de operaciones. Si el agente está en ejecución, pero no puede transferir registros o métricas, consulta Soluciona problemas de transferencia de datos.
Antes de comenzar
Antes de intentar solucionar un problema, comprueba el estado de las verificaciones de estado del agente.
No se pudo instalar el agente
Es posible que surjan los siguientes errores durante la ejecución de la secuencia de comandos de instalación.
El sistema operativo no es compatible
Cuando el sistema operativo no es compatible, la instalación del Agente de operaciones falla. El mensaje de error será similar al siguiente:
Linux
https://packages.cloud.google.com/yum/repos/google-cloud-ops-agent-el6-x86_64-all/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" Trying other mirror. To address this issue please refer to the below wiki article https://wiki.centos.org/yum-errors If above article doesn't help to resolve this issue please use https://bugs.centos.org/. Error: Cannot retrieve repository metadata (repomd.xml) for repository: google-cloud-ops-agent. Please verify its path and try again
Se instaló un agente heredado que genera conflictos con el Agente de operaciones
Cuando una VM ya tiene el agente de Cloud Logging o el agente de Cloud Monitoring instalado, entrarán en conflicto con el agente nuevo. El mensaje de error será similar al siguiente:
Linux
Error: Problem: problem with installed package stackdriver-agent-6.0.5-1.el8.x86_64 - package google-cloud-ops-agent-0.1.0-1.el8.x86_64 conflicts with stackdriver-agent provided by stackdriver-agent-6.0.5-1.el8.x86_64
El Agente de operaciones usa archivos de configuración nuevos que no son compatibles con los agentes anteriores. Para obtener más información, consulta la guía Configura el agente de operaciones.
Para resolver este error, haz lo siguiente:
Guarda los archivos de configuración personalizados para el agente de Cloud Monitoring y el agente de Cloud Logging.
Desinstala el agente de Cloud Monitoring anterior y el agente de Cloud Logging anteriores.
Después de desinstalar el agente, la consola de Google Cloud puede tardar hasta una hora en informar este cambio.
La instalación del Agente de operaciones falla después de la instalación con errores del agente de Monitoring
La instalación del Agente de operaciones falla después de un intento de instalación del agente de Monitoring. En un sistema operativo Debian, los mensajes de error cuando no se instala el Agente de operaciones son similares a los siguientes:
Linux
... E: The repository 'https://packages.cloud.google.com/apt google-cloud-monitoring-jammy-all Release' does not have a Release file. ... Could not refresh the google-cloud-ops-agent apt repositories.
Si intentas instalar el agente de Monitoring en un sistema operativo que no es compatible con ese agente, la instalación fallará. La falla de instalación se produce después de que el repositorio del agente de Monitoring se agrega al sistema. La instalación del Agente de operaciones después de una instalación con errores del agente de Monitoring también falla debido a un repositorio del agente de Monitoring no válido.
No todos los sistemas operativos compatibles con el Agente de operaciones también son compatibles con el agente de Monitoring. Para obtener información acerca de los sistemas operativos compatibles, consulta Agente de operaciones: sistemas operativos Linux y Agente de Monitoring: sistemas operativos Linux.
Para instalar el Agente de operaciones, haz lo siguiente:
Quita el repositorio del agente de Monitoring:
Si la secuencia de comandos
add-monitoring-agent-repo.sh
está en tu sistema, ejecuta el siguiente comando:sudo bash add-monitoring-agent-repo.sh --remove-repo
De lo contrario, quita el repositorio de forma manual:
Debian
sudo rm /etc/apt/sources.list.d/google-cloud-monitoring.list
RHEL
sudo rm /etc/yum.repos.d/google-cloud-monitoring.repo
Suse
sudo rm /etc/zypp/repos.d/google-cloud-monitoring.repo
Ejecuta la secuencia de comandos de instalación del Agente de operaciones.
La instalación del Agente de operaciones falla porque falla la actualización del repositorio
La instalación del Agente de operaciones falla porque la actualización de los repositorios instalados falla.
Linux
Para ver un ejemplo del mensaje de falla de un sistema operativo Debian,
en el que la actualización del repositorio se produce debido a una llamada a apt-get update
, consulta
la entrada de solución de problemas
La instalación del Agente de operaciones falla después la Instalación con errores del agente de Monitoring.
Si encuentras fallas cuando actualizas los repositorios, debes resolverlas antes de poder instalar el Agente de operaciones. Es posible que puedas resolver estos errores si borras o inhabilitas los repositorios que no son necesarios.
Después de poder actualizar los repositorios, puedes instalar el Agente de operaciones a través de la ejecución de la secuencia de comandos de instalación del Agente de operaciones.
La actualización del repositorio falla porque la clave pública no está disponible
Linux
Una actualización del repositorio, debido a una llamada a apt-get update
, falla porque la
clave pública no está disponible. Esto también puede ocurrir cuando se instala o actualiza el
Agente de operaciones. Es posible que veas el siguiente error:
W: GPG error: http://packages.cloud.google.com/apt google-cloud-ops-agent-focal-all InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY C0BA5CE6DC6315A3
E: The repository 'http://packages.cloud.google.com/apt google-cloud-ops-agent-focal-all InRelease' is not signed.
Para corregir este error, ejecuta el siguiente comando para agregar la clave faltante a tu sistema:
curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg \
| sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/google-cloud-ops-agent.gpg
El agente está instalado, pero no se ejecuta
Si instalaste el agente, pero el agente no está en ejecución, el problema podría ser uno de los siguientes:
- Uno de los componentes principales, “Agente de métricas” o “Agente de Logging”, no se inició; consulta Los servicios de agente no se están ejecutando.
- Uno de los agentes heredados también está instalado en la VM; consulta Conflicto con agentes instalados actualmente.
- Otro proceso está usando un puerto que se requiera uno de los componentes; consulta Puerto no disponible.
- La configuración del agente de operaciones no es válida; consulta Configuración no válida.
Los servicios de agente no se están ejecutando
Cuando los servicios de agente se ejecutan según lo previsto, el agente de métricas y el de Logging aparecen como en ejecución cuando consultas el estado:
Para Linux
sudo systemctl status google-cloud-ops-agent"*"
Se borraron algunas líneas en el resultado por cuestiones de brevedad.
● google-cloud-ops-agent.service - Google Cloud Ops Agent Loaded: loaded (/lib/systemd/system/google-cloud-ops-agent.service; enabled; vendor preset: enabled) Active: active (exited) since Wed 2023-05-03 21:22:28 UTC; 4 weeks 0 days ago Process: 3353828 ExecStartPre=/opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_engine -in /etc/go> Process: 3353837 ExecStart=/bin/true (code=exited, status=0/SUCCESS) Main PID: 3353837 (code=exited, status=0/SUCCESS) CPU: 195ms [...] ● google-cloud-ops-agent-opentelemetry-collector.service - Google Cloud Ops Agent - Metrics Agent Loaded: loaded (/lib/systemd/system/google-cloud-ops-agent-opentelemetry-collector.service; static) Active: active (running) since Wed 2023-05-03 21:22:29 UTC; 4 weeks 0 days ago Process: 3353840 ExecStartPre=/opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_engine -service=ot> Main PID: 3353855 (otelopscol) Tasks: 9 (limit: 2355) Memory: 65.3M CPU: 40min 31.555s CGroup: /system.slice/google-cloud-ops-agent-opentelemetry-collector.service └─3353855 /opt/google-cloud-ops-agent/subagents/opentelemetry-collector/otelopscol --config=/run/g> [...] ● google-cloud-ops-agent-fluent-bit.service - Google Cloud Ops Agent - Logging Agent Loaded: loaded (/lib/systemd/system/google-cloud-ops-agent-fluent-bit.service; static) Active: active (running) since Wed 2023-05-03 21:22:29 UTC; 4 weeks 0 days ago Process: 3353838 ExecStartPre=/opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_engine -service=fl> Main PID: 3353856 (google_cloud_op) Tasks: 31 (limit: 2355) Memory: 58.3M CPU: 29min 6.771s CGroup: /system.slice/google-cloud-ops-agent-fluent-bit.service ├─3353856 /opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_wrapper -config_path /etc/goo> └─3353872 /opt/google-cloud-ops-agent/subagents/fluent-bit/bin/fluent-bit --config /run/google-clo> [...] ● google-cloud-ops-agent-diagnostics.service - Google Cloud Ops Agent - Diagnostics Loaded: loaded (/lib/systemd/system/google-cloud-ops-agent-diagnostics.service; disabled; vendor preset: e> Active: active (running) since Wed 2023-05-03 21:22:26 UTC; 4 weeks 0 days ago Main PID: 3353819 (google_cloud_op) Tasks: 8 (limit: 2355) Memory: 36.0M CPU: 3min 19.488s CGroup: /system.slice/google-cloud-ops-agent-diagnostics.service └─3353819 /opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_diagnostics -config /etc/goog> [...]
Para Windows
Get-Service google-cloud-ops-agent* Status Name DisplayName ------ ---- ----------- Running google-cloud-op... Google Cloud Ops Agent Running google-cloud-op... Google Cloud Ops Agent - Logging Agent Running google-cloud-op... Google Cloud Ops Agent - Metrics Agent Running google-cloud-op... Google Cloud Ops Agent - Diagnostics
Si el servicio de agente no se ejecuta, es posible que veas el siguiente estado:
Linux
$ sudo service google-cloud-ops-agent status ● google-cloud-ops-agent.service - Google Cloud Ops Agent Loaded: loaded (/lib/systemd/system/google-cloud-ops-agent.service; enabled; vendor preset: enabled) Active: inactive (dead) since Wed 2021-06-30 21:20:43 UTC; 6s ago
Windows
Get-Service google-cloud-ops-agent Status Name DisplayName ------ ---- ----------- Stopped google-cloud-ops-agent Google Cloud Ops Agent
Para corregir este error, ejecuta el siguiente comando a fin de iniciar el servicio:
Linux
sudo service google-cloud-ops-agent start
Windows
Start-Service google-cloud-ops-agent
Si el servicio no se inicia, es posible que la configuración no sea válida.
Conflicto con agentes instalados actualmente
La VM ya tiene el agente de Cloud Logging o el agente de Cloud Monitoring instalado, y su configuración entra en conflicto con la configuración del agente nuevo. El mensaje de error será similar al siguiente:
Windows
We detected an existing Windows service for the StackdriverLogging agent, which is not compatible with the Ops Agent when the Ops Agent configuration has a non-empty logging section. Please either remove the logging section from the Ops Agent configuration, or disable the StackdriverLogging agent, and then retry enabling the Ops Agent.
Para corregir este error, tiene dos opciones:
Inhabilitar la sección de conflicto del archivo de configuración del agente de operaciones. Para obtener más información, consulta la guía Configura el agente de operaciones.
Inhabilita el agente de Cloud Logging en conflicto o el agente de Cloud Monitoring.
- Guarda cualquier archivo de configuración personalizado para el agente de Cloud Logging.
- Luego, desinstala el agente de Cloud Monitoring y el agente de Cloud Logging anteriores.
Después de desinstalar el agente, la consola de Google Cloud puede tardar hasta una hora en informar este cambio.
El puerto requerido no está disponible
Es posible que el Agente de operaciones o uno de sus componentes no se inicien cuando otro proceso usa el puerto necesario para el componente. El Agente de operaciones usa los siguientes puertos:
- Puerto 20201 para el componente “Agente de métricas”
- Puerto 20202 para el componente "Agente de Logging"
Si un proceso que no sea un componente del Agente de operaciones usa el puerto 20201 o el puerto 20202, detén ese proceso y reinicia el Agente de operaciones. Sigue estos pasos para determinar qué proceso usa los puertos:
Linux
Componente Agente de métricas: para ver qué proceso usa el puerto 20201, usa el siguiente comando:
sudo netstat -ns -p | grep '20201'
El siguiente resultado muestra el resultado esperado:
el colector de métricas del Agente de operaciones, otelopscol
, usa el puerto:
tcp 0 0 127.0.0.1:50138 127.0.0.1:20201 ESTABLISHED 16850/otelopscol tcp6 0 0 :::20201 :::* LISTEN 16850/otelopscol tcp6 0 0 127.0.0.1:20201 127.0.0.1:50138 ESTABLISHED 16850/otelopscol
Componente Agente de Logging: para ver qué proceso usa el puerto 20202, usa el siguiente comando:
sudo netstat -ns -p | grep '20202'
El siguiente resultado muestra el resultado esperado: el colector de registros del agente de operacione, fluent-bit
, usa el puerto:
tcp 0 0 0.0.0.0:20202 0.0.0.0:* LISTEN 16640/fluent-bit tcp 0 0 127.0.0.1:20202 127.0.0.1:52998 TIME_WAIT -
Windows
Componente Agente de métricas: para ver qué proceso usa el puerto 20201, usa el siguiente comando:
netstat -na -b | Select-String "20201" -Context 0,1
El siguiente resultado muestra el resultado esperado: el colector de métricas del Agente de
operaciones, google-cloud-metrics-agent_windows_amd64.exe
, usa el puerto:
> TCP 0.0.0.0:20201 0.0.0.0:0 LISTENING [google-cloud-metrics-agent_windows_amd64.exe] > TCP 127.0.0.1:20201 127.0.0.1:50090 ESTABLISHED [google-cloud-metrics-agent_windows_amd64.exe] > TCP 127.0.0.1:50090 127.0.0.1:20201 ESTABLISHED [google-cloud-metrics-agent_windows_amd64.exe] > TCP [::]:20201 [::]:0 LISTENING [google-cloud-metrics-agent_windows_amd64.exe]
Componente Agente de Logging: para ver qué proceso usa el puerto 20202, usa el siguiente comando:
netstat -na -b | Select-String "20202" -Context 0,1
El siguiente resultado muestra el resultado esperado: el colector de registros del agente de operacione, fluent-bit.exe
, usa el puerto:
> TCP 0.0.0.0:20202 0.0.0.0:0 LISTENING [fluent-bit.exe] > TCP 127.0.0.1:20202 127.0.0.1:57535 TIME_WAIT > TCP 127.0.0.1:20202 127.0.0.1:57539 TIME_WAIT TCP 127.0.0.1:49807 127.0.0.1:49808 ESTABLISHED
Los errores de disponibilidad de puertos se pueden detectar a través de las verificaciones de estado que ejecuta el Agente de operaciones.
El agente no tiene permisos de API
Si el agente no se inicia o no puede transferir datos, el problema podría ser que el componente “Agente de métricas” o “Agente de Logging” no tenga el permiso necesario para acceder a la API.
La cuenta de servicio que usa el agente de operaciones requiere los siguientes roles de administración de identidades y accesos:
- Para el componente “Agente de Logging”: escritor de registros (
roles/logging.logWriter
) - Para el componente “Agente de métricas”: escritor de métricas de Monitoring (
roles/monitoring.metricWriter
).
Estos roles incluyen los permisos necesarios para escribir datos de registro o métricas y se deben otorgar a la cuenta de servicio asociada con la VM. La cuenta de servicio que uses dependerá de cómo configuraste la VM y autorizaste al agente. Es posible que uses una de las siguientes opciones:
- Una cuenta de servicio conectada a la VM.
- Una cuenta de servicio que usa una clave privada.
Para identificar la cuenta de servicio asociada a una VM, haz lo siguiente:
-
En la consola de Google Cloud, ve a la página Instancias de VM.
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Compute Engine.
Si es necesario, haz clic en la lista desplegable de proyectos de Google Cloud y selecciona el nombre de tu proyecto.
Selecciona la pestaña Instancias si es necesario.
En la lista de instancias de VM, haz clic en el nombre de la VM para ver la página Detalles de la VM.
Ubica la sección Administración de identidades y API de la página. La cuenta de servicio aparece como el valor del campo Cuenta de servicio.
Para obtener información acerca de cómo configurar los roles otorgados a la cuenta de servicio, consulta Verifica y modifica roles de una cuenta de servicio existente.
Los errores de permiso de la API se pueden detectar a través de las verificaciones de estado que ejecuta el Agente de operaciones.
La configuración no es válida
Si la configuración no es válida, es posible que veas el siguiente error cuando intentes iniciar el servicio de agente:
Linux
$ sudo service google-cloud-ops-agent restart \ && sudo service google-cloud-ops-agent status ● google-cloud-ops-agent-fluent-bit.service - Google Cloud Ops Agent - Logging Agent Loaded: loaded (/usr/lib/systemd/system/google-cloud-ops-agent-fluent-bit.service; static; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/google-cloud-ops-agent-fluent-bit.service.d └─directories.conf Active: failed (Result: exit-code) since Wed 2021-06-30 22:21:08 UTC; 2s ago Process: 1141421 ExecStart=/opt/google-cloud-ops-agent/subagents/fluent-bit/bin/fluent-bit --config ${RUNTIME_DIRECTORY}/fluent_bit_main.conf --parser ${RUNTIME_DIRECTORY}/fluent_bit_parser.conf --log_> Process: 1141847 ExecStartPre=/opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_engine -service=fluentbit -in /etc/google-cloud-ops-agent/config.yaml -logs ${LOGS_DIRECTORY} -state ${STATE_DIR> Main PID: 1141421 (code=exited, status=0/SUCCESS) Jun 30 22:21:08 centos8-2 systemd[1]: google-cloud-ops-agent-fluent-bit.service: Control process exited, code=exited status=1 Jun 30 22:21:08 centos8-2 systemd[1]: google-cloud-ops-agent-fluent-bit.service: Failed with result 'exit-code'. Jun 30 22:21:08 centos8-2 systemd[1]: Failed to start Google Cloud Ops Agent - Logging Agent. Jun 30 22:21:08 centos8-2 systemd[1]: google-cloud-ops-agent-fluent-bit.service: Service RestartSec=100ms expired, scheduling restart. Jun 30 22:21:08 centos8-2 systemd[1]: google-cloud-ops-agent-fluent-bit.service: Scheduled restart job, restart counter is at 5. Jun 30 22:21:08 centos8-2 systemd[1]: Stopped Google Cloud Ops Agent - Logging Agent. Jun 30 22:21:08 centos8-2 systemd[1]: google-cloud-ops-agent-fluent-bit.service: Start request repeated too quickly. Jun 30 22:21:08 centos8-2 systemd[1]: google-cloud-ops-agent-fluent-bit.service: Failed with result 'exit-code'. Jun 30 22:21:08 centos8-2 systemd[1]: Failed to start Google Cloud Ops Agent - Logging Agent.
Usa journalctl
para obtener el mensaje de error exacto:
sudo journalctl -xe | grep "google_cloud_ops_agent_engine"
Deberías ver un mensaje similar al siguiente:
Jun 30 22:00:26 centos8-2 google_cloud_ops_agent_engine[1141491]: 2021/06/30 22:00:26 the agent config file is not valid YAML. detailed error: yaml: line 21: did not find expected key
Windows
failed to generate config files: can't parse configuration: yaml: line 20: could not find expected ':'
Para corregir el error, corrige la configuración no válida y reinicia el agente. Si deseas obtener más información, consulta la guía Configura el agente de operaciones.
El agente falla y el informe menciona NVIDIA
Intentas ejecutar el Agente de operaciones en una VM de Compute Engine con GPU conectadas. El agente falla y el resultado menciona NVIDIA.
Este es un problema conocido con las versiones 2.39.0 y 2.40.0 del Agente de operaciones. Para mitigar, instala la versión 2.38.0 o las versiones 2.41.0 o posteriores del Agente de operaciones.La información de estado en la consola de Google Cloud es incorrecta
La consola de Google Cloud notifica información sobre el estado de los agentes en las VMs de Compute Engine en varios paneles, por ejemplo, el panel Instancias de VM en Cloud Monitoring. Si esta información no coincide con lo que esperabas, la causa podría ser simplemente un retraso a medida que los cambios de configuración se implementan a través del sistema. Sin embargo, la información inesperada también puede indicar que el agente no se ejecuta como se espera.
El agente instalado que la consola de Google Cloud informó como no detectado
El agente debe ejecutar y transferir datos para que la consola de Google Cloud reconozca que el agente está presente. Si instalaste el agente, pero el estado de la consola sigue siendo “No detectado”, el agente no se está ejecutando o se está ejecutando y no transfiere datos. Para obtener más información, consulta lo siguiente:
- El agente está instalado, pero no se ejecuta.
- El agente está en ejecución, pero los datos no se transfieren.
Se quitó el agente que la consola de Google Cloud informó como instalado
Después de desinstalar el agente, la consola de Google Cloud puede tardar hasta una hora en informar este cambio.