AlloyDB Language Connectors הן ספריות שמספקות תהליך פשוט ליצירת חיבורים מאובטחים לאשכול באמצעות:
- חיבורי mTLS אוטומטיים
- תמיכה בהרשאה שמבוססת על ניהול זהויות והרשאות גישה (IAM)
- אימות אוטומטי של IAM
אם לא קיים נתיב רשת, אי אפשר להשתמש ב-AlloyDB Language Connectors כדי לספק נתיב רשת לאשכול AlloyDB.
מידע נוסף על AlloyDB Language Connectors זמין במאמר סקירה כללית של AlloyDB Language Connectors.
בדף הזה מפורטים מחברי השפה הבאים של AlloyDB:
- מחבר Java ל-AlloyDB
- המחבר של AlloyDB Go
- המחבר של AlloyDB Python
לפני שמתחילים
מפעילים את AlloyDB API.
יוצרים מכונת AlloyDB ומגדירים את משתמש ברירת המחדל.
מידע נוסף על יצירת מופע זמין במאמר יצירת מופע ראשי.
מידע נוסף על תפקידי משתמשים זמין במאמר תפקידים מוגדרים מראש ב-IAM של AlloyDB.
צריך להגדיר את התפקידים וההרשאות הבאים שנדרשים כדי להתחבר למופע AlloyDB:
roles/alloydb.clientroles/serviceusage.serviceUsageConsumerמידע נוסף על התפקידים וההרשאות הנדרשים זמין במאמר ניהול אימות IAM.
התקנה של AlloyDB Language Connectors
Java
AlloyDB Java Connector היא ספרייה שמספקת הרשאה והצפנה מבוססות IAM כשמתחברים למופע AlloyDB. אם אתם משתמשים ב-Spring Boot, כדאי לעיין ב-Spring Boot AlloyDB starter.
התקנה
ב-Maven, אפשר להתקין את AlloyDB Java Connector על ידי הוספת הקוד הבא לקובץ pom.xml של הפרויקט:
<!-- Add the connector with the latest version -->
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>alloydb-jdbc-connector</artifactId>
<version>0.4.0</version>
</dependency>
<!-- Add the driver with the latest version -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>46.6.0<</version>
</dependency>
<!-- Add HikariCP with the latest version -->
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>5.1.0</version>
</dependency>
ב-Gradle, אפשר להתקין את AlloyDB Java Connector על ידי הוספת הקוד הבא לקובץ gradle.build של הפרויקט:
// Add connector with the latest version
implementation group: 'com.google.cloud.alloydb', name: 'alloydb-jdbc-connector', version: '0.4.0'
// Add driver with the latest version
implementation group: 'org.postgresql', name: 'postgresql', version: '46.6.0'
// Add HikariCP with the latest version
implementation group: 'com.zaxxer', name: 'HikariCP', version: '5.1.0'
Python (pg8000)
המחבר של AlloyDB Python הוא ספרייה שאפשר להשתמש בה לצד מנהל התקן של מסד נתונים כדי לאפשר למשתמשים עם הרשאות מתאימות להתחבר למסד נתונים של AlloyDB בלי להוסיף כתובות IP לרשימת ההיתרים באופן ידני.
התקנה
אפשר להתקין את ספריית AlloyDB Python Connector באמצעות pip install.
אם אתם משתמשים ב-pg8000, מריצים את הפקודה הבאה:
pip install "google-cloud-alloydb-connector[pg8000]" sqlalchemyPython (asyncpg)
המחבר של AlloyDB Python הוא ספרייה שאפשר להשתמש בה לצד מנהל התקן של מסד נתונים כדי לאפשר למשתמשים עם הרשאות מתאימות להתחבר למסד נתונים של AlloyDB בלי להוסיף כתובות IP לרשימת ההיתרים באופן ידני.
התקנה
אפשר להתקין את ספריית AlloyDB Python Connector באמצעות pip install.
אם אתם משתמשים ב-asyncpg, מריצים את הפקודה הבאה:
כדי להשתמש ב-asyncpg:
pip install "google-cloud-alloydb-connector[asyncpg]" "sqlalchemy[asyncio]"מידע נוסף על שימוש בדרייבר אסינכרוני זמין במאמר שימוש בדרייבר אסינכרוני.
Go (pgx)
AlloyDB Go Connector הוא מחבר AlloyDB שנועד לשימוש בשפת Go.
התקנה
אפשר להתקין את AlloyDB Go Connector באמצעות go get.
אם משתמשים ב-pgx, מריצים את הפקודה הבאה:
go get github.com/jackc/pgx/v5
go get cloud.google.com/go/alloydbconn
Go (database/sql)
AlloyDB Go Connector הוא מחבר AlloyDB שנועד לשימוש בשפת Go.
התקנה
אפשר להתקין את AlloyDB Go Connector באמצעות go get.
אם משתמשים ב-database/sql, מריצים את הפקודה הבאה:
go get cloud.google.com/go/alloydbconn
הגדרת מחברי השפה של AlloyDB
Java
כדי להשתמש ב-AlloyDB Java Connector כדי להתחבר לאשכול AlloyDB, צריך להגדיר אותו באמצעות השלבים הבאים.
כדי להשתמש בקטע הקוד הזה בהקשר של אפליקציית אינטרנט, אפשר לעיין בקובץ README ב-GitHub.
שימוש בכתובת IP ציבורית
אם אתם משתמשים בכתובת IP ציבורית כדי להתחבר לאשכול AlloyDB, צריך לכלול את הפרטים הבאים:
config.addDataSourceProperty("alloydbIpType", "PUBLIC");
שימוש ב-Private Service Connect
אם אתם משתמשים ב-Private Service Connect כדי להתחבר למופע AlloyDB, צריך לכלול את הפרטים הבאים:
config.addDataSourceProperty("alloydbIpType", "PSC");
אימות אוטומטי של IAM
כברירת מחדל, מחברי השפה של AlloyDB משתמשים באימות מובנה. אפשר להשתמש באימות אוטומטי של IAM עם AlloyDB Java Connector. כדי להפעיל את האפשרות, צריך לכלול את השורות הבאות:
config.addDataSourceProperty("alloydbEnableIAMAuth", "true");
Python (pg8000)
כדי להשתמש ב-AlloyDB Python Connector כדי להתחבר לאשכול AlloyDB, צריך להגדיר את המחבר באמצעות השלבים הבאים, אם משתמשים ב-pg8000.
כדי להשתמש בקטע הקוד הזה בהקשר של אפליקציית אינטרנט, אפשר לעיין בקובץ README ב-GitHub.
שימוש בכתובת IP ציבורית
אם אתם משתמשים בכתובת IP ציבורית כדי להתחבר לאשכול AlloyDB, צריך להחליף את פונקציית החיבור בפונקציה הבאה:
def getconn() -> pg8000.dbapi.Connection:
conn: pg8000.dbapi.Connection = connector.connect(
inst_uri,
"pg8000",
user=user,
password=password,
db=db,
# use ip_type to specify public IP
ip_type=IPTypes.PUBLIC,
)
return conn
שימוש ב-Private Service Connect
אם אתם משתמשים ב-Private Service Connect כדי להתחבר למופע AlloyDB, צריך לכלול את הפרטים הבאים:
def getconn() -> pg8000.dbapi.Connection:
conn: pg8000.dbapi.Connection = connector.connect(
inst_uri,
"pg8000",
user=user,
password=password,
db=db,
# use ip_type to specify PSC
ip_type=IPTypes.PSC,
)
return conn
אימות אוטומטי של IAM
כברירת מחדל, מחברי השפה של AlloyDB משתמשים באימות מובנה. אפשר להשתמש באימות אוטומטי של IAM עם AlloyDB Python Connector. כדי להפעיל, מחליפים את פונקציית החיבור בפונקציה הבאה:
def getconn() -> pg8000.dbapi.Connection:
conn: pg8000.dbapi.Connection = connector.connect(
inst_uri,
"pg8000",
user=user,
password=password,
db=db,
# use enable_iam_auth to enable IAM authentication
enable_iam_auth=True,
)
return conn
Python (asyncpg)
כדי להשתמש ב-AlloyDB Python Connector כדי להתחבר לאשכול AlloyDB, צריך להגדיר את המחבר באמצעות השלבים הבאים, אם משתמשים ב-async.
כדי להשתמש בקטע הקוד הזה בהקשר של אפליקציית אינטרנט, אפשר לעיין בקובץ README ב-GitHub.
שימוש בכתובת IP ציבורית
אם אתם משתמשים בכתובת IP ציבורית כדי להתחבר לאשכול AlloyDB, צריך להחליף את פונקציית החיבור בפונקציה הבאה:
async def getconn() -> asyncpg.Connection:
conn: asyncpg.Connection = await connector.connect(
inst_uri,
"asyncpg",
user=user,
password=password,
db=db,
# use ip_type to specify public IP
ip_type=IPTypes.PUBLIC,
)
return conn
שימוש ב-Private Service Connect
אם אתם משתמשים ב-Private Service Connect כדי להתחבר למופע AlloyDB, צריך לכלול את הפרטים הבאים:
async def getconn() -> asyncpg.Connection:
conn: asyncpg.Connection = await connector.connect(
inst_uri,
"asyncpg",
user=user,
password=password,
db=db,
# use ip_type to specify PSC
ip_type=IPTypes.PSC,
)
return conn
אימות אוטומטי של IAM
כברירת מחדל, מחברי השפה של AlloyDB משתמשים באימות מובנה. אפשר להשתמש באימות אוטומטי של IAM עם AlloyDB Python Connector. כדי להפעיל, מחליפים את פונקציית החיבור בפונקציה הבאה:
async def getconn() -> asyncpg.Connection:
conn: asyncpg.Connection = await connector.connect(
inst_uri,
"asyncpg",
user=user,
password=password,
db=db,
# use enable_iam_auth to enable IAM authentication
enable_iam_auth=True,
)
return conn
Go (pgx)
כדי להשתמש ב-AlloyDB Go Connector כדי להתחבר לאשכול AlloyDB, צריך להגדיר את המחבר באמצעות השלבים הבאים, אם משתמשים ב-pgx.
כדי להשתמש בקטע הקוד הזה בהקשר של אפליקציית אינטרנט, אפשר לעיין בקובץ README ב-GitHub.
שימוש בכתובת IP ציבורית
אם אתם משתמשים בכתובת IP ציבורית כדי להתחבר לאשכול AlloyDB, צריך להחליף את הפונקציה d.Dial בפונקציה הבאה:
d.Dial(ctx, instURI, alloydbconn.WithPublicIP())
שימוש ב-Private Service Connect
אם אתם משתמשים ב-Private Service Connect כדי להתחבר למופע AlloyDB, צריך לכלול את הפרטים הבאים:
d.Dial(ctx, instURI, alloydbconn.WithPSC())
אימות אוטומטי של IAM
כברירת מחדל, מחברי השפה של AlloyDB משתמשים באימות מובנה.
אפשר להשתמש באימות אוטומטי של IAM עם AlloyDB Go Connector. כדי להפעיל את ההגדרה, מחליפים את הפונקציה alloydbconn.NewDialer בפונקציה הבאה:
d, err := alloydbconn.NewDialer(ctx, alloydbconn.WithIAMAuthN())
השבתת טלמטריה מובנית
האפשרות WithOptOutOfBuiltInTelemetry משביתה את הייצוא של המדדים הפנימיים.
כברירת מחדל, חיוג Google מדווח על הפעולות הפנימיות שלו באמצעות קידומת המדד של המערכת alloydb.googleapis.com. המדדים האלה עוזרים ל-AlloyDB לשפר את הביצועים ולזהות בעיות בקישוריות של הלקוח. האפשרות הזו שימושית לאפליקציות שפועלות בסביבות שבהן ייצוא מדדים יוצאים מוגבל. כדי להשבית את הטלמטריה הזו,
צריך לספק את האפשרות הבאה כשמפעילים את Dialer:
d.Dial(ctx, instURI, alloydbconn.WithOptOutOfBuiltInTelemetry())
Go (database/sql)
כדי להשתמש ב-AlloyDB Go Connector כדי להתחבר לאשכול AlloyDB, צריך להגדיר את המחבר באמצעות השלבים הבאים, אם משתמשים ב-database/sql.
כדי להשתמש בקטע הקוד הזה בהקשר של אפליקציית אינטרנט, אפשר לעיין בקובץ README ב-GitHub.
שימוש בכתובת IP ציבורית
אם אתם משתמשים בכתובת IP ציבורית כדי להתחבר לאשכול AlloyDB, צריך להחליף את הפונקציה RegisterDriver בפונקציה הבאה:
cleanup, err := pgxv5.RegisterDriver(
"alloydb",
alloydbconn.WithDefaultDialOptions(alloydbconn.WithPublicIP())
)
שימוש ב-Private Service Connect
אם אתם משתמשים ב-Private Service Connect כדי להתחבר למופע AlloyDB, צריך לכלול את הפרטים הבאים:
cleanup, err := pgxv5.RegisterDriver(
"alloydb",
alloydbconn.WithDefaultDialOptions(alloydbconn.WithPSC())
)
אימות אוטומטי של IAM
כברירת מחדל, מחברי השפה של AlloyDB משתמשים באימות מובנה.
אפשר להשתמש באימות אוטומטי של IAM עם AlloyDB Go Connector. כדי להפעיל את התכונה, מחליפים את הפונקציה RegisterDriver בפונקציה הבאה:
cleanup, err := pgxv5.RegisterDriver(
"alloydb",
alloydbconn.WithIAMAuthN()
)
השבתת טלמטריה מובנית
האפשרות WithOptOutOfBuiltInTelemetry משביתה את הייצוא של המדדים הפנימיים.
כברירת מחדל, חיוג Google מדווח על הפעולות הפנימיות שלו באמצעות קידומת המדד של המערכת alloydb.googleapis.com. המדדים האלה עוזרים ל-AlloyDB לשפר את הביצועים ולזהות בעיות בקישוריות של הלקוח. האפשרות הזו שימושית לאפליקציות שפועלות בסביבות שבהן ייצוא מדדים יוצאים מוגבל. כדי להשבית את הטלמטריה הזו,
צריך לספק את האפשרות הבאה כשמפעילים את Dialer:
cleanup, err := pgxv5.RegisterDriver(
"alloydb",
alloydbconn.WithOptOutOfBuiltInTelemetry(),
)