Автоматическое Масштабирование
Масштабирование — это способность настраивать доступные ресурсы в соответствии с потребностями клиентов. Услуги уровня Scale и Enterprise (со стандартным профилем 1:4) могут масштабироваться горизонтально, вызывая API программным образом или изменяя настройки в интерфейсе, чтобы регулировать системные ресурсы. В качестве альтернативы, эти услуги могут быть автомасштабированы вертикально в зависимости от потребностей приложения.
Автоматическое вертикальное масштабирование is available in the Scale and Enterprise plans. To upgrade, visit the Plans page in the cloud console.
Как работает масштабирование в ClickHouse Cloud
На данный момент ClickHouse Cloud поддерживает вертикальное автомасштабирование и ручное горизонтальное масштабирование для услуг уровня Scale.
Для услуг уровня Enterprise масштабирование работает следующим образом:
- Горизонтальное масштабирование: Ручное горизонтальное масштабирование будет доступно для всех стандартных и пользовательских профилей на уровне enterprise.
- Вертикальное масштабирование:
- Стандартные профили (1:4) будут поддерживать вертикальное автомасштабирование.
- Пользовательские профили не будут поддерживать вертикальное автомасштабирование или ручное вертикальное масштабирование при запуске. Тем не менее, эти услуги могут быть вертикально масштабированы, обратившись в службу поддержки.
Мы вводим новый механизм вертикального масштабирования для вычислительных реплик, который мы называем "Make Before Break" (MBB). Этот подход добавляет одну или несколько реплик нового размера перед удалением старых реплик, предотвращая любые потери мощности во время операций масштабирования. Устранение разрыва между удалением существующих реплик и добавлением новых делает процесс масштабирования более плавным и менее разрушительным. Это особенно полезно в сценариях масштабирования вверх, где высокая загрузка ресурсов требует дополнительной мощности, поскольку преждевременное удаление реплик только усугубит нехватку ресурсов.
Пожалуйста, обратите внимание, что в рамках этого изменения исторические данные системных таблиц будут храниться в течение максимального срока 30 дней в рамках событий масштабирования. Кроме того, любые данные системных таблиц старше 19 декабря 2024 года для услуг на AWS или GCP и старше 14 января 2025 года для услуг на Azure не будут сохранены в рамках миграции на новые организационные уровни.
Вертикальное автомасштабирование
Автоматическое вертикальное масштабирование is available in the Scale and Enterprise plans. To upgrade, visit the Plans page in the cloud console.
Услуги Scale и Enterprise поддерживают автомасштабирование на основе использования CPU и памяти. Мы постоянно отслеживаем историческое использование услуги за по телефону (продолжительностью за последние 30 часов), чтобы принимать решения о масштабировании. Если использование превышает или падает ниже определенных порогов, мы масштабируем услугу соответствующим образом, чтобы соответствовать спросу.
Автоматическое масштабирование на основе CPU включается, когда использование CPU пересекает верхний порог в диапазоне от 50 до 75% (фактический порог зависит от размера кластера). В этот момент выделение CPU для кластера удваивается. Если использование CPU падает ниже половины верхнего порога (например, до 25% при верхнем пороге 50%), выделение CPU уменьшается вдвое.
Автомасштабирование на основе памяти масштабирует кластер до 125% от максимального использования памяти или до 150%, если возникнут ошибки OOM (недостаточно памяти).
Для назначения выбирается больший из рекомендаций по CPU или памяти, и выделенные для услуги CPU и память масштабируются синхронно по частям 1
CPU и 4 GiB
памяти.
Конфигурация вертикального автомасштабирования
Масштабирование услуг ClickHouse Cloud Scale или Enterprise может быть настроено участниками организации с ролью Admin. Чтобы настроить вертикальное автомасштабирование, перейдите на вкладку Настройки для вашей услуги и отрегулируйте минимальное и максимальное значение памяти, а также настройки CPU, как показано ниже.
Услуги с одной репликой не могут быть масштабированы для всех уровней.

Установите Максимальная память для ваших реплик на более высокое значение, чем Минимальная память. Услуга затем будет масштабироваться по мере необходимости в этих пределах. Эти настройки также доступны в процессе первоначального создания услуги. Каждой реплике в вашей услуге будет выделено одно и то же количество памяти и ресурсов CPU.
Вы также можете выбрать установить эти значения одинаковыми, фактически "закрепляя" услугу на конкретной конфигурации. Это немедленно заставит масштабирование соответствовать желаемому размеру, который вы выбрали.
Важно отметить, что это отключит любое автомасштабирование в кластере, и ваша услуга не будет защищена от увеличения использования CPU или памяти за пределами этих настроек.
Для услуг уровня Enterprise стандартные профили 1:4 будут поддерживать вертикальное автомасштабирование. Пользовательские профили не будут поддерживать вертикальное автомасштабирование или ручное вертикальное масштабирование при запуске. Тем не менее, эти услуги могут быть вертикально масштабированы, обратившись в службу поддержки.
Ручное горизонтальное масштабирование
Ручное горизонтальное масштабирование is available in the Scale and Enterprise plans. To upgrade, visit the Plans page in the cloud console.
Вы можете использовать публичные API ClickHouse Cloud для масштабирования вашей услуги, обновив настройки масштабирования для услуги или отрегулировав количество реплик из облачной консоли.
Уровни Scale и Enterprise поддерживают услуги с одной репликой. Однако услуга в этих уровнях, которая начинает с нескольких реплик или масштабируется до нескольких реплик, может быть сокращена до минимума в 2
реплики.
Услуги могут масштабироваться горизонтально до максимума в 20 реплик. Если вам нужно больше реплик, обратитесь в нашу службу поддержки.
Горизонтальное масштабирование через API
Чтобы горизонтально масштабировать кластер, выполните запрос PATCH
через API для регулировки количества реплик. Скриншоты ниже показывают вызов API для масштабирования из 3
реплик в 6
реплик и соответствующий ответ.

Запрос PATCH
для обновления numReplicas

Ответ на запрос PATCH
Если вы выполните новый запрос на масштабирование или несколько запросов подряд, пока один уже выполняется, служба масштабирования проигнорирует промежуточные состояния и достигнет окончательного количества реплик.
Горизонтальное масштабирование через UI
Чтобы масштабировать услугу горизонтально через пользовательский интерфейс, вы можете отрегулировать количество реплик для услуги на странице Настройки.

Настройки масштабирования услуги из консоли ClickHouse Cloud
После того как услуга масштабируется, дашборд метрик в облачной консоли должен показать правильное распределение для услуги. Скриншот ниже показывает кластер, который масштабировался до общей памяти в 96 GiB
, что составляет 6
реплик, каждая из которых имеет выделение памяти в 16 GiB
.

Автоматическое простое состояние
На странице Настройки вы также можете выбрать, разрешать ли автоматическое простое состояние вашей услуги, когда она неактивна, как показано на изображении выше (т.е. когда служба не выполняет никаких запросов, отправленных пользователем). Автоматическое простое состояние снижает стоимость вашей услуги, поскольку вам не начисляются платежи за вычислительные ресурсы, когда услуга приостановлена.
В некоторых особых случаях, например, когда у услуги есть большое количество частей, услуга не будет автоматически переведена в простое состояние.
Услуга может войти в состояние простоя, в котором приостанавливаются обновления обновляемых материализованных представлений, потребление из S3Queue и планирование новых слияний. Существующие операции слияния завершатся перед тем, как услуга перейдет в состояние простоя. Чтобы обеспечить непрерывную работу обновляемых материализованных представлений и потребление S3Queue, отключите функциональность простого состояния.
Используйте автоматическое простое состояние только в том случае, если ваш случай использования может справиться с задержкой перед ответом на запросы, потому что когда услуга приостановлена, соединения с услугой истекают. Автоматическое простое состояние идеально подходит для услуг, которые используются редко и где задержка может быть принята. Не рекомендуется для услуг, которые обеспечивают функции, доступные клиентам, которые используются часто.
Обработка всплесков нагрузки
Если вы ожидаете всплеска нагрузки, вы можете использовать ClickHouse Cloud API для предварительного масштабирования вашей услуги, чтобы справиться с всплеском, и последующего ее уменьшения, когда спрос снизится.
Чтобы понять текущее количество ядер CPU и используемую память для каждой вашей реплики, вы можете выполнить запрос ниже: