התחברות לאשכול מסדי נתונים

כברירת מחדל, אשכול מסד נתונים מאפשר חיבור רק מתוך אשכול המשתמשים ומאותו פרויקט.

כדי להפעיל חיבורים לכל אשכולות מסדי הנתונים בפרויקט מפרויקט אחר, אפשר לעיין במאמר הפעלת חיבורים בין פרויקטים.

כדי לאפשר חיבורים לאשכול מסדי נתונים מכתובות IP מחוץ לארגון GDC, אפשר לעיין במאמר בנושא הפעלת חיבורים חיצוניים.

כדי למצוא את הפרטים הבאים לחיבור לאשכול מסד הנתונים, נכנסים למסוף GDC באמצעות חשבון שמקושר לתפקיד Project DB Admin: המידע הזה מופיע בקטע קישוריות בדף שירות מסד הנתונים.

השלבים האלה כוללים דוגמה לחיבור למסד הנתונים באמצעות psql. השלבים המדויקים משתנים בהתאם לתוכנת הלקוח שתבחרו.

המסוף

  1. עוברים לקטע Connectivity בדף Database Service של אשכול מסד הנתונים. הדף הזה כולל:

    • הסיסמה של חשבון האדמין (שם המשתמש הוא dbsadmin)
    • שם המארח ומספר היציאה של נקודת הקצה הראשית של אשכול מסד הנתונים
    • אם אשכול מסד הנתונים מאפשר חיבור חיצוני מחוץ לארגון.
    • פקודה psql לחיבור לאשכול
    • קישור להורדת אישור רשות האישורים (CA) של אשכול מסד הנתונים
  2. מורידים את אישור ה-CA ממסוף GDC בקטע Connectivity בדף Database Service של אשכול מסד הנתונים.

  3. מגדירים את הלקוח כך שישתמש באישור ה-CA כדי לאמת את מסד הנתונים. במקרה של לקוחות psql, מגדירים את משתנה הסביבה PGSSLROOTCERT לנתיב של קובץ האישור ואת משתנה הסביבה PGSSLMODE להעדפה שלכם:

    export PGSSLROOTCERT=path/to/accounts_cert.pem
    export PGSSLMODE="verify-full"
    
  4. מתחברים למסד הנתונים מתוכנת הלקוח. אם משתמשים ב-psql, מריצים את הפקודה הבאה:

    PGPASSWORD=DB_PASSWORD psql -h DB_HOSTNAME -p PORT -U USERNAME -d postgres
    

מחליפים את המשתנים הבאים:

  • path/to/: הנתיב לאישור accounts_cert.pem.
  • DB_PASSWORD: הסיסמה מהמסוף.
  • DB_HOSTNAME: שם המארח של מסד הנתונים מהמסוף.
  • DB_PORT: מספר היציאה של מסד הנתונים מהמסוף.
  • DB_USERNAME: שם המשתמש במסד הנתונים מהמסוף.

API

  1. אחזור נקודת הקצה של מסד הנתונים מסטטוס אשכול מסד הנתונים:

    kubectl get dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -n USER_PROJECT -o=jsonpath='{.status.primary.url}'
    
  2. מורידים את אישור ה-CA מהסוד של Kubernetes:

    kubectl get secret dbs-certificates -n USER_PROJECT -o json | jq -r '.data."dbs-pg-cert-DBCLUSTER_NAME"' | base64 -d > path/to/ca.crt
    
  3. מגדירים את הלקוח כך שישתמש באישור ה-CA כדי לאמת את מסד הנתונים. במקרים של לקוחות psql, אפשר להגדיר את משתנה הסביבה PGSSLROOTCERT לנתיב של קובץ האישור, ואת משתנה הסביבה PGSSLMODE להעדפה שלכם:

    export PGSSLROOTCERT=path/to/ca.crt
    export PGSSLMODE="verify-full"
    
  4. מתחברים למסד הנתונים מתוכנת הלקוח. אם משתמשים ב-psql, מריצים את הפקודה הבאה:

    PGPASSWORD=DB_PASSWORD psql -h DB_HOSTNAME -p DB_PORT -U DB_USERNAME -d postgres
    

מחליפים את המשתנים הבאים:

  • USER_PROJECT: השם של פרויקט המשתמש שבו נוצר אשכול מסד הנתונים.
  • DBCLUSTER_NAME: השם של אשכול מסד הנתונים.
  • path/to/: הנתיב לאישור CA של מסד הנתונים.
  • DB_PASSWORD: סיסמת מסד הנתונים של משתמש אדמין.
  • DB_HOSTNAME: שם המארח מסטטוס אשכול מסד הנתונים.
  • DB_PORT: מספר היציאה של מסד הנתונים מסטטוס אשכול מסד הנתונים.
  • DB_USERNAME: עם שם המשתמש במסד הנתונים (ברירת המחדל היא dbsadmin).