3 votes

cluster GKE k8s storage.googleapis.com sporadique Échec temporaire dans la résolution de nom

J'essaie d'exécuter un pipeline snakemake sur un cluster kubernetes (GKE). La tâche est lancée à partir d'une VM GCE. Parfois, cela fonctionne, mais la plupart du temps, ce n'est pas le cas.

Les mesures que j'ai prises sont

gcloud container clusters get-credentials snakemake-k8s-demo
kubectl delete pod $(kubectl get pods | grep snakejob|colprint 1)
snakemake --kubernetes --container-image eu.gcr.io/scailyte-is/snakemake-gsdk --use-conda --default-remote-provider GS --default-remote-prefix xxxxxx-snakemake-test-1 --jobs 2

Ce premier essai a très bien fonctionné.

J'ai ensuite supprimé les fichiers créés par le pipeline snakemake et j'ai relancé le travail identique sans rien changer.

Le travail a échoué avec le message d'erreur suivant :

HTTPSConnectionPool(host='storage.googleapis.com', port=443): Max retries exceeded with url: /storage/v1/b/xxxxxxx-snakemake-test-1/o?projection=noAcl (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f3ee35159d0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution'))

Selon le tableau de bord d'état de Google Cloud, il n'y a aucun problème avec le stockage dans le nuage de Google.

Les tentatives ultérieures ont échoué de la même manière.

Tout conseil pour une résolution est accepté avec gratitude.

1 votes

Fait este répondre à votre question ?

1voto

Peter Evans Points 103

Le problème était dû à l'absence de règles de pare-feu appropriées permettant la communication intra-groupe. Une fois que les règles ALLOW appropriées ont été créées, le problème immédiat a disparu, car le pod a pu atteindre son serveur DNS.

Notre politique consiste à interdire toute communication (y compris interne au VPC) entre les points d'extrémité, sauf autorisation explicite. Ainsi, le nouveau cluster dans un nouvel espace d'adressage a nécessité des ajouts pour lui permettre de fonctionner correctement.

J'ai trouvé la solution en activant la journalisation sur la dernière règle DENY qui se déclenche lorsqu'aucune règle ALLOW précédente n'était applicable.

Je n'ai pas encore compris pourquoi cela a fonctionné la première fois, mais je pense qu'il y avait des différences que je n'ai pas notées.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X