AlloyDB Omni נפרס באמצעות קובץ אימג' של Docker, שמאפשר התאמה אישית בצורות שונות. בדף הזה מוצגים כמה מההתאמות האישיות הנפוצות.
כדי להתחיל במהירות להשתמש ב-AlloyDB Omni עם הגדרות ברירת המחדל, אפשר לעיין במאמר מדריך למתחילים: AlloyDB Omni.
לפני שמתחילים
בטבלה הבאה מפורטת הגדרת החומרה והתוכנה המומלצת ל-AlloyDB Omni.
| מערכת הפעלה/פלטפורמה | הגדרת חומרה מומלצת | הגדרת תוכנה מומלצת |
|---|---|---|
| Linux |
|
|
| macOS |
|
|
| (*) התמיכה ב-Arm היא בגרסת Preview. | ||
AlloyDB Omni פועל בקונטיינר. לפני שמתקינים את AlloyDB Omni, צריך להתקין במחשב זמן ריצה של קונטיינר כמו Docker או Podman.
פקודות Podman מסופקות לקונטיינר ללא הרשאות רוט שפועל ב-Security-Enhanced Linux (SELinux) מושבת.
שרת יחיד
טעינה של ספריית נתונים חיצונית
כברירת מחדל, הפקודה במאמר מדריך למתחילים: התקנת AlloyDB Omni מאחסנת את נתוני מסד הנתונים באזור שמנוהל על ידי Docker. השיטה הזו נוחה להתחלה, אבל קשה למצוא את ספריית הנתונים ולהשתמש בה. במקום זאת, אפשר להגדיר bind mount כדי למפות את ספריית הנתונים למיקום ידוע בדיסק.
Docker
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v DATA_DIR:/var/lib/postgresql/data \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.5מחליפים את מה שכתוב בשדות הבאים:
CONTAINER_NAME: השם שיוקצה למאגר החדש של AlloyDB Omni במאגר התמונות של המכונה המארחת – לדוגמה,my-omni.
NEW_PASSWORD: הסיסמה שהוקצתה למשתמשpostgresשל מאגר התגים החדש אחרי שהוא נוצר.
DATA_DIR: הנתיב במערכת הקבצים שרוצים ש-AlloyDB Omni ישתמש בו לספריית הנתונים שלו.
HOST_PORT: יציאת ה-TCP במחשב המארח שאליה הקונטיינר מפרסם את יציאה 5432. כדי להשתמש ביציאת ברירת המחדל של PostgreSQL גם במחשב המארח, מציינים5432.
Podman
podman run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v DATA_DIR:/var/lib/postgresql/data \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.5מחליפים את מה שכתוב בשדות הבאים:
CONTAINER_NAME: השם שיוקצה למאגר החדש של AlloyDB Omni במאגר התמונות של המכונה המארחת – לדוגמה,my-omni.
NEW_PASSWORD: הסיסמה שהוקצתה למשתמשpostgresשל מאגר התגים החדש אחרי שהוא נוצר.
DATA_DIR: הנתיב במערכת הקבצים שרוצים ש-AlloyDB Omni ישתמש בו לספריית הנתונים שלו.
HOST_PORT: יציאת ה-TCP במחשב המארח שאליה הקונטיינר מפרסם את יציאה 5432. כדי להשתמש ביציאת ברירת המחדל של PostgreSQL גם במחשב המארח, מציינים5432.
Podman
podman run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v DATA_DIR:/var/lib/postgresql/data \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.5מחליפים את מה שכתוב בשדות הבאים:
CONTAINER_NAME: השם שיוקצה למאגר החדש של AlloyDB Omni במאגר התמונות של המכונה המארחת – לדוגמה,my-omni.
NEW_PASSWORD: הסיסמה שהוקצתה למשתמשpostgresשל מאגר התגים החדש אחרי שהוא נוצר.
DATA_DIR: הנתיב במערכת הקבצים שרוצים ש-AlloyDB Omni ישתמש בו לספריית הנתונים שלו.
HOST_PORT: יציאת ה-TCP במחשב המארח שאליה הקונטיינר מפרסם את יציאה 5432. כדי להשתמש ביציאת ברירת המחדל של PostgreSQL גם במחשב המארח, מציינים5432.
הפעלת ulimits
הפרמטרים של ulimit מציינים מגבלות על תהליכים שקונטיינר Docker יכול להשתמש בהן. כדי להשיג ביצועים אופטימליים, מומלץ להגדיר את הערכים הבאים של ulimits:
nice=-20:-20: AlloyDB Omni משנה את סדרי העדיפויות של התהליכים כדי לאפשר לתהליכים קריטיים של PostgreSQL לפעול עם עדיפות גבוהה יותר. העדיפות הגבוהה יותר מאפשרת לתהליכים לקבל הקצאה גדולה יותר של מעבדי CPU זמינים. כדי לשנות את העדיפות של התהליך, מציינים--ulimit=nice=-20:-20, שמסיר את המגבלות על קונטיינר AlloyDB Omni.
memlock=-1:-1: AlloyDB Omni מבצע ניהול זיכרון אוטומטי. ההגדרה--ulimit=memlock=-1:-1מאפשרת למסד הנתונים לשלוט טוב יותר באופן ההחלפה של דפי הזיכרון, מה שיכול לשפר את הביצועים.
Docker
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--ulimit=nice=-20:-20 --ulimit=memlock=-1:-1 \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.5Podman
podman run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--ulimit=nice=-20:-20 --ulimit=memlock=-1:-1 \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.5ציון מנהל התקן לרישום ביומן
כברירת מחדל, Docker לא מבצעת רוטציה של יומנים. הפעולה הזו עלולה לתפוס הרבה מקום בדיסק, ובסופו של דבר לגרום לניצול מלא של נפח הדיסק. אפשר להגדיר את Docker כך שישתמש במנהל התקנים אחר לרישום ביומן. לדוגמה, כדי לרשום ביומן ב-journald:
Docker
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--log-driver=journald \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.5Podman
podman run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--log-driver=journald \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.5מידע נוסף על Docker ועל מנהלי התקנים של רישום ביומן זמין במסמכי העזרה של Docker בנושא הגדרה של מנהלי התקנים של רישום ביומן.
אפשר גם להגדיר רישום ביומן באמצעות PostgreSQL. מידע נוסף זמין במסמכי התיעוד של PostgreSQL בנושא דיווח על שגיאות ורישום ביומן.
צירוף של נפח זיכרון משותף
אם אתם מתכננים להשתמש במנוע מבוסס-עמודות של AlloyDB עם AlloyDB Omni, מומלץ להקצות זיכרון משותף לקונטיינר של AlloyDB Omni. השיטה לביצוע הפעולה הזו משתנה בהתאם למערכת ההפעלה של המארח, כמו שמוצג בדוגמאות הבאות.
Linux
כדי להפוך את הזיכרון המשותף לזמין למאגר, צריך להפעיל את הפקודה /dev/shm:
Docker
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-p HOST_PORT:5432 \
-v /dev/shm:/dev/shm \
-d google/alloydbomni:15.5.5Podman
podman run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-p HOST_PORT:5432 \
-v /dev/shm:/dev/shm \
-d google/alloydbomni:15.5.5macOS
כדי להפוך את הזיכרון המשותף לזמין לקונטיינר, צריך לכלול את הדגל --shm-size:
Docker
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-p HOST_PORT:5432 \
--shm-size=SHARED_MEMORY_SIZE \
-d google/alloydbomni:15.5.5מחליפים את SHARED_MEMORY_SIZE בגודל שרוצים להגדיר ל-/dev/shm במאגר, בפורמט שמתואר במאמר בנושא הרצת קונטיינרים.
לדוגמה, כדי לציין גיגה-בייט אחד, משתמשים בערך 1g.
Podman
podman run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-p HOST_PORT:5432 \
--shm-size=SHARED_MEMORY_SIZE \
-d google/alloydbomni:15.5.5מחליפים את SHARED_MEMORY_SIZE בגודל שרוצים להגדיר ל-/dev/shm במאגר, בפורמט שמתואר במאמר בנושא הרצת קונטיינרים.
לדוגמה, כדי לציין גיגה-בייט אחד, משתמשים בערך 1g.
מומלץ להגדיר את גודל הזיכרון המשותף למספר מגה-בייט ששווה לפחות לערך של הדגל google_job_scheduler.max_parallel_workers_per_job במסד הנתונים, כפול 250. מידע נוסף על מנוע מבוסס-עמודות זמין במאמר הגדרת מנוע העמודות ב-AlloyDB Omni.
לדוגמה, אם הדגל google_job_scheduler.max_parallel_workers_per_job של מסד הנתונים מוגדר לערך ברירת המחדל שלו 2, כדאי להוסיף דגל של --shm-size=500m או יותר כשמפעילים את שרת מסד הנתונים.
מידע נוסף על הדגל --shm-size זמין במאמר הרצת קונטיינרים.