Halaman ini menjelaskan cara menyesuaikan penginstalan AlloyDB Omni, yang di-deploy melalui image container yang mendukung berbagai bentuk penyesuaian. Halaman ini menampilkan beberapa penyesuaian umum.
Memasang direktori data eksternal
Secara default, perintah di Panduan memulai: Menginstal AlloyDB Omni menyimpan data database di area yang dikelola oleh Docker atau Podman. Cara ini memudahkan Anda untuk memulai, tetapi menyulitkan Anda untuk menemukan dan menggunakan direktori data. Sebagai gantinya, Anda dapat menyiapkan pemasangan bind untuk memetakan direktori data ke lokasi yang diketahui di disk Anda.
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
Ganti variabel berikut:
CONTAINER_NAME
: Nama yang Anda gunakan untuk container. Contoh,my-omni-1
.NEW_PASSWORD
: Sandi yang ditetapkan untuk penggunapostgres
penampung baru setelah pembuatannya.DATA_DIR
: Jalur direktori host tempat data Anda disimpan.HOST_PORT
: Port TCP di mesin host yang harus digunakan container untuk memublikasikan port5432
-nya sendiri. Untuk menggunakan port default PostgreSQL di mesin host juga, tentukan5432
.IMAGE_TAG
: Gunakan16.8.0
untuk image Debian terbaru atau16.8.0-ubi
untuk image UBI terbaru.
Mengaktifkan ulimit
Parameter ulimit menentukan batas proses yang dapat digunakan oleh container Docker atau Podman. Untuk performa optimal, sebaiknya Anda menetapkan ulimit berikut:
nice=-20:-20
: AlloyDB Omni menyesuaikan prioritas proses untuk memungkinkan proses PostgreSQL penting berjalan dengan prioritas yang lebih tinggi. Prioritas yang lebih tinggi memberikan alokasi CPU yang tersedia lebih besar untuk proses. Untuk menyesuaikan prioritas proses, tentukan--ulimit=nice=-20:-20
, yang menghapus batasan untuk penampung AlloyDB Omni.memlock=-1:-1
: AlloyDB Omni melakukan pengelolaan memori otomatis. Menetapkan--ulimit=memlock=-1:-1
memungkinkan database mengontrol dengan lebih baik cara penukaran halaman memori, yang dapat menghasilkan performa yang lebih baik.
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
Ganti variabel berikut:
CONTAINER_NAME
: Nama yang Anda gunakan untuk container. Contoh,my-omni-1
.NEW_PASSWORD
: Sandi yang ditetapkan untuk penggunapostgres
penampung baru setelah pembuatannya.HOST_PORT
: Port TCP di mesin host yang harus digunakan container untuk memublikasikan port5432
-nya sendiri. Untuk menggunakan port default PostgreSQL di mesin host juga, tentukan5432
.IMAGE_TAG
: GunakanAlloyDB Omni
untuk image Debian terbaru atauAlloyDB Omni-ubi
untuk image UBI terbaru.
Menentukan driver logging
Secara default, Docker dan Podman tidak melakukan rotasi log. Tindakan ini dapat menghabiskan banyak ruang disk, dan akhirnya menyebabkan ruang disk habis. Untuk menggunakan driver
pencatatan log yang berbeda, Anda dapat menentukan kolom --log-driver
. Misalnya, untuk mencatat ke
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
Ganti variabel berikut:
CONTAINER_NAME
: Nama yang Anda gunakan untuk container. Contoh,my-omni-1
.NEW_PASSWORD
: Sandi yang ditetapkan untuk penggunapostgres
penampung baru setelah pembuatannya.HOST_PORT
: Port TCP di mesin host yang harus digunakan container untuk memublikasikan port5432
-nya sendiri. Untuk menggunakan port default PostgreSQL di mesin host juga, tentukan5432
.IMAGE_TAG
: Gunakan16.8.0
untuk image Debian terbaru atau gunakan16.8.0-ubi
untuk image UBI terbaru.
Untuk mengetahui informasi selengkapnya tentang driver logging, lihat dokumentasi
Docker tentang Mengonfigurasi driver logging
dan
Podman tentang podman-run
.
Selain itu, Anda dapat mengonfigurasi logging menggunakan PostgreSQL. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi rotasi log AlloyDB Omni.
Memasang volume memori bersama
Jika Anda berencana menggunakan mesin berbasis kolom AlloyDB dengan AlloyDB Omni, sebaiknya sediakan memori bersama untuk penampung AlloyDB Omni. Metode untuk melakukannya berbeda-beda, bergantung pada sistem operasi host Anda, seperti yang ditunjukkan pada contoh berikut.
Linux
Untuk menyediakan memori bersama bagi container, pasang /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
Ganti variabel berikut:
CONTAINER_NAME
: Nama yang Anda gunakan untuk container. Contoh,my-omni-1
.NEW_PASSWORD
: Sandi yang ditetapkan untuk penggunapostgres
penampung baru setelah pembuatannya.HOST_PORT
: Port TCP di mesin host yang harus digunakan container untuk memublikasikan port5432
-nya sendiri. Untuk menggunakan port default PostgreSQL di mesin host juga, tentukan5432
.IMAGE_TAG
: Gunakan16.8.0
untuk image Debian terbaru atau gunakan16.8.0-ubi
untuk image UBI terbaru.
macOS
Untuk menyediakan memori bersama bagi container, sertakan tanda --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
Ganti variabel berikut:
CONTAINER_NAME
: Nama yang Anda gunakan untuk container. Contoh,my-omni-1
.NEW_PASSWORD
: Sandi yang ditetapkan untuk penggunapostgres
penampung baru setelah pembuatannya.SHARED_MEMORY_SIZE
: Ukuran yang akan ditetapkan untuk/dev/shm
di container, dalam format yang dijelaskan di Menjalankan container. Misalnya, untuk menentukan satu gigabyte, gunakan nilai1g
.HOST_PORT
: Port TCP di mesin host yang harus digunakan container untuk memublikasikan port5432
-nya sendiri. Untuk menggunakan port default PostgreSQL di mesin host juga, tentukan5432
.IMAGE_TAG
: Gunakan16.8.0
untuk image Debian terbaru atau16.8.0-ubi
untuk image UBI terbaru.
Sebaiknya setel ukuran memori bersama ke sejumlah megabyte yang sama dengan
setidaknya nilai database Anda untuk tanda
google_job_scheduler.max_parallel_workers_per_job
,
dikali 250. Untuk mengetahui informasi selengkapnya tentang mesin berbasis kolom, lihat
Mengonfigurasi mesin berbasis kolom di AlloyDB Omni.
Misalnya, jika tanda database google_job_scheduler.max_parallel_workers_per_job
disetel ke nilai defaultnya, yaitu 2
, pertimbangkan untuk menambahkan tanda
--shm-size=500m
atau yang lebih tinggi saat memulai server database Anda.
Untuk mengetahui informasi selengkapnya tentang flag --shm-size
, lihat
Menjalankan container.
Mengaktifkan ekstensi
Daftar ekstensi yang tersedia di AlloyDB Omni tersedia di Ekstensi database yang didukung. Meskipun PostGIS dan Orafce tidak disertakan dengan AlloyDB Omni, keduanya dapat diinstal dengan mengikuti petunjuk:
Ekstensi yang diinstal diaktifkan menggunakan pernyataan CREATE EXTENSION
PostgreSQL standar seperti yang dijelaskan dalam
Mengaktifkan ekstensi.