Menginstal AlloyDB Omni

Instal dan jalankan AlloyDB Omni di Google Distributed Cloud (khusus software) untuk cluster bare metal.

Ringkasan

Google Distributed Cloud untuk bare metal telah menyelesaikan kualifikasi partner untuk AlloyDB Omni (dimulai dengan AlloyDB Omni Operator versi 1.7.0).

AlloyDB Omni adalah paket software database yang dapat didownload dan:

  • Memungkinkan Anda men-deploy versi AlloyDB untuk PostgreSQL yang disederhanakan.
  • Menawarkan kompatibilitas PostgreSQL penuh.
  • Menyediakan throughput tinggi pada beban kerja transaksional.
  • Menawarkan akselerasi columnar engine untuk beban kerja analisis.
  • Menawarkan dukungan bawaan untuk workload AI generatif dan penelusuran vektor dengan AlloyDB AI.

Deploy dan kelola AlloyDB Omni di cluster bare metal menggunakan Operator Kubernetes AlloyDB Omni.

Sebelum memulai

Sebelum menginstal AlloyDB Omni, Anda harus memiliki hal berikut:

  • Cluster bare metal Google Distributed Cloud yang menjalankan Kubernetes versi 1.21 atau yang lebih baru.
  • Alat command line kubectl yang dikonfigurasi untuk berkomunikasi dengan cluster Anda.
  • Pengelola paket helm (versi 3 atau yang lebih baru) diinstal di workstation admin Anda.
  • StorageClass default yang dikonfigurasi di cluster bare metal Anda untuk penyediaan volume dinamis. Untuk mengetahui informasi selengkapnya, lihat Ringkasan penyimpanan.
  • Node di cluster Anda yang memenuhi persyaratan resource minimum untuk AlloyDB Omni:
    • Minimal 2 CPU per instance database.
    • Minimum RAM 8 GB per CPU (misalnya, 16 GB untuk 2 CPU).
    • Kernel Linux 4.18 atau yang lebih baru dengan grup kontrol (cgroup) v2 diaktifkan.

Instal cert-manager

Operator AlloyDB Omni memerlukan cert-manager untuk mengelola sertifikat TLS bagi webhook penerimaannya.

  1. Jika cert-manager belum diinstal di cluster Anda, instal menggunakan Helm: sh helm repo add jetstack https://charts.jetstack.io helm repo update helm install cert-manager jetstack/cert-manager \ --namespace cert-manager \ --create-namespace \ --version v1.16.0 \ --set crds.enabled=true \ --kubeconfig KUBECONFIG

  2. Ganti KUBECONFIG dengan jalur file kubeconfig cluster Anda.

  3. Verifikasi bahwa Pod cert-manager sedang berjalan: sh kubectl get pods -n cert-manager --kubeconfig KUBECONFIG

    Menginstal Operator AlloyDB Omni

Untuk menginstal Operator Kubernetes AlloyDB Omni dari registry OCI menggunakan Helm, lakukan hal berikut:

  1. Instal diagram Helm operator:

    helm install alloydbomni-operator oci://gcr.io/alloydb-omni/alloydbomni-operator \
        --version OPERATOR_VERSION \
        --create-namespace \
        --namespace alloydb-omni-system \
        $(helm install --help | grep -q -- '--rollback-on-failure' && echo '--rollback-on-failure' || echo '--atomic') \
        --timeout 5m \
        --kubeconfig KUBECONFIG
    

    Ganti kode berikut:

    • OPERATOR_VERSION: versi AlloyDB Omni Operator yang akan diinstal (misalnya, 1.8.0 atau yang lebih baru).
    • KUBECONFIG: jalur file kubeconfig cluster Anda.
  2. Pastikan Pod operator sedang berjalan:

    kubectl get pods -n alloydb-omni-system --kubeconfig KUBECONFIG
    

    Outputnya mirip dengan hal berikut ini:

    NAME                                        READY   STATUS    RESTARTS   AGE
    fleet-controller-manager-796c698cd7-x2vsr   1/1     Running   0          22h
    local-controller-manager-76f6c98446-rzpsc   1/1     Running   0          22h
    

Membuat cluster AlloyDB Omni

Setelah operator berjalan, buat cluster database AlloyDB Omni dengan membuat Secret sandi dan menerapkan resource kustom DBCluster.

  1. Buat namespace untuk workload database Anda:

    kubectl create namespace my-db-ns --kubeconfig KUBECONFIG
    
  2. Buat Secret Kubernetes yang berisi sandi login administrator database untuk pengguna postgres default:

    kubectl create secret generic db-pw-my-db-cluster \
        --namespace my-db-ns \
        --from-literal=my-db-cluster=PASSWORD \
        --kubeconfig KUBECONFIG
    

    Ganti PASSWORD dengan sandi yang aman.

  3. Buat manifes bernama db-cluster.yaml:

    apiVersion: alloydbomni.dbadmin.goog/v1
    kind: DBCluster
    metadata:
      name: my-db-cluster
      namespace: my-db-ns
    spec:
      databaseVersion: "18.3.0"
      primarySpec:
        adminUser:
          passwordRef:
            name: db-pw-my-db-cluster
        resources:
          cpu: 2
          memory: 16Gi
          disks:
          - name: DataDisk
            size: 20Gi
    
  4. Terapkan manifes:

    kubectl apply -f db-cluster.yaml --kubeconfig KUBECONFIG
    
  5. Verifikasi bahwa cluster database mencapai status Ready:

    kubectl get dbclusters -n my-db-ns --kubeconfig KUBECONFIG
    

    Outputnya mirip dengan hal berikut ini:

    NAME            PRIMARY             PRIMARYSTATUS   STANDBY   STANDBYSTATUS   STATUS
    my-db-cluster   my-db-cluster-0     Ready                                     Ready
    

Langkah berikutnya