Мониторинг и оркестрация контейнеров Docker Openshift PaaS/Kubernetes

Контроллер развертывания и репликации Kubernetes дает возможность самовосстановления, гарантируя наличие минимального количества реплик.

Также функции автоматического масштабирования позволяют увеличивать количество реплик с учетом определенного порога процессора.

Существуют ли инструменты, обеспечивающие гибкость функций автоматического восстановления и автоматического масштабирования?

Пример: автоматическая настройка количества реплик в часы пик или дни. Когда модуль умирает из-за внешних проблем, запретите системе повторно создавать контейнер и дождитесь выполнения условия, например проверки ping или telnet.


person javapadawan    schedule 09.09.2016    source источник


Ответы (2)


Вы можете заблокировать запуск модуля, ожидая внешних служб в сценарии точки входа или контейнере инициализации. Это самое близкое из того, что существует сегодня, к ожиданию внешних условий.

Сегодня нет автомасштабирования на основе времени, хотя можно было бы легко запрограммировать его сбой по расписанию.

person Clayton    schedule 11.09.2016

В Openshift вы можете легко масштабировать свое приложение, запустив эту команду в задании cron.

Команда масштабирования

 oc scale dc app --replicas=5

И, конечно же, уменьшите масштаб, изменив количество реплик.

Автомасштабирование

Вот что Openshift для разработчиков пишет об автомасштабировании. OpenShift также поддерживает автоматическое масштабирование, определяя верхний и нижний пороги использования ЦП модулем.

Если верхний порог постоянно превышается работающими подами для вашего приложения, будет запущен новый экземпляр вашего приложения. Когда загрузка ЦП снова падает ниже нижнего порога, поскольку ваше приложение больше не работает так активно, количество экземпляров снова будет уменьшено.

Я думаю, что Kubernetes теперь выпустил версию 1.3, которая поддерживает автомасштабирование, но все еще интегрирована в Openshift.

Проверка работоспособности

Что касается проверки работоспособности, у Openshift есть:

  • Проверки готовности Проверяет состояние теста, который вы настроили, прежде чем маршрутизатор начнет отправлять на него трафик.

  • проверка работоспособности: проверка работоспособности запускается периодически после того, как трафик был переключен на экземпляр вашего приложения, чтобы убедиться, что он по-прежнему работает правильно. Если проверка жизнеспособности не удалась, OpenShift автоматически закроет этот экземпляр вашего приложения и заменит его новым.

Вы можете выполнять такие тесты (проверка HTTP, проверка выполнения контейнера и проверка сокета TCP).

Таким образом, я думаю, что вы можете создать некоторую проверку готовности и проверку жизнеспособности, чтобы убедиться, что статус вашего модуля работает правильно, если нет, будет запущено новое развертывание, пока состояние готовности не станет ОК.

person Ferrandinand    schedule 11.09.2016