Перейти к основному содержимому

ALTER SYSTEM

ALTER SYSTEM управляет узлами FE, BE, CN, Broker и снимками метаданных в кластере.

ПРИМЕЧАНИЕ

Только роль cluster_admin имеет привилегии для выполнения этой операции.

Синтаксис и параметры

FE

  • Добавить Follower FE.

    ALTER SYSTEM ADD FOLLOWER "<fe_host>:<edit_log_port>"[, ...]

    Вы можете проверить статус нового Follower FE, выполнив SHOW PROC '/frontends'\G.

  • Удалить Follower FE.

    ALTER SYSTEM DROP FOLLOWER "<fe_host>:<edit_log_port>"[, ...]
  • Добавить Observer FE.

    ALTER SYSTEM ADD OBSERVER "<fe_host>:<edit_log_port>"[, ...]

    Вы можете проверить статус нового Observer FE, выполнив SHOW PROC '/frontends'\G.

  • Удалить Observer FE.

    ALTER SYSTEM DROP OBSERVER "<fe_host>:<edit_log_port>"[, ...]
ПараметрОбязательныйОписание
fe_hostДаИмя хоста или IP-адрес экземпляра FE. Используйте значение параметра конфигурации priority_networks, если у вашего экземпляра несколько IP-адресов.
edit_log_portДаПорт связи BDB JE узла FE. По умолчанию: 9010.

BE

  • Добавить узел BE.

    ALTER SYSTEM ADD BACKEND "<be_host>:<heartbeat_service_port>"[, ...]

    Вы можете проверить статус нового BE, выполнив SHOW BACKENDS.

  • Удалить узел BE.

    ПРИМЕЧАНИЕ

    Вы не можете удалить узел BE, который хранит tablet'ы таблиц с одной репликой.

    ALTER SYSTEM DROP BACKEND "<be_host>:<heartbeat_service_port>"[, ...]
  • Вывести из эксплуатации узел BE.

    ALTER SYSTEM DECOMMISSION BACKEND "<be_host>:<heartbeat_service_port>"[, ...]

    В отличие от удаления узла BE, которое принудительно исключает его из кластера, вывод из эксплуатации означает безопасное удаление. Это асинхронная операция. Когда узел BE выводится из эксплуатации, данные на нем сначала мигрируют на другие узлы BE, а затем узел удаляется из кластера. Загрузка данных и запросы не будут затронуты во время миграции данных. Вы можете проверить успешность операции с помощью SHOW BACKENDS. Если операция успешна, выведенный из эксплуатации BE не будет возвращен. Если операция не удалась, BE останется онлайн. Вы можете вручную отменить операцию с помощью CANCEL DECOMMISSION.

ПараметрОбязательныйОписание
be_hostДаИмя хоста или IP-адрес экземпляра BE. Используйте значение параметра конфигурации priority_networks, если у вашего экземпляра несколько IP-адресов.
heartbeat_service_portДаПорт службы heartbeat BE. BE использует этот порт для получения heartbeat от FE. По умолчанию: 9050.

CN

  • Добавить узел CN.

    ALTER SYSTEM ADD COMPUTE NODE "<cn_host>:<heartbeat_service_port>"[, ...]

    Вы можете проверить статус нового CN, выполнив SHOW COMPUTE NODES.

  • Удалить узел CN.

    ALTER SYSTEM DROP COMPUTE NODE "<cn_host>:<heartbeat_service_port>"[, ...]

ПРИМЕЧАНИЕ

Вы не можете вывести из эксплуатации узел CN с помощью команды ALTER SYSTEM DECOMMISSION.

ПараметрОбязательныйОписание
cn_hostДаИмя хоста или IP-адрес экземпляра CN. Используйте значение параметра конфигурации priority_networks, если у вашего экземпляра несколько IP-адресов.
heartbeat_service_portДаПорт службы heartbeat CN. CN использует этот порт для получения heartbeat от FE. По умолчанию: 9050.

Broker

  • Добавить узлы Broker. Вы можете использовать узлы Broker для загрузки данных из HDFS или облачного хранилища в Selena. Для получения дополнительной информации см. Loading.

    ALTER SYSTEM ADD BROKER <broker_name> "<broker_host>:<broker_ipc_port>"[, ...]

    Вы можете добавить несколько узлов Broker одним SQL-запросом. Каждая пара <broker_host>:<broker_ipc_port> представляет один узел Broker. И они используют общий broker_name. Вы можете проверить статус нового узла Broker, выполнив SHOW BROKER.

  • Удалить узлы Broker.

ВНИМАНИЕ

Удаление узла Broker завершает задачи, выполняющиеся на нем в данный момент.

  • Удалить один или несколько узлов Broker с одинаковым broker_name.

    ALTER SYSTEM DROP BROKER <broker_name> "<broker_host>:<broker_ipc_port>"[, ...]
  • Удалить все узлы Broker с одинаковым broker_name.

    ALTER SYSTEM DROP ALL BROKER <broker_name>
ПараметрОбязательныйОписание
broker_nameДаИмя узла(ов) Broker. Несколько узлов Broker могут использовать одно и то же имя.
broker_hostДаИмя хоста или IP-адрес экземпляра Broker. Используйте значение параметра конфигурации priority_networks, если у вашего экземпляра несколько IP-адресов.
broker_ipc_portДаПорт thrift-сервера на узле Broker. Узел Broker использует его для получения запросов от FE или BE. По умолчанию: 8000.

Создание образа

Создать файл образа. Файл образа — это снимок метаданных FE.

ALTER SYSTEM CREATE IMAGE

Создание образа — это асинхронная операция на Leader FE. Вы можете проверить время начала и окончания операции в файле журнала FE fe.log. Запись в журнале типа triggering a new checkpoint manually... указывает на то, что создание образа началось, а запись типа finished save image... указывает на то, что образ был создан.

Примечания по использованию

  • Добавление и удаление узлов FE, BE, CN или Broker — это синхронные операции. Вы не можете отменить операции удаления узлов.
  • Вы не можете удалить узел FE в кластере с одним FE.
  • Вы не можете напрямую удалить узел Leader FE в кластере с несколькими FE. Чтобы удалить его, сначала необходимо перезапустить его. После того как Selena выберет новый Leader FE, вы можете удалить предыдущий.
  • Вы не можете удалить узлы BE, если количество оставшихся узлов BE меньше количества реплик данных. Например, если у вас есть три узла BE в кластере и вы храните данные в трех репликах, вы не можете удалить ни один из узлов BE. А если у вас четыре узла BE и три реплики, вы можете удалить один узел BE.
  • Разница между удалением и выводом из эксплуатации узла BE заключается в том, что при удалении узла BE Selena принудительно удаляет его из кластера и восстанавливает удаленные tablet'ы после удаления, а при выводе из эксплуатации узла BE Selena сначала мигрирует tablet'ы с выводимого из эксплуатации узла BE на другие, а затем удаляет узел.

Примеры

Пример 1: Добавить узел Follower FE.

ALTER SYSTEM ADD FOLLOWER "x.x.x.x:9010";

Пример 2: Одновременно удалить два узла Observer FE.

ALTER SYSTEM DROP OBSERVER "x.x.x.x:9010","x.x.x.x:9010";

Пример 3: Добавить узел BE.

ALTER SYSTEM ADD BACKEND "x.x.x.x:9050";

Пример 4: Одновременно удалить два узла BE.

ALTER SYSTEM DROP BACKEND "x.x.x.x:9050", "x.x.x.x:9050";

Пример 5: Одновременно вывести из эксплуатации два узла BE.

ALTER SYSTEM DECOMMISSION BACKEND "x.x.x.x:9050", "x.x.x.x:9050";

Пример 6: Добавить два узла Broker с одинаковым broker_name - hdfs.

ALTER SYSTEM ADD BROKER hdfs "x.x.x.x:8000", "x.x.x.x:8000";

Пример 7: Удалить два узла Broker из amazon_s3.

ALTER SYSTEM DROP BROKER amazon_s3 "x.x.x.x:8000", "x.x.x.x:8000";

Пример 8: Удалить все узлы Broker в amazon_s3.

ALTER SYSTEM DROP ALL BROKER amazon_s3;