Находится в процессе активного развития. Функциональность может существенно измениться.

Модуль не включен по умолчанию в каком-либо наборе модулей.

Как явно включить или отключить модуль…

Обратите внимание, что при установке Deckhouse для явного включения/отключения и настройки модуля используется параметр configOverrides ресурса InitConfiguration, а не ModuleConfig.

Чтобы явно включить или выключить модуль loki при установке Deckhouse, укажите lokiEnabled: true или lokiEnabled: false в секции configOverrides.

Чтобы задать настройки модуля при установке Deckhouse, используйте секцию loki параметра configOverrides.

Чтобы явно включить или выключить модуль loki, установите spec.enabled в true или false в ModuleConfig/loki.

Пример включения модуля loki:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: loki
spec:
  enabled: true

Пример выключения модуля loki:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: loki
spec:
  enabled: false

Чтобы настроить модуль, используйте custom resource ModuleConfig с именем loki (подробнее о настройке Deckhouse…).

Пример ресурса ModuleConfig/loki для настройки модуля:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: loki
spec:
  version: 1
  enabled: true
  settings: # <-- Параметры модуля из раздела "Параметры" ниже.

Параметры

Версия схемы: 1

  • diskSizeGigabytesцелочисленный

    Размер диска для хранения логов или размер PVC при указании параметра storageClass.

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

    Занятый объем автоматически мониторится с помощью модуля extended-monitoring

    ОСТОРОЖНО! Если диск с данными Loki переполнится, приложение перестанет работать. Вам следует выбрать необходимый баланс между значениями параметров retentionPeriodHours и diskSizeGigabytes.

    По умолчанию: 2

  • nodeSelectorобъект

    Структура, аналогичная spec.nodeSelector пода Kubernetes.

    Если ничего не указано или указано false, будет использоваться автоматика.

  • resourcesManagement

    Loki resources management options.

    Примеры:

    resourcesManagement:
      mode: VPA
      vpa:
        mode: Auto
        cpu:
          min: 50m
          max: 2
          limitRatio: 1.5
        memory:
          min: 256Mi
          max: 2Gi
          limitRatio: 1.5
    
    resourcesManagement:
      mode: Static
      static:
        requests:
          cpu: 55m
          memory: 256Mi
        limits:
          cpu: 2
          memory: 2Gi
    
    • resourcesManagement.modeстрока

      The mode for managing resource requests. Classical Static requests/limit or VPA.

      По умолчанию: "VPA"

      Допустимые значения: VPA, Static

    • resourcesManagement.staticобъект

      Static resource management settings.

      • resourcesManagement.static.limitsобъект

        Limits configuration.

        • resourcesManagement.static.limits.cpu

          CPU limits.

        • resourcesManagement.static.limits.memory

          Memory limits.

      • resourcesManagement.static.requestsобъект

        Requests configuration.

        • resourcesManagement.static.requests.cpu

          CPU requests.

        • resourcesManagement.static.requests.memory

          Memory requests.

    • resourcesManagement.vpaобъект

      Parameters of the VPA mode.

      • resourcesManagement.vpa.cpuобъект

        CPU-related parameters.

        • resourcesManagement.vpa.cpu.limitRatioчисло

          The coefficient to calculate cpu limits. It is optionally used to calculate initial limits for Pod. VPA for its part keeps the initial limits/requests ratio during further resource tunings.

        • resourcesManagement.vpa.cpu.max

          Maximum allowed CPU requests.

          По умолчанию: 2

        • resourcesManagement.vpa.cpu.min

          Minimum allowed CPU requests.

          По умолчанию: 50m

      • resourcesManagement.vpa.memoryобъект

        The amount of memory requested.

        • resourcesManagement.vpa.memory.limitRatioчисло

          The coefficient to calculate memory limits. It is optionally used to calculate initial limits for Pod. VPA for its part keeps the initial limits/requests ratio during further resource tunings.

        • resourcesManagement.vpa.memory.max

          Maximum allowed memory requests.

          По умолчанию: 2Gi

        • resourcesManagement.vpa.memory.min

          Minimum allowed memory requests.

          По умолчанию: 256Mi

      • resourcesManagement.vpa.modeстрока

        The VPA usage mode.

        По умолчанию: "Auto"

        Допустимые значения: Initial, Auto

  • retentionPeriodHoursцелочисленный

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

    По умолчанию: 168

  • storageClass

    Имя storageClass’а, который использовать.

    Если не указано, используется StorageClass существующей PVC Loki, а если PVC пока нет, используется или глобальный StorageClass, или global.discovery.defaultStorageClass, а если и их нет, данные сохраняются в emptyDir.

    false — принудительное использование emptyDir. Удалить старый PVC и рестартануть под придется вручную.

    ОСТОРОЖНО! При указании этой опции в значение, отличное от текущего (из существующей PVC), диск Loki будет перезаказан, а все данные удалены.

    Примеры:

    storageClass: false
    
    storageClass: default
    
  • storeSystemLogsбулевый

    Сохранять логи из пространства имен d8-* в loki.

    Для работы необходим включенный модуль log-shipper.

    По умолчанию: true

  • tolerationsмассив объектов

    Структура, аналогичная spec.tolerations пода Kubernetes.

    Если ничего не указано или указано false, будет использоваться автоматика.

    • tolerations.effectстрока
    • tolerations.keyстрока
    • tolerations.operatorстрока
    • tolerations.tolerationSecondsцелочисленный
    • tolerations.valueстрока

Пример конфигурации

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: loki
spec:
  settings:
    storageClass: ceph-csi-rbd
    diskSizeGigabytes: 10
    retentionPeriodHours: 48
  enabled: true
  version: 1