Если нагрузки на data plane кластера Elasticsearch изменятся, вы можете масштабировать кластер вертикально, изменив спецификации узла или тип хранилища узла.
Тип изменения | Сценарий | Процесс изменения |
|---|---|---|
Изменение спецификаций узла | Обычно вы увеличиваете спецификации узла, а не уменьшаете их. Общие сценарии включают:
В качестве альтернативы вы также можете уменьшить спецификации узла, но это снизит возможности кластера по обработке данных и объёму хранилища. Будьте осторожны. |
Спецификации узла изменяются по одному узлу за раз. Это делается для обеспечения достаточных ресурсов для поддержания работы сервисов. |
Изменение типа хранилища узла (тип диска) | Измените тип хранилища узла, если ввод-вывод диска стал узким местом производительности, влияющим на скорость запросов и запись. |
Узлы изменяются по одному, чтобы избежать прерываний сервисов. |
Для кластера с оплатой по использованию вы можете увидеть его новую цену при подтверждении изменения спецификаций узла или типа хранилища в console. После завершения изменения кластер будет оплачиваться по новой цене.
Перед изменением спецификаций узла или типа хранилища кластера необходимо оценить потенциальные последствия и изучить рекомендации по эксплуатации. Это позволяет правильно спланировать изменение, минимизируя прерывания сервиса.
Изменение типа хранилища узла не прерывает сервисы. Однако миграция данных, происходящая в этом процессе, потребляет I/O‑производительность, а вывод отдельных узлов из эксплуатации всё же оказывает некоторое влияние на общую производительность кластера.
Чтобы минимизировать это влияние, рекомендуется регулировать скорость миграции данных в соответствии с циклом нагрузки кластера: увеличивать скорость миграции данных в непиковые часы, чтобы сократить продолжительность задачи, и уменьшать её before прибытие пиковых часов, чтобы обеспечить оптимальную производительность кластера. Скорость миграции данных определяется параметром indices.recovery.max_bytes_per_sec. Значение параметра по умолчанию равно количеству vCPU, умноженному на 8 MB. Например, для четырёх vCPU скорость миграции данных составляет 32 MB/s. Вы можете изменить её в соответствии с требованиями сервиса.
Вывод узлов из эксплуатации по одному обычно не прерывает сервисы. Однако запросы, отправленные на недоступные узлы, могут завершиться с ошибкой. Чтобы смягчить это влияние, можно принять следующие меры:
Шарды без реплик станут недоступными, когда узлы, их хранящие, будут отключены, что приведёт к перебоям в работе сервиса. Рекомендуется добавить реплики для всех важных индексов перед внесением изменений, описанных в этой теме.
Изменение типа хранилища узла для кластера приведёт к пересборке Kibana и Cerebro. В течение этого периода Kibana и Cerebro будут временно недоступны. При изменении характеристик узла, если Kibana и Cerebro станут недоступны из‑за отключения узла, на котором они работают, обновите веб‑страницу или попробуйте войти снова — система переназначит Kibana и Cerebro на доступный узел.
После запуска задачу изменения нельзя остановить, пока она не завершится успешно или не завершится с ошибкой. Сбой задачи изменения затрагивает только один узел и не прерывает сервисы, если существуют реплики данных, однако неисправный узел всё равно необходимо быстро восстановить.
Продолжительность изменения (мин) = 10 (мин) × Общее количество узлов для изменения + Длительность восстановления данных (мин)
где,
Продолжительность восстановления данных (мин) = Общий размер данных (МБ)/[Общее количество vCPU узлов данных x 8 (МБ/с) x 60 (с)]
где,
Продолжительность изменения (мин) = 15 (мин) × Общее количество узлов для изменения + Продолжительность миграции данных (мин)
где,
Продолжительность миграции данных (мин) = Общий размер данных (МБ)/[Общее количество vCPU узлов данных x 8 (МБ/с) x 60 (с)]
где,
Parameter | Description |
|---|---|
Action | Выберите Change specifications. |
Resources | Отображает изменение ресурсов для этой операции. |
Nodes | Настройте изменения, которые вы хотите выполнить.
Спецификации узла и тип хранилища нельзя изменять одновременно. |
Item | Description |
|---|---|
Verify index replicas & nodes |
Правила проверки:
|
Проверка статуса кластера | Во время изменения спецификаций узла статус кластера проверяется по умолчанию для повышения вероятности успеха и обеспечения безопасности данных. Узлы изменяются по одному. Для каждого узла система меняет его спецификации, перезапускает его и проверяет, что все его процессы успешно запущены, прежде чем перейти к следующему узлу. В экстренных ситуациях (например, когда кластер перегружен и сервисы работают с ошибками, что может помешать выполнению запроса на изменение спецификаций) вы можете пропустить проверку статуса кластера, чтобы освободить больше ресурсов для восстановления кластера. Однако такой шаг может привести к неисправности кластера и прерыванию сервисов. Действуйте осторожно. |
Проверка нагрузки кластера | Во время изменения типа хранилища узла миграция данных между узлами и их остановка и перезапуск потребляют ресурсы кластера, что приводит к росту нагрузки кластера. Проверка нагрузки кластера позволяет выявить потенциальные риски перегрузки и снизить вероятность того, что условие перегрузки приведёт к сбою изменения типа хранилища узла. Элементы проверки нагрузки кластера следующие:
|
Если запрос на изменение не может быть отправлен и отображается сообщение, указывающее, что кластер необходимо обновить, это означает, что текущая версия кластера не поддерживает изменение типа хранилища узла. Обновите кластер до последней версии образа и повторите попытку. Подробности см. Upgrading the Cluster Version.