Comment résoudre les problèmes liés à la connexion des référentiels Git aux instances de bloc-notes Amazon SageMaker ?

Date de la dernière mise à jour : 14-11-2022

J'essaie d’ajouter un référentiel Git à une instance de bloc-notes Amazon SageMaker, mais j'obtiens une ou plusieurs des erreurs suivantes :

  • "fatal: unable to access <Git repository URL>: the requested URL returned error: 403"
  • "fatal: unable to access <Git repository  URL> : failed to connect to …: port 443: connection timed out"
  • "fatal: unable to access <Git repository URL> could not resolve the host: …"
  • "fatal: could not read Username for <Git repository URL>: terminal prompts disabled"
  • "fatal: could not read Password for <Git repository URL>: terminal prompts disabled"
  • "fatal: authentication failed for <Git repository URL>"
  • "No space left on device while cloning Git repo. Please try using a larger volume"

Solution

Pour ajouter un nouveau référentiel Git à votre instance de bloc-notes SageMaker, voir Ajouter un dépôt Git à votre compte Amazon SageMaker. Si vous essayez d'ajouter un référentiel Git qui n'est pas hébergé sur AWS CodeCommit, les erreurs suivantes peuvent s'afficher.

Erreurs liées à la connectivité

En cas de problèmes de connectivité, vous risquez de rencontrer l'une des erreurs suivantes :

  • "fatal: unable to access <Git repository URL>: the requested URL returned error: 403"
  • "fatal: unable to access <Git repository URL>: failed to connect to …: port 443: connection timed out"
  • "fatal: unable to access <Git repository URL> could not resolve the host: …"

Pour résoudre ces erreurs, effectuez les opérations suivantes :

  • Vérifiez la connectivité de l'instance de bloc-notes.
  • Vérifiez l'exactitude de l'URL du référentiel Git.

Vérifiez la connectivité de l'instance de bloc-notes

Assurez-vous que l'instance de bloc-notes est correctement connectée au référentiel Git. Ce référentiel peut être situé soit sur un serveur de dépôt Git local, soit sur un serveur cloud public, tel que GitHub, Bitbucket ou GitLab.

Vérifiez la configuration réseau utilisée par votre instance d'ordinateur portable. L'instance de bloc-notes peut avoir l'une des configurations réseau suivantes :

  • L'instance n'est pas associée à un Amazon Virtual Private Cloud (VPC).
  • Votre Amazon VPC dispose d'un accès direct à Internet
  • Votre VPC ne dispose pas d'un accès direct à Internet.

Si vous utilisez un VPC, assurez-vous que les sous-réseaux, les groupes de sécurité, les listes de contrôle d'accès réseau (ACL), la passerelle NAT, la passerelle Internet et les tables de routage sont correctement configurés.

Vérifiez l'exactitude de l'URL du référentiel Git

Assurez-vous que l'URL du dépôt Git que vous ajoutez est au format suivant :

  • URL GitHub : https://github.com/<workspace>/<repository.git>
  • URL de Bitbucket : https://bitbucket.org/<workspace>/<repository.git>
  • URL de GitLab : https://gitlab.com/<workspace>/<repository.git>

Assurez-vous de remplacer les éléments suivants :

  • espace de travail avec le nom de l'espace de travail Git
  • repository.git avec le nom du référentiel de code portant l'extension de fichier*.git.

Par exemple, si vous utilisez Bitbucket comme dépôt Git dont le nom de votre espace de travail est myworkspace et votre dépôt Git est myrepository.git, vous devez utiliser l'URL du référentiel Git suivante : https://bitbucket.org/myworkspace/myrepository.git

Erreurs associées à l'authentification

En cas de problèmes d'authentification, vous risquez de rencontrer l'une des erreurs suivantes :

  • "fatal: could not read Username for <Git repository URL>: terminal prompts disabled"
  • "fatal: could not read Password for <Git repository URL>: terminal prompts disabled"
  • "fatal: authentication failed for <Git repository URL>"

Pour résoudre ces erreurs, effectuez les opérations suivantes :

  • Vérifiez les informations d'authentification.
  • Vérifiez que l'utilisateur ou les rôles AWS Identity and Access Management (IAM) disposent des autorisations requises pour accéder à AWS Secrets Manager.

Vérifiez que les informations d'authentification sont exactes

Assurez-vous que le nom d'utilisateur et le mot de passe sont exacts dans Secrets Manager.

  • GitHub : si vous avez activé l'authentification à deux facteurs, vous devez utiliser un jeton d'accès personnel au lieu d'un mot de passe. Une fois ce jeton généré, vous devez mettre à jour le mot de passe dans Secrets Manager avec ce nouveau jeton.
  • Bitbucket : Bitbucket ne prend pas en charge les mots de passe de compte pour l'authentification Git. Il est recommandé de créer des mots de passe pour les applications à l'aide de vos paramètres personnels. Après avoir créé le mot de passe de l'application, vous devez le mettre à jour dans Secrets Manager.
  • GitLab : Si vous avez activé l'authentification à deux facteurs, vous devez utiliser un jeton d'accès personnel au lieu d'un mot de passe. Une fois ce jeton généré, vous devez mettre à jour le mot de passe dans Secrets Manager avec ce nouveau jeton.

Vérifiez que le rôle IAM de l'instance de bloc-notes possède les autorisations requises

Vérifiez que le rôle IAM utilisé pour l'instance de bloc-notes possède l'autorisation secretsmanager:GetSecretValue attachée à sa politique IAM. Si le rôle IAM ne dispose pas des autorisations requises, vous pouvez ajouter la politique suivante au rôle IAM :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "secretsmanager:GetSecretValue"
      ],
      "Resource": [
        "example-secret-ARN"
      ]
    },
    {
      "Effect": "Allow",
      "Action": "secretsmanager:ListSecrets",
      "Resource": "*"
    }
  ]
}
Remarque : Example-Secret-ARN est l'ARN dans Secrets Manager qui contient les secrets (nom d'utilisateur et mot de passe) nécessaires à l'authentification du référentiel Git.

Erreurs liées au stockage

En cas de problèmes liés au stockage, le message d'erreur suivant peut s'afficher :

No space left on device while cloning Git repo. Please try using a larger volume

Pour résoudre cette erreur, vérifiez que l'instance de bloc-notes dispose d'un espace de stockage suffisant. Assurez-vous que la taille de l'espace libre dans le volume de l'instance du bloc-notes est supérieure à celle du référentiel Git que vous utilisez pour cloner. Si vous manquez d'espace disque, spécifiez une valeur plus grande pour VolumeSizeInGB. Pour plus d'informations, voir Personnaliser le volume de votre ordinateur portable, jusqu'à 16 To, avec Amazon SageMaker.


Cet article vous a-t-il été utile?


Besoin d'aide pour une question technique ou de facturation ?