Если нагрузки на плоскости данных кластера Elasticsearch изменятся, вы можете масштабировать кластер вертикально, изменив спецификации узлов или тип хранилища узлов.
Тип изменения | Сценарий | Процесс изменения |
|---|---|---|
Изменение спецификаций узлов | Обычно вы увеличиваете спецификации узлов, а не уменьшаете их. Общие сценарии включают:
В качестве альтернативы вы также можете уменьшить характеристики узла, но это приведёт к снижению возможностей обработки данных и хранения кластера. Будьте осторожны. |
Характеристики узла изменяются по одному узлу за раз. Это делается для обеспечения достаточных ресурсов для поддержания работы сервисов. |
Изменение типа хранилища узла (тип диска) | Измените тип хранилища узла, если дисковый I/O стал узким местом производительности, что влияет на производительность запросов и записей. |
Узлы меняются по одному, чтобы избежать перебоев в работе сервиса. |
Для кластера с оплатой по использованию вы можете увидеть его новую цену при подтверждении изменения спецификаций узла или типа хранилища в консоли. После завершения изменения будет применена новая цена. Для получения деталей ценообразования см. .
Перед изменением спецификаций узлов кластера или типа хранилища необходимо оценить потенциальные последствия и просмотреть операционные рекомендации. Это позволяет правильно запланировать изменение, минимизируя прерывания сервиса.
Изменение типа хранилища узла не прерывает работу сервисов. Однако перемещение данных, происходящее в процессе, потребляет I/O‑производительность, а вывод отдельных узлов из сети всё‑ещё оказывает влияние на общую производительность кластера.
Чтобы минимизировать это влияние, рекомендуется корректировать скорость перемещения данных в зависимости от цикла нагрузки кластера: увеличить скорость перемещения данных в непиковые часы для сокращения длительности задачи и уменьшить её до приходят пиковые часы для обеспечения оптимальной производительности кластера. Скорость перемещения данных определяется indices.recovery.max_bytes_per_sec параметр. Значение по умолчанию для этого параметра равно количеству vCPUs, умноженному на 32 МБ. Например, для четырех vCPUs скорость миграции данных составляет 128 МБ. Установите этот параметр в диапазоне от 40 МБ до 1000 МБ в зависимости от требований вашего сервиса.
PUT /_cluster/settings{"transient": {"indices.recovery.max_bytes_per_sec": "1000MB"}}
Вывод узлов из онлайн-режима по одному обычно не прерывает сервисы. Однако запросы, отправленные на офлайн‑узлы, могут завершиться ошибкой. Чтобы смягчить это влияние, можно принять следующие меры:
Шарды без реплик станут недоступными, когда узлы, хранящие их, будет выведен из онлайн‑режима, вызывая перебои в работе сервисов. Рекомендуем добавить реплики для всех важных индексов перед внесением описанного в этой теме изменения.
Изменение типа хранилища узла в кластере приведет к перестройке Kibana и Cerebro. В течение этого периода Kibana и Cerebro недоступны. Во время изменения спецификаций узла, если Kibana и Cerebro становятся недоступными из‑за вывода из онлайн узла, на котором они работают, обновите веб‑страницу или попробуйте войти снова, и система переназначит Kibana и Cerebro на доступный узел.
После начала задача изменения не может быть остановлена, пока она не завершится успешно или не завершится с ошибкой. Сбой задачи изменения затрагивает только один узел и не прерывает сервисы, если существуют реплики данных, однако неисправный узел всё равно необходимо быстро восстановить.
Продолжительность изменения (мин) = 10 (мин) × Общее количество узлов для изменения + Длительность восстановления данных (мин)
где,
Продолжительность восстановления данных (мин) = Общий размер данных (MB)/[Общее количество vCPU узлов данных x 32 (MB/s) x 60 (s)]
где,
Продолжительность изменения (мин) = 15 (мин) x Общее количество узлов, подлежащих изменению + Продолжительность миграции данных (мин)
где,
Продолжительность миграции данных (min) = Общий размер данных (MB)/[Общее количество vCPU данных узлов x 32 (MB/s) x 60 (s)]
где,
Параметр | Описание |
|---|---|
Действие | Выбрать Изменить характеристики. |
Ресурсы | Показывает изменение ресурсов для этой операции. |
Узлы | Настройте изменения, которые вы хотите внести.
Спецификации узла и тип хранилища не могут быть изменены одновременно. |
Элемент | Описание |
|---|---|
Проверить копии индекса | По умолчанию CSS проверяет индексы, для которых не созданы реплики. Вы можете пропустить этот шаг, но отсутствие реплик индекса может повлиять на доступность сервиса во время изменения спецификаций узла.
|
Проверка состояния кластера | Во время изменения характеристик узла статус кластера проверяется по умолчанию, чтобы повысить вероятность успеха и обеспечить безопасность данных. Узлы изменяются по одному. Для каждого узла система изменяет его характеристики, перезапускает его и проверяет, что все его процессы успешно запущены, прежде чем перейти к следующему узлу. В экстренных случаях (например, когда кластер перегружен и сервисы неисправны, что может помешать выполнению запроса на изменение характеристик), вы можете пропустить проверку статуса кластера, чтобы освободить больше ресурсов для восстановления кластера. Однако это может привести к неисправности кластера и прерыванию сервисов. Будьте осторожны. |
Проверить нагрузку кластера | Во время изменения типа хранилища узла миграция данных между узлами и остановка и перезапуск узлов потребляют ресурсы кластера, вызывая рост нагрузки кластера. Проверка нагрузки кластера может выявить возможные риски перегрузки кластера и снизить вероятность того, что состояние перегрузки приведёт к сбою изменения типа хранилища узла. Элементы проверки нагрузки кластера перечислены ниже:
|
Если запрос на изменение не может быть отправлен и отображается сообщение, указывающее, что кластер необходимо обновить, это означает, что текущая версия кластера не поддерживает изменение типа хранилища узла. Обновите кластер до последней версии образа и попробуйте снова. Для подробного руководства по обновлению см Обновление версии кластера Elasticsearch.