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

בדף הזה מוסבר איך להפעיל, להתחבר ולנטר ניהול מאגר חיבורים ב-AlloyDB ל-PostgreSQL. ניהול מאגר חיבורים הוא דפוס עיצוב שמייעל את ניהול החיבורים למסד הנתונים על ידי שמירה של מאגר חיבורים שהוגדרו מראש. האפליקציה משתמשת במאגר החיבורים הזה במקום לפתוח ולסגור חיבורים לכל פעולה במסד הנתונים, וכך משפרת את הביצועים ואת ניצול המשאבים.

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

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

לפני שמתחילים

ניהול מאגר חיבורים תומך גם בחיבורים באמצעות AlloyDB Auth Proxy או AlloyDB Language Connectors.

התפקידים הנדרשים

כדי לקבל את ההרשאה שנדרשת להפעלה ולשימוש במאגר חיבורים מנוהל, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין של Cloud AlloyDB (roles/alloydb.admin) במופע AlloyDB. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

התפקיד המוגדר מראש הזה כולל את ההרשאה alloydb.instances.update, שנדרשת כדי להפעיל את התכונה 'ניהול מאגר חיבורים' ולהשתמש בה.

יכול להיות שתוכלו לקבל את ההרשאה הזו גם בתפקידים בהתאמה אישית או בתפקידים אחרים שמוגדרים מראש.

אפשרויות הגדרה מתקדמות

מאגר חיבורים מנוהל ב-AlloyDB תומך באפשרויות המתקדמות הבאות להגדרת מאגר חיבורים. אתם יכולים להתאים אישית את מאגר החיבורים המנוהל כדי לענות על הצרכים של המופע שלכם באמצעות אפשרויות ההגדרה האלה. אפשר להגדיר את ההגדרות האלה ברמת המופע באמצעותGoogle Cloud המסוף, ה-CLI של gcloud או AlloyDB API.

שם ההגדרה תיאור
מצב חיבור
(connection-pooling-pool-mode)
במצב החיבור, אפשר לבחור בין עסקה (ברירת מחדל) לבין סשן.

Transaction (transaction):
Pools connections at a transaction level. חיבור לשרת מוקצה ללקוח במהלך עסקה. אחרי שהעסקה מסתיימת, החיבור לשרת מוחזר למאגר.

סשן (session):
מאגרי חיבורים ברמת הסשן. חיבור לשרת מוקצה ללקוח למשך כל הזמן שהוא מחובר. אחרי שהלקוח מתנתק, החיבור לשרת מוחזר למאגר.
גודל הבריכה המקסימלי
(connection-pooling-max-pool-size)
הגודל המקסימלי של מאגר החיבורים לכל משתמש וזוג מסדי נתונים. ערך ברירת המחדל הוא 50 חיבורים.
גודל מינימלי של מאגר
(connection-pooling-min-pool-size)
הגודל המינימלי של מאגר החיבורים. ערך ברירת המחדל הוא 0 חיבורים.
מספר החיבורים המקסימלי של לקוחות
(connection-pooling-max-client-connections)
המספר המקסימלי של חיבורי לקוח בו-זמניים שמותרים. הערך הזה יכול להיות בין 1 ל-262,042 חיבורים, וערך ברירת המחדל הוא 5,000 חיבורים.
זמן קצוב לתפוגה של חיבורים לא פעילים של לקוחות
(connection-pooling-client-connection-idle-timeout)
משך הזמן שחיבור לקוח נשאר לא פעיל לפני שפג תוקף הזמן הקצוב לתפוגה שלו. הערך הזה יכול להיות בין 0 ל-2,147,483 שניות, וערך ברירת המחדל הוא 0 שניות.
זמן קצוב לתפוגה של חיבורים לא פעילים לשרת
(connection-pooling-server-connection-idle-timeout)
משך הזמן שחיבור לשרת נשאר ללא פעילות לפני שפג הזמן הקצוב שלו. הערך הזה יכול להיות בין 0 ל-2,147,483 שניות, וערך ברירת המחדל הוא 600 שניות.
זמן קצוב לתפוגה של שאילתות בהמתנה(
)
(connection-pooling-query-wait-timeout)
הזמן ששאילתה ממתינה עד שפג הזמן הקצוב שלה. הערך הזה יכול להיות בין 0 ל-2,147,483 שניות, וערך ברירת המחדל הוא 120 שניות.
מספר מקסימלי של הצהרות מוכנות
(connection-pooling-max-prepared-statements)
המספר המקסימלי של פקודות של הצהרות מוכנות שנשלחות במצב של שיתוף חיבורים בעסקאות. ערך ברירת המחדל הוא 0.
התעלמות מפרמטרים של הפעלה
(connection-pooling-ignore-startup-parameters)
הפרמטרים שרוצים להתעלם מהם, שלא מתבצע אחריהם מעקב בחבילות הפעלה כברירת מחדל.
משך החיים של השרתים
(connection-pooling-server-lifetime)
הזמן המקסימלי שחיבור לשרת לא נמצא בשימוש לפני שמאגר חיבורים מנוהל סוגר אותו. ערך ברירת המחדל הוא 3,600 שניות.
משתמש בסטטיסטיקות
(connection-pooling-stats-user)
רשימה מופרדת בפסיקים של משתמשי מסד נתונים שמורשים להתחבר למסוף סטטיסטיקה. אפשר להגדיר את הפרמטר הזה רק באמצעות Google Cloud CLI. לאחר מכן, המשתמש יכול לגשת למדדים מתקדמים, שמתעדכנים במסד הנתונים alloydb_mcp_stats_{pooler_id} עבור כל מאגר.

כברירת מחדל, מאגר חיבורים מנוהל יוזם חיבורים לשרת AlloyDB. כשנוצר חיבור של לקוח ומאמתים אותו, יכול להיות שמאגר חיבורים מנוהל ייצור חיבור אחד או יותר לשרת, כך שגודל המאגר יתאים להגדרה שנבחרה. לאחר מכן, לחיבור של הלקוח מוקצה חיבור זמין לשרת. החיבורים לשרת נשמרים עד שהם נסגרים באופן מפורש או עד שהם לא פעילים למשך זמן ארוך יותר מפרק הזמן הקצוב לתפוגה של חיבורים לא פעילים לשרת.

כשמפעילים ניהול של מאגר חיבורים, גם החיבורים של שרת ה-proxy ל-AlloyDB Auth נכללים במאגר נפרד שכולל רק חיבורים שנכללים במאגר עם הפעלת ה-proxy ל-AlloyDB Auth.

הפעלת ניהול של מאגר חיבורים

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

הפעלה במופע ראשי חדש

כדי ליצור מכונה ראשית חדשה עם הפעלה של ניהול מאגר חיבורים, אפשר לעיין במאמר בנושא יצירת מכונה ראשית. אפשר להפעיל ניהול של מאגר חיבורים למכונה באמצעות מסוףGoogle Cloud , Google Cloud CLI או AlloyDB API.

הפעלה של מאגר קריאה חדש

כדי ליצור מופע חדש של מאגר קריאה עם הפעלה של ניהול מאגר חיבורים, אפשר לעיין במאמר בנושא יצירת מופע של מאגר קריאה. אפשר להפעיל ניהול של מאגר חיבורים למכונה באמצעות מסוףGoogle Cloud , Google Cloud CLI או AlloyDB API.

הפעלה במופע קיים

אפשר להפעיל ניהול של מאגר חיבורים במופע קיים באמצעותGoogle Cloud המסוף, Google Cloud CLI או AlloyDB API.

המסוף

  1. עוברים לדף Clusters.

    מעבר אל Clusters

  2. לוחצים על אשכול בעמודה שם המשאב.

  3. בדף Overview (סקירה כללית), עוברים אל Instances in your cluster (מופעים באשכול).

  4. לוחצים על עריכת השרת הראשי או על עריכת מאגר השרתים לקריאה.

  5. בקטע Managed connection pool (מאגר חיבורים מנוהל), מסמנים את התיבה Enable managed connection pool (הפעלת מאגר חיבורים מנוהל).

  6. אופציונלי: כדי להגדיר אפשרויות של ניהול מאגר חיבורים, לוחצים על אפשרויות מתקדמות של מאגר חיבורים.

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

  7. לוחצים על שמירת השינויים.

gcloud

כדי להפעיל ניהול של מאגר חיבורים במופע קיים של מאגר ראשי או מאגר לקריאה, משתמשים בפקודה הבאה של gcloud alloydb instances update:

gcloud alloydb instances update INSTANCE_ID \
  --project=PROJECT_ID \
  --region=REGION_ID \
  --cluster=CLUSTER_ID \
  --enable-connection-pooling

מחליפים את מה שכתוב בשדות הבאים:

  • INSTANCE_ID: המזהה של מופע AlloyDB שרוצים להפעיל בו ניהול של מאגר חיבורים.
  • PROJECT_ID: מזהה הפרויקט
  • REGION_ID: מזהה האזור.
  • CLUSTER_ID: מזהה האשכול.

אחרי שמפעילים את ניהול מאגר חיבורים, אפשר להתאים אישית את האפשרויות של ניהול מאגר חיבורים כדי לענות על הצרכים של המופע. לשם כך, מגדירים את אפשרויות ההגדרה המתקדמות. מידע נוסף על הגדרת אפשרויות ההגדרה זמין במאמר שינוי של מאגר חיבורים מנוהל למופע.

REST

כדי להפעיל ניהול של מאגר חיבורים במופע קיים של מאגר ראשי או מאגר לקריאה, משתמשים בפקודה הבאה ומגדירים את connectionPoolConfig:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט
  • LOCATION_ID: המזהה של האזור של האשכול.
  • CLUSTER_ID: מזהה האשכול. הוא צריך להתחיל באות קטנה באנגלית, ויכול לכלול רק אותיות קטנות, ספרות ומקפים.
  • INSTANCE_ID: מזהה המכונה.

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://alloydb.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID

תוכן בקשת JSON:

{
  "connectionPoolConfig": {
    "enabled": true
  }
}

התחברות למאגר חיבורים מנוהל

החיבור למאגר חיבורים מנוהל זהה לחיבורים ישירים למסד נתונים, רק שהוא מתבצע דרך יציאה אחרת. מאגר החיבורים המנוהל מאזין ליציאה 6432. כל משתמש שנוסף למופע AlloyDB יכול להתחבר באמצעות מאגר החיבורים המנוהל.

חיבור באמצעות אימות מובנה

בדוגמה של הפקודה, מופע AlloyDB מתחבר למאגר חיבורים מנוהל באמצעות אימות מובנה.

psql postgresql://USERNAME:PASSWORD@IP_ADDRESS:6432/postgres

מחליפים את מה שכתוב בשדות הבאים:

  • USERNAME: שם המשתמש במסד הנתונים להתחברות למופע AlloyDB.
  • PASSWORD: הסיסמה של המשתמש.
  • IP_ADDRESS: כתובת ה-IP של מופע AlloyDB.

חיבור באמצעות חיבורי SSL

מצב ה-SSL של המכונה חל גם על כל החיבורים למאגר החיבורים המנוהל. כברירת מחדל, מתקבלים רק חיבורי SSL. כדי לאפשר חיבורים לא מוצפנים, משתמשים בפקודה הבאה gcloud alloydb instances update כדי להגדיר את מצב ה-SSL של המכונה ל-ALLOW_UNENCRYPTED_AND_ENCRYPTED.

gcloud alloydb instances update INSTANCE_ID \
  --project=PROJECT_ID \
  --region=REGION_ID \
  --cluster=CLUSTER_ID \
  --ssl-mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED

חיבור באמצעות אימות IAM

יש שתי דרכים להתחבר למאגר חיבורים מנוהל באמצעות אימות IAM:

  • אימות באמצעות טוקן OAuth 2.0: משתמשים ב-ה-CLI של gcloud כדי לקבל טוקן OAuth 2.0 ומשתמשים בו כסיסמה כשמתחברים ליציאה 6432. למידע נוסף, ראו אימות באמצעות אסימון OAuth 2.0.

  • אימות אוטומטי: משתמשים ב-AlloyDB Auth Proxy עם הדגל --auto-iam-authn, או מפעילים אימות IAM באופן פרוגרמטי באמצעות AlloyDB Language Connectors.

הצגת נתונים סטטיסטיים על מאגרי חיבורים מנוהלים

כשמפעילים ניהול של מאגרי חיבורים במופע AlloyDB, אפשר להתחבר למסוף הסטטיסטיקות המובנה כדי לראות מידע מפורט בזמן אמת על מאגרי החיבורים. אפשר לגשת למסוף הנתונים הסטטיסטיים ביציאה 6432 דרך כתובת IP פרטית באמצעות גישה לשירותים פרטיים או Private Service Connect. מסוף הנתונים הסטטיסטיים שימושי למעקב אחרי חיבורים פעילים או לא פעילים, לפתרון בעיות שקשורות לזמני המתנה ולאופטימיזציה של גודל המאגר.

כדי להשתמש במסוף הנתונים הסטטיסטיים, פועלים לפי השלבים הבאים:

  1. כברירת מחדל, לאף משתמש במסד הנתונים אין הרשאה לגשת למסוף הנתונים הסטטיסטיים. צריך להשתמש ב-Google Cloud CLI כדי לציין אילו משתמשים במסד הנתונים יכולים להתחבר, וכך להוסיף אותם לרשימת ההיתרים לגישה למסוף הנתונים הסטטיסטיים.

    כדי להוסיף משתמש למסוף הסטטיסטיקות, משתמשים בפקודה gcloud alloydb instances update:

    gcloud alloydb instances update INSTANCE_ID \
    --project=PROJECT_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --connection-pooling-stats-users=STATS_USERS
    

    מחליפים את מה שכתוב בשדות הבאים:

    • INSTANCE_ID: השם של מופע AlloyDB שרוצים לתת למשתמשים במסוף הסטטיסטיקות הרשאה לגשת אליו.
    • STATS_USERS: רשימה מופרדת בפסיקים של שמות משתמשים במסד הנתונים.
    • PROJECT_ID: מזהה הפרויקט
    • REGION_ID: מזהה האזור.
    • CLUSTER_ID: מזהה האשכול.
  2. מתחברים למופע ביציאה 6432. כל מופע של מאגר חיבורים שומר על המדדים שלו במסד נתונים עם מספר ייחודי. מציינים את מסד הנתונים הרלוונטי של נתונים סטטיסטיים עבור המאגר שרוצים לעקוב אחריו:

    • למאגרי משאבים רגילים, צריך להשתמש ב-alloydb_mcp_stats_POOLER_ID. המזהה הוא 1, עד מספר המאגדים שפועלים במכונה.
    • למאגר שרתי ה-proxy של אימות, משתמשים ב-alloydb_mcp_stats_authproxy_pooler1.
    psql postgresql://USERNAME:PASSWORD@IP_ADDRESS:6432/alloydb_mcp_stats_1
    

    מחליפים את מה שכתוב בשדות הבאים:

    • POOLER_ID: מזהה מאגר החיבורים. המזהה הוא 1, עד מספר מאגרי החיבורים שפועלים במכונה.
    • USERNAME: שם המשתמש במסד הנתונים שמשמש לחיבור למופע AlloyDB.
    • PASSWORD: הסיסמה של המשתמש.
    • IP_ADDRESS: כתובת ה-IP של מכונת AlloyDB. הכתובת הזו חייבת להיות כתובת של Private Service Connect ‏ (PSC) או של גישה לשירותים פרטיים (PSA).
  3. אחרי החיבור, מריצים פקודות SHOW שתואמות ל-PgBouncer כדי לראות מדדים, למשל:

    • SHOW STATS;: מוצגים נתונים סטטיסטיים כלליים לכל מסד נתונים.
    • SHOW POOLS;: מציג את הסטטוס של כל מאגרי החיבורים הנוכחיים.
    • SHOW CLIENTS;: הצגת מידע על חיבורי לקוח נוכחיים.

רשימה מלאה של הפקודות הזמינות מופיעה במסמכי התיעוד הרשמיים של PgBouncer.

שינוי של ניהול מאגר חיבורים במופע

אחרי שמפעילים את ניהול מאגר החיבורים, אפשר להתאים אישית את האפשרויות של ניהול מאגר החיבורים כדי שיתאימו לצרכים של המופע באמצעות אפשרויות ההגדרה המתקדמות. אפשרויות ההגדרה האלה נקראות דגלים של ניהול מאגר החיבורים. מידע נוסף זמין במאמר בנושא אפשרויות הגדרה מתקדמות. האפשרויות האלה חלות גם על מאגר החיבורים של AlloyDB Auth Proxy.

אפשר לשנות את אפשרויות ההגדרה של ניהול מאגר חיבורים במכונה קיימת באמצעות מסוף Google Cloud , Google Cloud CLI או AlloyDB API.

המסוף

  1. עוברים לדף Clusters.

    מעבר אל Clusters

  2. לוחצים על אשכול בעמודה שם המשאב.

  3. בדף Overview (סקירה כללית), עוברים אל Instances in your cluster (מופעים באשכול).

  4. לוחצים על עריכת מופע או על עריכת מאגר לקריאה עבור המופע שרוצים לשנות.

  5. בקטע Managed connection pool, מרחיבים את Advanced pooling options.

  6. משנים את האפשרויות המתקדמות של שיתוף המשאבים שרוצים לעדכן. אפשר לשנות את האפשרויות הבאות:

    • אמצעי תחבורה
    • גודל בריכה מקסימלי
    • גודל מינימלי של בריכה
    • מספר מקסימלי של חיבורים ללקוח
    • זמן קצוב לתפוגה של חיבורי לקוחות לא פעילים(שניות)
    • זמן קצוב לתפוגה של חיבורים לא פעילים לשרת
    • זמן קצוב לתפוגה של המתנה לשאילתה
    • מספר ההצהרות המוכנות המקסימלי
    • התעלמות מפרמטרים של הפעלה
    • משך החיים של השרת
  7. לוחצים על עדכון המופע.

gcloud

כדי לשנות את אפשרויות ההגדרה של מאגר חיבורים מנוהל עבור מופע קיים, משתמשים בפקודה הבאה של gcloud alloydb instances update:

  gcloud alloydb instances update INSTANCE_ID \
    --project=PROJECT_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    { \
      --connection-pooling-pool-mode=CONNECTION_MODE \
      | --connection-pooling-max-pool-size=MAX_POOL_SIZE \
      | --connection-pooling-min-pool-size=MIN_POOL_SIZE \
      | --connection-pooling-max-client-connections=MAX_CLIENT_CONNECTIONS \
      | --connection-pooling-server-idle-timeout=SERVER_IDLE_TIMEOUT_PERIOD \
      | --connection-pooling-query-wait-timeout=QUERY_WAIT_TIMEOUT_PERIOD \
      | --connection-pooling-ignore-startup-parameters=IGNORE_STARTUP_PARAMETERS \
      | --connection-pooling-max-prepared-statements=MAX_PREPARED_STATEMENTS \
      | --connection-pooling-server-lifetime=SERVER_LIFETIME \
      | --connection-pooling-client-connection-idle-timeout=CLIENT_CONNECTION_IDLE_TIMEOUT \
    }

מחליפים את מה שכתוב בשדות הבאים:

  • INSTANCE_ID: השם של מופע AlloyDB שרוצים להשבית בו את ניהול מאגר חיבורים.
  • PROJECT_ID: מזהה הפרויקט
  • REGION_ID: מזהה האזור.
  • CLUSTER_ID: מזהה האשכול.
  • אפשר להגדיר את האפשרויות הבאות:

    • --connection-pooling-pool-mode. הערך הזה צריך להיות session או transaction.
    • --connection-pooling-max-pool-size
    • --connection-pooling-min-pool-size
    • --connection-pooling-max-client-connections
    • --connection-pooling-server-idle-timeout
    • --connection-pooling-query-wait-timeout
    • --connection-pooling-ignore-startup-parameters
    • --connection-pooling-max-prepared-statements
    • --connection-pooling-server-lifetime
    • --connection-pooling-client-connection-idle-timeout

REST

כדי לשנות את אפשרויות ההגדרה של מאגר חיבורים מנוהל עבור מופע קיים של מאגר לקריאה, משתמשים בפקודה הבאה ומגדירים את connectionPoolConfig:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט
  • LOCATION_ID: המזהה של האזור של האשכול.
  • CLUSTER_ID: המזהה של האשכול שיוצרים. הוא צריך להתחיל באות קטנה באנגלית, ויכול לכלול אותיות קטנות, מספרים ומקפים.
  • INSTANCE_ID: המזהה של המכונה שיוצרים.
  • אפשר להגדיר את האפשרויות הבאות:

    • POOL_MODE. הערך הזה צריך להיות session או transaction.
    • MAX_POOL_SIZE
    • MIN_POOL_SIZE
    • MAX_CLIENT_CONNECTIONS
    • SERVER_IDLE_TIMEOUT
    • QUERY_WAIT_TIMEOUT
    • IGNORE_STARTUP_PARAMETERS

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://alloydb.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID

תוכן בקשת JSON:

{
  "connectionPoolConfig": {
    "enabled": true,
    "flags": {
      "pool_mode": "POOL_MODE",
      "max_pool_size": "MAX_POOL_SIZE",
      "min_pool_size": "MIN_POOL_SIZE",
      "max_client_connections": "MAX_CLIENT_CONNECTIONS",
      "server_idle_timeout": "SERVER_IDLE_TIMEOUT",
      "query_wait_timeout": "QUERY_WAIT_TIMEOUT",
      "ignore_startup_parameters": "IGNORE_STARTUP_PARAMETERS"
    },
  }
}

הצגת סטטוס מאגר החיבורים המנוהל של מכונה

אפשר לראות את הסטטוס של ניהול מאגר חיבורים למכונה באמצעות מסוף Google Cloud , Google Cloud CLI או AlloyDB API.

המסוף

  1. עוברים לדף Clusters.

    מעבר אל Clusters

  2. לוחצים על אשכול בעמודה שם המשאב.

  3. בדף סקירה כללית, מחפשים את המופע שרוצים לראות את הסטטוס של ניהול מאגר חיבורים. בשדה Managed connection pooling אפשר לראות אם הוא מופעל או מושבת.

gcloud

כדי לראות את הסטטוס של ניהול מאגר חיבורים במופע קיים, משתמשים בפקודה gcloud alloydb instances describe הבאה:

gcloud alloydb instances describe INSTANCE_ID \
  --project=PROJECT_ID \
  --region=REGION_ID \
  --cluster=CLUSTER_ID \
  --format="value(connectionPoolConfig.enabled)"

מחליפים את מה שכתוב בשדות הבאים:

  • INSTANCE_ID: השם של מופע AlloyDB שרוצים לשנות את האפשרויות של ניהול מאגר חיבורים.
  • PROJECT_ID: מזהה הפרויקט
  • REGION_ID: מזהה האזור.
  • CLUSTER_ID: מזהה האשכול.

אם מופעלת תכונת ניהול מאגר חיבורים, התגובה הבאה מוחזרת:

True

REST

כדי לראות את הסטטוס של ניהול מאגר חיבורים במופע AlloyDB, מריצים את הפקודה הבאה ומחפשים את connectionPoolConfig:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט
  • LOCATION_ID: המזהה של האזור של האשכול.
  • CLUSTER_ID: המזהה של האשכול שיוצרים. הוא צריך להתחיל באות קטנה באנגלית, ויכול לכלול אותיות קטנות, מספרים ומקפים.
  • INSTANCE_ID: המזהה של המכונה שיוצרים.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://alloydb.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID

השבתת ניהול מאגר חיבורים למופע קיים

אפשר להשבית את ניהול מאגר החיבורים במופע קיים באמצעותGoogle Cloud המסוף, Google Cloud CLI או AlloyDB API.

המסוף

  1. עוברים לדף Clusters.

    מעבר אל Clusters

  2. לוחצים על אשכול בעמודה שם המשאב.

  3. בדף Overview (סקירה כללית), עוברים אל Instances in your cluster (מופעים באשכול).

  4. לוחצים על עריכת מופע או על עריכת מאגר קריאה עבור המופע שרוצים להשבית בו את החיבור של מאגרים מנוהלים.

  5. בקטע Managed connection pool, מבטלים את הסימון בתיבה Enable managed connection pool.

  6. לוחצים על עדכון המופע.

gcloud

כדי להשבית את ניהול מאגר החיבורים במכונה קיימת, משתמשים בפקודה הבאה gcloud alloydb instances update:

gcloud alloydb instances update INSTANCE_ID \
  --project=PROJECT_ID \
  --region=REGION_ID \
  --cluster=CLUSTER_ID \
  --no-enable-connection-pooling

מחליפים את מה שכתוב בשדות הבאים:

  • INSTANCE_ID: השם של מופע AlloyDB שרוצים להשבית בו את ניהול מאגר החיבורים.
  • PROJECT_ID: מזהה הפרויקט
  • REGION_ID: מזהה האזור.
  • CLUSTER_ID: מזהה האשכול.

REST

כדי להשבית את ניהול מאגר החיבורים במופע קיים של מאגר קריאה, משתמשים בפקודה הבאה ומגדירים את connectionPoolConfig לערך false:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט
  • LOCATION_ID: המזהה של האזור של האשכול.
  • CLUSTER_ID: המזהה של האשכול שיוצרים. הוא צריך להתחיל באות קטנה באנגלית, ויכול לכלול אותיות קטנות, מספרים ומקפים.
  • INSTANCE_ID: המזהה של המכונה שיוצרים.

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://alloydb.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID

תוכן בקשת JSON:

{
  "connectionPoolConfig": {
    "enabled": false
  }
}

מעקב אחרי מאגר חיבורים מנוהל

‫AlloyDB מספק את המדדים הבאים כדי לעזור לכם לעקוב אחרי הפעולה של מאגר חיבורים מנוהל במופע. כל מדד מסומן בתווית עם מזהה מאגר החיבורים. אתם יכולים לראות את המדדים האלה באמצעות Metrics Explorer.

שם המדד תיאור
מספר מאגרי החיבורים

/database/conn_pool/num_pools
המספר הכולל של מאגרי חיבורים לכל מסד נתונים.
חיבורי לקוח

/database/conn_pool/client_connections
עוקב אחרי מספר החיבורים של הלקוחות, מקובצים לפי הסטטוס של חיבור הלקוח לכל מסד נתונים. הסטטוסים שנכללים במדד הזה הם:
  • active: מספר החיבורים הפעילים לכל מסד נתונים, כולל לקוחות לא פעילים שאין להם בקשות שאילתה בהמתנה.
  • waiting: מספר הלקוחות שממתינים לחיבור לשרת לכל מסד נתונים.
חיבורים לשרת

/database/conn_pool/server_connections
המדד הזה עוקב אחרי מספר החיבורים לשרת שמקובצים לפי סטטוס החיבור לשרת לכל מסד נתונים. הסטטוסים שכלולים במדד הזה הם:
  • active: מספר החיבורים הפעילים לכל מסד נתונים.
  • idle: מספר החיבורים הלא פעילים לשרת לכל מסד נתונים.
זמן המתנה הממוצע

/database/conn_pool/client_connections_avg_wait_time
הזמן הממוצע שכל הלקוחות נמצאים במצב המתנה לשרת במיקרו-שניות לכל מסד נתונים.

מידע נוסף זמין במאמר בנושא מדדים של AlloyDB.

מגבלות

ההגבלות הבאות חלות:

  • אם משתמשים בניהול מאגר חיבורים במצב של מאגר טרנזקציות, התכונות הבאות של SQL לא נתמכות:
    • SET/RESET
    • LISTEN
    • WITH HOLD CURSOR
    • PREPARE/DEALLOCATE
    • PRESERVE/DELETE ROW טבלאות זמניות
    • LOAD
    • נעילות מייעצות ברמת הסשן
    • תוכניות מוכנות ברמת הפרוטוקול
  • אין תמיכה בניהול מאגר חיבורים בחיבורים של כתובות IP ציבוריות.
  • לא ניתן להתחבר באמצעות משתמשים עם התפקיד PostgreSQL REPLICATION.