Нагрузки
На этой странице
В подразделе Нагрузки выбранного неймспейса доступны вкладки:
Deployments
Деплойменты (Deployments) - это механизм для управления и масштабирования подов (pods), которые составляют приложение в Kubernetes. Это означает, что Deployments предоставляют возможность создавать, обновлять и масштабировать приложения Kubernetes. Deployments помогают контролировать развертывание новой версии приложения и управлять его масштабированием. Они также обеспечивают управление жизненным циклом приложения, включая автоматическое восстановление при сбоях и автоматическое масштабирование в зависимости от запросов.
На вкладке Deployments находится перечень созданных деплойментов в контексте неймспейса.
Создание Deployment
Чтобы добавить новый Deployment, нажмите на кнопку + Добавить Deployment.
В открывшемся окне заполните описание деплоймента.
В блоке “Управление развертыванием”:
- установите количество реплик. По умолчанию стоит 1 реплика;
- установите тип деплоймента. По умолчанию выбран RollingUpdate;
- установите, приостановлен ли деплоймент. По умолчанию значение не задано.
Для деплоймента с типом RollingUpdate установите максимальное значение недоступных и дополнительных реплик. По умолчанию стоит 25%.
В блоке Шаблон пода (Pod template) доступны настройки:
- использовать ли hostPID? По умолчанию значение не выбрано.
- использовать ли сеть хоста? По умолчанию значение не выбрано.
- выберите секреты образов (Image Pull Secrets) из выпадающего списка. В списке представлены секреты, созданные на вкладке Хранилище раздела Неймспейс.
- назначьте приоритет. Приоритет отображает важность пода относительно других подов в кластере. Если поду не хватает ресурсов для запуска, планировщик отдает приоритет подам с более высоким значением приоритета.
- задайте имя хоста контейнера.
- при необходимости создайте Tolerations. Для создания нажмите на + и заполните поля в появившемся окне.
- задайте узлы. Для этого нажмите на + в селекторе узлов.
- выберите ServiceAccountName из выпадающего списка.
- определите, нужно ли подключить токен учетной записи. По умолчанию значение не задано.
В блоках Контейнеры инициализации (Init контейнеры) и Контейнеры доступны настройки:
- назначьте имя контейнера;
- введите значение образа;
- назначьте Image Pull Policy. По умолчанию выбрано ifNotPresent;
- при необходимости добавьте команды и аргументы;
- пропишите порты. Чтобы добавить новый порт нажмите +.
- задайте вычислительные ресурсы. Для этого установите значения реквестов и лимитов CPU и Memory.
- задайте Volume mounts. Для добавление нового Volume mount нажмите +.
- задайте переменные окружения. Для добавления новой переменной нажмите +.
После завершения настроек нажмите Добавить.
Просмотр созданного Deployment
Страница просмотра деплоймента представляет собой страницу с вкладками. Под заголовком отображаются дата и время создания деплоймента, его статус и conditions.
На странице доступны вкладки:
- Deployment
- Шаблон пода (включает в себя Контейнеры в т.ч. Init Контейнеры, Volumes)
- HPA
- ReplicaSets
- Pods
- Лейблы и аннотации
- События (имеет индикацию количества)
Вкладка “Deployment”
Вкладка “Deployment” содержит сведения о деплойменте. В блоке “Спецификация” доступны сведения:
- Название
- Тип развертывания
- Приостановлено/Не приостановлено
Блок масштабирования деплоймента позволяет изменять количество реплик.
Блок “Метрики мониторинга” отображает данные CPU Usage и Memory Usage всех объектов деплоймента суммарно за прошедший час.
Доступен “Селектор подов”.
Вкладка Шаблон пода содержит сведения о шаблоне пода, контейнерах, Init контейнерах и volumes деплоймента.
Вкладка “HPA”
На вкладке HPA есть возможность управлять автоматическим масштабированием подов деплоймента. Укажите целевое среднее количество или среднее относительное значение за последние 5 минут по ресурсам:
- CPU;
- Memory.
При превышении значения, количество подов будет увеличено в пределах заданного диапазона количества реплик. При снижении нагрузки, уменьшено.Объект HPA создается с автоматически генерированным названием. Управление объектом доступно только с вкладки созданного деплоймента. Есть возможность просмотреть/отредактировать манифест объекта, а также удалить ранее созданный HPA.
Вкладки ReplicaSets, Pods содержат сведения о списке объектов, входящих в деплоймент.
Вкладка “События” содержит events деплоймента и его объектов.
Вкладка “Безопасность”
Вкладка “Безопасность” содержит:
- результаты сканирования образов на уязвимости по объектам, содержащимся в этом деплойменте (Отображается только если в кластере установлен Модуль сканирования образов контейнеров);
- результаты анализа на соответствие политикам безопасности объектов, содержащихся в этом деплойменте (Отображается только если в кластере установлен Модуль анализа конфигураций приложений).
Вкладка “Манифест”
На вкладке Манифест страницы просмотра и редактирования ранее созданного Deployment вы можете внести изменения в YAML манифест. После изменения манифеста выполните проверку. Результат проверки будет доступен в правой части экрана. Раскройте блок результата проверки, чтобы увидеть полный манифест. Если валидация формата манифеста не пройдена, проверка манифеста не будет доступна.
Сохраните изменения, внесенные в манифест. Несохраненные данные не будут применены.
ReplicaSets
ReplicaSet - это компонент в Kubernetes, который обеспечивает высокую доступность приложения, создавая и управляя множеством идентичных подов в кластере Kubernetes. В случае сбоя в работе одного из подов, ReplicaSet автоматически восстанавливает его и поддерживает необходимое количество здоровых копий приложения в рабочем состоянии. Вы можете использовать ReplicaSet для распределения нагрузки в приложении, обеспечивая высокую доступность и отказоустойчивость, что повышает надежность инфраструктуры и уменьшает время простоя приложения.
Страница ReplicaSets содержит информация о наборе реплик (копий) подов, запущенных в кластере Kubernetes в контексте неймспейса. Т.к. репликасеты являются частью деплоймента, параметры репликасеты недоступны для редактирования на странице репликасеты. Чтобы отредактировать параметры перейдите на страницу Deployments.
Просмотр ReplicaSet
Страница просмотра репликасета представляет собой страницу с вкладками. Под названием Replicaset отображаются дата и время создания, статус, conditions, сведения о родительском объекте.
На странице доступны вкладки:
- ReplicaSet
- Pods (имеет индикацию количества)
- Шаблон пода, Контейнеры (имеет индикацию количества, содержит данные по контейнерам и init контейнерам), Volumes (имеет индикацию количества)
- Безопасность
- Лейблы и аннотации
- События (имеет индикацию количества)
Вкладка “ReplicaSet”
Вкладка “ReplicaSet” содержит сведения:
- Количество реплик
- minReadySeconds
Блок “Селектор подов” содержит совпадающие выражения и совпадающие лейблы подов.
Блок “Метрики мониторинга” отображает данные CPU Usage и Memory Usage всех объектов репликасета суммарно за прошедший час.
Вкладка “Шаблон пода” включает Контейнеры, Init контейнеры и Volumes.
Вкладка “События” содержит events репликасета и его объектов.
Вкладка “Безопасность”
Вкладка “Безопасность” содержит:
- результаты сканирования образов на уязвимости по объектам, содержащимся в этом репликасете (Отображается только если в кластере установлен Модуль сканирования образов контейнеров);
- результаты анализа на соответствие политикам безопасности объектов, содержащихся в этом репликасете (Отображается только если в кластере установлен Модуль анализа конфигураций приложений).
Pods
Под - это минимальная вычислительная единица, которая объединяет один или несколько контейнеров в кластере. Каждый под имеет набор ресурсов, включая сеть, хранилище и образ контейнера. Каждый под может иметь свое уникальное имя и лейблы, что позволяет легко настраивать его параметры и конфигурацию. Поды также являются обязательными для создания высокодоступных и масштабируемых приложений в кластере.
Страница Pods содержит информацию о созданных подах.
На странице пода можно просмотреть информацию о поде, посмотреть лог контейнеров пода и открыть окно терминала. Для перехода в терминал в правой верхней части окна нажмите на кнопку вызова терминала. Для запуска терминала в контейнере должен быть shell. Bash не поддерживается.
При необходимости вы можете скачать лог контейнера пода во время его просмотра. Cкачивание происходит в файл с расширением .log, название которого предзаполнено и сопадает с наименованием контейнера. Просмотр полного лога контейнера доступен в консоли/интерфейсе OpenSearch.
Создание Pod
Чтобы создать под, нажмите на кнопку + Добавить Pod. В блоке Спецификация пода (Pod spec) доступны настройки:
- использовать ли hostPID? По умолчанию выбрано “нет”.
- использовать ли сеть хоста? По умолчанию выбрано “нет”.
- выберите секреты образов (Image Pull Secrets) из выпадающего списка. В списке представлены секреты, созданные на вкладке Хранилище раздела Неймспейс.
- задайте имя хоста контейнера
- при необходимости создайте Tolerations. Для создания нажмите на + и заполните поля в появившемся окне.
- задайте узлы. Для этого нажмите на + в селекторе узлов.
- выберите ServiceAccountName из выпадающего списка.
- определите, нужно ли подключить токен учетной записи. По умолчанию значение не задано.
Обратите внимание: если под был создан в Deployment, то отредактировать его можно будет только на странице Deployment.
Просмотр Pod
Страница просмотра пода представляет собой страницу с вкладками. Под заголовком с названием пода расположены дата и время создания пода, статус, conditions, сведения о родительском объекте.
На странице доступны вкладки:
- Pod
- Контейнеры (имеет индикацию количества, содержит данные по контейнерам и Init контейнерам)
- Volumes (имеет индикацию количества)
- Лейблы и аннотации
- События (имеет индикацию количества)
Вкладка Pod содержит сведения о спецификации пода и сведения об узле, на котором расположен под.
Блок Метрики мониторинга отображает данные CPU Usage и Memory Usage пода за прошедший час.
Вкладка События содержит events пода и его объектов.
Вкладка “Безопасность”
Вкладка “Безопасность” содержит:
- результаты сканирования образов на уязвимости по объектам, содержащимся в этом репликасете (Отображается только если в кластере установлен Модуль сканирования образов контейнеров);
- результаты анализа на соответствие политикам безопасности объектов, содержащихся в этом репликасете (Отображается только если в кластере установлен Модуль анализа конфигураций приложений).
Вкладка “Манифест”
Вкладка содержит манифест Pod, в который вы не можете внести изменения, если Pod подчинен любому другому объекту Kubernetes.
В случае, если Pod был создан отдельностоящим вы можете изменить в манифесте только следующие поля:
- spec.containers[*].image
- spec.initContainers[*].image
- spec.activeDeadlineSeconds
- spec.tolerations
- spec.terminationGracePeriodSeconds
Обратите внимание после сохранения изменений манифеста, Pod не будет перезапущен в новой конфигурации. Для перезапуска пода с новой конфигурацией необходимо выполнить команду вручную через консольный интерфейс Kubectl.
Для изменения существующих отдельностоящих подов при необходимости редактирования, рекомендуется удалить Pod в старой конфигурации и создать новый. Используйте ресурсы kubernetes (Deployments, StatefulSets DaemonSets), управляющие перезапуском подов самостоятельно.
StatefulSets
StatefulSet - это объект, который обеспечивает развертывание и управление набором подов, работающих в состоянии, то есть имеющих уникальные идентификаторы и сохраняющих свои данные при перезапуске. StatefulSet также гарантирует уникальность имён и IP-адресов для каждого пода, что облегчает работу с базами данных и другими приложениями, которые зависят от уникальных идентификаторов.
Создание StatefulSet
Для создания StatefulSet нажмите на кнопку + Cоздать StatefulSet. В открывшемся окне в блоке Описание задайте имя StatefulSet. При необходимости определите лейблы и определите совпадающие лейблы подов в блоке Селектор подов.
Задайте спецификацию StatefulSet:
- количество реплик;
- количество партиций;
- минимальное время готовности в секундах (minReadySeconds);
- revisionHistoryLimit - показатель, который ограничивает количество старых хранящихся реплик (по умолчанию выбрано 10);
- политика управления подами (podManagementPolicy):
- OrderedReady (выбрано по умолчанию)
- Parallel
- serviceName;
- Политика хранения PersistentVolumeClaim, в том числе:
- whenDeleted:
- Retain (выбрано по умолчанию)
- Delete
- whenScaled:
- Retain (выбрано по умолчанию)
- Delete
Определите шаблоны PersistentVolumeClaim. Для выбора нового шаблона нажмите +.
В открывшемся окне задайте имя шаблона. Определите Access Modes (по умолчанию выбрано ReadWriteOnce). Задайте Storage Class Name, размер и нажмите Сохранить.
Access Modes (режимы доступа): В Kubernetes есть 4 режима доступа к PersistentVolumeClaim:
- ReadWriteOnce (RWO): разрешает чтение и запись, но только и одному узлу (подключение к одному узлу).
- ReadOnlyMany (ROX): разрешает только чтение, но может быть использовано множеством узлов (подключение к нескольким узлам).
- ReadWriteMany (RWX): разрешает чтение и запись, а также может быть использовано множеством узлов одновременно (подключение к нескольким узлам).
- ReadWriteOncePod (RWOP): разрешает чтение и запись, но только к одному поду узла.
Примеры Storage Class Name:
- “standard” — обычный класс хранилища с общими параметрами.
- “fast” — класс хранилища с более быстрыми параметрами, например, SSD.
- “slow” — класс хранилища с более медленными параметрами, например, HDD.
Размер — это объем хранилища, который запрашивается для PVC. Например, 10Gi.
Определите init контейнеры или контейнеры, шаблон пода. При необходимости назначьте Volumes.
Редактирование StatefulSet
Для редактирования доступны настройки:
- Спецификация StatefulSet, в том числе:
- количество реплик;
- количество партиций;
- минимальное время готовности в секундах (minReadySeconds). Минимальное время в секундах, в течение которого созданный POD должен стать доступным, без сбоя любого из его контейнеров. По умолчанию 0 (под будет считаться доступным, как только он будет готов);
- Политика хранения PersistentVolumeClaim, в том числе:
- whenDeleted
- whenScaled
- Шаблон пода;
- Контейнеры инициализации (Init контейнеры);
- Контейнеры;
- Volumes;
Для удаления нажмите в строке с названием Statefulset.
Также редактировать StatefulSet вы можете с помощью YAML манифеста. Перейдите на вкладку Манифест. После изменения манифеста выполните проверку. Результат проверки будет доступен в правой части экрана. Раскройте блок результата проверки, чтобы увидеть полный манифест. Если валидация формата манифеста StatefulSet не пройдена, выполнить проверку манифеста не будет возможным.
Сохраните изменения, внесенные в манифест. Несохраненные данные не будут применены.
Просмотр StatefulSet
Страница просмотра StatefulSet представляет собой страницу с вкладками. Под заголовком отображаются дата и время создания, статус, conditions.
На странице доступны вкладки:
- StatefulSet
- Шаблон пода (в т.ч. Контейнеры, Init Контейнеры, Volumes)
- Шаблоны PVC (имеет индикацию количества)
- Лейблы и аннотации
- События (имеет индикацию количества)
Вкладка “StatefulSet” содержит сведения о StatefulSet. В блоке “Спецификация StatefulSet” доступны сведения:
- Partition
- minReadySeconds
- revisionHistoryLimit
- podManagementPolicy
- serviceName
Политика хранения PersistentVolumeClaim:
- whenDeleted
- whenScaled
Блок для скейлинга StatefulSet содержит параметр количества реплик.
Блок Метрики мониторинга отображает данные CPU Usage и Memory Usage всех объектов стейтфулсета суммарно за прошедший час.
Блок Селектор подов содержит сведения, заполненные на этапе создания StatefulSet.
Вкладка “События” содержит events StatefulSet и его объектов.
Вкладка “Безопасность”
Вкладка “Безопасность” содержит:
- результаты сканирования образов на уязвимости по объектам, содержащимся в этом стейтфулсете (Отображается только если в кластере установлен Модуль сканирования образов контейнеров);
- результаты анализа на соответствие политикам безопасности объектов, содержащихся в этом стейтфулсете (Отображается только если в кластере установлен Модуль анализа конфигураций приложений).
DaemonSets
DaemonSet - это объект, который управляет набором подов на каждом узле кластера. В отличие от ReplicaSet или Deployment он не управляет количеством реплик, а обеспечивает наличие конкретного контейнера на каждом узле. Это позволяет запускать службы на каждом узле, на котором развернуто приложение Kubernetes, и обеспечивать доступность служб для других приложений в кластере. В частности, DaemonSet может использоваться для управления запуском Daemon, таких как мониторинг или логирование, на каждом узле кластера.
Создание DaemonSet
Для создания DaemonSet нажмите на кнопку + Создать DaemonSet.
В открывшемся окне в блоке Описание задайте имя DaemonSet.
При необходимости определите лейблы и определите совпадающие лейблы подов в блоке Селектор подов.
Задайте спецификацию DaemonSet:
- минимальное время готовности в секундах (minReadySeconds). Минимальное время в секундах, в течение которого созданный POD должен стать доступным, без сбоя любого из его контейнеров. По умолчанию 0 (под будет считаться доступным, как только он будет готов);
- revisionHistoryLimit - показатель, который ограничивает количество старых хранящихся репликасетов (по умолчанию выбрано 10);
- максимальное количество недоступных;
- максимальное количество дополнительных;
Определите init контейнеры или контейнеры, шаблон пода. При необходимости назначьте Volumes.
Редактирование DaemonSet
Для редактирования доступны настройки:
- Спецификация DaemonSet, в том числе:
- revisionHistoryLimit;
- минимальное время готовности в секундах (minReadySeconds);
- максимальное значение недоступных и дополнительных реплик.
- Шаблон пода;
- Контейнеры инициализации (Init контейнеры);
- Контейнеры;
- Volumes;
Для удаления нажмите в строке с названием Daemonset.
Также редактировать DaemonSet вы можете с помощью YAML манифеста. Перейдите на вкладку Манифест. После изменения манифеста выполните проверку. Результат проверки будет доступен в правой части экрана. Раскройте блок результата проверки, чтобы увидеть полный манифест. Если валидация формата манифеста DaemonSet не пройдена, выполнить проверку манифеста не будет возможным.
Сохраните изменения, внесенные в манифест. Несохраненные данные не будут применены.
Просмотр DaemonSet
Страница просмотра представляет собой страницу с вкладками. Под заголовком отображаются дата и время создания, статус, conditions.
На странице доступны вкладки:
- DaemonSet
- Шаблон пода (в т.ч. Контейнеры, Init Контейнеры, Volumes)
- Лейблы и аннотации
- События (имеет индикацию количества)
Вкладка DaemonSet содержит сведения о DaemonSet. В блоке Спецификация DaemonSet доступны сведения:
- minReadySeconds
- revisionHistoryLimit
- Максимальное недоступных (подов)
- Максимальное дополнительных (подов)
Блок Метрики мониторинга отображает данные CPU Usage и Memory Usage всех объектов демонсета суммарно за прошедший час.
Блок Селектор подов содержит совпадающие лейблы подов.
Вкладка События содержит events DaemonSet и его объектов.
Вкладка “Безопасность”
Вкладка “Безопасность” содержит:
- результаты сканирования образов на уязвимости по объектам, содержащимся в этом демонсете (Отображается только если в кластере установлен Модуль сканирования образов контейнеров);
- результаты анализа на соответствие политикам безопасности объектов, содержащихся в этом демонсете (Отображается только если в кластере установлен Модуль анализа конфигураций приложений).
CronJobs
Cronjob - это объект, который позволяет запускать периодические задачи внутри кластера Kubernetes. Как правило, cronjob выполняется в формате cron-расписания, где задается периодичность выполнения задачи (например, каждый день в 5 утра) и команда, которую необходимо выполнить.
На вкладке CronJobs доступно создание, удаление и просмотр периодических задач.
Создание CronJob
Для создания периодической задачи (CronJob) нажмите на конпку + Добавить CronJob.
Заполните:
- Описание;
- Спецификацию CronJob;
- Шаблон задачи (Template Job);
- Сведения о контейнере.
Нажмите кнопку Сохранить.
Для удаления нажмите в строке с названием задачи. При удалении есть выбор:
- Удалить полностью
- Удалить с пересозданием
При выборе Удалить с пересозданием CronJob будет удалена, на экран будет выведено окно создания CronJob с предзаполненными данными из удаленной CronJob.
Просмотр CronJob
На странице доступны вкладки:
- CronJob
- Pods (имеет индикацию количества)
- Jobs (имеет индикацию количества)
- Шаблон Job (включает в себя шаблон пода)
- Лейблы и аннотации
- События (имеет индикацию количества)
- Безопасность
Вкладка “CronJob”
Вкладка “CronJob” содержит сведения о CronJob. В блоке “Спецификация CronJob” доступны сведения:
- Расписание*
- concurrencyPolicy
- startingDeadlineSeconds
- successfulJobsHistoryLimit
- failedJobsHistoryLimit
- Кнопка переключатель “Приостановлено”/“Не приостановлено”
Блок Селектор подов содержит совпадающие лейблы подов.
Блок Метрики мониторинга отображает данные CPU Usage и Memory Usage CronJob за прошедший час.
Вкладка “События” содержит events CronJob и его объектов.
Вкладка “Безопасность”
Вкладка “Безопасность” содержит:
- результаты сканирования образов на уязвимости по объектам, содержащимся в этом объекте CronJob (Отображается только если в кластере установлен Модуль сканирования образов контейнеров);
- результаты анализа на соответствие политикам безопасности объектов, содержащихся в этом объекте CronJob (Отображается только если в кластере установлен Модуль анализа конфигураций приложений).
Вкладка Манифест содержит манифест CronJob, который вы можете посмотреть и скопировать.
Jobs
Job - специальный объект, который используется для управления выполнением параллельных задач или задач, которые должны выполняться только один раз. Job позволяет запускать и контролировать задачи, а также осуществлять их повторное выполнение в случае ошибок или сбоев.
На вкладке Jobs доступно создание, удаление и просмотр задач.
Создание Job
Для создания разовой задачи (Job) нажмите на конпку + Добавить Job. Заполните:
- Описание;
- Шаблон задачи (Template Job);
- Сведения о контейнере
Нажмите кнопку Сохранить.
Для удаления нажмите в строке с названием задачи.
Просмотр Job
Страница просмотра Job представляет собой страницу с вкладками. Под названием Job отображаются дата и время создания Job, статус, conditions, lastScheduleTime lastSuccessfulTime.
На странице доступны вкладки:
- Job
- Pods (имеет индикацию количества)
- Шаблон пода
- Лейблы и аннотации
- События (имеет индикацию количества)
- Безопасность
Вкладка Job содержит сведения о Job.
В блоке Спецификация Job доступны сведения:
- completions
- completionMode
- ttlSecondsAfterFinished
- parallelism
- backoffLimit
- activeDeadlineSeconds
Блок Селектор подов содержит совпадающие лейблы подов.
Блок Метрики мониторинга отображает данные CPU Usage и Memory Usage Job за прошедший час.
Вкладка Шаблон пода включает в себя контейнеры, Init контейнеры, Volumes.
Вкладка События содержит events Job и его объектов.
Вкладка “Безопасность”
Вкладка “Безопасность” содержит:
- результаты сканирования образов на уязвимости по объектам, содержащимся в этом объекте CronJob (Отображается только если в кластере установлен Модуль сканирования образов контейнеров);
- результаты анализа на соответствие политикам безопасности объектов, содержащихся в этом объекте CronJob (Отображается только если в кластере установлен Модуль анализа конфигураций приложений).
Вкладка Манифест содержит манифест Job, который вы можете посмотреть и скопировать.