En este documento se describe cómo resolver los problemas que pueden surgir al conectar instancias de máquina virtual (VM) de Compute Engine que ejecutan SUSE Linux Enterprise Server (SLES) de pago por uso con el repositorio de la herramienta de gestión de suscripciones (SMT) de SUSE.
Antes de empezar
- Asegúrate de que la VM tenga una cuenta de servicio asociada.
- Asegúrate de que se pueda acceder a la API de metadatos de servicio desde la VM.
- Asegúrate de que la VM tenga conectividad de red con los servidores de regiones y los servidores SMT correspondientes.
- Usa la herramienta sc-repocheck para solucionar los problemas automáticamente.
- Consulta los pasos que se describen en la guía Solución de problemas de pago por uso de SUSE.
-
Si aún no lo has hecho, configura la autenticación.
La autenticación verifica tu identidad para acceder a Google Cloud servicios y APIs. Para ejecutar código o ejemplos desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
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
-
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud init
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
- Set a default region and zone.
Problemas de red
Nombre de dominio no resuelto
Si la VM no puede conectarse al servidor SMT de
smt-gce.susecloud.net
, puede que se produzcan los siguientes problemas:SUSEConnect error: SocketError: getaddrinfo: Name or service not known
ping: unknown host smt-gce.susecloud.net
Es probable que estos problemas se deban a una resolución incorrecta del nombre de dominio del servidor SMTP
smt-gce.susecloud.net
. Este dominio no se puede resolver de forma global, por lo que debes definir su dirección IP según la región de la VM. Para ello, sigue estos pasos:Comprueba el archivo
/etc/hosts
para asegurarte de que contiene una entrada con el dominiosmt-gce.susecloud.net
.cat /etc/hosts | grep -i smt
La salida será similar a la siguiente, pero la dirección IP puede ser diferente:
# Added by SMT registration do not remove, retain comment as well 108.59.80.221 smt-gce.susecloud.net smt-gce
Si el archivo
/etc/hosts
no contiene las mismas líneas que en el ejemplo anterior, sigue estos pasos:Busca una dirección IP que se corresponda con la región de tu máquina virtual en la lista de direcciones IP de SUSE SMT.
Edite el archivo para añadir la dirección IP de SUSE SMT y cualquier otra información que falte.
Red no disponible
Es posible que se produzcan los siguientes errores debido a que la red no está disponible, aunque la VM pueda resolver el nombre de dominio del servidor de actualizaciones de 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.
A continuación, se muestran algunos ejemplos de errores en el archivo de registro de
/var/log/cloudregister
que puede encontrar durante la investigación: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 obtener más información sobre la causa del problema, realiza una prueba de conectividad de red. En el siguiente ejemplo se muestra cómo probar una conexión HTTPS mediante
cURL
:curl -sSI -m 5 -o /dev/null \ -w 'Response code (>0 is OK): %{http_code}\n' \ 'https://smt-gce.susecloud.net'
La salida del comando contiene un código de respuesta HTTP o un mensaje de error. A continuación, se indican algunas respuestas y errores habituales:
Respuesta correcta:
Response code (>0 is OK): 200
Error de tiempo de espera de solicitud:
Response code (>0 is OK): 000 curl: (28) Connection timed out after 5001 milliseconds
Error de dominio no resuelto:
Response code (>0 is OK): 000 curl: (6) Could not resolve host: smt-gce.susecloud.net
En algunos casos, como cuando se aplican reglas de cortafuegos de host estrictas, es posible que la dirección IP predeterminada asociada al dominio
smt-gce.susecloud.net
no esté disponible. Para asegurarte de que el problema no solo está relacionado con la dirección IP actual, realiza pruebas de conectividad de red para servidores regionales alternativos. Para obtener la lista de servidores regionales, haz lo siguiente:WebUI
Ve a SUSE WebUI para obtener la lista de servidores de actualización regionales.
CLI
Usa la herramienta
pint
para obtener la lista de servidores de actualización regionales mediante la CLI.Instalar el paquete necesario
sudo zypper install python3-susepubliccloudinfo
Usa el siguiente comando con una región específica
pint google servers --region us-central1
El resultado correcto contiene una lista de entradas en 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 consultar la lista completa de IPs de servidores SUSE para Google Cloud, consulta los siguientes documentos:
La falta de disponibilidad de la red puede deberse a una configuración incorrecta de la máquina virtual. En caso de que haya problemas, es necesario realizar un diagnóstico de la red para identificar la causa principal.
Registro fallido
Es posible que se produzca el siguiente error si tienes máquinas virtuales con una dirección IP privada en 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 solucionar este problema, revise la configuración de Cloud NAT y compruebe que el parámetro Número mínimo de puertos por instancia de VM tenga un valor de al menos 256.
Para obtener más información, consulta el boletín de asistencia de SUSE Registration and zypper failed for Compute Engine instances behind Cloud NAT (Registro y zypper fallidos en instancias de Compute Engine detrás de Cloud NAT).
Sin respuesta
Si tu VM tiene problemas para comunicarse con los servidores de actualización y de región, es posible que veas los siguientes errores:
Error
SUSEConnect
:SUSEConnect error: Errno::ETIMEDOUT: Connection timed out - connect(2) for "smt-gce.susecloud.net" port 443
Error
zypper
:Error retrieving metadata for 'SLE-Module-Adv-Systems-Management12-Pool': Not ready to read within timeout. ...
Estos errores pueden deberse a la ausencia de una respuesta de los servidores de actualización y de región. Para comprobar si es así, consulta los
/var/log/cloudregister
registros para ver si hay contenido similar: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 solucionar este problema, prueba una o varias de las siguientes opciones:
Confirma que la VM tiene una dirección IP externa o que la subred de la nube privada virtual usa una NAT (Cloud NAT o una solución personalizada).
Si has modificado las reglas de enrutamiento de la red predeterminadas, como limitar el acceso público a Internet o enrutar el tráfico a través de una red local, añade rutas manualmente para las IPs de SMT a través de la puerta de enlace predeterminada de Compute Engine. Para ello, sigue estos pasos:
Ve a la página Rutas de la Google Cloud consola.
En la pestaña Gestión de rutas, busca una ruta que incluya las direcciones IP de SUSE SMT y comprueba que tenga la pasarela predeterminada de Compute Engine configurada como salto siguiente.
Si falta la ruta, puedes añadirla haciendo clic en Crear ruta e introduciendo la información necesaria.
Si utilizas un balanceador de carga de red de paso a través interno, por ejemplo, con software de red intermediario adicional (como firewalls, NATs personalizados, etc.), asegúrate de que el balanceador de carga se utiliza como el siguiente salto para el tráfico de la VM. Para ello, haz lo siguiente:
Ve a la página Instancias de VM de la Google Cloud consola.
Haz clic en el nombre de la VM que quieras consultar. Se abrirá la página Detalles de la VM.
En la sección Interfaces de red, haga clic en Ver detalles.
En la sección Detalles de cortafuegos y rutas, busca la ruta que define la ruta al intervalo de direcciones IP seleccionado.
Haz clic en el nombre de la ruta y confirma que el balanceador de carga de red de paso a través interno o su dirección IP se han definido como el siguiente salto.
Si no hay ninguna ruta que defina la ruta al intervalo de direcciones IP seleccionado o si el siguiente salto de la ruta es diferente del balanceador de carga de red de paso a través interno, configure el balanceador de carga de red de paso a través interno como siguiente salto.
Si usas un balanceador de carga de red interno de tipo pasarela, comprueba que se encuentre en la misma región que la VM.
Ve a la página Instancias de VM de la Google Cloud consola.
Busca la VM que quieras comprobar y anota su región.
Ve a la página Balanceo de carga de la Google Cloud consola.
Busca el balanceador de carga de red de paso a través interno que se esté usando y comprueba si está en la misma región que la VM.
Si la VM y el balanceador de carga de red con paso a través interno no están en la misma región, habilita el acceso mundial.
Problemas de configuración del SO
Estado de registro desconocido
Si no sabes si tu instancia de SUSE Linux Enterprise Server (SLES) de pago por uso está registrada, ejecuta el siguiente comando:
sudo SUSEConnect --status-text
El resultado contiene la versión y el estado de registro de los productos de SUSE, incluido SUSE Linux Enterprise Server.
Installed Products: ------------------------------------------ SUSE Linux Enterprise Server 12 SP5 (SLES/12.5/x86_64) Registered ------------------------------------------ ...
Si el estado es
Not Registered
, inicia el proceso de volver a registrarse para solucionar el problema.Enlace simbólico del producto base incorrecto
Si el enlace del producto base apunta a un archivo de producto incorrecto, es posible que se produzcan los siguientes errores:
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 error se debe a que el enlace simbólico
/etc/products.d/baseproduct
apunta a un archivo de producto incorrecto (es decir,sle-module-toolchain.prod
).Para solucionar este problema, actualice el enlace simbólico de
/etc/products.d/baseproduct
para que apunte al archivo de producto base adecuado. Para ello, siga estos pasos:Ve al directorio
/etc/products.d
.cd /etc/products.d
Ejecuta el siguiente comando y sustituye
SLES.prod
porSLES_SAP.prod
si tienes instalado SLES para SAP:sudo ln -sf SLES.prod baseproduct
No se puede obtener la información de identidad de la instancia
Si la información de identidad de la instancia no está disponible para la VM, es posible que se produzcan los siguientes errores:
ERROR:Data collected from stderr for instance data collection "b'Unable to access instance identity information\n'"
Para acceder a los metadatos de instancia de los tokens de identidad, todas las VMs deben estar asociadas a una cuenta de servicio.
Para obtener más información, consulta el artículo Novedades de la infraestructura de la nube pública.
Para comprobar si la VM es relevante en esta situación, ejecuta el siguiente comando en la VM:
curl -s -H 'Metadata-Flavor: Google' \ 'http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/identity?audience=test'
Ejemplo de respuesta correcta con un token de identidad:
eyJhbGciOiJSUzI1NiIsImtpZCI6IjkzOTd0MDQxSHQ2NDNxNzkzUjY1MDIwNzEyMjZPNnppaTdqNTl3eTciLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJ0ZXN0IiwiYXpwIjoiMjY1MDIwMDUyMzgzMjYyNTk0ODU2IiwiZXhwIjoxNjgzNzEyNTQzLCJpYXQiOjE2ODM3MTI4NjQsImlzcyI6Imh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbSIsInN1YiI6IjQ1NjA2MzQ5MDg5Mzc0Njg3ODI5NyJ9.EpzQ3NZ8mKStdpH10fL34qsKG0rjQEflzvLJLm2tVNX4xBJAkMhi8lcs5InUEY-QMK3njgbzdzNtD1fXoIfKoeWsqkA8vG3NkBz5zqRrtaB2STcO14H5tjIdTBsrCtET447tRXlGG5cvgMcWnRDZG92-jUZEpWki_Ri4T69X5-bBWkfE2Thm3oSUW4fScdeVOEmOgWnzD2jeVqQ_2YniywvpkT-rLzKfN-5AgN66zgBfXqJVTC90KFMebfiaOoL7z6ZSM9AjZGf45QEMZjxjd-Xzyee6ZWK8s0RE3hJlytb3zYcLt3tJwQ1WhnrC2ToJ-ZmKxxK3xKDLCvCQ6Ny5to
Si los metadatos devueltos no son un token, sino un mensaje de error como el siguiente, la VM se verá afectada:
{ "error": "invalid_request", "error_description": "Service account not enabled on this instance" }
Para solucionar este problema, siga estos pasos:
Detén la VM:
gcloud compute instances stop VM_NAME
Añade una cuenta de servicio a la VM:
gcloud compute instances set-service-account VM_NAME \ --service account SERVICE_ACCOUNT \ --no-scopes
Inicia la VM:
gcloud compute instances start VM_NAME
Después de añadir la cuenta de servicio que falta, ejecuta el siguiente comando desde la VM para volver a registrar SLES:
sudo registercloudguest --force-new
Consulta los detalles en la sección Volver a registrarse.
Registro detrás de proxies
Puede que tengas algún problema si tus máquinas virtuales están configuradas para utilizar cualquier tipo de software proxy. En el siguiente ejemplo se muestra un intento de registrar SLES mediante un 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"
SUSE en Compute Engine no ofrece asistencia oficial para el registro del sistema operativo cuando se realiza a través de intermediarios que modifican la comunicación original, como proxies de intermediario (MITM) o tipos no transparentes.
La solución oficial para resolver este problema es configurar Cloud NAT y enrutar el tráfico de las VMs a través de él.
Soluciones alternativas habituales
Volver a registrarse
En algunos casos, se puede usar un enfoque de nuevo registro para solucionar los problemas de registro.
Para forzar un nuevo registro, usa el siguiente comando:
sudo registercloudguest --force-new
Si la acción se realiza correctamente, se mostrará la siguiente línea.
Registration succeeded
Puede consultar los detalles del proceso de nuevo registro en la
/var/log/cloudregister
.Ejemplo de operación correcta
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
Ejemplo de error
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
Anulación del registro
En algunos casos, como al actualizar una versión principal, es posible que se produzcan los siguientes errores porque el sistema ya está registrado en 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.
Para solucionar el problema, haz lo siguiente:
Elimine el módulo SUSE Manager Client Tools tal como se describe en la guía para añadir o eliminar módulos y extensiones con SUSEConnect.
Para dar de baja SUMA, sigue las instrucciones de la guía Cómo dar de baja un cliente de SUSE Manager.
Ejecuta los siguientes comandos desde la VM para limpiar el registro antiguo:
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
Ejecuta el siguiente comando para volver a registrar el sistema:
sudo registercloudguest --force-new
Consulta los detalles en la sección Volver a registrarse.
Cuando se haya completado el proceso de registro, actualice los servicios y los repositorios, y compruebe si están presentes todos los repositorios esperados del sistema proporcionados por el servidor SMT:
sudo zypper ref -s && \ sudo zypper ls && \ sudo zypper lr -U
A menos que se indique lo contrario, el contenido de esta página está sujeto a la licencia Reconocimiento 4.0 de Creative Commons y las muestras de código están sujetas a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio web de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-09-12 (UTC).
-