Стадия жизненного цикла модуля: Preview
У модуля есть требования для установки
Пример конфигурации
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: loki
spec:
settings:
storageClass: ceph-csi-rbd
diskSizeGigabytes: 10
retentionPeriodHours: 48
enabled: true
version: 1Требования
К версии Deckhouse: 1.73.0 и выше.
Параметры
Версия схемы: 1
-
-
булевыйsettings.allowDeleteLogsВключение / выключение эндпоинтов API для удаления логов.
По умолчанию:
false -
целочисленныйsettings.diskSizeGigabytes
Начальный размер диска для хранения логов или размер PVC при указании параметра storageClass.
Вы должны самостоятельно указать необходимый размер диска для хранения логов за период, указанный в параметре
retentionPeriodHours.Занятый объем автоматически мониторится с помощью модуля extended-monitoring
По умолчанию:
2 -
объектsettings.lokiConfig
Опции Loki, доступные для изменения.
Подробнее о настройки Loki читайте в документации Loki.
Внимание! Ошибочные настройки могут привести к неработоспособности Loki.
По умолчанию:
{}-
целочисленныйsettings.lokiConfig.grpcServerMaxConcurrentStreamsОграничение на количество одновременных потоков для вызовов gRPC.
По умолчанию:
100 -
целочисленныйsettings.lokiConfig.grpcServerMaxRecvMsgSizeОграничение на размер сообщения gRPC, которое может получить сервер, в байтах.
По умолчанию:
104857600 -
целочисленныйsettings.lokiConfig.grpcServerMaxSendMsgSizeОграничение на размер сообщения gRPC, которое может отправить сервер, в байтах.
По умолчанию:
4194304 -
числоsettings.lokiConfig.ingestionBurstSizeMBОбщий лимит всплеска объема принимаемых логов. Например, максимальный размер запроса на запись.
По умолчанию:
6 -
числоsettings.lokiConfig.ingestionRateMBОбщий лимит скорости приема логов в мегабайтах в секунду.
По умолчанию:
4 -
целочисленныйsettings.lokiConfig.maxChunksPerQueryМаксимальное количество файлов, которые могут быть скачаны в рамках одного запроса.
По умолчанию:
2000000 -
целочисленныйsettings.lokiConfig.maxEntriesLimitPerQueryМаксимальное количество записей, возвращаемых для одного запроса.
По умолчанию:
5000 -
целочисленныйsettings.lokiConfig.maxLabelNamesPerSeriesМаксимальное количество лейблов, которые могут быть использованы в одном потоке логов.
По умолчанию:
32 -
целочисленныйsettings.lokiConfig.maxStreamsPerUser
Максимальное общее количество потоков логов для экземпляра Loki.
Каждый поток логов имеет уникальный набор лейблов. Количество потоков равно количеству уникальных наборов лейблов. Например:
{job="my-app", instance="kube-node-1", namespace="production", pod_name="backend-79dbf6fcb7-v5gs7", app="backend"}.Значение 0 отключает ограничение.
По умолчанию:
0 -
settings.lokiConfig.perStreamRateLimitМаксимальная скорость в байтах в секунду для одного потока. Может быть как числом, так и строкой с единицей измерения (KB, MB, GB).
По умолчанию:
3MB -
settings.lokiConfig.perStreamRateLimitBurstМаксимальный размер всплеска объема логов для одного потока. Может быть как числом, так и строкой с единицей измерения (KB, MB, GB).
По умолчанию:
15MB
-
-
объектsettings.nodeSelector
Структура, аналогичная
spec.nodeSelectorпода Kubernetes.Если значение не указано или указано
false, будет использоваться автоматика. -
settings.resourcesManagementНастройки запросов (requests) и ограничений (limits) использования CPU и памяти подами Loki.
По умолчанию:
{}Примеры:
mode: VPA vpa: cpu: limitRatio: 1.5 max: 2 min: 50m memory: limitRatio: 1.5 max: 2Gi min: 256Mi mode: InPlaceOrRecreatemode: Static static: limits: cpu: 2 memory: 2Gi requests: cpu: 55m memory: 256Mimode: VPA vpa: cpu: limitRatio: 1.5 max: 2 min: 50m memory: limitRatio: 1.5 max: 2Gi min: 256Mi mode: Auto-
строкаsettings.resourcesManagement.mode
Режим управления ресурсами:
По умолчанию:
VPAДопустимые значения:
VPA,Static -
объектsettings.resourcesManagement.staticНастройка управления ресурсами в режиме
Static.-
объектsettings.resourcesManagement.static.limitsНастройка ограничений (limits) использования CPU и памяти.
-
settings.resourcesManagement.static.limits.cpuНастройка ограничений использования CPU (CPU limits).
-
settings.resourcesManagement.static.limits.memoryНастройка ограничений использования памяти (memory limits).
-
-
объектsettings.resourcesManagement.static.requestsНастройки запросов ресурсов (requests) подов.
-
settings.resourcesManagement.static.requests.cpuНастройка запроса CPU (CPU requests).
-
settings.resourcesManagement.static.requests.memoryНастройка запроса памяти (memory requests).
-
-
-
объектsettings.resourcesManagement.vpaНастройка управления ресурсами в режиме
VPA.По умолчанию:
{}-
объектsettings.resourcesManagement.vpa.cpuНастройки VPA при работе с CPU.
По умолчанию:
{}-
числоsettings.resourcesManagement.vpa.cpu.limitRatio
Коэффициент расчета ограничений использования CPU относительно запросов (limits/requests).
Применяется для расчета начальных ограничений использования CPU для пода (CPU limits).
Если параметр указан, то VPA, при пересчете запросов CPU (CPU requests) будет пересчитывать ограничения использования CPU (CPU limits) сохраняя указанное соотношение ограничений к запросам (limits/requests).
-
settings.resourcesManagement.vpa.cpu.maxМаксимальное значение, которое может выставить VPA для запроса CPU (CPU requests).
По умолчанию:
2 -
settings.resourcesManagement.vpa.cpu.minМинимальное значение, которое может выставить VPA для запроса CPU (CPU requests).
По умолчанию:
50m
-
-
объектsettings.resourcesManagement.vpa.memoryНастройки VPA при работе с памятью.
По умолчанию:
{}-
числоsettings.resourcesManagement.vpa.memory.limitRatio
Коэффициент расчета ограничений использования памяти относительно запросов (limits/requests).
Применяется для расчета начальных ограничений использования памяти для пода (memory limits).
Если параметр указан, то VPA, при пересчете запросов памяти (memory requests) будет пересчитывать ограничения использования памяти (memory limits) сохраняя указанное соотношение ограничений к запросам (limits/requests).
-
settings.resourcesManagement.vpa.memory.maxМаксимальное значение, которое может выставить VPA для запроса к памяти (memory requests).
По умолчанию:
2Gi -
settings.resourcesManagement.vpa.memory.minМинимальное значение, которое может выставить VPA для запроса к памяти (memory requests).
По умолчанию:
256Mi
-
-
строкаsettings.resourcesManagement.vpa.mode
Режим работы VPA.
-
Initial— VPA устанавливает начальные значения requests/limits при создании пода. В дальнейшем значения ресурсов не изменяются автоматически. -
InPlaceOrRecreate— VPA пытается изменить ресурсы пода «на месте» (in-place), если это поддерживается кластером. Если in-place обновление невозможно, под будет пересоздан. -
Auto— VPA автоматически пересоздаёт поды для применения новых значений ресурсов. Начиная с версии Deckhouse 1.75 данный режим считается устаревшим. Рекомендуется использоватьInPlaceOrRecreate.
По умолчанию:
InPlaceOrRecreateДопустимые значения:
Initial,InPlaceOrRecreate,Auto -
-
-
-
целочисленныйsettings.retentionPeriodHours
Желаемый минимальный период хранения логов в часах.
Данный параметр не участвует в управлении глубиной хранения логов, так как Loki удаляет старые данные только при заполнении диска.
В случае, если Loki удалит данные, возраст которых еще не достиг указанного периода хранения, вы получите алерт
LokiInsufficientDiskForRetention. В этой ситуации необходимо увеличить размер диска или уменьшить значение данного параметра.По умолчанию:
168 -
settings.storageClass
Имя StorageClass, который будет использоваться по умолчанию в кластере.
Если значение не указано, используется StorageClass существующей PVC Loki. Если PVC нет, будет использоваться StorageClass, согласно настройке глобального параметра storageClass.
Настройка глобального параметра
storageClassучитывается только при включении модуля. Изменение глобального параметраstorageClassпри включенном модуле не приведет к перезаказу диска.Внимание. Если указать значение, отличное от текущего (используемого в существующей PVC), диск будет перезаказан, и все данные удалятся.
Если указать
false, будет принудительно использоватьсяemptyDir.Примеры:
storageClass: falsestorageClass: default -
булевыйsettings.storeSystemLogs
Сохранять логи из пространства имен
d8-*в loki.Для работы необходим включенный модуль log-shipper.
По умолчанию:
true -
массив объектовsettings.tolerations
Структура, аналогичная
spec.tolerationsпода Kubernetes.Если значение не указано или указано
false, будет использоваться автоматика.-
строкаsettings.tolerations.effect
-
строкаsettings.tolerations.key
-
строкаsettings.tolerations.operator
-
целочисленныйsettings.tolerations.tolerationSeconds
-
строкаsettings.tolerations.value
-
-