Мониторинг системы
Для мониторинга технических параметров Системы используется инструмент Graphana, содержащий большое количество различных дашбордов. Для удобства Пользователя наиболее нужные показатели собраны по адресу указать ссылку, рисунок ниже:
Рассмотрим данный дашборд. В левой верхней части можно выбрать node, то есть узел кластера Kubernetes, для которого отображается мониторинг ресурсов. Следует отметить, что в кластере приложение (контейнер с Jupyter или контейнер с продуктивизированной моделью) может быть запущено только в том случае, если в кластере существует узел (node), имеющая достаточно ресурсов. Например, если Пользователь хочет запустить JupyterLab и выбирает 128Гб RAM, а в кластере отсутствует узел, на котором свободно 128гб RAM, то такой контейнер с Jupyter запуститься не сможет. Следует понимать, что если в описанном примере, когда Пользователь запрашивает 128Гб, а в кластере, например, есть два узла (node), на каждом из которых свободно 100Гб, то и в этом случае контейнер не сможет быть запущен, так как по-прежнему в кластере отсутствует узел с запрашиваемым набором ресурсов.
Ниже окна выбора node располагаются дашборды для мониторинга памяти RAM и CPU. Available memory показывает число свободных гигабайт оперативной памяти, Memory Capacity указывает объем оперативной памяти для данного узла, в полукруге показан процент зарезервированной (занятой) в данный момент памяти. Дашборд с CPU имеет аналогичные индикаторы, но показывает количество свободных и общих вычислительных ядер.
Еще ниже расположены графики потребляемых ресурсов как функция времени. Временной фрейм можно менять в меню, расположенном правом верхнем углу страницы.
Далее расположен дашборд PVC Stats, содержащий информацию об использовании файловой системы персональных персистивных хранилищ пользователей Системы (не путайте эту память с оперативной памятью данного узла!). В первом столбце таблицы указан ID (в формате claim-00012345) Пользователя, а в столбцах Used, Capacity, Free и %Used представлена информация об объеме используемой, общей, свободной и проценту используемой памяти соответственно. Следует отметить, что информация по файловой системе Пользователя доступна только, если он имеет открытый в данный момент JupyterLab.
Для расширенного мониторинга Пользователь может использовать и другие дашборды, одним из которых является просмотр запущенных pod’ов в данной среде (namespace), доступный по адресу:
Указать ссылку (рисунок ниже).
В первую очередь Пользователь должен выбрать namespace (dev или prod, цифра 1 на рисунке). Теперь на дашборде будет отображаться информация по pod’ам, имеющимся в данном неймспейсе. На цифре 2 отображается график используемых CPU как функция времени (масштаб таймфрейма можно выбрать в меню, расположенном справа вверху страницы), причем слева можно видеть названия pod’ов, которые потребляют ресурс. Названия вида jupyter-цифры_табельного_номера означают ресурсы, который использует Пользователь при работе с Jupyter. Также там будут отображаться названия моделей, которые в данный момент запущены в Airflow (для соответствующего контура). Именно запущены и работают в текущий момент, если модель стоит на регламенте, но в данный момент не запущена, то её не будет в данном списке. Стоит отметить, что в силу особенностей Kubernetes, имя модели может быть, во-первых, обрезано, а, во-вторых, содержать хэш из букв и цифр. В таблице ниже (цифра 3) дублируется информация с графика, но в формате таблице, где удобно смотреть реально используемые (“Usage”) и запрошенные (“Requested”) ресурсы. Также дашборд отображает информацию по RAM (цифры 4 и 5 на рисунке), логика отображения здесь полностью аналогичная информации о CPU, рассмотренная выше.