Grafana Mimir operator and user guideGetting started with Grafana Mimir

Getting started with Grafana Mimir

On this page, we provide two different options to getting started with Grafana Mimir. The written tutorial provides a series of imperative commands to start a single Mimir process. Our second tutorial, in video form, uses docker-compose to declaratively deploy multiple Mimir processes.


The written instructions focus on deploying Grafana Mimir as a monolith, which is designed for users getting started with the project. For more information about the different ways to deploy Grafana Mimir, refer to Deployment Modes.

Before you begin

Download Grafana Mimir

  • Using Docker:
docker pull grafana/mimir:latest
  • Using a local binary:

Download the appropriate release asset for your operating system and architecture and make it executable. For Linux with the AMD64 architecture:

curl -fLo mimir https://github.com/grafana/mimir/releases/latest/download/mimir-linux-amd64
chmod +x mimir

Start Grafana Mimir

To run Grafana Mimir as a monolith and with local filesystem storage, write the following configuration YAML to a file called demo.yaml:

# Do not use this configuration in production.
# It is for demonstration purposes only.
multitenancy_enabled: false

blocks_storage:
  backend: filesystem
  bucket_store:
    sync_dir: /tmp/mimir/tsdb-sync
  filesystem:
    dir: /tmp/mimir/data/tsdb
  tsdb:
    dir: /tmp/mimir/tsdb

compactor:
  data_dir: /tmp/mimir/compactor
  sharding_ring:
    kvstore:
      store: memberlist

distributor:
  ring:
    instance_addr: 127.0.0.1
    kvstore:
      store: memberlist

ingester:
  ring:
    instance_addr: 127.0.0.1
    kvstore:
      store: memberlist
    replication_factor: 1

ruler_storage:
  backend: local
  local:
    directory: /tmp/mimir/rules

server:
  http_listen_port: 9009
  log_level: error

store_gateway:
  sharding_ring:
    replication_factor: 1

Run Grafana Mimir

In a terminal, run one of the following commands:

  • Using Docker:

    docker run --rm --name mimir --publish 9009:9009 --volume "$(pwd)"/demo.yaml:/etc/mimir/demo.yaml grafana/mimir:${MIMIR_LATEST} --config.file=/etc/mimir/demo.yaml
    
  • Using a local binary:

    ./mimir --config.file=./demo.yaml
    

Grafana Mimir listens on port 9009.

Configure Prometheus to write to Grafana Mimir

Add the following YAML snippet to your Prometheus configuration file and restart the Prometheus server:

remote_write:
  - url: http://localhost:9009/api/v1/push

The configuration for a Prometheus server that scrapes itself and writes those metrics to Grafana Mimir looks similar to this:

remote_write:
  - url: http://localhost:9009/api/v1/push

scrape_configs:
  - job_name: prometheus
    honor_labels: true
    static_configs:
      - targets: ["localhost:9090"]

Configure the Grafana Agent to write to Grafana Mimir

Add the following YAML snippet to one of your Agent metrics configurations (metrics.configs) in your Agent configuration file and restart the Grafana Agent:

remote_write:
  - url: http://localhost:9009/api/v1/push

The configuration for an Agent that scrapes itself for metrics and writes those metrics to Grafana Mimir looks similar to this:

server:
  http_listen_port: 12345
  grpc_listen_port: 54321

metrics:
  wal_directory: /tmp/grafana-agent/wal

  configs:
    - name: agent
      scrape_configs:
        - job_name: agent
          static_configs:
            - targets: ["127.0.0.1:12345"]
      remote_write:
        - url: http://localhost:9009/api/v1/push

Query data in Grafana

In a new terminal, run a local Grafana server using Docker:

docker run --rm --name=grafana --network=host grafana/grafana

Add Grafana Mimir as a Prometheus data source

  1. In a browser, go to the Grafana server at http://localhost:3000/datasources.
  2. Sign in using the default username admin and password admin.
  3. Configure a new Prometheus data source to query the local Grafana Mimir server using the following settings:
Field Value
Name Mimir
URL http://localhost:9009/prometheus

To add a data source, refer to Add a data source.

Verify success

When you have completed the tasks in this getting started guide, you can query metrics in Grafana Explore as well as create dashboard panels using the newly configured Grafana Mimir data source.