The module starts reading logs only if log-pipeline is created. Log-pipeline consists of ClusterLoggingConfig/PodLoggingConfig connected to ClusterLogDestination.

The module is enabled by default in the following bundles: Default, Managed. The module is disabled by default in the Minimal bundle.

How to explicitly enable the module…

Set the spec.enabled module parameter to true or false in the ModuleConfig/log-shipper resource (create it, if necessary) to explicitly enable or disable the module, or use the deckhouse-controller module command in the d8-system/deckhouse pod.

Example of enabling the module:

  • by using the ModuleConfig resource:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: log-shipper
    spec:
      enabled: true
    
  • by using the deckhouse-controller command (you need a kubectl, configured to work with the cluster):

    kubectl -ti -n d8-system exec deploy/deckhouse -c deckhouse -- deckhouse-controller module enable log-shipper
    

Example of disabling the module:

  • by using the ModuleConfig resource:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: log-shipper
    spec:
      enabled: false
    
  • by using the deckhouse-controller command (you need a kubectl, configured to work with the cluster):

    kubectl -ti -n d8-system exec deploy/deckhouse -c deckhouse -- deckhouse-controller module disable log-shipper
    

The module is configured using the ModuleConfig custom resource named log-shipper (learn more about setting up Deckhouse…).

Example of the ModuleConfig/log-shipper resource for configuring the module:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: log-shipper
spec:
  version: 1
  enabled: true
  settings: # <-- Module parameters from the "Parameters" section below.

Parameters

Schema version: 1

  • debugboolean

    Enable or disable agent debug logging. Default: false.

    Default: false

  • nodeSelectorobject

    The same as in the Pods’ spec.nodeSelector parameter in Kubernetes.

    If the parameter is omitted or false, nodeSelector will be determined automatically.

  • resourcesRequestsobject

    Max amounts of CPU and memory resources that the pod can request when selecting a node.

    If the vertical-pod-autoscaler module is disabled, then these values become the default ones.

    Examples:

    resourcesRequests:
      mode: VPA
      vpa:
        mode: Auto
        cpu:
          min: 50m
          max: 2
        memory:
          min: 256Mi
          max: 2Gi
    
    resourcesRequests:
      mode: VPA
      vpa:
        mode: Initial
        cpu:
          min: 1
          max: 3000m
        memory:
          min: 1024
          max: 4096
    
    resourcesRequests:
      mode: Static
      static:
        cpu: 55m
        memory: 256Ki
    
    • resourcesRequests.modestring

      Required value

      Resource request management mode:

      • Static is a classic one. In it, you explicitly specify requests. The parameters of this mode are defined in the static parameter section;
      • VPA mode uses VPA. You can configure this mode by modifying parameters in the vpa parameter section.

      Default: "VPA"

      Allowed values: VPA, Static

    • resourcesRequests.staticobject

      Resource request management options for the Static mode.

      • resourcesRequests.static.cpu

        Required value

        Configuring CPU requests.

        Default: 50m

      • resourcesRequests.static.memory

        Required value

        Configuring memory requests.

        Default: 64Mi

    • resourcesRequests.vpaobject

      Resource request management options for the VPA mode.

      • resourcesRequests.vpa.cpuobject

        Required value

        CPU-related parameters.

        • resourcesRequests.vpa.cpu.max

          The maximum value that the VPA can set for the CPU requests.

          Default: 500m

        • resourcesRequests.vpa.cpu.min

          The minimum value that the VPA can set for the CPU requests.

          Default: 50m

      • resourcesRequests.vpa.memoryobject

        Required value

        The amount of memory requested.

        • resourcesRequests.vpa.memory.max

          The maximum memory requests the VPA can set.

          Default: 2048Mi

        • resourcesRequests.vpa.memory.min

          The minimum memory requests the VPA can set.

          Default: 64Mi

      • resourcesRequests.vpa.modestring

        Required value

        The VPA usage mode.

        Default: "Initial"

        Allowed values: Initial, Auto

  • tolerationsarray of objects

    The same as in the Pods’ spec.tolerations parameter in Kubernetes;

    If the parameter is omitted or false, tolerations will be determined automatically.

    • tolerations.effectstring
    • tolerations.keystring
    • tolerations.operatorstring
    • tolerations.tolerationSecondsinteger
    • tolerations.valuestring