Skip to content

Instantly share code, notes, and snippets.

@mzupan
Last active April 25, 2022 11:45
Show Gist options
  • Select an option

  • Save mzupan/20c75f8441945f35590310abc931b11e to your computer and use it in GitHub Desktop.

Select an option

Save mzupan/20c75f8441945f35590310abc931b11e to your computer and use it in GitHub Desktop.

Revisions

  1. mzupan revised this gist Apr 25, 2022. 1 changed file with 23 additions and 0 deletions.
    23 changes: 23 additions & 0 deletions mimir s3 policy
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,23 @@
    {
    "Version": "2012-10-17",
    "Statement": [
    {
    "Sid": "",
    "Effect": "Allow",
    "Action": "s3:ListBucket",
    "Resource": [
    "arn:aws:s3:::foobar-mimir-tsdb",
    "arn:aws:s3:::foobar-mimir-ruler"
    ]
    },
    {
    "Sid": "",
    "Effect": "Allow",
    "Action": "s3:*",
    "Resource": [
    "arn:aws:s3:::foobar-mimir-tsdb/*",
    "arn:aws:s3:::foobar-mimir-ruler/*"
    ]
    }
    ]
    }
  2. mzupan revised this gist Apr 22, 2022. 2 changed files with 8 additions and 0 deletions.
    3 changes: 3 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,3 @@
    Grafana url for mimir datasource

    http://mimir-nginx.mimir.svc.cluster.local./prometheus
    5 changes: 5 additions & 0 deletions prometheus.yml
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,5 @@
    server:
    remoteWrite:
    - url: http://mimir-nginx.mimir.svc.cluster.local./api/v1/push
    remoteRead:
    - url: http://mimir-nginx.mimir.svc.cluster.local./api/v1/read
  3. mzupan created this gist Apr 22, 2022.
    145 changes: 145 additions & 0 deletions mimir.yml
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,145 @@
    fullnameOverride: mimir

    serviceAccount:
    annotations:
    eks.amazonaws.com/role-arn: arn:aws:iam::111111111:role/eks-mimir

    gateway:
    ingress:
    enabled: false

    indexGateway:
    enabled: true
    persistence:
    enabled: true


    ingester:
    persistentVolume:
    enabled: true
    size: 50Gi

    store_gateway:
    persistentVolume:
    enabled: true
    size: 50Gi

    compactor:
    persistentVolume:
    enabled: true
    size: 50Gi

    minio:
    enabled: false

    mimir:
    config: |
    activity_tracker:
    filepath: /data/metrics-activity.log
    alertmanager:
    data_dir: '/data'
    enable_api: true
    external_url: '/alertmanager'
    alertmanager_storage:
    backend: s3
    s3:
    endpoint: s3.us-east-1.amazonaws.com
    bucket_name: foobar-mimir-ruler
    insecure: true
    frontend_worker:
    frontend_address: {{ template "mimir.fullname" . }}-query-frontend-headless.{{ .Release.Namespace }}.svc:{{ include "mimir.serverGrpcListenPort" . }}
    ruler:
    enable_api: true
    rule_path: '/data'
    alertmanager_url: dnssrvnoa+http://_http-metrics._tcp.{{ template "mimir.fullname" . }}-alertmanager-headless.{{ .Release.Namespace }}.svc.{{ .Values.global.clusterDomain }}/alertmanager
    server:
    grpc_server_max_recv_msg_size: 104857600
    grpc_server_max_send_msg_size: 104857600
    grpc_server_max_concurrent_streams: 1000
    frontend:
    log_queries_longer_than: 10s
    align_queries_with_step: true
    compactor:
    data_dir: "/data"
    ingester:
    instance_limits:
    max_ingestion_rate: 0
    ring:
    final_sleep: 0s
    num_tokens: 512
    ingester_client:
    grpc_client_config:
    max_recv_msg_size: 104857600
    max_send_msg_size: 104857600
    runtime_config:
    file: /var/{{ include "mimir.name" . }}/runtime.yaml
    limits:
    ingestion_rate: 40000
    max_global_series_per_user: 0
    max_global_series_per_metric: 0
    memberlist:
    abort_if_cluster_join_fails: false
    compression_enabled: false
    join_members:
    - {{ include "mimir.fullname" . }}-gossip-ring
    # This configures how the store-gateway synchronizes blocks stored in the bucket. It uses Minio by default for getting started (configured via flags) but this should be changed for production deployments.
    blocks_storage:
    backend: s3
    tsdb:
    dir: /data/tsdb
    bucket_store:
    sync_dir: /data/tsdb-sync
    {{- if .Values.memcached.enabled }}
    chunks_cache:
    backend: memcached
    memcached:
    addresses: dns+{{ .Release.Name }}-memcached.{{ .Release.Namespace }}.svc:11211
    max_item_size: {{ .Values.memcached.maxItemMemory }}
    {{- end }}
    {{- if index .Values "memcached-metadata" "enabled" }}
    metadata_cache:
    backend: memcached
    memcached:
    addresses: dns+{{ .Release.Name }}-memcached-metadata.{{ .Release.Namespace }}.svc:11211
    max_item_size: {{ (index .Values "memcached-metadata").maxItemMemory }}
    {{- end }}
    {{- if index .Values "memcached-queries" "enabled" }}
    index_cache:
    backend: memcached
    memcached:
    addresses: dns+{{ .Release.Name }}-memcached-queries.{{ .Release.Namespace }}.svc:11211
    max_item_size: {{ (index .Values "memcached-queries").maxItemMemory }}
    {{- end }}
    s3:
    endpoint: s3.us-east-1.amazonaws.com
    bucket_name: foobar-mimir-tsdb
    insecure: true
    ruler_storage:
    backend: s3
    s3:
    endpoint: s3.us-east-1.amazonaws.com
    bucket_name: foobar-mimir-ruler
    insecure: true
    querier:
    replicas: 3


    serviceMonitor:
    enabled: true
    interval: ""