Instala AlloyDB Omni en Kubernetes

En esta página, se proporciona una descripción general del operador de Kubernetes de AlloyDB Omni, con instrucciones para usarlo y, así, implementar AlloyDB Omni en un clúster de Kubernetes. En esta página, se supone que conoces los aspectos básicos del funcionamiento de Kubernetes.

Si deseas obtener instrucciones para instalar AlloyDB Omni en un entorno estándar de Linux, consulta Cómo instalar AlloyDB Omni.

Descripción general

Para implementar AlloyDB Omni en un clúster de Kubernetes, instala el operador de AlloyDB Omni, una extensión de la API de Kubernetes que proporciona Google.

Para configurar y controlar un clúster de bases de datos de AlloyDB Omni basado en Kubernetes, vincula archivos de manifiesto declarativos con la utilidad kubectl, al igual que cualquier otra implementación basada en Kubernetes. No usas la CLI de AlloyDB Omni, que está diseñada para implementaciones en máquinas individuales de Linux y no en clústeres de Kubernetes.

Antes de comenzar

Necesitas acceso a lo siguiente:

Cada nodo del clúster de Kubernetes debe tener lo siguiente:

  • Un mínimo de dos CPUs x86 o AMD64
  • Al menos 8 GB de RAM
  • Versión 4.18 o posterior del kernel de Linux
  • Grupo de control v2 (cgroup v2) habilitado.

Usa gráficos de Helm

Puedes usar gráficos de Helm del repositorio alloydb-omni-samples para implementar los componentes que se muestran en esta guía.

Instala el operador de AlloyDB Omni

Para instalar el operador Omni de AlloyDB, sigue estos pasos:

  1. Define varias variables de entorno:

    export GCS_BUCKET=alloydb-omni-operator
    export HELM_PATH=$(gcloud storage cat gs://$GCS_BUCKET/latest)
    export OPERATOR_VERSION="${HELM_PATH%%/*}"
  2. Descarga el operador de AlloyDB Omni:

    gcloud storage cp gs://$GCS_BUCKET/$HELM_PATH ./ --recursive
  3. Instala el operador de AlloyDB Omni:

    helm install alloydbomni-operator alloydbomni-operator-${OPERATOR_VERSION}.tgz \
    --create-namespace \
    --namespace alloydb-omni-system \
    --atomic \
    --timeout 5m

    Si la instalación se realiza correctamente, se muestra el siguiente resultado:

    NAME: alloydbomni-operator
    LAST DEPLOYED: CURRENT_TIMESTAMP
    NAMESPACE: alloydb-omni-system
    STATUS: deployed
    REVISION: 1
    TEST SUITE: None
    
  4. Para realizar una limpieza, borra el archivo de instalación del operador de AlloyDB Omni que descargaste. El archivo se llama alloydbomni-operator-VERSION_NUMBER.tgz y se encuentra en tu directorio de trabajo actual.

Crea un clúster de base de datos

Un clúster de bases de datos de AlloyDB Omni contiene todos los recursos de almacenamiento y procesamiento necesarios para ejecutar un servidor de AlloyDB Omni, incluido el servidor principal, las réplicas y todos tus datos.

Después de instalar el operador de AlloyDB Omni en tu clúster de Kubernetes, puedes crear un clúster de bases de datos de AlloyDB Omni en el clúster de Kubernetes aplicando un manifiesto similar al siguiente:

apiVersion: v1
kind: Secret
metadata:
  name: db-pw-DB_CLUSTER_NAME
type: Opaque
data:
  DB_CLUSTER_NAME: "ENCODED_PASSWORD"
---
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
  name: DB_CLUSTER_NAME
spec:
  databaseVersion: "15.5.2"
  primarySpec:
    adminUser:
      passwordRef:
        name: db-pw-DB_CLUSTER_NAME
    resources:
      cpu: CPU_COUNT
      memory: MEMORY_SIZE
      disks:
      - name: DataDisk
        size: DISK_SIZE
        storageClass: standard

Reemplaza lo siguiente:

  • DB_CLUSTER_NAME: Es el nombre de este clúster de bases de datos, por ejemplo, my-db-cluster.

  • ENCODED_PASSWORD: Es la contraseña de acceso a la base de datos del rol de usuario postgres predeterminado, codificada como una cadena base64, por ejemplo, Q2hhbmdlTWUxMjM= para ChangeMe123.

  • CPU_COUNT: Es la cantidad de CPUs disponibles para cada instancia de base de datos en este clúster de bases de datos.

  • MEMORY_SIZE: Es la cantidad de memoria por instancia de base de datos de este clúster de bases de datos. Te recomendamos que establezcas este valor en 8 gigabytes por CPU. Por ejemplo, si configuraste cpu en 2 antes en este manifiesto, te recomendamos que configures memory en 16Gi.

  • DISK_SIZE: El tamaño del disco por instancia de base de datos, por ejemplo, 10Gi.

Después de aplicar este manifiesto, tu clúster de Kubernetes contendrá un clúster de bases de datos de AlloyDB Omni con la configuración de memoria, CPU y almacenamiento especificada. Para establecer una conexión de prueba con el nuevo clúster de bases de datos, consulta Cómo conectarse con el psql preinstalado.

Para obtener más información sobre los manifiestos de Kubernetes y cómo aplicarlos, consulta Cómo administrar recursos.

¿Qué sigue?