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 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 Admin AlloyDB)
    • roles/owner (peran IAM dasar Pemilik)
    • roles/editor (peran IAM dasar Editor)
  • Jika Anda tidak memiliki peran ini, hubungi Administrator Organisasi untuk meminta akses.
  • Anda juga harus memiliki izin compute.networks.list di project Google Cloud yang digunakan. Untuk mendapatkan izin ini sekaligus mengikuti prinsip hak istimewa terendah, minta administrator untuk memberi Anda peran Pengguna Jaringan Compute (roles/compute.networkUser).
  • Untuk workload pengembangan dan sandbox, pertimbangkan region dan jenis mesin Anda. Jika Anda ingin menggunakan bentuk 1 vCPU, pastikan Anda memilih region yang mendukung bentuk tersebut. Untuk informasi selengkapnya, lihat Pertimbangan saat menggunakan 1 vCPU.

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. Untuk workload pengembangan dan sandbox, pertimbangkan bentuk 1 vCPU (dalam Pratinjau), yang tersedia di wilayah tertentu. Untuk informasi selengkapnya, lihat Pertimbangan saat menggunakan 1 vCPU.

  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 mengetahui 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 salah satu seri mesin berikut:

      • C4A (seri mesin berbasis Google Axion) (Pratinjau)
      • N2 (seri mesin berbasis x86). Ini adalah seri mesin default.
    3. Pilih jenis mesin.

      • C4A mendukung 1, 4, 8, 16, 32, 48, 64, dan 72 jenis atau bentuk mesin.
      • N2 mendukung 2,4,8,16,32,64,96, dan 128 jenis atau bentuk mesin.

      Untuk mengetahui informasi selengkapnya tentang penggunaan seri mesin berbasis Axion C4A, termasuk jenis mesin 1 vCPU, lihat Pertimbangan saat menggunakan seri mesin berbasis Axion C4A.

    4. 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 Selesai.
  13. Jika Anda memilih jenis cluster tanpa kumpulan baca, klik Buat cluster.

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 \
        --machine-type=MACHINE_TYPE \
        --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 N2 yang Anda inginkan untuk instance. N2 adalah defaultnya. Nilai yang valid mencakup berikut ini:

    • 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

  • MACHINE_TYPE: Parameter ini bersifat opsional saat Anda men-deploy mesin N2. Untuk men-deploy seri mesin berbasis Axion C4A (Pratinjau), atau untuk bermigrasi antar-mesin C4A dan N2, pilih parameter ini dengan nilai berikut.

    Saat Anda menggunakan MACHINE_TYPE dan CPU_COUNT secara bersamaan, nilai di CPU_COUNT dan MACHINE_TYPE harus cocok. Jika tidak, Anda akan mendapatkan error.

    Untuk seri mesin berbasis Axion C4A, pilih jenis mesin dengan nilai berikut:

    • c4a-highmem-1
    • c4a-highmem-4-lssd
    • c4a-highmem-8-lssd
    • c4a-highmem-16-lssd
    • c4a-highmem-32-lssd
    • c4a-highmem-48-lssd
    • c4a-highmem-64-lssd
    • c4a-highmem-72-lssd

    Untuk men-deploy C4A dengan 4 vCPU dan yang lebih tinggi, gunakan akhiran lssd, untuk mengaktifkan cache super cepat.

    Untuk mengetahui informasi selengkapnya tentang penggunaan seri mesin berbasis Axion C4A, termasuk jenis mesin 1 vCPU, lihat Pertimbangan saat menggunakan seri mesin berbasis Axion C4A.

    Untuk seri mesin berbasis x86 N2, gunakan jenis mesin dengan nilai berikut:

    • N2-highmem-2
    • N2-highmem-4
    • N2-highmem-8
    • N2-highmem-16
    • N2-highmem-32
    • N2-highmem-64
    • N2-highmem-96
    • N2-highmem-128
  • 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.
  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 Terraform telah membuat atau mengupdatenya.

REST v1

Contoh ini akan membuat cluster. Parameter network wajib ada. Untuk mengetahui daftar lengkap parameter panggilan ini, lihat Metode: projects.locations.clusters.create. Untuk informasi tentang setelan cluster, lihat Melihat setelan cluster dan instance.

Jangan sertakan informasi sensitif atau informasi identitas pribadi dalam ID cluster Anda karena dapat terlihat secara eksternal. Anda tidak perlu menyertakan project ID dalam nama cluster. Hal ini dilakukan secara otomatis jika sesuai, misalnya, dalam file log.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • CLUSTER_ID: ID cluster yang Anda buat. Nama harus diawali dengan huruf kecil dan dapat berisi huruf kecil, angka, dan tanda hubung.
  • PROJECT_ID: ID project tempat Anda ingin menempatkan cluster.
  • LOCATION_ID: ID region cluster.

  • NETWORK: nama jaringan VPC yang Anda konfigurasi untuk akses layanan pribadi ke AlloyDB.

  • DATABASE_VERSION: string enum versi database,misalnya, POSTGRES_15.

  • INITIAL_USERNAME: nama pengguna yang akan digunakan untuk pengguna postgres default.

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

Isi JSON permintaan terlihat seperti berikut:

{
  clusterId = "CLUSTER_ID"
  network = "projects/PROJECT_ID/global/networks/NETWORK"
  databaseVersion = "DATABASE_VERSION"

  initialUser {
    user     = "INITIAL_USERNAME"
    password = "INITIAL_USER_PASSWORD"
  }

  continuousBackupConfig {
    enabled              = true
    recoveryWindowDays = 14
  }

  weeklySchedule {
    daysOfWeek = ["MONDAY"]

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

    quantityBasedRetention {
      count = 1
    }

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

Untuk mengirim permintaan, simpan isi permintaan dalam file bernama request.json dan gunakan permintaan POST berikut:

  POST https://alloydb.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/clusters

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.

Pertimbangan saat menggunakan seri mesin berbasis Axion C4A

AlloyDB menawarkan seri mesin C4A berdasarkan Google Axion, prosesor kustom berbasis Arm dari Google. Mesin virtual (VM) C4A tersedia sebagai konfigurasi standar untuk 1, 4, 8, 16, 32, 48, 64, dan 72 vCPU, dengan memori Double Data Rate 5 (DDR5) hingga 576 GB.

Saat Anda memilih C4A, perhatikan hal berikut:

  • Untuk men-deploy seri mesin C4A, Anda menggunakan MACHINE_TYPE dan CPU_COUNT, dengan CPU_COUNT harus cocok dengan nilai cpu-count di MACHINE_TYPE.
  • Untuk mengupdate dari N2 ke C4A menggunakan Google Cloud CLI, Anda harus mengupdate MACHINE_TYPE dan CPU_COUNT, dengan CPU_COUNT harus cocok dengan nilai cpu-count di MACHINE_TYPE.
  • Untuk mengupdate dari C4A ke N2, Anda harus mengupdate MACHINE_TYPE dan CPU_COUNT, dengan CPU_COUNT harus cocok dengan nilai cpu-count di MACHINE_TYPE.

C4A didukung di wilayah berikut:

  • asia-east1
  • asia-southeast1
  • europe-west1
  • europe-west2
  • europe-west3
  • europe-west4
  • us-central1
  • us-east1
  • us-east4

Pertimbangan saat menggunakan jenis mesin 1 vCPU

AlloyDB menawarkan bentuk 1 vCPU dengan C4A dan hanya ditujukan untuk tujuan pengembangan dan sandbox. Untuk workload produksi, pilih 2 vCPU atau lebih.

Saat Anda memilih 1 vCPU, perhatikan batasan berikut:

  • 1 vCPU ditawarkan dengan memori 8 GB tanpa dukungan cache ultra-cepat.
  • Konfigurasi 1 vCPU direkomendasikan untuk lingkungan pengembangan dan sandbox dengan ukuran database yang lebih kecil dalam puluhan gigabyte. Untuk database yang lebih besar dan untuk beban kerja produksi, pertimbangkan untuk menggunakan 2 vCPU atau lebih tinggi.
  • Anda dapat mengonfigurasi dengan ketersediaan tinggi (HA), tetapi tidak ada SLA waktu beroperasi yang ditawarkan.
  • Upgrade versi utama di tempat tidak didukung untuk 1 vCPU, 48 vCPU, dan 72 vCPU untuk mesin C4A. Pertimbangkan pendekatan upgrade lainnya, seperti dump dan pemulihan, atau coba lakukan penskalaan sebelum Anda memulai upgrade versi utama yang diterapkan.
  • Lihat region yang didukung C4A tempat Anda dapat men-deploy 1 vCPU.

Langkah berikutnya