nameOverride: loki-ha
loki:
  image:
    registry: o11-prod-repo-registry.ap-southeast-1.cr.aliyuncs.com/prod
    repository: third-party/grafana/loki
    tag: "3.5.3"
  auth_enabled: false
  storage:
    bucketNames:
      chunks: loki-prod-ap-northeast-1-o11y
      ruler: loki-prod-ap-northeast-1-o11y
      admin: loki-prod-ap-northeast-1-o11y
    type: s3
    s3:
      region: ap-northeast-1
  storage_config:
    boltdb_shipper:
      active_index_directory: /var/loki/boltdb-shipper-active
      cache_location: /var/loki/boltdb-shipper-cache
      cache_ttl: 24h
    tsdb_shipper:
      active_index_directory: /var/loki/tsdb-shipper-active
      cache_location: /var/loki/tsdb-shipper-cache
      cache_ttl: 24h
    aws:
      bucketnames: loki-prod-ap-northeast-1-o11y
      endpoint: oss-ap-northeast-1-internal.aliyuncs.com
  server:
    grpc_server_max_recv_msg_size: 104857600
    grpc_server_max_send_msg_size: 104857600
  limits_config:
    allow_structured_metadata: false
    ingestion_rate_mb: 120
    ingestion_burst_size_mb: 240
    per_stream_rate_limit: 20MB
    per_stream_rate_limit_burst: 120MB
    max_entries_limit_per_query: 1000
    max_global_streams_per_user: 0
    retention_period: 2160h # 90 days
    max_query_length: 7d1h
    max_line_size: 0
    max_label_names_per_series: 30
  commonConfig:
    replication_factor: 1
  schemaConfig:
    configs:
      - from: 2023-08-12
        store: boltdb-shipper
        object_store: s3
        schema: v12
        index:
          prefix: loki_index_
          period: 24h
      - from: 2025-05-29
        store: tsdb
        object_store: s3
        schema: v13
        index:
          prefix: loki_tsdb_index_
          period: 24h
  rulerConfig:
    external_labels:
      o11y_k8s_id: o11y-prod-regional-ap-northeast-1
      cloudProvider: alicloud
      component: observability-regional-server
    storage:
      type: local
      local:
        directory: /rules
    rule_path: /tmp/scratch
    alertmanager_url: http://alertmanager-operated.self-monitoring:9093
    ring:
      kvstore:
        store: inmemory
    enable_api: true
  compactor:
    retention_enabled: true
    delete_request_store: s3
    working_directory: /var/loki/retention
    compaction_interval: 10m
    retention_delete_delay: 2h
    retention_delete_worker_count: 100
  index_gateway:
    mode: ring
serviceAccount:
  annotations:
    pod-identity.alibabacloud.com/role-name: loki-o11y-prod-regional-ap-northeast-1
write:
  replicas: 2
  autoscaling:
    enabled: true
    minReplicas: 2
    maxReplicas: 3
    targetCPUUtilizationPercentage: 100
    targetMemoryUtilizationPercentage: 80
    behavior:
      scaleUp:
        policies:
          - type: Pods
            value: 1
            periodSeconds: 900
        stabilizationWindowSeconds: 300
      scaleDown:
        policies:
          - type: Pods
            value: 1
            periodSeconds: 1800
        stabilizationWindowSeconds: 3600
  extraEnv:
    - name: AWS_ACCESS_KEY_ID
      valueFrom:
        secretKeyRef:
          key: AWS_ACCESS_KEY_ID
          name: o11y-regional-ram-credentials
    - name: AWS_SECRET_ACCESS_KEY
      valueFrom:
        secretKeyRef:
          key: AWS_SECRET_ACCESS_KEY
          name: o11y-regional-ram-credentials
  resources:
    limits:
      cpu: 2000m
      memory: 8Gi
    requests:
      cpu: 200m
      memory: 2Gi
  nodeSelector:
    node_type: worker
  persistence:
    enableStatefulSetAutoDeletePVC: true
    size: 20Gi
    storageClass: loki-storage
read:
  replicas: 2
  autoscaling:
    enabled: true
    minReplicas: 2
    maxReplicas: 3
    targetCPUUtilizationPercentage: 1600
    targetMemoryUtilizationPercentage: 320
    behavior:
      scaleDown:
        stabilizationWindowSeconds: 3600
        policies:
          - type: Pods
            value: 1
            periodSeconds: 180
      scaleUp:
        stabilizationWindowSeconds: 600
  extraEnv:
    - name: AWS_ACCESS_KEY_ID
      valueFrom:
        secretKeyRef:
          key: AWS_ACCESS_KEY_ID
          name: o11y-regional-ram-credentials
    - name: AWS_SECRET_ACCESS_KEY
      valueFrom:
        secretKeyRef:
          key: AWS_SECRET_ACCESS_KEY
          name: o11y-regional-ram-credentials
  resources:
    limits:
      cpu: 2000m
      memory: 8Gi
    requests:
      cpu: 100m
      memory: 2Gi
  nodeSelector:
    node_type: worker
  persistence:
    size: 20Gi
    storageClass: loki-storage
backend:
  replicas: 2
  extraEnv:
    - name: AWS_ACCESS_KEY_ID
      valueFrom:
        secretKeyRef:
          key: AWS_ACCESS_KEY_ID
          name: o11y-regional-ram-credentials
    - name: AWS_SECRET_ACCESS_KEY
      valueFrom:
        secretKeyRef:
          key: AWS_SECRET_ACCESS_KEY
          name: o11y-regional-ram-credentials
  resources:
    limits:
      cpu: 2000m
      memory: 8Gi
    requests:
      cpu: 50m
      memory: 256Mi
  nodeSelector:
    node_type: worker
  persistence:
    size: 20Gi
    storageClass: loki-storage
sidecar:
  rules:
    label: loki_rule
    labelValue: "true"
    folder: /rules/fake
test:
  enabled: false
lokiCanary:
  enabled: false
gateway:
  enabled: false
ruler:
  enabled: true # In order to enable rulerConfig
  replicas: 0
resultsCache:
  enabled: false
chunksCache:
  enabled: false
