Menyiapkan AlloyDB Omni untuk produksi

Pilih versi dokumentasi:

Halaman ini menampilkan setelan umum saat menggunakan AlloyDB Omni untuk workload produksi.

Mengaktifkan huge page

AlloyDB Omni, seperti PostgreSQL, mendukung penggunaan halaman besar. Hal ini mengharuskan mesin Anda mengaktifkan halaman besar, dan Anda juga perlu mengaktifkan setelan database huge_pages.

Jalankan skrip yang disediakan untuk mengaktifkan huge page di mesin Anda:

Docker

      docker run --rm --privileged google/alloydbomni setup-host
      

Docker

      docker run --rm --privileged google/alloydbomni setup-host
      

Podman

      podman run --rm --privileged google/alloydbomni setup-host
      

Podman

      podman run --rm --privileged google/alloydbomni setup-host
      
Tambahkan baris berikut ke postgresql.conf Anda untuk mengaktifkan huge page:

   huge_pages=on

Mengaktifkan pertukaran

Swapping di sistem operasi memungkinkan Anda memperluas memori fisik yang tersedia dengan memindahkan halaman memori yang tidak aktif antara memori akses acak (RAM) dan hard disk untuk membebaskan ruang RAM bagi proses aktif. AlloyDB Omni menggunakan swapping saat berada di bawah beban tinggi dan memerlukan memori tambahan.

Untuk memeriksa seberapa banyak ruang swap yang diaktifkan di sistem Anda, jalankan perintah berikut:

   cat /proc/meminfo | grep SwapTotal

Outputnya akan terlihat mirip seperti berikut:

   SwapTotal:      165748732 kB

Untuk mengaktifkan pertukaran di sistem operasi Anda jika nilai outputnya adalah 0, lihat berikut ini:

Mengaktifkan dump inti

Jika AlloyDB Omni mengalami error yang tidak dapat dipulihkan dan error, akan sangat membantu jika ada core dump untuk dianalisis. Core dump adalah snapshot memori proses AlloyDB Omni pada saat error.

Untuk menyiapkan core dump, siapkan kernel.core_pattern sebagai berikut:

  1. Gunakan perintah sysctl untuk mengonfigurasi parameter kernel waktu proses.
  2. Untuk segera menyetel kernel.core_pattern, gunakan:

    sysctl -w kernel.core_pattern="CORE_PATTERN"

    Ganti CORE_PATTERN dengan pola nama file inti seperti "%e-%t.core".

    Untuk mengetahui informasi selengkapnya tentang pola nama file inti, lihat Cara menetapkan nama file inti proses untuk mengetahui detailnya.

    Handler systemd-coredump memungkinkan konfigurasi lebih lanjut setelan coredump Anda. Alat ini diinstal secara default di RHEL. Di sistem Debian dan Ubuntu, jalankan sudo apt install coredumpctl untuk menginstal alat.

Saat memulai AlloyDB Omni, pastikan Anda meneruskan argumen --ulimit=core:-1:-1 dalam perintah docker run:

Docker

   docker run --name CONTAINER_NAME 
-e POSTGRES_PASSWORD=NEW_PASSWORD
--ulimit=core:-1:-1
-p HOST_PORT:5432 -d google/alloydbomni

Docker

   docker run --name CONTAINER_NAME 
-e POSTGRES_PASSWORD=NEW_PASSWORD
--ulimit=core:-1:-1
-p HOST_PORT:5432 -d google/alloydbomni

Podman

   podman run --name CONTAINER_NAME 
-e POSTGRES_PASSWORD=NEW_PASSWORD
--ulimit=core:-1:-1
-p HOST_PORT:5432 -d google/alloydbomni

Podman

   podman run --name CONTAINER_NAME 
-e POSTGRES_PASSWORD=NEW_PASSWORD
--ulimit=core:-1:-1
-p HOST_PORT:5432 -d google/alloydbomni

Ganti kode berikut:

  - `CONTAINER_NAME`: the name of a new
    AlloyDB Omni container—for example, `my-omni-1`.
  - `NEW_PASSWORD`: the password assigned to the new
    container's `postgres` user after the password creation.

Mengaktifkan logging internal

AlloyDB Omni menyediakan lebih banyak pesan selain log PostgreSQL reguler. Pesan ini ditujukan untuk dukungan AlloyDB untuk PostgreSQL karena sifat teknisnya. Namun, informasi tambahan dapat membantu proses debug masalah database.

Untuk mengaktifkan logging internal, selesaikan langkah-langkah berikut:

  1. Tetapkan parameter database enable_alloydb_internal_log ke on:

    ALTER SYSTEM SET enable_alloydb_internal_log=on;
    

    Untuk mengetahui informasi selengkapnya tentang cara mengubah setelan AlloyDB Omni, lihat Mengonfigurasi parameter database AlloyDB Omni.

  2. Mulai ulang layanan AlloyDB Omni:

Docker

   docker restart CONTAINER_NAME
   

Docker

   docker restart CONTAINER_NAME
   

Podman

   podman restart CONTAINER_NAME
   

Podman

   podman restart CONTAINER_NAME
   

Untuk menyesuaikan logging internal seperti mengonfigurasi nama file log dan kebijakan rotasi lebih lanjut, gunakan parameter PostgreSQL.

Misalnya, parameter log_directory menentukan direktori tempat menyimpan file log dan parameter log_filename menentukan nama setiap file log.

AlloyDB Omni menggabungkan parameter log_directory dan log_filename serta menyimpan log internal sebagai berikut:

LOG_DIRECTORY/LOG_FILENAME.internal

Menyiapkan unit systemd untuk menjalankan operasi secara otomatis

Jika menjalankan AlloyDB Omni di server khusus, Anda mungkin ingin mengonfigurasi operasi tertentu agar dimulai secara otomatis saat server di-booting. Salah satu cara untuk melakukannya adalah melalui unit systemd.

Misalnya, langkah-langkah berikut mengonfigurasi systemd sehingga halaman besar diaktifkan secara otomatis setiap kali server di-boot.

Buat file di /etc/systemd/system/alloydb-setup-env.service:

   [Unit]
   Description=Setup huge pages for AlloyDB Omni

   [Service]
   Type=oneshot

   ExecStart=/usr/bin/docker run --rm --privileged google/alloydbomni setup-host

   [Install]
   WantedBy=multi-user.target

Aktifkan layanan sebagai berikut:

   sudo systemctl enable alloydb-setup-env.service

Langkah berikutnya