בדף הזה מוסבר איך להתאים אישית את ההתקנה של AlloyDB Omni, שנפרסת באמצעות קובץ אימג' של קונטיינר שתומך בצורות שונות של התאמה אישית. בדף הזה מוצגות כמה התאמות אישיות נפוצות.
התקנה של ספריית נתונים חיצונית
כברירת מחדל, הפקודה במדריך למתחילים: התקנת AlloyDB Omni מאחסנת את נתוני מסד הנתונים באזור שמנוהל על ידי Docker או Podman. השיטה הזו נוחה להתחלה, אבל קשה למצוא את ספריית הנתונים ולהשתמש בה. במקום זאת, אתם יכולים להגדיר טעינת קישור כדי למפות את ספריית הנתונים למיקום ידוע בדיסק.
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: משתמשים ב-15.13.0בשביל קובץ האימג' העדכני של Debian או ב-15.13.0-ubiבשביל קובץ האימג' העדכני של UBI.
הפעלת ulimits
הפרמטרים של ulimit מציינים מגבלות על תהליכים שקונטיינר Docker או Podman יכול להשתמש בהן. כדי ליהנות מביצועים אופטימליים, מומלץ להגדיר את הערכים הבאים של ulimit:
nice=-20:-20: AlloyDB Omni משנה את סדרי העדיפויות של התהליכים כדי לאפשר לתהליכי PostgreSQL קריטיים לפעול בעדיפות גבוהה יותר. העדיפות הגבוהה יותר נותנת לתהליכים הקצאה גדולה יותר של מעבדים זמינים. כדי לשנות את סדרי העדיפויות של התהליכים, מציינים את הערך--ulimit=nice=-20:-20, שמסיר את המגבלות על מאגר 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: משתמשים ב-15.13.0כדי לקבל את תמונת Debian העדכנית ביותר, או ב-15.13.0-ubiכדי לקבל את תמונת UBI העדכנית ביותר.
למידע נוסף על מנהלי התקנים לרישום ביומן, קראו את המאמר הגדרת מנהלי התקנים לרישום ביומן של Docker ואת המאמר podman-run של Podman.
טעינת אמצעי אחסון של זיכרון משותף
אם אתם מתכננים להשתמש במנוע מבוסס-העמודות של 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: משתמשים ב-15.13.0בשביל קובץ האימג' העדכני של Debian, או ב-15.13.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: משתמשים ב-15.13.0בשביל קובץ האימג' העדכני של Debian או ב-15.13.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 מופיעה במאמר תוספי מסד נתונים נתמכים. AlloyDB Omni לא כולל את PostGIS ו-Orafce, אבל אפשר להתקין את שניהם לפי ההוראות הבאות:
התוספים המותקנים מופעלים באמצעות הצהרות CREATE EXTENSION סטנדרטיות של PostgreSQL, כפי שמפורט בקטע הפעלת תוסף.