1
votes

échec du cloud-sql-proxy pour GCP Dataproc, nc: échec de la connexion au port localhost 3306 (tcp): connexion refusée

J'utilise Terraform pour créer un cluster dataproc qui utilise une instance de cloudsql GCP comme hivemetastore, le projet terrafrm crée le cluster et tous ses prérequis (réseau, compte de service, instance et utilisateur de cloudsql, etc.).
cloud-sql-proxy.sh est fourni pour vous aider, mais je ne peux pas le faire fonctionner, lorsque le cluster est créé cloud-sql-proxy.sh échoue avec une erreur:

nc: échec de la connexion au port localhost 3306 (tcp): connexion refusée

Je me suis cogné la tête contre le mur en essayant de comprendre pourquoi mais je ne peux pas aller au fond des choses alors j'espère que quelqu'un ici pourra vous aider.

J'ai hébergé le projet terraform à l'adresse https://github.com/jamiekt/democratising-dataproc . Reproduire le problème est très simple, suivez ces étapes:

  1. Installez terraform si vous ne l'avez pas déjà fait
  2. Installez gcloud si vous ne l'avez pas déjà fait
  3. Créer un nouveau projet GCP
  4. Activez l ' API Cloud Dataproc pour votre nouveau projet
  5. gcloud auth application-default login # crée un fichier contenant les informations d'identification que terraform utilisera
  6. git clone git@github.com: jamiekt / démocratizing-dataproc.git && cd démocratizing-dataproc
  7. export GCP_PROJECT = nom-du-projet-que-vous-venez-de-créer
  8. make init
  9. faire appliquer

Cela devrait réussir à démarrer un réseau, un sous-réseau, une instance de cloudsql, quelques compartiments de stockage (l'un d'eux contenant cloud-sql-proxy.sh), un compte de service, un pare-feu puis échouer lors de la tentative de création du cluster dataproc .

si quelqu'un pouvait jeter un coup d'œil et me dire pourquoi cela échoue, je serais très reconnaissant.


2 commentaires

Avez-vous essayé de suivre cet article pour savoir comment configurer Hive Metastore pour utiliser Cloud SQL sur Dataproc?


merci @IgorDvorzhak, vos réponses ont aidé. S'il vous plaît voir ma réponse.


3 Réponses :


1
votes

Il semble que vous n'utilisez pas la dernière version de cloud-sql-proxy.sh script dans le cloud-sql-proxy.sh.tmpl modèle ( diff ).

Vous pouvez essayer de mettre à jour votre modèle avec la dernière version de script de Dataproc Action d'initialisation Cloud SQL I / O et Hive Metastore .


0 commentaires

1
votes

Il y avait un certain nombre de problèmes ici qui ont maintenant été résolus:

L'état état du dépôt au moment de la publication de ce message fonctionner comme prévu (c'est-à-dire créer, en utilisant Terraform, un cluster dataproc qui utilise un métastore de ruche partagé).

Merci @ igor-dvorzhak pour vos réponses, votre lien vers l'article sur la configuration de Hive Metastore pour utiliser Cloud SQL m'a mis sur la bonne voie.


0 commentaires

0
votes

J'ai exactement le même problème en suivant le tutoriel de ici

Je ne vois pas quel est le correctif que vous donnez. Il semble que la ruche essaie d'accéder à la base de données via localhost, je ne comprends pas pourquoi Voici le journal de dataproc:

Synchronizing state of mysql.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install disable mysql
Removed /etc/systemd/system/multi-user.target.wants/mysql.service.
2020-10-07 14:05:49 URL:https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 [16361206/16361206] -> "cloud_sql_proxy.linux.amd64" [1]
Created symlink /etc/systemd/system/multi-user.target.wants/cloud-sql-proxy.service → /usr/lib/systemd/system/cloud-sql-proxy.service.
About to run 'nc -zv localhost 3306' with retries...
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 1 failed! Sleeping 1.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 2 failed! Sleeping 1.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 3 failed! Sleeping 2.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 4 failed! Sleeping 3.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 5 failed! Sleeping 5.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 6 failed! Sleeping 8.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 7 failed! Sleeping 13.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 8 failed! Sleeping 21.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 9 failed! Sleeping 34.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 10 failed! Sleeping 55.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 11 failed! Sleeping 89.
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused
'nc -zv localhost 3306' attempt 12 failed! Sleeping 144.
Final attempt of 'nc -zv localhost 3306'...
nc: connect to localhost port 3306 (tcp) failed: Connection refused
nc: connect to localhost port 3306 (tcp) failed: Connection refused


0 commentaires