Installa AlloyDB Omni

Installa ed esegui AlloyDB Omni su Google Distributed Cloud (solo software) per cluster bare metal.

Panoramica

Google Distributed Cloud per bare metal ha completato la qualifica dei partner per AlloyDB Omni (a partire dalla versione 1.7.0 di AlloyDB Omni Operator).

AlloyDB Omni è un pacchetto software di database scaricabile che:

  • Consente di eseguire il deployment di una versione semplificata di AlloyDB per PostgreSQL.
  • Offre la compatibilità completa con PostgreSQL.
  • Fornisce un throughput elevato per il workload transazionale.
  • Offre l'accelerazione del motore colonnare per i carichi di lavoro analitici.
  • Offre supporto integrato per i workload di AI generativa e ricerca vettoriale con AlloyDB AI.

Esegui il deployment e gestisci AlloyDB Omni sui tuoi cluster bare metal utilizzando l'operatore AlloyDB Omni Kubernetes.

Prima di iniziare

Prima di installare AlloyDB Omni, devi disporre di quanto segue:

  • Un cluster bare metal Google Distributed Cloud che esegue Kubernetes versione 1.21 o successive.
  • Lo strumento a riga di comando kubectl configurato per comunicare con il tuo cluster.
  • Il helm package manager (versione 3 o successive) installato sulla workstation di amministrazione.
  • Una risorsa StorageClass predefinita configurata sul cluster bare metal per il provisioning dinamico dei volumi. Per saperne di più, consulta la panoramica dello spazio di archiviazione.
  • Nodi del cluster che soddisfano i requisiti minimi di risorse per AlloyDB Omni:
    • Almeno 2 CPU per istanza di database.
    • Almeno 8 GB di RAM per CPU (ad esempio, 16 GB per 2 CPU).
    • Kernel Linux 4.18 o versioni successive con il gruppo di controllo (cgroup) v2 abilitato.

Installa cert-manager

L'operatore AlloyDB Omni richiede cert-manager per gestire i certificati TLS per i relativi webhook di controllo dell'ammissione.

  1. Se cert-manager non è ancora installato sul cluster, installalo utilizzando 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. Sostituisci KUBECONFIG con il percorso del file kubeconfig del cluster.

  3. Verifica che i pod cert-manager siano in esecuzione: sh kubectl get pods -n cert-manager --kubeconfig KUBECONFIG

    Installa l'operatore AlloyDB Omni

Per installare l'operatore AlloyDB Omni Kubernetes dal registro OCI utilizzando Helm, procedi nel seguente modo:

  1. Installa il grafico Helm dell'operatore:

    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
    

    Sostituisci quanto segue:

    • OPERATOR_VERSION: la versione di AlloyDB Omni Operator da installare (ad esempio, 1.8.0 o versioni successive).
    • KUBECONFIG: il percorso del file kubeconfig del cluster.
  2. Verifica che il pod dell'operatore sia in esecuzione:

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

    L'output è simile al seguente:

    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
    

Crea un cluster AlloyDB Omni

Dopo l'esecuzione dell'operatore, crea un cluster di database AlloyDB Omni creando un secret per la password e applicando una risorsa personalizzata DBCluster.

  1. Crea uno spazio dei nomi per i carichi di lavoro del database:

    kubectl create namespace my-db-ns --kubeconfig KUBECONFIG
    
  2. Crea un secret Kubernetes contenente la password di accesso dell'amministratore del database per l'utente postgres predefinito:

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

    Sostituisci PASSWORD con una password sicura.

  3. Crea un manifest denominato 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. Applica il manifest:

    kubectl apply -f db-cluster.yaml --kubeconfig KUBECONFIG
    
  5. Verifica che il cluster di database raggiunga lo stato Ready:

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

    L'output è simile al seguente:

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

Passaggi successivi