En esta página se describen consejos que pueden resultarte útiles si tienes algún problema mientras usas Compute Engine.
Para obtener ayuda sobre cómo solucionar problemas específicos, consulta una de las siguientes secciones:
- Para solucionar problemas generales con las instancias, como si no se inicia, consulta la sección Pasos generales para solucionar problemas.
- Para ver los pasos para solucionar problemas con instancias de Windows, consulta Solucionar problemas de instancias de Windows.
Ver diferentes formatos de respuesta
La CLI de Google Cloud realiza la mayoría de sus acciones haciendo llamadas a la API REST. Los resultados con formato muestran solo la información más importante devuelta por un comando específico. Para ver los diferentes formatos de respuesta, usa la marca --format
, que muestra la respuesta en diferentes formatos de salida, como json
, yaml
y text
. Por ejemplo, para ver una lista de instancias en JSON, usa --format json
:
gcloud compute instances list --format json
Ver registros de gcloud compute
gcloud CLI crea y almacena registros en un archivo de registro que puedes consultar, ubicado en $HOME/.config/gcloud/logs
. Para ver el archivo de registro más reciente en un sistema operativo basado en Linux, ejecuta el siguiente comando:
$ less $(find ~/.config/gcloud/logs | sort | tail -n 1)
El archivo de registro incluye información sobre todas las solicitudes y respuestas realizadas con la herramienta gcloud CLI
.
Para purgar automáticamente los archivos de registro creados por gcloud CLI, usa la propiedad max_log_days
, que define el número máximo de días que se conservarán los archivos de registro antes de eliminarlos.
El ajuste predeterminado es de 30 días. Si asignas el valor 0 a esta propiedad, se desactiva la recogida de elementos no utilizados de los registros y no se eliminan los archivos de registro.
gcloud config set core/max_log_days DAYS_TO_RETAIN_LOGS
Inhabilitar el registro de archivos de gcloud CLI:
El archivo $HOME/.config/gcloud/logs
ocupa espacio en el sistema de archivos local.
La cantidad de registros generados puede superar la cantidad de espacio del sistema de archivos local, lo que puede provocar problemas como los siguientes:
- La utilización del espacio alcanza el 100% en la instancia.
- No se pueden ejecutar los comandos de registro de la interfaz de línea de comandos de gcloud porque no queda espacio para crear un archivo en el sistema de archivos local.
Para cambiar el comportamiento de gcloud CLI e inhabilitar el registro de archivos, usa la propiedad disable_file_logging
:
gcloud config set core/disable_file_logging True
Seleccionar nombres de recursos
Cuando elijas nombres para tus recursos, ten en cuenta que estos nombres descriptivos pueden aparecer en los paneles de control de asistencia y operativos de Compute Engine. Por este motivo, se recomienda que los nombres de los recursos no expongan información sensible.
Comunicación con Internet
Una instancia tiene acceso a Internet directo solo si se cumplen las dos condiciones siguientes:
- La instancia tiene una dirección IP externa.
- La red de VPC de la instancia usa una ruta predeterminada cuyo siguiente salto es la pasarela de Internet predeterminada.
Las instancias también pueden acceder a Internet de forma indirecta conectándose a través de Cloud NAT o de un proxy basado en instancias. Para obtener más información, como la configuración de reglas de cortafuegos, consulta los requisitos de acceso a Internet.
Conexiones inactivas
Google Cloud Las redes VPC implementan un seguimiento de las conexiones de 10 minutos para los protocolos IP que tienen un concepto de conexión (TCP, por ejemplo). Esto significa que los paquetes entrantes asociados a una conexión establecida se permiten siempre que se envíe o reciba al menos un paquete para la conexión en los últimos 10 minutos. Si no se han enviado ni recibido paquetes de la conexión durante 10 minutos o más, se eliminarán las entradas de seguimiento de la conexión inactiva. Una vez que se hayan eliminado las entradas de seguimiento de la conexión, Google Cloud no permitirá que se envíen más paquetes entrantes hasta que se haya enviado al menos un paquete saliente nuevo. Este seguimiento de conexiones se aplica a todas las fuentes y destinos, tanto a las direcciones IP internas como externas .
Para evitar conexiones inactivas, haz lo siguiente:
Define los parámetros keep-alive de TCP del sistema operativo en un periodo de menos de 10 minutos. De esta forma, se asegura de que se envíe al menos un paquete en ese periodo.
Asegúrate de que las aplicaciones que abran conexiones TCP lo hagan con la opción
SO_KEEPALIVE
habilitada.
En los siguientes ejemplos se muestra cómo definir los parámetros de mantenimiento activo de TCP del sistema operativo con un valor de intervalo de un minuto. Consulta la documentación de tu aplicación o biblioteca de software para determinar cómo configurarla para usar SO_KEEPALIVE
.
Linux
Ejecuta el siguiente comando:
$ sudo /sbin/sysctl -w net.ipv4.tcp_keepalive_time=60 net.ipv4.tcp_keepalive_intvl=60 net.ipv4.tcp_keepalive_probes=5
/etc/sysctl.conf
.
Consulta la guía de Linux sobre TCP Keepalive para obtener más información.
macOS
Ejecuta el siguiente comando:
$ sudo sysctl -w net.inet.tcp.always_keepalive=1 net.inet.tcp.keepidle=60000 net.inet.tcp.keepinit=60000 net.inet.tcp.keepintvl=60000
Windows
En la ruta del registro
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
,
añade los siguientes ajustes con el tipo de datos
DWORD
o edita los valores si los ajustes ya existen:
KeepAliveInterval: 1000 KeepAliveTime: 60000 TcpMaxDataRetransmissions: 10
Acceder a Compute Engine como otro usuario de SSH
De forma predeterminada, la herramienta de línea de comandos gcloud compute
usa la variable $USER
para añadir usuarios al archivo /etc/passwd
y conectarse a instancias de máquinas virtuales mediante SSH. Puedes especificar otro usuario con la marca --ssh-key-file PRIVATE_KEY_FILE
al ejecutar el comando gcloud compute ssh
. Por ejemplo:
gcloud compute ssh example-instance --ssh-key-file my-private-key-file
Para obtener más información, consulta la documentación de referencia de gcloud
.
Interactuar con la consola de serie
Puedes habilitar el acceso interactivo a la consola en serie de una instancia para conectarte a ella y solucionar problemas a través de la consola en serie.
Para obtener más información, consulta el artículo Interactuar con la consola en serie.
Evitar la fragmentación de paquetes en instancias creadas a partir de imágenes personalizadas
La red de VPC tiene una unidad de transmisión máxima (MTU) predeterminada de 1460
bytes para las imágenes de Linux y Windows Server. Sin embargo, se puede cambiar la MTU de la red. Para obtener más información, consulta la descripción general de la unidad de transmisión máxima en la documentación de VPC.
Cuando crees aplicaciones cliente que se comuniquen con instancias de Compute Engine a través de sockets UDP, puedes evitar la fragmentación si asignas al tamaño máximo de los datos del datagrama UDP un valor 28 bytes inferior a la MTU de la red. Por ejemplo, si la MTU de la red es de 1460 bytes, puedes enviar hasta 1432 bytes de datos UDP por paquete sin fragmentación. Si la MTU de la red es de 1500 bytes, puedes enviar hasta 1472 bytes de datos UDP sin fragmentación. Los 28 bytes se utilizan para un encabezado de paquete IPv4 (20 bytes) y un encabezado de datagrama UDP (8 bytes). Puedes definir la MTU de la red en un máximo de 8896 bytes.