Membuat cluster dan instance utamanya

Halaman ini menjelaskan cara membuat cluster AlloyDB dan instance utama-nya.

Sebelum memulai

  • Project Google Cloud yang Anda gunakan harus telah diaktifkan untuk mengakses AlloyDB.
  • Jaringan VPC dalam project Google Cloud yang Anda gunakan harus sudah dikonfigurasi untuk akses layanan pribadi ke AlloyDB.
  • Anda harus memiliki salah satu peran IAM berikut di project Google Cloud yang Anda gunakan:
    • roles/alloydb.admin (peran IAM bawaan AlloyDB Admin)
    • roles/owner (peran IAM dasar Pemilik)
    • roles/editor (peran IAM dasar Editor)

    Jika Anda tidak memiliki salah satu peran ini, hubungi Administrator Organisasi untuk meminta akses.

  • Anda juga harus memiliki izin compute.networks.list di project Google Cloud yang Anda gunakan. Untuk mendapatkan izin ini sekaligus mengikuti prinsip hak istimewa terendah, minta administrator untuk memberi Anda peran roles/compute.networkUser (Pengguna Jaringan Compute).

Buat cluster baru

Konsol

  1. Buka halaman Cluster.

    Buka Cluster

  2. Klik Buat kluster.

  3. Pilih konfigurasi cluster. Untuk informasi selengkapnya tentang perbedaan antara konfigurasi yang sangat tersedia dan dasar, lihat Node dan instance.

    Jika Anda tidak yakin apakah cluster baru memerlukan instance kumpulan baca, pilih salah satu konfigurasi tanpa kumpulan baca. Anda dapat menambahkan instance kumpulan baca ke cluster nanti, kapan pun diperlukan.

  4. Klik Lanjutkan.

  5. Di bagian Konfigurasi cluster Anda, di kolom Cluster ID, masukkan ID untuk cluster Anda.

  6. Di kolom Password, masukkan sandi awal untuk cluster baru. AlloyDB menetapkan sandi yang diberikan ke pengguna database postgres saat membuat cluster.

  7. Di kolom Database version, pilih versi utama PostgreSQL yang Anda inginkan agar server database cluster kompatibel.

  8. Pilih wilayah.

  9. Pilih jalur jaringan.

  10. Opsional: Untuk menerapkan rentang alamat IP tertentu ke cluster ini, ikuti langkah-langkah berikut, bukan mengizinkan AlloyDB memilih rentang alamat IP:

    1. Klik Tampilkan opsi rentang IP yang dialokasikan.

    2. Dari daftar Allocated IP range, pilih rentang alamat IP.

    Untuk informasi selengkapnya tentang opsi ini, lihat Membuat cluster dengan rentang alamat IP tertentu.

  11. Opsional: Untuk mengenkripsi cluster ini menggunakan kunci enkripsi yang dikelola pelanggan (CMEK), bukan enkripsi yang dikelola Google, ikuti langkah-langkah tambahan berikut:

    1. Klik Advanced encryption options.

    2. Pilih Kunci enkripsi yang dikelola pelanggan (CMEK).

    3. Di menu yang muncul, pilih kunci yang dikelola pelanggan.

      Konsol Google Cloud membatasi daftar ini untuk kunci dalam project dan region Google Cloud yang sama dengan cluster baru. Untuk menggunakan kunci yang tidak ada dalam daftar ini, klik Tidak melihat kunci Anda? Masukkan nama resource kunci, lalu ketik nama resource kunci ke dalam dialog yang dihasilkan.

      Perhatikan bahwa penggunaan CMEK dengan AlloyDB memerlukan beberapa penyiapan tambahan. Untuk informasi selengkapnya, lihat Menggunakan CMEK dengan AlloyDB.

    4. Klik Lanjutkan.

  12. Konfigurasikan instance utama Anda:

    1. Di kolom Instance ID, masukkan ID untuk instance utama Anda.
    2. Pilih jenis mesin.
    3. Opsional: Tetapkan flag kustom untuk instance Anda. Untuk setiap tanda, ikuti langkah-langkah berikut:
      1. Klik Add flag.
      2. Di daftar New database flag, pilih flag.
      3. Berikan nilai untuk tanda.
      4. Klik Done.
  13. Jika Anda memilih jenis cluster tanpa kumpulan baca, klik Buat cluster. Jika tidak, lanjutkan ke langkah berikutnya.

  14. Jika Anda memilih jenis cluster dengan kumpulan baca, selesaikan langkah-langkah berikut:

    1. Klik Lanjutkan untuk menambahkan satu atau beberapa instance kumpulan operasi baca.
    2. Untuk menambahkan instance kumpulan operasi baca:

      1. Klik Tambahkan kumpulan baca.

      2. Di kolom Read pool instance ID, masukkan ID untuk instance kumpulan operasi baca.

      3. Di kolom Jumlah node, masukkan jumlah node.

        Jumlah node dalam instance kumpulan operasi baca menentukan kapasitas komputasi keseluruhan instance.

      4. Pilih jenis mesin.

      5. Opsional: Tetapkan flag kustom ke instance Anda. Untuk setiap flag:

        1. Klik Add flag.
        2. Pilih flag dari daftar Flag database baru.
        3. Berikan nilai untuk tanda.
        4. Klik Done.
      6. Klik Tambahkan kumpulan baca.

    3. Klik Buat kluster.

gcloud

Untuk menggunakan gcloud CLI, Anda dapat menginstal dan melakukan inisialisasi Google Cloud CLI, atau menggunakan Cloud Shell.

  1. Untuk membuat cluster dengan akses layanan pribadi atau Private Service Connect yang diaktifkan, gunakan perintah gcloud alloydb clusters create.

    Akses layanan pribadi

    gcloud alloydb clusters create CLUSTER_ID \
        --database-version=POSTGRES_VERSION \
        --password=PASSWORD \
        --region=REGION_ID \
        --project=PROJECT_ID \
        --network=NETWORK

    Private Service Connect

    gcloud alloydb clusters create CLUSTER_ID \
        --database-version=POSTGRES_VERSION \
        --password=PASSWORD \
        --region=REGION_ID \
        --project=PROJECT_ID \
        --enable-private-service-connect 

    Ganti kode berikut:

    • CLUSTER_ID: ID cluster yang Anda buat. Nama harus diawali dengan huruf kecil dan dapat berisi huruf kecil, angka, dan tanda hubung.

    • VERSION: versi utama PostgreSQL yang Anda inginkan agar server database cluster kompatibel. Pilih salah satu opsi berikut:

      • 14, untuk kompatibilitas dengan PostgreSQL 14

      • 15, untuk kompatibilitas dengan PostgreSQL 15, yang merupakan versi PostgreSQL default yang didukung

      • 16, untuk kompatibilitas dengan PostgreSQL 16

    • PASSWORD: sandi yang akan digunakan untuk pengguna postgres default.

    • NETWORK (Opsional): nama jaringan VPC yang Anda konfigurasi untuk akses layanan pribadi ke AlloyDB. Jika Anda menghapus flag --network, AlloDB akan menggunakan jaringan default.

    • --enable-private-service-connect (Opsional): ditetapkan untuk mengaktifkan Private Service Connect sebagai metode konektivitas untuk cluster dan instance-nya.

    • REGION_ID: region tempat Anda ingin menempatkan cluster.

    • PROJECT_ID: ID project tempat Anda ingin menempatkan cluster.

    Perintah ini memulai operasi yang berjalan lama, dan menampilkan ID operasi.

  2. Opsional: Untuk menerapkan rentang alamat IP tertentu ke cluster ini, daripada memungkinkan AlloyDB memilih rentang alamat IP, berikan argumen berikut:

    --allocated-ip-range-name=RANGE
    

    Ganti RANGE dengan nama rentang alamat IP yang ingin Anda gunakan cluster ini untuk akses layanan pribadi.

    Untuk mengetahui informasi selengkapnya tentang opsi ini, lihat Membuat cluster dengan rentang alamat IP tertentu.

  3. Opsional: Untuk mengenkripsi cluster ini menggunakan kunci enkripsi yang dikelola pelanggan (CMEK), bukan enkripsi default yang dikelola Google, berikan argumen berikut:

    --kms-key=KEY_ID \
    --kms-keyring=KEYRING_ID \
    --kms-location=LOCATION_ID \
    --kms-project=PROJECT_ID
    

    Ganti kode berikut:

    • KEY_ID: ID kunci CMEK yang akan digunakan.

    • KEYRING_ID: ID key ring kunci.

    • LOCATION_ID: ID ring kunci, yang harus sama dengan region cluster.

    • PROJECT_ID: ID project ring kunci.

  4. Pastikan bahwa operasi berhasil.

    gcloud alloydb operations describe OPERATION_ID \
        --region=REGION_ID \
        --project=PROJECT_ID

    Ganti OPERATION_ID dengan ID operasi yang ditampilkan dari langkah sebelumnya.

Setelah membuat cluster utama, Anda harus membuat instance utama.

Membuat instance utama

Untuk membuat instance utama, gunakan perintah gcloud alloydb instances create.

    gcloud alloydb instances create INSTANCE_ID \
        --instance-type=PRIMARY \
        --cpu-count=CPU_COUNT \
        --region=REGION_ID \
        --cluster=CLUSTER_ID \
        --project=PROJECT_ID \
        --allowed-psc-projects=ALLOWED_PROJECT_LIST

Ganti kode berikut:

  • INSTANCE_ID: ID instance yang Anda buat. Nama harus diawali dengan huruf kecil dan dapat berisi huruf kecil, angka, dan tanda hubung.
  • CPU_COUNT: jumlah vCPU yang Anda inginkan untuk instance. Nilai yang valid mencakup hal berikut:
    • 2: 2 vCPU, RAM 16 GB
    • 4: 4 vCPU, RAM 32 GB
    • 8: 8 vCPU, RAM 64 GB
    • 16: 16 vCPU, RAM 128 GB
    • 32: 32 vCPU, RAM 256 GB
    • 64: 64 vCPU, RAM 512 GB
    • 96: 96 vCPU, RAM 768 GB
    • 128: 128 vCPU, RAM 864 GB
  • REGION_ID: region tempat Anda ingin menempatkan instance.
  • CLUSTER_ID: ID cluster yang Anda buat sebelumnya.
  • PROJECT_ID: ID project tempat cluster
  • ALLOWED_PROJECT_LIST (Opsional): daftar project ID atau nomor project yang dipisahkan koma yang ingin Anda izinkan untuk mengakses instance, jika menggunakan Private Service Connect.

Terraform

Untuk membuat cluster, gunakan resource Terraform.

Berikut adalah cuplikan kode pembuatan cluster berdasarkan contoh cluster AlloyDB penuh:

resource "google_alloydb_cluster" "cluster_abc" {
  cluster_id = "alloydb-cluster"
  location   = "us-central1"
  network_config {
    network = google_compute_network.default.id
  }
  database_version = "POSTGRES_15"

  initial_user {
    user     = "postgres"
    password = "postgres"
  }

  continuous_backup_config {
    enabled              = true
    recovery_window_days = 14
  }

  automated_backup_policy {
    location      = "us-central1"
    backup_window = "1800s"
    enabled       = true

    weekly_schedule {
      days_of_week = ["MONDAY"]

      start_times {
        hours   = 23
        minutes = 0
        seconds = 0
        nanos   = 0
      }
    }

    quantity_based_retention {
      count = 1
    }

    labels = {
      test = "alloydb-cluster-backup-policy-labels"
    }
  }

  labels = {
    test = "alloydb-cluster-labels"
  }
}

data "google_project" "project" {}

resource "google_compute_network" "default" {
  name = "alloydb-cluster-network"
}

Menyiapkan Cloud Shell

Untuk menerapkan konfigurasi Terraform di project Google Cloud, siapkan Cloud Shell sebagai berikut:

  1. Luncurkan Cloud Shell.
  2. Tetapkan project Google Cloud default tempat Anda ingin menerapkan konfigurasi Terraform.

    Anda hanya perlu menjalankan perintah ini sekali per project, dan dapat dijalankan di direktori mana pun.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Variabel lingkungan akan diganti jika Anda menetapkan nilai eksplisit dalam file konfigurasi Terraform.

Menyiapkan direktori

Setiap file konfigurasi Terraform harus memiliki direktorinya sendiri, yang juga disebut modul root.

  1. Di Cloud Shell, buat direktori dan file baru di dalam direktori tersebut. Nama file harus berupa file TF—misalnya, main.tf. Dalam dokumen ini, file ini disebut sebagai main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Salin kode contoh ke dalam main.tf yang baru dibuat. Atau, salin kode dari GitHub. Tindakan ini direkomendasikan jika cuplikan Terraform adalah bagian dari solusi menyeluruh.
  3. Tinjau file main.tf dan ubah contoh parameter untuk diterapkan pada lingkungan Anda.
  4. Simpan perubahan Anda.
  5. Lakukan inisialisasi Terraform. Anda hanya perlu melakukan ini sekali per direktori.
    terraform init
    Opsional: Untuk menggunakan versi penyedia Google terbaru, sertakan opsi -upgrade:
    terraform init -upgrade

Menerapkan perubahan

  1. Tinjau konfigurasi untuk mengonfirmasi bahwa update Terraform sesuai dengan ekspektasi Anda:
    terraform plan
    Lakukan koreksi pada konfigurasi jika diperlukan.
  2. Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan memasukkan yes pada prompt:
    terraform apply
    Tunggu hingga Terraform menampilkan pesan Apply complete!.
  3. Buka project Google Cloud Anda untuk melihat hasilnya. Di konsol Google Cloud, buka resource Anda di UI untuk memastikan bahwa Terraform telah membuat atau mengupdatenya.

Meng-clone cluster aktif

Untuk membuat clone cluster aktif, yang berisi salinan semua data cluster sumber dan berjalan di region yang sama, lakukan pemulihan point-in-time pada cluster tersebut. Anda dapat menentukan titik waktu yang sangat baru saat melakukannya—misalnya, detik pertama dari menit saat ini.

Proses ini hanya menyalin data cluster sumber ke dalam clone—bukan konfigurasi cluster sumber. Untuk mengenkripsi data clone menggunakan CMEK, Anda harus menentukan detail CMEK sebagai bagian dari perintah pemulihan titik waktu, meskipun data cluster sumber sudah dienkripsi dengan CMEK. Setelah cluster baru dibuat, Anda perlu menambahkan instance, flag database, jadwal pencadangan, dan konfigurasi lain yang diperlukan sesuai kebutuhan Anda.

Cluster yang dibuat dengan cara ini ada secara terpisah dari sumbernya, dengan datanya tidak memiliki hubungan dengan data cluster sumber setelah duplikasi awal selesai. Jika Anda ingin membuat cluster sekunder yang secara otomatis melacak dan mereplikasi perubahan data yang dibuat di cluster sumbernya, lihat Tentang replikasi lintas-region.

Membuat cluster dengan rentang alamat IP tertentu

AlloyDB menggunakan akses layanan pribadi untuk memungkinkan resource internal cluster berkomunikasi satu sama lain. Sebelum Anda dapat membuat cluster, jaringan Virtual Private Cloud (VPC) harus berisi minimal satu rentang alamat IP yang dikonfigurasi dengan koneksi akses layanan pribadi.

Jika jaringan VPC Anda berisi lebih dari satu rentang alamat IP yang telah dikonfigurasi dengan akses layanan pribadi, Anda memiliki opsi untuk menentukan rentang yang ditetapkan AlloyDB ke cluster baru.

Untuk menentukan rentang alamat IP, lihat langkah-langkah opsional di Membuat cluster.

Jika Anda tidak menentukan rentang, AlloyDB akan melakukan salah satu tindakan berikut saat membuat cluster:

  • Jika Anda memiliki beberapa rentang alamat IP dengan akses layanan pribadi yang tersedia, AlloyDB akan memilih salah satu rentang tersebut.

  • Jika Anda telah menyiapkan tepat satu rentang alamat IP di VPC dengan akses layanan pribadi, AlloyDB akan menerapkan rentang tersebut ke cluster baru.

Untuk mengetahui informasi selengkapnya tentang cara membuat rentang alamat IP untuk digunakan dengan AlloDB, lihat Mengaktifkan akses layanan pribadi.

Langkah selanjutnya