Menyesuaikan penginstalan AlloyDB Omni

Pilih versi dokumentasi:

AlloyDB Omni di-deploy melalui image Docker, yang memungkinkan berbagai bentuk penyesuaian. Halaman ini menampilkan beberapa penyesuaian umum yang digunakan.

Untuk memulai AlloyDB Omni dengan cepat menggunakan konfigurasi default, lihat Panduan memulai: AlloyDB Omni.

Sebelum memulai

Tabel berikut mencantumkan konfigurasi hardware dan software yang direkomendasikan untuk AlloyDB Omni.

OS/Platform Konfigurasi hardware yang direkomendasikan Konfigurasi software yang direkomendasikan
Linux
  • CPU x86-64 atau Arm (*) dengan dukungan AVX2
  • RAM 8 GB untuk setiap CPU yang dialokasikan ke AlloyDB Omni
  • Kapasitas disk 20+ GB
  • OS berbasis Debian (Ubuntu, dll.) atau RHEL 9
  • Kernel Linux versi 6.1 atau yang lebih tinggi atau kernel Linux versi apa pun yang lebih lama dari 5.3 yang memiliki dukungan untuk direktif MADV_COLLAPSE dan MADV_POPULATE_WRITE
  • Cgroupsv2 diaktifkan
  • Docker Engine 25.0.0+ atau Podman 5.0.0+
  • macOS
  • CPU Intel dengan dukungan AVX2 atau M-chip
  • RAM 8 GB untuk setiap CPU yang dialokasikan ke AlloyDB Omni
  • Kapasitas disk 20+ GB
  • Docker Desktop 4.30 atau yang lebih tinggi
  • (*) Dukungan Arm dalam Pratinjau.

    AlloyDB Omni berjalan dalam container. Instal runtime container seperti Docker atau Podman di komputer Anda sebelum menginstal AlloyDB Omni.

    Server tunggal

    Memasang direktori data eksternal

    Secara default, perintah di Panduan memulai: Menginstal AlloyDB Omni menyimpan data database di area yang dikelola oleh Docker. Hal ini memudahkan untuk memulai, tetapi menyulitkan 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 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.4

    Ganti kode berikut:

    • CONTAINER_NAME: Nama yang akan ditetapkan ke container AlloyDB Omni baru ini di Container Registry mesin host Anda—misalnya, my-omni.

    • NEW_PASSWORD: Sandi yang ditetapkan ke pengguna postgres container baru setelah pembuatannya.

    • DATA_DIR: Jalur sistem file yang ingin Anda gunakan oleh AlloyDB Omni untuk direktori datanya.

    • HOST_PORT: Port TCP di mesin host tempat container harus memublikasikan port 5432-nya sendiri. Untuk menggunakan port default PostgreSQL di mesin host juga, tentukan 5432.

    Mengaktifkan ulimits

    Parameter ulimit menentukan berbagai batas proses yang diizinkan untuk digunakan oleh container Docker. Untuk performa yang optimal, AlloyDB Omni menyesuaikan prioritas proses agar proses PostgreSQL penting dapat berjalan dengan prioritas yang lebih tinggi, yaitu mendapatkan alokasi CPU yang tersedia lebih besar. Untuk mengizinkan hal ini, tentukan -20:-20, yang akan menghapus batasan untuk container AlloyDB Omni.

    docker run --name CONTAINER_NAME \
    -e POSTGRES_PASSWORD=NEW_PASSWORD \
    --ulimit=nice=-20:-20 \
    -p HOST_PORT:5432 -d google/alloydbomni:15.5.4

    Menentukan driver logging

    Secara default, Docker tidak melakukan rotasi log. Hal ini dapat menggunakan banyak kapasitas disk, dan pada akhirnya menyebabkan kapasitas disk habis. Anda dapat mengonfigurasi Docker untuk menggunakan driver logging yang berbeda. Misalnya, untuk mencatat log ke journald:

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

    Untuk mengetahui informasi selengkapnya tentang Docker dan driver logging, lihat dokumentasi Docker Mengonfigurasi driver logging.

    Anda juga dapat mengonfigurasi logging menggunakan PostgreSQL. Untuk mengetahui informasi selengkapnya, lihat dokumentasi PostgreSQL Error Reporting dan logging.

    Memasang volume memori bersama

    Jika Anda berencana menggunakan AlloyDB columnar engine dengan AlloyDB Omni, sebaiknya sediakan memori bersama untuk container AlloyDB Omni. Metode untuk melakukannya berbeda-beda, bergantung pada sistem operasi host Anda, seperti yang ditunjukkan dalam contoh berikut.

    Linux

    Untuk menyediakan memori bersama ke container, pasang /dev/shm:

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

    macOS

    Untuk menyediakan memori bersama ke container, sertakan flag --shm-size:

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

    Ganti SHARED_MEMORY_SIZE dengan ukuran yang akan ditetapkan untuk /dev/shm di container, dalam format yang dijelaskan di Menjalankan container. Misalnya, untuk menentukan satu gigabyte, gunakan nilai 1g.

    Sebaiknya tetapkan ukuran memori bersama ke jumlah megabyte yang sama dengan setidaknya nilai database Anda dari flag google_job_scheduler.max_parallel_workers_per_job, dikalikan 250. Untuk mengetahui informasi selengkapnya tentang columnar engine, lihat Mengonfigurasi columnar engine di AlloyDB Omni.

    Misalnya, jika flag database google_job_scheduler.max_parallel_workers_per_job ditetapkan ke nilai default 2, pertimbangkan untuk menambahkan flag --shm-size=500m atau yang lebih besar saat memulai server database Anda.

    Untuk mengetahui informasi selengkapnya tentang flag --shm-size, lihat Menjalankan container.