Puncte:0

Furnizați informații de conexiune Unix Socket pentru Apache Superset

drapel in

Am o imagine docker a Apache Superset care rulează în Google Cloud Run. L-am configurat să utilizeze gazda noastră Cloud SQL pentru baza de date cu metadate. Datorită modului în care conectați Cloud Run la Cloud SQL, aceasta a necesitat utilizarea șirului de conexiune în stilul socketului Unix din SQL Alchemy pentru a se conecta (conform instrucțiunilor Aici.). Postgres este DB în uz (deși mă îndoiesc că contează).

Am fost destul de mulțumit de mine (deoarece cunoștințele mele Docker/Cloud Run sunt scăzute) și funcționau bine - dar apoi am trecut să adaug câteva surse de date. Desigur, dialogul de configurare pentru informațiile de conectare DB vă permite NUMAI să introduceți o gazdă și IP:

Configurare DB Superset

Este foarte dezamăgitor să ajungi atât de departe și să fii blocat de o limitare a UI. Gazda la care vreau să mă conectez este ACEEAȘI GAZDĂ pe care o folosește pentru DB de metadate - așa că în mod clar se POATE conecta la ea. ... Pur și simplu nu am cum să-i exprim cum să mă conectez la el.

Există ceva ce pot face pentru a configura Superset cu șirul de conexiune socket Unix pentru bazele de date țintă pentru sursele de date (nu metadate, care funcționează deja)?

Văd că chiar îmi permite să ofer parametri suplimentari, unde specificați socket-ul Unix - dar deoarece IP-ul gazdei și portul sunt câmpuri obligatorii și testează împotriva lor, nu le va accepta.

Vreau să evit costul suplimentar al unui VPC (și nu am idee cum să configurez unul, deoarece nu sunt administrator și orice se întâmplă în afara unui IDE îmi dă PTSD).

Dacă nu îl pot rezolva, va trebui să îl implementez în clusterul nostru K8s pe care încercăm să îl înlocuim cu opțiuni fără server (Cloud Run, GAE etc.).

Prabir avatar
drapel ck
Din imaginea pe care ați furnizat-o aici se pare că utilizați 34 .1. 1 care nu pare corect. Poți adăuga ceea ce folosești în locul Host?
WillyC avatar
drapel in
Am eliminat cea mai mare parte a IP-ului de acolo din imagine deoarece era un IP real. Când utilizați socket-uri Unix, nu furnizați deloc un IP, dar nu există nicio modalitate de a trimite formularul fără IP. Imaginea a fost doar pentru a arăta unde am configurat acest lucru în produs.
Prabir avatar
drapel ck
IP-ul pe care îl utilizați este al instanței Cloud SQL?
WillyC avatar
drapel in
Mi-ar plăcea, dar deoarece de la rularea în cloud trebuie să folosesc un socket Unix și deloc un IP, pur și simplu nu mă pot conecta la o instanță cloud sql.
Puncte:0
drapel ck

Problema este cu interfața de utilizare Apache Superset și vă recomand să urmați Problemă GitHub pentru a rezolva acest lucru.

Deocamdată, configurarea mediului fără server după cum urmează va ajuta la rezolvarea problemei:

  1. Configurați a IP privat pentru instanța Cloud SQL
  2. Configurare a Conector de acces fără server VPC
  3. Configurați Cloud Run pentru a utiliza conectorul
  4. In cele din urma conectați folosind IP-ul privat și portul

Pașii furnizați sunt bine explicați în documentație și sunt ușor de executat.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.