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

בדף הזה מוסבר איך להפעיל את התכונה 'ניהול מאגר חיבורים' ב-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-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. לוחצים על אשכול בעמודה Resource Name (שם המשאב).

  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.