Comment puis-je résoudre les problèmes de mise à niveau du système d’exploitation SUSE sur mon instance EC2 ?

Lecture de 4 minute(s)
0

Lorsque j’essaie de mettre à niveau le système d'exploitation SUSE sur mon instance Amazon Elastic Compute Cloud (Amazon EC2), je reçois des erreurs: échec de la vérification de l'état de l'instance, dé-enregistrement du système d'exploitation et défaillance des commandes Zypper.

Résolution

Recherche des échecs de contrôle du statut de l’instance

En cas d’échec de contrôle du statut de l’instance, consultez Comment puis-je résoudre le problème d’échec de l’ instance Linux EC2 lors du contrôle du statut de l’instance en raison de problèmes liés au système d’exploitation ?

Servez-vous du script susecloud-repocheck pour diagnostiquer et corriger automatiquement les dysfonctionnements secondaires

Le script susecloud-repocheck effectue une vérification du référentiel du système d'exploitation. Il corrige également les problèmes qui empêchent l'instance de s'enregistrer dans l'infrastructure de mise à jour SUSE pour les raisons suivantes :

  • Microsoft Azure
  • AWS
  • Plateforme Google Cloud (GCP)
  • Instances à la demande avec paiement à l'usage (PAYG)

Pour en savoir plus, consultez susecloud-repocheck sur le référentiel SUSE GitHub.

Exécutez le script à l’aide de la commande suivante :

$ python3 <(curl -sL https://raw.githubusercontent.com/SUSE/susecloud-repocheck/main/sc-repocheck.py)

Le script crée des journaux dans le répertoire nommé /var/log/ sc-repocheck_<YYMMDD_hhmmss>.tar.xz.

Vérifiez l’enregistrement manuellement et résolvez les échecs de mise à niveau

**Vérifier le code de l'instance billingProducts ou marketplaceProductCodes **

Vérifiez le code BillingProducts de l'instance pour PAYG vanilla SLES. Vérifiez le code marketplaceProductCodes en ce qui concerne PAYG SLES pour SAP Applications.

Exécutez la commande suivante pour vérifier le code billingProducts ou marketplaceProductCodes :

# /usr/bin/curl --noproxy '*' -w "\n" -s -H "X-aws-ec2-metadata-token: $(curl --noproxy '*' -s -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 300")" http://169.254.169.254/latest/dynamic/instance-identity/document | grep -E 'billingProducts|marketplaceProductCodes'

Voici le résultat de la commande :

 billingProducts" : [ "bp-********" ]

Ou

"marketplaceProductCodes" : \[ "\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*" \],

Vérifiez les entrées d’enregistrement SMT dans le fichier /etc/hosts

Recherchez dans le fichier /etc/hosts une entrée qui suit la ligne # Ajouté par l'enregistrement SMT ne pas supprimer, retenir également le commentaire .

**Remarque :**Il existe plusieurs serveurs de mise à jour du cloud public SUSE au sein d'une région AWS. Pour plus d'informations, consultez la liste des adresses IP des serveurs de mise à jour pour les régions AWS sur le site Web de SUSE Public Cloud Solutions.

Pour vérifier l'état actuel de l'enregistrement, exécutez la commande suivante :

# SUSEConnect -s

Dans la sortie de commande précédente, déterminez si le paramètre Statut est défini sur Enregistré ou Non enregistré. Si la sortie apparaît comme Non enregistré, essayez de réenregistrer l’instance.

Pour supprimer des entrées des enregistrements précédents, exécutez la commande suivante :

# registercloudguest --clean

Pour réenregistrer l'instance, exécutez la commande suivante :

# registercloudguest --force-new

Pour vérifier l'état actuel de l'enregistrement, exécutez la commande suivante :

# SUSEConnect -s

Si l’enregistrement échoue, analysez les journaux dans /var/log/cloudregister pour déterminer la raison de l’échec. Un exemple d'erreur dans les journaux est donné ci- après :

SUSEConnect error: Errno::ENOSPC: No space left on device

Supprimez toute entrée d'enregistrement SMT dupliquée ou supplémentaire dans le fichier /etc/hosts. Un exemple d'entrée ajouté par l'enregistrement SMT est donné ci-après :

# vi /etc/hosts
# Added by SMT registration do not remove, retain comment as well
54.246.90.215 smt-ec2.susecloud.net smt-ec2

Résolution des erreurs d’enregistrement fréquentes

Procédez comme suit pour résoudre les erreurs d'enregistrement les plus fréquentes :

  1. Vérifiez que les paquets cloud-regionsrv-client et les dépendances connexes sont installés dans votre système d'exploitation en exécutant la commande suivante :

    # rpm -qa | grep -E 'cloud-regionsrv-client|cloud-regionsrv-client-plugin-ec2|regionServiceClientConfigEC2|SUSEConnect|suseconnect-ng|python3-ec2metadata|python3-dnspython|python3-lxml|python3-cssselect|python3-M2Crypto|python3-zypp-plugin|libzypp|ruby-common'

    Voici un extrait issu de la commande précédente :

    libzypp-17.31.20-150400.3.40.1.x86_64
    suseconnect-ng-1.6.0~git0.31371c8-150400.3.22.1.x86_64
    python3-zypp-plugin-0.6.3-150000.4.2.1.noarch
    python3-cssselect-1.0.3-150000.3.3.1.noarch
    python3-M2Crypto-0.38.0-150400.7.64.x86_64
    python3-lxml-4.7.1-150200.3.10.1.x86_64
    regionServiceClientConfigEC2-4.1.1-150000.3.27.1.noarch
    ruby-common-2.1-3.15.noarch
    python3-ec2metadata-5.0.0-150000.3.12.1.noarch
    cloud-regionsrv-client-10.1.6-150000.6.105.1.noarch
    cloud-regionsrv-client-plugin-ec2-1.0.4-150000.6.105.1.noarch
    python3-dnspython-1.15.0-150000.3.2.1.noarch

    Si les packages sont obsolètes ou manquants et que le système d’exploitation n’a pas accès à Zypper, effectuez une mise à niveau hors ligne. Cette mise à niveau hors ligne requiert le téléchargement des paquets rpm à l'aide de Zypper sur un autre hôte fonctionnel et le transfert du rpm sur l'hôte non fonctionnel. Puis, une installation Zypper des packages rpm

  2. Identification des référentiels manquants.

  3. S'il manque des référentiels logiciels à votre instance SUSE, exécutez les commandes suivantes pour forcer un nouvel enregistrement auprès de tous les référentiels disponibles.

    # registercloudguest --force-new
    # SUSEConnect --list-extensions
    # zypper lr --uri

Informations connexes

FAQ relative à SUSE Linux Enterprise Server (SLES) sur Amazon EC2

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an