Esta página apresenta dicas que podem ser úteis se você encontrar problemas ao usar o Compute Engine.
Para ajuda na solução de problemas específicos, consulte uma das seguintes seções:
- Para saber mais sobre as etapas de solução de problemas gerais com instâncias, como falha na inicialização de uma instância, consulte Solução de problemas gerais.
- Para saber mais sobre as etapas de solução de problemas com instâncias do Windows, consulte Como solucionar problemas de instâncias do Windows.
Ver diferentes formatos de resposta
A CLI do Google Cloud realiza a maioria das ações fazendo chamadas da
API REST. Os resultados com estilo de formatação mostram somente as informações mais importantes retornadas por um comando específico. Para ver os diferentes formatos de resposta,
use a sinalização --format
que exibe a resposta em diferentes formatos de saída,
incluindo json
, yaml
e text
. Por exemplo, para ver uma lista de instâncias em
JSON, use --format json
:
gcloud compute instances list --format json
Ver registros do gcloud compute
A CLI gcloud cria e armazena registros em um arquivo de registro que você
pode consultar, localizado em $HOME/.config/gcloud/logs
. Para ver o arquivo de registro mais recente em um sistema operacional baseado em Linux, execute:
$ less $(find ~/.config/gcloud/logs | sort | tail -n 1)
O arquivo de registro inclui informações sobre todas as solicitações e respostas feitas usando o gcloud CLI
ferramenta.
Para limpar automaticamente os arquivos de registro criados pela gcloud CLI,
use a propriedade max_log_days
,
que define o número máximo de dias de retenção de arquivos de registro antes da exclusão.
A configuração padrão é de 30 dias. Se você definir esse valor de propriedade como 0, a coleta de lixo de registro
será desativada e os arquivos de registro não serão excluídos.
gcloud config set core/max_log_days DAYS_TO_RETAIN_LOGS
Desative a geração de registros de arquivos da gcloud CLI:
O arquivo $HOME/.config/gcloud/logs
consome espaço no sistema de arquivos local.
A quantidade de registros gerados pode sobrecarregar a quantidade de espaço no sistema de arquivos
local, o que pode causar problemas como os seguintes:
- Uso do espaço que chega a 100% na instância.
- Falha ao executar os comandos de geração de registros da gcloud CLI porque não há espaço disponível para criar um arquivo no sistema de arquivos local.
Para alterar o comportamento da gcloud CLI e desativar a geração de registros
de arquivos, use a propriedade
disable_file_logging
:
gcloud config set core/disable_file_logging True
Selecionar nomes de recurso
Ao selecionar os nomes para os seus recursos, lembre-se de que eles aparecem nos painéis de suporte e operacionais do Google Compute Engine. Por esse motivo, não exponha informações confidenciais nesses nomes.
Como se comunicar com a Internet
Uma instância terá acesso direto à Internet somente se as duas condições a seguir forem verdadeiras:
- A instância tem um endereço IP externo.
- A rede VPC da instância usa uma rota padrão em que o próximo salto é o gateway de Internet padrão.
As instâncias também podem acessar a Internet indiretamente com a conexão pelo Cloud NAT ou por um proxy com base em instância. Para mais considerações, incluindo a configuração da regra de firewall, consulte Requisitos de acesso à Internet.
Conexões inativas
As redes VPC do Google Cloud implementam um rastreamento de conexão de 10 minutos para protocolos IP que têm um conceito de conexão (TCP, por exemplo). Isso significa que os pacotes de entrada associados a uma conexão estabelecida são permitidos, desde que pelo menos um pacote seja enviado ou recebido para a conexão nos últimos 10 minutos. Se nenhum pacote para a conexão for enviado ou recebido por 10 minutos ou mais, as entradas de rastreamento da conexão inativa serão removidas. Depois que as entradas de rastreamento da conexão são removidas, o Google Cloud não permite mais pacotes de entrada até que pelo menos um pacote de saída novo seja enviado. Esse rastreamento de conexão se aplica a todas as origens e destinos (endereços IP internos e externos).
Para evitar conexões inativas, realize as etapas a seguir:
Defina os parâmetros de sinal de atividade do TCP do sistema operacional como um período menor que 10 minutos. Isso garante que pelo menos um pacote seja enviado no prazo.
Verifique se os aplicativos que abrem conexões TCP fazem isso com a opção
SO_KEEPALIVE
ativada.
Nos exemplos a seguir, demonstramos como definir os parâmetros de sinal de atividade do TCP do sistema operacional com um valor de intervalo de um minuto. Consulte a documentação da biblioteca de software ou do aplicativo para determinar como configurá-la para usar SO_KEEPALIVE
.
Linux
Execute este 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
.
Consulte Linux TCP Keepalive HOWTO para mais informações.
macOS
Execute este 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
No caminho do registro HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
, adicione as seguintes configurações usando o tipo de dados DWORD ou edite os valores se as configurações já existirem:
KeepAliveInterval: 1000 KeepAliveTime: 60000 TcpMaxDataRetransmissions: 10
Como acessar o Compute Engine com um usuário SSH diferente
Por padrão, a ferramenta de linha de comando gcloud compute
usa a variável $USER
para adicionar usuários ao arquivo /etc/passwd
para conectar-se a instâncias de máquina virtual usando SSH. Você pode especificar um usuário diferente usando a sinalização --ssh-key-file PRIVATE_KEY_FILE
ao executar o comando gcloud compute ssh
. Exemplo:
gcloud compute ssh example-instance --ssh-key-file my-private-key-file
Consulte a documentação de referência gcloud
para obter mais informações.
Interagir com o console serial
Ative o acesso interativo a um console serial de instância para se conectar e resolver problemas de instâncias por meio do console.
Para aprender mais, leia Interagir com o console serial.
Evitar fragmentação de pacote de instâncias criadas a partir de imagens personalizadas
A rede VPC tem uma unidade padrão de transmissão máxima (MTU, na sigla em inglês)
de 1460
bytes para imagens do Linux e do Windows Server. No entanto, a
MTU da rede pode ser alterada. Para mais detalhes, consulte a
visão geral da unidade de transmissão máxima na documentação
da VPC.
Ao criar aplicativos cliente que se comunicam com instâncias do Compute Engine por soquetes UDP, será possível evitar a fragmentação se você definir o tamanho máximo dos dados do datagrama UDP para 28 bytes a menos que a MTU da rede. Por exemplo, se a MTU da rede for de 1.460 bytes, será possível enviar até 1.432 bytes de dados UDP por pacote sem fragmentação. Se a MTU da rede for de 1.500 bytes, será possível enviar até 1.472 bytes de dados UDP sem fragmentação. Os 28 bytes são usados em um cabeçalho de pacote IPv4 (20 bytes) e em um cabeçalho de datagrama UDP (8 bytes). Você pode definir a MTU da rede com um máximo de 8896 bytes.