Доступно в редакциях: CE, BE, SE, SE+, EE
В модуле реализовано 15 алертов.
Модуль включен по умолчанию в наборах модулей: Default
, Managed
.
Модуль выключен по умолчанию в наборе модулей Minimal
.
Конверсии
При необходимости преобразования данных из одной версии схемы параметров модуля в другую, выполните следующие действия:
- Из версии 1 в 2:
Описание конверсии отсутствует.
- Из версии 2 в 3:
Описание конверсии отсутствует.
Настройки
Чтобы настроить модуль, используйте ресурс ModuleConfig
с именем upmeter
(подробнее о настройке Deckhouse…).
Пример ресурса ModuleConfig/upmeter
для настройки модуля:
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: upmeter
spec:
version: 3
enabled: true
settings: # <-- Параметры модуля из раздела "Параметры" ниже.
Параметры
Версия схемы: 3
- массив строк
Массив адресов электронной почты, пользователям которых разрешен доступ к веб-интерфейсу.
Используется, если включен модуль user-authn или задан параметр
externalAuthentication
. - массив строк
Группы доступа к просмотру интерфейса приложения.
- Используется, если включен модуль
user-authn
или параметрexternalAuthentication
. - Внимание! При использовании совместно с модулем
user-authn
необходимо также добавить разрешенные группы в соответствующее поле в настройках DexProvider.
- Используется, если включен модуль
- объект
Параметры для подключения внешней аутентификации (используется механизм NGINX Ingress external-auth, работающий на основе модуля NGINX auth_request.
Внешняя аутентификация включается автоматически, если включен модуль user-authn.
- массив строк
Массив адресов электронной почты, пользователям которых разрешен доступ к веб-интерфейсу.
Используется, если включен модуль user-authn или задан параметр
externalAuthentication
. - массив строк
Группы доступа к просмотру интерфейса приложения.
- Используется, если включен модуль
user-authn
или параметрexternalAuthentication
. - Внимание! При использовании совместно с модулем
user-authn
необходимо также добавить разрешенные группы в соответствующее поле в настройках DexProvider.
- Используется, если включен модуль
- объект
Параметры для подключения внешней аутентификации (используется механизм NGINX Ingress external-auth, работающий на основе модуля NGINX auth_request.
Внешняя аутентификация включается автоматически, если включен модуль user-authn.
- массив строк
Массив строк из названий групп или определенных проб из группы. Названия можно подсмотреть в веб-интерфейсе.
Пример:
disabledProbes: - "synthetic/api" # Отключить отдельную пробу. - "synthetic/" # Отключить группу проб. - control-plane # Или без /.
По умолчанию:
[]
- объект
Тип сертификата, используемого для веб-приложений webui и status.
При использовании этого параметра полностью переопределяются глобальные настройки
global.modules.https
.Примеры:
https: mode: CustomCertificate customCertificate: secretName: foobar
https: mode: CertManager certManager: clusterIssuerName: letsencrypt
- строка
Имя Secret’а в пространстве имен
d8-system
, который будет использоваться для webui/status.Secret должен быть в формате TLS.
По умолчанию:
"false"
- строка
Режим работы HTTPS:
Disabled
— webui/status будут работать только по HTTP;CertManager
— webui/status будут работать по HTTPS и заказывать сертификат с помощью ClusterIssuer, заданного в параметреcertManager.clusterIssuerName
;CustomCertificate
— webui/status будут работать по HTTPS, используя сертификат из namespaced8-system
;OnlyInURI
— webui/status будет работать по HTTP (подразумевая, что перед ними стоит внешний балансировщик, который терминирует HTTPS) и все ссылки в user-authn будут генерироваться с HTTPS-схемой. Балансировщик должен обеспечивать перенаправление с HTTP на HTTPS.
По умолчанию:
"Disabled"
Допустимые значения:
Disabled
,CertManager
,CustomCertificate
,OnlyInURI
- объект
Структура, аналогичная
spec.nodeSelector
пода Kubernetes.Если значение не указано или указано
false
, будет использоваться автоматика.Пример:
nodeSelector: disktype: ssd
- массив строк
Группы доступа к просмотру интерфейса приложения.
- Используется, если включен модуль
user-authn
или параметрexternalAuthentication
. - Внимание! При использовании совместно с модулем
user-authn
необходимо также добавить разрешенные группы в соответствующее поле в настройках DexProvider.
- Используется, если включен модуль
- объект
Параметры для подключения внешней аутентификации. Используется механизм NGINX Ingress
external-auth
, работающей на основе модуля NGINXauth_request
.
- объект
Тип сертификата, используемого для smoke-mini.
При использовании этого параметра полностью переопределяются глобальные настройки
global.modules.https
.Примеры:
https: mode: CustomCertificate customCertificate: secretName: foobar
https: mode: CertManager certManager: clusterIssuerName: letsencrypt
- строка
Имя Secret’а в namespace
d8-system
, который будет использоваться для smoke-mini.Secret должен быть в формате TLS.
По умолчанию:
"false"
- строка
Режим работы HTTPS:
Disabled
— smoke-mini будут работать только по HTTP;CertManager
— smoke-mini будут работать по HTTPS и заказывать сертификат с помощью ClusterIssuer, заданного в параметреcertManager.clusterIssuerName
.CustomCertificate
— smoke-mini будут работать по HTTPS, используя сертификат из namespaced8-system
.OnlyInURI
— smoke-mini будет работать по HTTP (подразумевая, что перед ними стоит внешний балансировщик, который терминирует HTTPS) и все ссылки в user-authn будут генерироваться с HTTPS-схемой. Балансировщик должен обеспечивать перенаправление с HTTP на HTTPS.
По умолчанию:
"Disabled"
Допустимые значения:
Disabled
,CertManager
,CustomCertificate
,OnlyInURI
StorageClass для использования при проверке работоспособности дисков.
Если значение не указано, то будет использоваться StorageClass, согласно настройке глобального параметра storageClass.
Настройка глобального параметра
storageClass
учитывается только при включении модуля. Изменение глобального параметраstorageClass
при включенном модуле не приведет к перезаказу диска.Если указать
false
, будет принудительно использоваться emptyDir.Внимание. Если указать значение, отличное от текущего (используемого в существующей PVC), диск будет перезаказан, и все данные удалятся.
Внимание. При переносе Upmeter с локальным хранилищем на другие узлы, поды зависнут в состоянии Pending. В этом случае будет необходимо сохранить базу данных Upmeter, удалить старые PVC и перезапустить под вручную. Под локальным хранилищем подразумевается StorageClass, связанный не с сетевым хранилищем, а с локальным томом на узле (например, StorageClass, создаваемый модулем local-path-provisioner).
По умолчанию:
false
Примеры:
storageClass: false
storageClass: default
Имя StorageClass, который будет использоваться по умолчанию в кластере.
Если значение не указано, используется StorageClass существующей PVC. Если PVC нет, будет использоваться StorageClass, согласно настройке глобального параметра storageClass.
Настройка глобального параметра
storageClass
учитывается только при включении модуля. Изменение глобального параметраstorageClass
при включенном модуле не приведет к перезаказу диска.Если указать
false
, будет принудительно использоватьсяemptyDir
.Внимание. Если указать значение, отличное от текущего (используемого в существующей PVC), диск будет перезаказан, и все данные удалятся.
Внимание. При переносе Upmeter с локальным хранилищем на другие узлы, поды зависнут в состоянии Pending. В этом случае будет необходимо сохранить базу данных Upmeter, удалить старые PVC и перезапустить под вручную. Под локальным хранилищем подразумевается StorageClass, связанный не с сетевым хранилищем, а с локальным томом на узле (например, StorageClass, создаваемый модулем local-path-provisioner).
Примеры:
storageClass: false
storageClass: default
- массив объектов
Структура, аналогичная
spec.tolerations
пода Kubernetes.Если значение не указано или указано
false
, будет использоваться автоматика.Пример:
tolerations: - key: key1 operator: Equal value: value1 effect: NoSchedule
Аутентификация
По умолчанию используется модуль user-authn. Также можно настроить аутентификацию через externalAuthentication
(см. ниже).
Если эти варианты отключены, то модуль включит basic auth со сгенерированным паролем.
Посмотреть сгенерированный пароль можно командой:
kubectl -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module values upmeter -o json | jq '.upmeter.internal.auth.webui.password'
Чтобы сгенерировать новый пароль, нужно удалить Secret:
kubectl -n d8-upmeter delete secret/basic-auth-webui
Посмотреть сгенерированный пароль для страницы статуса можно командой:
kubectl -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module values upmeter -o json | jq '.upmeter.internal.auth.status.password'
Чтобы сгенерировать новый пароль для страницы статуса, нужно удалить секрет:
kubectl -n d8-upmeter delete secret/basic-auth-status
Внимание! Параметры
auth.status.password
иauth.webui.password
больше не поддерживаются.