התאמה אישית של ההתקנה של AlloyDB Omni

בוחרים גרסה של מאמר העזרה:

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

צירוף של ספריית נתונים חיצונית

כברירת מחדל, הפקודה שבמאמר הפעלה מהירה: התקנה של AlloyDB Omni מאחסנת את נתוני מסד הנתונים באזור שמנוהל על ידי Docker או Podman. זה נוח להתחלה, אבל קשה למצוא את ספריית הנתונים ולהשתמש בה. במקום זאת, אפשר להגדיר bind mount כדי למפות את ספריית הנתונים למיקום מוכר בדיסק.

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v DATA_DIR:/var/lib/postgresql/data \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v DATA_DIR:/var/lib/postgresql/data \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v DATA_DIR:/var/lib/postgresql/data \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v DATA_DIR:/var/lib/postgresql/data \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

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

  • CONTAINER_NAME: השם שבו השתמשתם עבור מאגר התגים. לדוגמה, my-omni-1.
  • NEW_PASSWORD: הסיסמה שמוקצית למשתמש postgres של מאגר התגים החדש אחרי שהוא נוצר.
  • DATA_DIR: הנתיב לספריית המארח שבה הנתונים מאוחסנים.
  • HOST_PORT: יציאת TCP במכונת המארח שאליה הקונטיינר צריך לפרסם את היציאה שלו 5432. כדי להשתמש ביציאת ברירת המחדל של PostgreSQL במחשב המארח, מציינים 5432.
  • IMAGE_TAG: משתמשים ב-16.3.0 לקובץ האימג' העדכני של Debian או ב-16.3.0-ubi לקובץ האימג' העדכני של UBI.

הפעלת ulimits

הפרמטרים של ulimit מציינים מגבלות על תהליכים שקונטיינר Docker או Podman יכול להשתמש בהן. כדי להשיג ביצועים אופטימליים, מומלץ להגדיר את הערכים הבאים של ulimits:

  • nice=-20:-20: AlloyDB Omni משנה את העדיפויות של התהליכים כדי לאפשר לתהליכים קריטיים של PostgreSQL לפעול בעדיפות גבוהה יותר. העדיפות הגבוהה יותר מקצה לתהליכים יותר מעבדים זמינים. כדי לשנות את העדיפות של התהליך, מציינים את --ulimit=nice=-20:-20, שמסיר את המגבלות של קובץ ה-container של AlloyDB Omni.

  • memlock=-1:-1: ב-AlloyDB Omni מתבצע ניהול זיכרון אוטומטי. ההגדרה --ulimit=memlock=-1:-1 מאפשרת למסד הנתונים לשלוט טוב יותר בהחלפה של דפי זיכרון, מה שיכול לשפר את הביצועים.

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--ulimit=nice=-20:-20 --ulimit=memlock=-1:-1 \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--ulimit=nice=-20:-20 --ulimit=memlock=-1:-1 \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--ulimit=nice=-20:-20 --ulimit=memlock=-1:-1 \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--ulimit=nice=-20:-20 --ulimit=memlock=-1:-1 \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

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

  • CONTAINER_NAME: השם שבו השתמשתם עבור מאגר התגים. לדוגמה, my-omni-1.
  • NEW_PASSWORD: הסיסמה שמוקצית למשתמש postgres של מאגר התגים החדש אחרי שהוא נוצר.
  • HOST_PORT: יציאת TCP במכונת המארח שאליה הקונטיינר צריך לפרסם את היציאה שלו 5432. כדי להשתמש ביציאת ברירת המחדל של PostgreSQL במחשב המארח, מציינים 5432.
  • IMAGE_TAG: משתמשים ב-AlloyDB Omni לקובץ האימג' העדכני של Debian או ב-AlloyDB Omni-ubi לקובץ האימג' העדכני של UBI.

ציון מנהל התקן לרישום ביומן

כברירת מחדל, Docker ו-Podman לא מבצעים רוטציה של יומנים. הפעולה הזו עלולה לתפוס הרבה מקום בדיסק, ובסופו של דבר לגרום לניצול מלא של נפח האחסון בדיסק. כדי להשתמש במנהל התקן אחר לרישום ביומן, אפשר לציין את השדה --log-driver. לדוגמה, כדי להיכנס ל-journald:

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--log-driver=journald \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--log-driver=journald \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--log-driver=journald \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--log-driver=journald \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

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

  • CONTAINER_NAME: השם שבו השתמשתם עבור מאגר התגים. לדוגמה, my-omni-1.
  • NEW_PASSWORD: הסיסמה שמוקצית למשתמש postgres של מאגר התגים החדש אחרי שהוא נוצר.
  • HOST_PORT: יציאת TCP במכונת המארח שאליה הקונטיינר צריך לפרסם את היציאה שלו 5432. כדי להשתמש ביציאת ברירת המחדל של PostgreSQL במחשב המארח, מציינים 5432.
  • IMAGE_TAG: משתמשים ב-16.3.0 כדי לקבל את קובץ האימג' העדכני ביותר של Debian או ב-16.3.0-ubi כדי לקבל את קובץ האימג' העדכני ביותר של UBI.

מידע נוסף על מנהלי התקנים של רישום ביומן זמין במאמר Configure logging drivers (הגדרה של מנהלי התקנים של רישום ביומן) של Docker ובמאמר podman-run של Podman.

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

צירוף של נפח זיכרון משותף

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

Linux

כדי להפוך את הזיכרון המשותף לזמין למאגר, צריך להוסיף את הפקודה /dev/shm:

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v /dev/shm:/dev/shm \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v /dev/shm:/dev/shm \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v /dev/shm:/dev/shm \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v /dev/shm:/dev/shm \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

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

  • CONTAINER_NAME: השם שבו השתמשתם עבור מאגר התגים. לדוגמה, my-omni-1.
  • NEW_PASSWORD: הסיסמה שמוקצית למשתמש postgres של מאגר התגים החדש אחרי שהוא נוצר.
  • HOST_PORT: יציאת TCP במכונת המארח שאליה הקונטיינר צריך לפרסם את היציאה שלו 5432. כדי להשתמש ביציאת ברירת המחדל של PostgreSQL במחשב המארח, מציינים 5432.
  • IMAGE_TAG: משתמשים ב-16.3.0 לקובץ האימג' העדכני של Debian או ב-16.3.0-ubi לקובץ האימג' העדכני של UBI.

macOS

כדי להפוך את הזיכרון המשותף לזמין לקונטיינר, צריך לכלול את הדגל --shm-size:

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--shm-size=SHARED_MEMORY_SIZE \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Docker

docker run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--shm-size=SHARED_MEMORY_SIZE \
-p HOST_PORT:5432 \
--restart=always \
google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--shm-size=SHARED_MEMORY_SIZE \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

Podman

podman run -d --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--shm-size=SHARED_MEMORY_SIZE \
-p HOST_PORT:5432 \
--restart=always \
docker.io/google/alloydbomni:IMAGE_TAG

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

  • CONTAINER_NAME: השם שבו השתמשתם עבור מאגר התגים. לדוגמה, my-omni-1.
  • NEW_PASSWORD: הסיסמה שמוקצית למשתמש postgres של מאגר התגים החדש אחרי שהוא נוצר.
  • SHARED_MEMORY_SIZE: גודל להגדרה של /dev/shm בקונטיינר, בפורמט שמתואר במאמר בנושא הרצת קונטיינרים. לדוגמה, כדי לציין גיגה-בייט אחד, משתמשים בערך 1g.
  • HOST_PORT: יציאת TCP במכונת המארח שאליה הקונטיינר צריך לפרסם את היציאה שלו 5432. כדי להשתמש ביציאת ברירת המחדל של PostgreSQL במחשב המארח, מציינים 5432.
  • IMAGE_TAG: משתמשים ב-16.3.0 לקובץ האימג' העדכני של Debian או ב-16.3.0-ubi לקובץ האימג' העדכני של UBI.

מומלץ להגדיר את גודל הזיכרון המשותף למספר מגה-בייט ששווה לפחות לערך של הדגל google_job_scheduler.max_parallel_workers_per_job במסד הנתונים, כפול 250. מידע נוסף על מנוע מבוסס-עמודות זמין במאמר בנושא הגדרת מנוע מבוסס-עמודות ב-AlloyDB Omni.

לדוגמה, אם הדגל google_job_scheduler.max_parallel_workers_per_job database מוגדר לערך ברירת המחדל שלו 2, כדאי להוסיף דגל של --shm-size=500m או יותר כשמפעילים את שרת מסד הנתונים.

מידע נוסף על הדגל --shm-size זמין במאמר הרצת קונטיינרים.

הפעלת תוספים

רשימת התוספים שזמינים ב-AlloyDB Omni מופיעה במאמר תוספי מסד נתונים נתמכים. ‫PostGIS ו-Orafce לא כלולים ב-AlloyDB Omni, אבל אפשר להתקין אותם לפי ההוראות הבאות:

הפעלת תוספים מותקנים מתבצעת באמצעות הצהרות PostgreSQL CREATE EXTENSIONסטנדרטיות, כפי שמפורט במאמר הפעלת תוסף.