Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2024-06-12 GMT+08:00

Ampliación de un clúster

Cuando necesite más recursos informáticos y de almacenamiento, agregue más nodos para el escalamiento horizontal del clúster en la consola de gestión.

  • Si un clúster se factura en modo anual/mensual, los nuevos nodos del clúster también se facturarán en este modo.
  • Al ampliar el clúster de almacén de datos estándar, utilice las mismas especificaciones de almacenamiento que el clúster.
  • No se pueden agregar nodos a un almacén de datos híbrido (independiente).

Después de eliminar los datos de un almacén de datos, es posible que no se libere el espacio ocupado en disco, lo que resulta en datos sucios y desperdicio de disco. Por lo tanto, si necesita escalar su clúster debido a la capacidad de almacenamiento insuficiente, ejecute el comando de VACUUM para reclamar primero el espacio de almacenamiento. Si la capacidad de almacenamiento utilizada sigue siendo alta después de ejecutar el comando de VACUUM, puede escalar el clúster. Para obtener más información acerca de la sintaxis VACUUM, consulte sección VACUUM en Referencia de sintaxis SQL.

Impacto en el sistema

  • Antes del escalamiento horizontal, salga de las conexiones de cliente que han creado tablas temporales porque las tablas temporales creadas antes o durante el escalamiento horizontal no serán válidas y las operaciones realizadas en estas tablas temporales fallarán. Las tablas temporales creadas después del escalado horizontal no se verán afectadas.
  • Después de iniciar una tarea de escalamiento horizontal, el clúster toma automáticamente una instantánea antes de que comience la tarea.
  • Durante la ampliación, se deshabilitan funciones como el reinicio del clúster, la ampliación, la creación de instantáneas, el restablecimiento de la contraseña del administrador de la base de datos y la eliminación del clúster.
  • Durante un ampliar sin conexión, el clúster se reinicia automáticamente. Por lo tanto, el clúster permanece Unavailable durante un período de tiempo. Después de reiniciar el clúster, el estado pasa a ser Disponible. Después de la ampliación, el sistema redistribuye dinámicamente los datos de usuario entre todos los nodos del clúster.
  • Durante la ampliación sin conexión, detenga todos los servicios o ejecute solo unas pocas sentencias de consulta. Durante la redistribución de tablas, se agrega un bloqueo compartido a las tablas. Todas las operaciones de inserción, actualización y eliminación, así como las operaciones de DDL en las tablas, se bloquean durante mucho tiempo, lo que puede provocar un tiempo de espera de bloqueo. Después de redistribuir una tabla, puede acceder a la tabla. No realice consultas que tarden más de 20 minutos durante la redistribución (el tiempo predeterminado para solicitar el bloqueo de escritura durante la redistribución es de 20 minutos). De lo contrario, la redistribución de datos puede fallar debido al bloqueo de tiempo de espera.
  • En la ampliación en línea, durante la adición de nodos, el clúster se bloquea y se comprueban los objetos de base de datos. No cree ni suprima bases de datos ni espacios de tablas en este período, ya que es posible que el clúster no se bloquee.
  • Durante la ampliación en línea, puede realizar operaciones de inserción, actualización y eliminación en tablas, pero las actualizaciones de datos siguen estando bloqueadas durante un corto período de tiempo. La redistribución consume una gran cantidad de recursos de CPU y E/S, lo que afectará en gran medida el rendimiento del trabajo. Por lo tanto, realizar la redistribución cuando se detienen los servicios o durante períodos de carga ligera. También se recomienda el escalado horizontal basado en fases: Realice una redistribución de alta simultaneidad durante períodos de carga ligera y detenga la redistribución o realice una redistribución de baja simultaneidad durante períodos de carga pesada.
  • Si se crea una nueva instantánea para el clúster después de la ampliación, la nueva instantánea contiene datos de los nodos recién agregados.
  • Si la ampliación del clúster falla, la base de datos realiza automáticamente la operación de reversión en segundo plano para que el número de nodos del clúster pueda restaurarse antes de la ampliación.
    • Si la reversión se realiza correctamente y el clúster se puede utilizar normalmente, puede volver a realizar Scale Out. Si la ampliación sigue fallando, póngase en contacto con el soporte técnico.
    • Si la base de datos no se revierte debido a algunas excepciones, el clúster puede convertirse en Unavailable. En este caso, no puede realizar Scale Out ni reiniciar el clúster. Póngase en contacto con el soporte técnico.
  • En el escenario de ampliación nativo 9.0.2 en la nube, si el número de buckets asignados a cada DN no está entre [3, 20], se activa la ampliación. Puede ver el número de buckets utilizando el parámetro GUC table_buckets.
    • Actualmente, la ampliación del bucket solo admite el modo sin conexión. El procedimiento es el mismo que el procedimiento de ampliación existente. El sistema determina y ejecuta automáticamente el proceso de ampliación del bucket.
    • Durante el proceso de escalado, el clúster se reinicia. El reinicio dura varios minutos. Durante el reinicio, todas las conexiones se cierran.
    • Una vez finalizado el reinicio, se puede leer la base de datos, pero no se puede escribir hasta que se complete la redistribución de datos.

    Por ejemplo, si el número de buckets en el nodo actual es 32 y el número de DN en el grupo lógico es 9, y el número de DN necesita expandirse a 15, como 32/15=2 (redondeado hacia abajo) no cumple con el requisito de [3,20], se activa la ampliación.

Prerrequisitos

  • El clúster que se va a escalar está en el estado Available o Unbalanced.
  • El número de nodos que se van a agregar debe ser menor o igual que los nodos disponibles. De lo contrario, no se permite el escalado horizontal del sistema.
  • Para ampliar un clúster como usuario de IAM, asegúrese de que el usuario de IAM tenga permisos para VPC, EVC y BMS.

Ampliación de un clúster

  • Un clúster pasa a ser de sólo lectura durante la ampliación. Realice esta operación con precaución.
  • Para garantizar la seguridad de los datos, se recomienda crear una instantánea antes de la ampliación. Para obtener más información sobre cómo crear una instantánea, consulte Instantáneas manuales.
  • Después de iniciar un ampliar el sistema comprueba primero los requisitos previos de ampliar. Si el clúster falla la comprobación, modifique las configuraciones según se le indique e inténtelo de nuevo. Para obtener más información, consulte ¿Qué hago si falla la comprobación de ampliación horizontal?
  1. Inicie sesión en la consola de gestión de GaussDB(DWS).
  2. Haga clic en Clusters.

    Todos los clústeres se muestran de forma predeterminada.

  3. En la columna Operation del clúster de destino, elija More > Scale Node > Scale Out. Se muestra la página de ampliar.

    En el modo de facturación anual/mensual, no se muestra el número de nodos del paquete de descuento. Se muestran el tiempo restante y el tiempo de caducidad.

    Figura 1 Ampliación de clústeres

  4. Especifique el número de nodos que se van a agregar.

    • El número de nodos después del escalamiento horizontal debe ser al menos tres nodos más que el número original. El número máximo de nodos que se pueden agregar depende de la cuota disponible. Además, el número de nodos después del escalado horizontal no puede exceder de 256.

      Si la cuota de nodo es insuficiente, haga clic en Increase quota para enviar un ticket de servicio y solicitar una cuota de nodo más alta.

    • La variante de los nuevos nodos debe ser el mismo que el de los nodos existentes en el clúster.
    • La VPC, la subred y el grupo de seguridad del clúster con nuevos nodos agregados son los mismos que los del clúster original.
    • El número de nodos que se agregarán a un clúster multi-AZ debe ser un múltiplo de 3.

  5. Configurar parámetros avanzados.

    • Si elige Default, Scale Online se deshabilitará, se habilitará Auto Redistribution y Redistribution Mode será Offline por defecto.
    • Si elige Custom, puede configurar los siguientes parámetros de configuración avanzados para la ampliación en línea:
      • Scale Online: se puede activar la ampliación en línea. Durante la ampliación en línea, los datos se pueden agregar, eliminar, modificar y consultar en la base de datos; y algunas sintaxis DDL son compatibles. Se reportarán errores para sintaxis no admitidas.
      • Auto Redistribution: se puede habilitar la redistribución automática. Si se habilita la redistribución automática, los datos se redistribuirán inmediatamente después de que se complete la ampliación. Si esta función está deshabilitada, solo se realiza la ampliación. En este caso, para redistribuir datos, seleccione un clúster y elija More > Scale Node > Redistribute.
      • Redistribution Concurrency: Si la redistribución automática está habilitada, puede establecer el número de tareas de redistribución simultáneas. El rango de valores es de 1 a 32. El valor predeterminado es 4.
      • Redistribution Mode: Puede configurarse en Online o Offline. Después de confirmar que la información es correcta, haga clic en OK en el cuadro de diálogo mostrado.

  6. Haga clic en Next: Confirm.
  7. Haga clic en Submit.

    • Después de enviar la aplicación de escalamiento horizontal, la información de la tarea del clúster cambia a Scaling out y el proceso tardará varios minutos. Durante la ampliación, el clúster se reinicia automáticamente. Por lo tanto, el estado del clúster permanecerá Unavailable durante un tiempo. Después de reiniciar el clúster, el estado cambiará a Available. En la última fase de ampliación, el sistema redistribuye dinámicamente los datos de usuario en el clúster, durante el cual el clúster se encuentra en el estado de Read-only.
    • Un clúster se amplía correctamente solo cuando el clúster está en estado Available y no se muestra la información de la tarea Scaling out. A continuación, puede utilizar el clúster.
    • Si se muestra Scale-out failed, no se puede ampliar el clúster.

Ampliación con nodos inactivos

Para garantizar la confiabilidad, prepare primero los nodos de ECS o BMS haciendo referencia a Adición de nodos para un clúster a gran escala y amplíe el clúster con nodos inactivos.

  • Deshabilite la redistribución automática al ampliar un clúster a gran escala para facilitar los reintentos en caso de fallas y mejorar la confiabilidad.
  • Una vez completado la ampliación, realice manualmente redistribución para asegurarse de que se pueden realizar varios reintentos en esta fase.

Precauciones

  • Se debe agregar un número de nodos disponibles al clúster por adelantado para que los nodos inactivos se puedan crear y agregar para ampliar.
  • La regla antiafinidad dicta que el número de nodos inactivos que se agregarán debe ser un múltiplo entero del tamaño del anillo del clúster.
  • Después de iniciar un ampliar el sistema comprueba primero los requisitos previos de ampliar. Si el clúster falla la comprobación, modifique las configuraciones según se le indique e inténtelo de nuevo. Para obtener más información, consulte ¿Qué hago si falla la comprobación de ampliación horizontal?

Procedimiento

  1. Inicie sesión en la consola de gestión de GaussDB(DWS).
  2. Haga clic en Clusters. Todos los clústeres se muestran de forma predeterminada.
  3. En la columna Operation del clúster de destino, elija More > Scale Node > Scale Out.

    Si hay nodos inactivos en el clúster, el sistema muestra un mensaje preguntándole si desea agregar nodos.

  4. Configure los parámetros de escalamiento horizontal y redistribución según sea necesario. Para obtener más información, véase Ampliación de un clúster.

    A continuación, haga clic en Next: Confirm.

  5. Confirme la información y haga clic en Submit.

Viewing Scaling Details

  1. Log in to the GaussDB(DWS) management console.
  2. Choose Clusters.
  3. In the Task Information column of a cluster, click View Details.

  4. Check the scale-out status of the cluster on the scaling details page.