Utiliser l'outil gcpdiag
gcpdiag
est un outil Open Source. Il ne s'agit pas d'un produit Google Cloud faisant l'objet d'une assistance officielle.
Vous pouvez utiliser l'outil gcpdiag
pour vous aider à identifier et à résoudre les problèmes liés au projet Google Cloud. Pour plus d'informations, consultez le projet gcpdiag sur GitHub.
L'outil gcpdiag
vous aide à découvrir les problèmes de création de clusters Dataproc suivants en effectuant les vérifications suivantes :
- Erreurs de rupture de stock : évalue les journaux de l'explorateur de journaux pour détecter les ruptures de stock dans les régions et les zones.
- Quota insuffisant : vérifie la disponibilité des quotas dans le projet de cluster Dataproc.
- Configuration réseau incomplète : effectue des tests de connectivité réseau, y compris des vérifications des règles de pare-feu nécessaires et de la configuration des adresses IP externes et internes. Si le cluster a été supprimé, l'outil
gcpdiag
ne peut pas effectuer de vérification de la connectivité réseau. - Configuration interprojet incorrecte : recherche des comptes de service interprojets et examine l'application des rôles et des règles d'administration supplémentaires.
- Rôles IAM VPC partagés manquants : si le cluster Dataproc utilise un réseau VPC partagé, vérifiez l'ajout des rôles de compte de service requis.
- Échec des actions d'initialisation: évalue l'explorateur de journaux les journaux pour détecter les échecs et les délais avant expiration du script d'action d'initialisation.
Pour obtenir la liste des étapes de création d'un cluster gcpdiag
, consultez
Étapes potentielles.
Exécuter la commande gcpdiag
Vous pouvez exécuter la commande gcpdiag
à partir de Cloud Shell dans la console Google Cloud ou dans un conteneur Docker.
console Google Cloud
- Terminez l'exécution, puis copiez la commande suivante.
- Ouvrez la console Google Cloud et activez Cloud Shell. Ouvrir la console Cloud
- Collez la commande copiée.
- Exécutez la commande
gcpdiag
, qui télécharge l'image Dockergcpdiag
, puis effectue des vérifications de diagnostic. Le cas échéant, suivez les instructions de sortie pour corriger les échecs de vérification.
GOOGLE_AUTH_TOKEN=GOOGLE_AUTH_TOKEN \
gcpdiag runbook dataproc/cluster-creation \
--parameter project_id=PROJECT_ID \
--parameter cluster_name=CLUSTER_NAME \
--parameter OPTIONAL_FLAGS \
--auto --reason=REASON
Docker
Vous pouvez exécuter gcpdiag
à l'aide d'un wrapper qui démarre gcpdiag
dans un conteneur Docker. Docker ou Podman doivent être installés.
- Copiez et exécutez la commande suivante sur votre station de travail locale :
curl https://gcpdiag.dev/gcpdiag.sh >gcpdiag && chmod +x gcpdiag
- Exécutez la commande
gcpdiag
../gcpdiag runbook dataproc/cluster-creation \ --parameter project_id=PROJECT_ID \ --parameter cluster_name=CLUSTER_NAME \ --parameter OPTIONAL_FLAGS
Affichez les paramètres disponibles pour ce runbook.
Remplacez les éléments suivants :
- PROJECT_ID : ID du projet contenant la ressource
- CLUSTER_NAME: nom de la cible Cluster Dataproc dans votre projet
- OPTIONAL_PARAMETERS: ajoutez un ou plusieurs des
paramètres facultatifs suivants. Ces paramètres sont obligatoires si le cluster a été supprimé.
cluster_uuid
: UUID du cluster Dataproc cible de votre projetservice_account
: compte de service de VM du cluster Dataprocsubnetwork
: chemin d'accès complet de l'URI du sous-réseau du cluster Dataprocinternal_ip_only
: vrai ou fauxcross_project
: ID multiprojet si le Un cluster Dataproc utilise un compte de service de VM dans un autre projet
Options utiles :
--universe-domain
: le cas échéant, le domaine cloud souverain du partenaire de confiance hébergeant la ressource.--parameter
ou-p
: paramètres du runbook
Pour obtenir la liste et la description de toutes les options de l'outil gcpdiag
, consultez les instructions d'utilisation de gcpdiag
.
Comprendre et corriger les erreurs de création de clusters
Cette section répertorie les messages d'erreur Dataproc, ainsi que leurs causes et solutions courantes.
L'opération a expiré:seul 0 nœud de données/gestionnaire de nœuds en cours d'exécution sur 2 minimum requis.
Cause: Le nœud maître ne peut pas créer le cluster, car il ne peut pas communiquer avec les nœuds de calcul.
Solution :
- Vérifiez les avertissements des règles de pare-feu.
- Assurez-vous que les règles de pare-feu appropriées sont en place. Pour en savoir plus, consultez Présentation des règles de pare-feu Dataproc par défaut
- Effectuez un test de connectivité dans la console Google Cloud pour déterminer ce qui bloque la communication entre le nœud maître et les nœuds de calcul.
Autorisation
compute.subnetworks.use
requise pourprojects/{projectId}/regions/{region}/subnetworks/{subnetwork}
Cause : cette erreur peut se produire lorsque vous essayez de configurer un cluster Dataproc à l'aide d'un réseau VPC dans un autre projet et que le compte de service de l'agent de service Dataproc ne dispose pas des autorisations nécessaires. sur le projet VPC partagé qui héberge le réseau.
Solution: suivez la procédure décrite dans la section Créer un cluster utilisant un réseau VPC dans un autre projet.
La zone
projects/zones/{zone}
ne dispose pas de suffisamment de ressources pour répondre à la requête(resource type:compute)
.Cause: La zone utilisée pour créer le cluster ne dispose pas de ressources suffisantes.
Solution :
- Créez le cluster dans une autre zone.
- Utiliser Dataproc Sélection automatique des zones .
Erreurs de dépassement de quota
Quota de CPUS/CPUS_ALL_REGIONS insuffisant
Quota insuffisant pour "DISKS_TOTAL_GB"
Quota insuffisant pour "IN_USE_ADDRESSES"Cause: votre requête de processeur, de disque ou d'adresse IP dépasse votre quota disponible.
Solution: demandez une augmentation de quota auprès du Console Google Cloud
Échec de l'action d'initialisation
Cause: l'installation de l'action d'initialisation fournie lors de la création du cluster a échoué.
Solution :
- Consultez les considérations et consignes concernant les actions d'initialisation.
- Examinez les journaux de sortie. Le message d'erreur doit fournir un lien vers les journaux dans Cloud Storage.
Échec de l'initialisation du nœud {cluster-name}: {component}
Cause: L'initialisation d'un composant Dataproc a échoué.
Solution: voir:
Échec de la création du cluster : espace d'adresses IP épuisé
Cause: l'espace d'adresses IP nécessaire pour provisionner les nœuds de cluster demandés est indisponible.
Solution :
- Créez un cluster sur un autre sous-réseau ou réseau.
- Réduisez l'utilisation du réseau pour libérer de l'espace d'adressage IP.
- Attendez qu'un espace IP suffisant soit disponible sur le réseau.
Message d'erreur du script d'initialisation : le dépôt REPO_NAME ne contient plus de fichier de version
Cause: le dépôt Debian rétroporté a été supprimé définitivement.
Solution :
Ajoutez le code suivant avant le code qui exécute
apt-get
dans votre script d'initialisation.oldstable=$(curl -s https://deb.debian.org/debian/dists/oldstable/Release | awk '/^Codename/ {print $2}'); stable=$(curl -s https://deb.debian.org/debian/dists/stable/Release | awk '/^Codename/ {print $2}'); matched_files="$(grep -rsil '\-backports' /etc/apt/sources.list*)" if [[ -n "$matched_files" ]]; then for filename in "$matched_files"; do grep -e "$oldstable-backports" -e "$stable-backports" "$filename" || \ sed -i -e 's/^.*-backports.*$//' "$filename" done fi
Le réseau est inaccessible : dataproccontrol-REGION.googleapis.com/...*
Cause : Le réseau VPC du cluster Dataproc ne dispose peut-être pas de la route Internet requise. Agent Dataproc exécuté sur les VM de cluster a besoin d'une route vers Internet pour accéder à l'API de contrôle Dataproc pour obtenir des jobs et des rapports sur leur état. La route par défaut générée par le système à Internet ont peut-être été supprimés.
Solution :
Ajoutez une route vers Internet à votre réseau VPC de cluster :
0.0.0.0/0
pour IPv4 et::/0
pour IPv6 avec--next-hop-gateway=default-internet-gateway
. Ajoutez des règles de pare-feu pour le contrôle des accès.
Lire des informations associées
- Outils de surveillance et de dépannage Dataproc
- Diagnostiquer des clusters Dataproc
- Questions fréquentes sur Dataproc