Este documento descreve como resolver problemas que pode encontrar quando liga instâncias de máquinas virtuais (MV) do Compute Engine que executam o SUSE Linux Enterprise Server (SLES) de pagamento conforme o uso (PAYG) ao repositório da ferramenta de gestão de subscrições (SMT) da SUSE.
Antes de começar
- Certifique-se de que a VM tem uma conta de serviço associada.
- Certifique-se de que a API Service Metadata está acessível a partir da VM.
- Certifique-se de que existe conetividade de rede da VM para os respetivos servidores de região e servidores SMT
- Use a ferramenta sc-repocheck para resolver automaticamente os problemas.
- Consulte os passos descritos no guia de resolução de problemas de SUSE PAYG.
-
Se ainda não o tiver feito, configure a autenticação.
A autenticação valida a sua identidade para aceder a Google Cloud serviços e APIs. Para executar código ou exemplos a partir de um ambiente de desenvolvimento local, pode autenticar-se no Compute Engine selecionando uma das seguintes opções:
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
-
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
- Set a default region and zone.
Problemas de rede
Nome de domínio não resolvível
Pode encontrar os seguintes problemas se a VM não conseguir estabelecer ligação ao servidor SMT:
smt-gce.susecloud.net
SUSEConnect error: SocketError: getaddrinfo: Name or service not known
ping: unknown host smt-gce.susecloud.net
Estes problemas são provavelmente causados por uma resolução incorreta do nome do domínio do servidor SMTP
smt-gce.susecloud.net
. Este domínio não é resolvível globalmente, pelo que tem de definir o respetivo endereço IP de acordo com a região da VM, fazendo o seguinte:Verifique o ficheiro
/etc/hosts
para se certificar de que contém uma entrada com o domíniosmt-gce.susecloud.net
.cat /etc/hosts | grep -i smt
O resultado é semelhante ao seguinte, mas o endereço IP pode ser diferente:
# Added by SMT registration do not remove, retain comment as well 108.59.80.221 smt-gce.susecloud.net smt-gce
Se o ficheiro
/etc/hosts
não contiver as mesmas linhas que o exemplo anterior, faça o seguinte:Encontre um endereço IP que corresponda à região da sua VM na lista de endereços IP do SUSE SMT.
Edite o ficheiro para adicionar o endereço IP do SUSE SMT e quaisquer outras informações em falta.
Indisponibilidade da rede
Pode encontrar os seguintes erros devido à indisponibilidade da rede, mesmo que a VM consiga resolver o nome do domínio do servidor de atualizações do Compute Engine:
Unexpected exception. Not ready to read within timeout.
Repository 'SLE-Module-Adv-Systems-Management12-Pool' is invalid. Repository 'SLE-Module-Adv-Systems-Management12-Updates' is invalid.
Seguem-se alguns exemplos de erros no ficheiro de registo
/var/log/cloudregister
que pode encontrar durante a investigação:WARNING:Unable to remove client registration from server WARNING:HTTPSConnectionPool(host='smt-gce.susecloud.net', port=443): Max retries exceeded with url: /connect/systems (Caused by NewConnectionError('
: Failed to establish a new connection: [Errno 110] Connection timed out',)) INFO:Region server arguments: ?regionHint=europe-central2 ERROR:No response from: [('34.118.112.80', None), ('34.116.251.218', None), ('34.116.224.144', None)]
Para saber mais sobre a causa do problema, faça um teste de conetividade de rede. O exemplo seguinte mostra como testar uma ligação HTTPS através do comando
cURL
:curl -sSI -m 5 -o /dev/null \ -w 'Response code (>0 is OK): %{http_code}\n' \ 'https://smt-gce.susecloud.net'
O resultado do comando contém um código de resposta HTTP ou uma mensagem de erro. Seguem-se as respostas e os erros comuns:
Resposta com êxito:
Response code (>0 is OK): 200
Erro de tempo limite de pedido:
Response code (>0 is OK): 000 curl: (28) Connection timed out after 5001 milliseconds
Erro de domínio não resolvível:
Response code (>0 is OK): 000 curl: (6) Could not resolve host: smt-gce.susecloud.net
Em determinados cenários, como regras de firewall de anfitrião rigorosas, o endereço IP predefinido associado ao domínio
smt-gce.susecloud.net
pode não estar disponível. Para garantir que o problema não está apenas relacionado com o endereço IP atual, faça testes de conetividade de rede para servidores regionais alternativos. Apresente a lista de servidores regionais fazendo o seguinte:WebUI
Aceda à SUSE WebUI para obter a lista de servidores de atualização regionais.
CLI
Use a ferramenta
pint
para obter a lista de servidores de atualização regionais através da CLI.Instale o pacote necessário
sudo zypper install python3-susepubliccloudinfo
Use o seguinte comando com uma região específica
pint google servers --region us-central1
A saída bem-sucedida contém uma lista de entradas no formato XML
<?xml version='1.0' encoding='UTF-8'?> <servers> <server ip="146.148.73.14" name="" region="us-central1" type="regionserver-sles"/> <server ip="162.222.182.90" name="" region="us-central1" type="regionserver-sap"/> <server ip="108.59.80.221" name="smt-gce.susecloud.net" region="us-central1" type="smt"/> <server ip="108.59.85.41" name="smt-gce.susecloud.net" region="us-central1" type="smt"/> <server ip="108.59.80.58" name="smt-gce.susecloud.net" region="us-central1" type="smt"/> </servers>
Para encontrar a lista completa de IPs do servidor SUSE para Google Cloud, consulte os seguintes documentos:
A indisponibilidade da rede pode dever-se a uma configuração incorreta da VM. Em caso de problemas, é necessário realizar diagnósticos de rede para identificar a causa principal.
Falha ao registar
Pode encontrar o seguinte erro se tiver VMs com um endereço IP privado no Cloud NAT:
ERROR: Registration failed: Registering system to registration proxy https://smt-gce.susecloud.net command '/usr/bin/zypper --non-interactive refs Python_3_Module_x86_64' failed Error: zypper returned 4 with 'Problem retrieving the repository index file for service 'Python_3_Module_x86_64': Timeout exceeded when accessing 'https://smt-gce.susecloud.net/services/2045/repo/repoindex.xml?credentials=Python_3_Module_x86_64'.
Para resolver este problema, reveja a configuração do Cloud NAT para verificar se o parâmetro minimum ports per VM instance está definido para, pelo menos, 256.
Para mais informações, consulte o boletim de apoio técnico da SUSE: falha no registo e no zypper para instâncias do Compute Engine atrás do Cloud NAT.
Sem resposta
Se a sua VM tiver problemas de comunicação com os servidores de atualização e de região, pode observar os seguintes erros:
Erro
SUSEConnect
:SUSEConnect error: Errno::ETIMEDOUT: Connection timed out - connect(2) for "smt-gce.susecloud.net" port 443
Erro
zypper
:Error retrieving metadata for 'SLE-Module-Adv-Systems-Management12-Pool': Not ready to read within timeout. ...
Estes erros podem ser causados pela ausência de uma resposta dos servidores de atualização e de região. Para verificar se é este o caso, consulte os
/var/log/cloudregister
registos para conteúdo semelhante:INFO:Region server arguments: ?regionHint=europe-central2 INFO:Using API: regionInfo INFO:Region server arguments: ?regionHint=europe-central2 INFO:Getting update server information, attempt 1 INFO: Using region server: 130.211.242.136 ERROR: No response from: 130.211.242.136 INFO: Using region server: 35.187.193.56 ERROR: No response from: 35.187.193.56 INFO: Using region server: 162.222.182.90 ERROR: No response from: 162.222.182.90 INFO: Using region server: 130.211.88.88 ERROR: No response from: 130.211.88.88 ERROR: None of the servers responded ERROR: Attempted: [IPv4Address('130.211.242.136'), IPv4Address('35.187.193.56'), IPv4Address('162.222.182.90'), IPv4Address('130.211.88.88')] ... ... ... ERROR:Request not answered by any server after 3 attempts ERROR:Exiting without registration
Para resolver este problema, experimente uma ou mais das seguintes opções:
Confirme se a VM tem um endereço IP externo ou se a sub-rede da nuvem privada virtual usa um NAT (Cloud NAT ou solução personalizada).
Se modificou as regras de encaminhamento de rede predefinidas, como limitar o acesso à Internet pública ou encaminhar tráfego através de uma rede no local, adicione rotas manualmente para IPs SMT através do gateway predefinido do Compute Engine, fazendo o seguinte:
Aceda à página Rotas na Google Cloud consola.
No separador Gestão de trajetos, procure um trajeto que inclua os endereços IP do SUSE SMT e verifique se tem o gateway predefinido do Compute Engine definido como o próximo salto.
Se a rota estiver em falta, pode adicioná-la clicando em Criar rota e introduzindo as informações necessárias.
Se estiver a usar um Network Load Balancer de encaminhamento interno, por exemplo, com software de rede intermediário adicional (como firewalls, NATs personalizados, etc.), certifique-se de que o balanceador de carga está a ser usado como o salto seguinte para o tráfego de VMs, fazendo o seguinte:
Aceda à página Instâncias de VM na Google Cloud consola.
Clique no nome da VM que quer verificar. É apresentada a página Detalhes da VM.
Na secção Interfaces de rede, clique em Ver detalhes.
Na secção Detalhes da firewall e das rotas, localize a rota que define o caminho para o intervalo de endereços IP selecionado.
Clique no nome da rota e confirme se o balanceador de carga de rede de passagem interna ou o respetivo endereço IP está definido como o salto seguinte.
Se não existir um trajeto que defina o caminho para o intervalo de endereços IP selecionado ou se o próximo salto do trajeto for diferente do balanceador de carga de rede de passagem interno, configure o balanceador de carga de rede de passagem interno como o próximo salto.
Se estiver a usar um Network Load Balancer de encaminhamento interno, confirme que está localizado na mesma região que a VM.
Aceda à página Instâncias de VM na Google Cloud consola.
Localize a VM que quer verificar e anote a respetiva região.
Aceda à página Equilíbrio de carga na Google Cloud consola.
Localize o Network Load Balancer de encaminhamento interno usado e verifique se está na mesma região que a VM.
Se a VM e o Network Load Balancer de passagem interno não estiverem na mesma região, ative o acesso global.
Problemas de configuração do SO
Estado de registo desconhecido
Se não souber se o seu SUSE Linux Enterprise Server (SLES) de pagamento conforme o uso (PAYG) está registado, execute o seguinte comando:
sudo SUSEConnect --status-text
O resultado contém a versão e o estado de registo dos produtos SUSE, incluindo o SUSE Linux Enterprise Server.
Installed Products: ------------------------------------------ SUSE Linux Enterprise Server 12 SP5 (SLES/12.5/x86_64) Registered ------------------------------------------ ...
Se o estado for
Not Registered
, inicie o processo de novo registo para corrigir o problema.Link simbólico do produto base incorreto
Pode deparar-se com os seguintes erros se o link do produto base apontar para um ficheiro de produto incorreto:
ERROR:Unable to obtain product information from server "108.59.85.41,None" Unprocessable Entity {"type":"error","error":"Unmet product dependencies, activate one of these products first: SUSE Linux Enterprise Server 12 x86_64... ... Unable to register modules, exiting.
Este erro é causado por um ficheiro de produto incorreto (ou seja,
sle-module-toolchain.prod
) para o qual o link simbólico/etc/products.d/baseproduct
aponta.Para resolver este problema, atualize a ligação simbólica em
/etc/products.d/baseproduct
para apontar para o ficheiro do produto base adequado, fazendo o seguinte:Navegue para o diretório
/etc/products.d
cd /etc/products.d
Execute o seguinte comando substituindo
SLES.prod
porSLES_SAP.prod
se o SLES para SAP estiver instalado:sudo ln -sf SLES.prod baseproduct
Indisponibilidade das informações de identidade da instância
Pode encontrar os seguintes erros se as informações de identidade da instância não estiverem disponíveis para a VM:
ERROR:Data collected from stderr for instance data collection "b'Unable to access instance identity information\n'"
Para aceder aos metadados da instância para tokens de identidade, todas as VMs têm de estar associadas a uma conta de serviço.
Para mais informações, leia a atualização da infraestrutura da nuvem pública.
Para verificar se a VM é relevante para esta situação, execute o seguinte comando na VM:
curl -s -H 'Metadata-Flavor: Google' \ 'http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/identity?audience=test'
Exemplo de uma resposta bem-sucedida com um token de identidade:
eyJhbGciOiJSUzI1NiIsImtpZCI6IjkzOTd0MDQxSHQ2NDNxNzkzUjY1MDIwNzEyMjZPNnppaTdqNTl3eTciLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJ0ZXN0IiwiYXpwIjoiMjY1MDIwMDUyMzgzMjYyNTk0ODU2IiwiZXhwIjoxNjgzNzEyNTQzLCJpYXQiOjE2ODM3MTI4NjQsImlzcyI6Imh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbSIsInN1YiI6IjQ1NjA2MzQ5MDg5Mzc0Njg3ODI5NyJ9.EpzQ3NZ8mKStdpH10fL34qsKG0rjQEflzvLJLm2tVNX4xBJAkMhi8lcs5InUEY-QMK3njgbzdzNtD1fXoIfKoeWsqkA8vG3NkBz5zqRrtaB2STcO14H5tjIdTBsrCtET447tRXlGG5cvgMcWnRDZG92-jUZEpWki_Ri4T69X5-bBWkfE2Thm3oSUW4fScdeVOEmOgWnzD2jeVqQ_2YniywvpkT-rLzKfN-5AgN66zgBfXqJVTC90KFMebfiaOoL7z6ZSM9AjZGf45QEMZjxjd-Xzyee6ZWK8s0RE3hJlytb3zYcLt3tJwQ1WhnrC2ToJ-ZmKxxK3xKDLCvCQ6Ny5to
Se os metadados devolvidos não forem um token, mas uma mensagem de erro, como a seguinte, a VM é afetada:
{ "error": "invalid_request", "error_description": "Service account not enabled on this instance" }
Para corrigir este problema, siga estes passos:
Parar a VM:
gcloud compute instances stop VM_NAME
Adicione uma conta de serviço à VM:
gcloud compute instances set-service-account VM_NAME \ --service account SERVICE_ACCOUNT \ --no-scopes
Inicie a VM:
gcloud compute instances start VM_NAME
Depois de adicionar a conta de serviço em falta, execute o seguinte comando a partir da VM para voltar a registar o SLES:
sudo registercloudguest --force-new
Verifique os detalhes na secção de novo registo.
Registo através de proxies
Pode encontrar um problema se as suas VMs estiverem configuradas para usar qualquer tipo de software de proxy. O exemplo seguinte demonstra uma tentativa de registar o SLES através de um proxy HTTP.
ERROR: Baseproduct registration failed ERROR: Registering system to registration proxy https://smt-gce.susecloud.net Announcing system to https://smt-gce.susecloud.net ... SUSEConnect error: Net::HTTPFatalError: 503 "Service Unavailable"
O SUSE no Compute Engine não oferece apoio técnico oficial para o registo do sistema operativo quando este é realizado através de intermediários que modificam a comunicação original, como proxies de man-in-the-middle (MITM) ou tipos não transparentes.
Google CloudA solução oficial para resolver este problema é configurar o Cloud NAT e encaminhar o tráfego de VMs através dele.
Soluções alternativas comuns
Novo registo
Em alguns casos, pode usar uma abordagem de novo registo para contornar problemas de registo.
Para forçar um novo registo, use o seguinte comando:
sudo registercloudguest --force-new
Se for bem-sucedido, é apresentada a seguinte linha.
Registration succeeded
Pode encontrar detalhes sobre o processo de novo registo no
/var/log/cloudregister
.Exemplo bem-sucedido
INFO:Forced new registration INFO:Clean current registration server: ('108.59.80.221', None) ... INFO:Starting new HTTP connection (1): 169.254.169.254 INFO:Region server arguments: ?regionHint=us-central1 INFO:Using region server: 130.211.242.136 INFO:Starting new HTTPS connection (1): 130.211.242.136 INFO:Starting new HTTPS connection (1): 108.59.80.58 INFO:Modified /etc/hosts, added: 108.59.80.58 smt-gce.susecloud.net smt-gce ... INFO:Starting new HTTPS connection (1): 108.59.80.58 DEBUG:"GET /api/health/status HTTP/1.1" 200 None INFO:Current update server will be used: "('108.59.80.58', None)" INFO:Starting new HTTPS connection (1): smt-gce.susecloud.net DEBUG:"POST /connect/systems/products/migrations HTTP/1.1" 422 None INFO:Registration: /usr/sbin/SUSEConnect --url https://smt-gce.susecloud.net --product sle-module-containers/12/x86_64 --instance-data /var/lib/cloudregister/9c982106-78de-48fe-a662-20383da4c760
Exemplo com falha
INFO:Forced new registration INFO:Using API: regionInfo INFO:Starting new HTTP connection (1): 169.254.169.254 INFO:Region server arguments: ?regionHint=us-central1 INFO:Using region server: 130.211.242.136 INFO:Starting new HTTPS connection (1): 130.211.242.136 ERROR:No response from: 130.211.242.136 INFO:Using region server: 130.211.88.88 INFO:Starting new HTTPS connection (1): 130.211.88.88 ERROR:No response from: 130.211.88.88 INFO:Using region server: 146.148.73.14 INFO:Starting new HTTPS connection (1): 146.148.73.14 ERROR:No response from: 146.148.73.14 ERROR:None of the servers responded ERROR: Attempted: ['130.211.242.136', '130.211.88.88', '146.148.73.14'] ERROR:Exiting without registration
Anulação do registo
Em alguns casos, como uma atualização de versão principal, pode encontrar os seguintes erros porque o sistema já está registado no SUMA:
Can't get available migrations from server: SUSE::Connect::ApiError: The requested products 'SUSE Manager Client Tools for SLE 12 x86_64' are not activated on the system.
This system is managed by SUSE manager.
Resolva o problema fazendo o seguinte:
Remova o módulo SUSE Manager Client Tools, conforme descrito no guia de adição ou eliminação de módulos e extensões com o SUSEConnect.
Anule o registo do SUMA seguindo o guia Como anular o registo de um cliente do SUSE Manager.
Execute os seguintes comandos a partir da VM para limpar o registo antigo:
sudo SUSEConnect --cleanup && \ sudo registercloudguest --clean && \ sudo rm -f /etc/SUSEConnect && \ sudo rm -f /etc/zypp/{repos,services,credentials}.d/* && \ sudo rm -f /var/lib/cloudregister/* && \ sudo rm -rf /var/cache/zypp/* && \ sudo rm -rf /var/cache/cloudregister/* && \ sudo sed -i '/^# Added by SMT reg/,+1d' /etc/hosts
Execute o seguinte comando para registar novamente o sistema:
sudo registercloudguest --force-new
Verifique os detalhes na secção de novo registo.
Quando o processo de registo estiver concluído, atualize os serviços e os repositórios, e verifique se todos os repositórios esperados para o sistema fornecidos pelo servidor SMT estão presentes:
sudo zypper ref -s && \ sudo zypper ls && \ sudo zypper lr -U
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-09-19 UTC.
-