From 3e126f21342ce80ad6a63c03f2f1227379a1ff01 Mon Sep 17 00:00:00 2001 From: Danny Kopping Date: Wed, 13 Jul 2022 15:11:35 +0200 Subject: [PATCH 1/6] Improved docker-compose setup: - S3-like storage - Interactive debugging by optionally exposing dlv ports - Improve performance - Use SSD mode (read/write) - GroupCache - Latest versions of loki, promtail, grafana - Scaling --- .dockerignore | 3 + production/docker/.gitignore | 1 + ...mberlist-boltdb-shipper.yaml => loki.yaml} | 64 ++++----- .../{nginx-loki-gateway.conf => nginx.conf} | 57 ++++---- .../{promtail-gateway.yaml => promtail.yaml} | 13 +- .../docker/docker-compose-ha-memberlist.yaml | 103 --------------- production/docker/docker-compose.yaml | 123 ++++++++++++++++++ 7 files changed, 193 insertions(+), 171 deletions(-) create mode 100644 .dockerignore rename production/docker/config/{loki-docker-memberlist-boltdb-shipper.yaml => loki.yaml} (63%) rename production/docker/config/{nginx-loki-gateway.conf => nginx.conf} (56%) rename production/docker/config/{promtail-gateway.yaml => promtail.yaml} (59%) delete mode 100644 production/docker/docker-compose-ha-memberlist.yaml create mode 100644 production/docker/docker-compose.yaml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 000000000000..d1bf7f1e82e4 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,3 @@ +production/docker/.data +.cache +.git diff --git a/production/docker/.gitignore b/production/docker/.gitignore index 19e9d6513ad8..1443150cc2de 100644 --- a/production/docker/.gitignore +++ b/production/docker/.gitignore @@ -1 +1,2 @@ loki/ +.data diff --git a/production/docker/config/loki-docker-memberlist-boltdb-shipper.yaml b/production/docker/config/loki.yaml similarity index 63% rename from production/docker/config/loki-docker-memberlist-boltdb-shipper.yaml rename to production/docker/config/loki.yaml index c05675ef42c0..c704fa67c2e2 100644 --- a/production/docker/config/loki-docker-memberlist-boltdb-shipper.yaml +++ b/production/docker/config/loki.yaml @@ -1,4 +1,4 @@ -auth_enabled: false +auth_enabled: true http_prefix: @@ -9,45 +9,50 @@ server: grpc_listen_port: 9095 log_level: info +common: + storage: + s3: + endpoint: minio:9000 + insecure: true + bucketnames: loki-data + access_key_id: loki + secret_access_key: supersecret + s3forcepathstyle: true + memberlist: - join_members: ["loki-1", "loki-2", "loki-3"] + join_members: ["loki-read", "loki-write"] dead_node_reclaim_time: 30s gossip_to_dead_nodes_time: 15s left_ingesters_timeout: 30s bind_addr: ['0.0.0.0'] bind_port: 7946 + gossip_interval: 2s ingester: lifecycler: - join_after: 60s + join_after: 10s observe_period: 5s ring: replication_factor: 2 kvstore: store: memberlist final_sleep: 0s - chunk_idle_period: 1h + chunk_idle_period: 1m wal: enabled: true dir: /loki/wal - max_chunk_age: 1h + max_chunk_age: 1m chunk_retain_period: 30s chunk_encoding: snappy - chunk_target_size: 0 + chunk_target_size: 1.572864e+06 chunk_block_size: 262144 - # chunk_target_size: 1.572864e+06 - -# Only needed for global rate strategy -# distributor: -# ring: -# kvstore: -# store: memberlist + flush_op_timeout: 10s schema_config: configs: - from: 2020-08-01 store: boltdb-shipper - object_store: filesystem + object_store: s3 schema: v11 index: prefix: index_ @@ -55,18 +60,9 @@ schema_config: storage_config: boltdb_shipper: - # shared_store: s3 - shared_store: filesystem - active_index_directory: /loki/index - cache_location: /loki/boltdb-cache - - #aws: - # s3: s3://us-east-1/mybucket - # sse_encryption: true - # insecure: false - # s3forcepathstyle: true - filesystem: - directory: /loki/chunks + shared_store: s3 + active_index_directory: /tmp/index + cache_location: /tmp/boltdb-cache limits_config: @@ -93,21 +89,17 @@ query_range: parallelise_shardable_queries: true cache_results: true - results_cache: - cache: - # We're going to use the in-process "FIFO" cache - enable_fifocache: true - fifocache: - size: 1024 - validity: 24h - frontend: log_queries_longer_than: 5s compress_responses: true + max_outstanding_per_tenant: 2048 + +query_scheduler: + max_outstanding_requests_per_tenant: 1024 querier: query_ingesters_within: 2h compactor: - working_directory: /loki/compactor - shared_store: filesystem + working_directory: /tmp/compactor + shared_store: s3 diff --git a/production/docker/config/nginx-loki-gateway.conf b/production/docker/config/nginx.conf similarity index 56% rename from production/docker/config/nginx-loki-gateway.conf rename to production/docker/config/nginx.conf index 5df6822a20cc..bd19a04fb906 100644 --- a/production/docker/config/nginx-loki-gateway.conf +++ b/production/docker/config/nginx.conf @@ -7,7 +7,6 @@ events { } http { - default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] $status ' '"$request" $body_bytes_sent "$http_referer" ' @@ -16,16 +15,17 @@ http { sendfile on; tcp_nopush on; - upstream distributor { - server loki-1:3100; - server loki-2:3100; - server loki-3:3100; + upstream read { + server loki-read:3100; + } + + upstream write { + server loki-write:3100; } - upstream querier { - server loki-1:3100; - server loki-2:3100; - server loki-3:3100; + upstream cluster { + server loki-read:3100; + server loki-write:3100; } upstream query-frontend { @@ -34,18 +34,33 @@ http { server { listen 80; - proxy_set_header X-Scope-OrgID docker-ha; - - location = /loki/api/v1/push { - proxy_pass http://distributor$request_uri; - } location = /ring { - proxy_pass http://distributor$request_uri; + proxy_pass http://cluster$request_uri; + } + + location = /memberlist { + proxy_pass http://cluster$request_uri; + } + + location = /config { + proxy_pass http://cluster$request_uri; + } + + location = /metrics { + proxy_pass http://cluster$request_uri; + } + + location = /ready { + proxy_pass http://cluster$request_uri; + } + + location = /loki/api/v1/push { + proxy_pass http://write$request_uri; } location = /loki/api/v1/tail { - proxy_pass http://querier$request_uri; + proxy_pass http://read$request_uri; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } @@ -54,14 +69,4 @@ http { proxy_pass http://query-frontend$request_uri; } } - - server { - listen 3100; - proxy_set_header X-Scope-OrgID docker-ha; - - location ~ /loki/api/.* { - proxy_pass http://querier$request_uri; - } - - } } diff --git a/production/docker/config/promtail-gateway.yaml b/production/docker/config/promtail.yaml similarity index 59% rename from production/docker/config/promtail-gateway.yaml rename to production/docker/config/promtail.yaml index 9ce3d2652fc5..6d4b11ff1c0b 100644 --- a/production/docker/config/promtail-gateway.yaml +++ b/production/docker/config/promtail.yaml @@ -1,19 +1,20 @@ server: http_listen_port: 9080 grpc_listen_port: 0 - log_level: "debug" + log_level: "info" positions: filename: /tmp/positions.yaml clients: - url: http://loki-gateway:80/loki/api/v1/push + tenant_id: docker scrape_configs: - job_name: system static_configs: - - targets: - - localhost - labels: - job: varlogs - __path__: /var/log/*log + - targets: + - localhost + labels: + job: varlogs + __path__: /var/log/*log \ No newline at end of file diff --git a/production/docker/docker-compose-ha-memberlist.yaml b/production/docker/docker-compose-ha-memberlist.yaml deleted file mode 100644 index 782c1f73c835..000000000000 --- a/production/docker/docker-compose-ha-memberlist.yaml +++ /dev/null @@ -1,103 +0,0 @@ -version: "3.8" - -networks: - loki: - -services: - - # Since the Loki containers are running as user 10001 and the mounted data volume is owned by root, - # Loki would not have permissions to create the directories. - # Therefore the init container changes permissions of the mounted directory. - init: - image: grafana/loki:2.5.0 - user: root - entrypoint: - - "chown" - - "10001:10001" - - "/loki" - volumes: - - ./loki:/loki - networks: - - loki - - grafana: - image: grafana/grafana:8.3.3 - ports: - - "3000:3000" - networks: - - loki - - promtail: - image: grafana/promtail:2.5.0 - volumes: - - /var/log:/var/log - - ./config:/etc/promtail/ - ports: - - "9080:9080" - command: -config.file=/etc/promtail/promtail-gateway.yaml - networks: - - loki - - loki-gateway: - image: nginx:1.19 - volumes: - - ./config/nginx-loki-gateway.conf:/etc/nginx/nginx.conf - ports: - - "80" - - "3100" - networks: - - loki - - loki-frontend: - image: grafana/loki:2.5.0 - volumes: - - ./config:/etc/loki/ - ports: - - "3100" - command: "-config.file=/etc/loki/loki-docker-memberlist-boltdb-shipper.yaml -target=query-frontend -frontend.downstream-url=http://loki-gateway:3100" - networks: - - loki - deploy: - mode: replicated - replicas: 2 - - loki-1: - image: grafana/loki:2.5.0 - volumes: - - ./config:/etc/loki/ - - ./loki:/loki - ports: - - "3100" - - "7946" - command: "-config.file=/etc/loki/loki-docker-memberlist-boltdb-shipper.yaml -target=all" - networks: - - loki - restart: on-failure - - loki-2: - image: grafana/loki:2.5.0 - volumes: - - ./config:/etc/loki/ - - ./loki:/loki - ports: - - "3100" - - "7946" - command: "-config.file=/etc/loki/loki-docker-memberlist-boltdb-shipper.yaml -target=all" - # command: "-config.file=/etc/loki/loki-config.yaml" - networks: - - loki - restart: on-failure - - loki-3: - image: grafana/loki:2.5.0 - volumes: - - ./config:/etc/loki/ - - ./loki:/loki - ports: - - "3100" - - "7946" - command: "-config.file=/etc/loki/loki-docker-memberlist-boltdb-shipper.yaml -target=all" - # command: "-config.file=/etc/loki/loki-config.yaml" - networks: - - loki - restart: on-failure diff --git a/production/docker/docker-compose.yaml b/production/docker/docker-compose.yaml new file mode 100644 index 000000000000..17ce16856ff8 --- /dev/null +++ b/production/docker/docker-compose.yaml @@ -0,0 +1,123 @@ +version: "3.8" + +networks: + loki: + +services: + + # Since the Loki containers are running as user 10001 and the mounted data volume is owned by root, + # Loki would not have permissions to create the directories. + # Therefore the init container changes permissions of the mounted directory. + init: + image: grafana/loki:2.6.0 + user: root + entrypoint: + - "chown" + - "10001:10001" + - "/loki" + volumes: + - ./loki:/loki + networks: + - loki + + grafana: + image: grafana/grafana:8.5.9 + ports: + - "3000:3000" + networks: + - loki + + promtail: + image: grafana/promtail:2.6.0 + volumes: + - ./config:/etc/promtail/ + ports: + - "9080:9080" + command: -config.file=/etc/promtail/promtail.yaml + networks: + - loki + + minio: + image: minio/minio + entrypoint: + - sh + - -euc + - | + mkdir -p /data/loki-data && \ + mkdir -p /data/loki-ruler && + minio server /data + environment: + - MINIO_ACCESS_KEY=loki + - MINIO_SECRET_KEY=supersecret + - MINIO_PROMETHEUS_AUTH_TYPE=public + - MINIO_UPDATE=off + ports: + - "9000:9000" + volumes: + - ./.data/minio:/data + networks: + - loki + + loki-gateway: + image: nginx:1.19 + volumes: + - ./config/nginx.conf:/etc/nginx/nginx.conf + ports: + - "8080:80" + networks: + - loki + + loki-frontend: + image: grafana/loki:2.6.0 + volumes: + - ./config:/etc/loki/ + ports: + - "3100" + command: "-config.file=/etc/loki/loki.yaml -target=query-frontend -frontend.downstream-url=http://loki-read:3100" + networks: + - loki + deploy: + mode: replicated + replicas: 2 + + loki-read: + image: grafana/loki:2.6.0 + volumes: + - ./config:/etc/loki/ + ports: + - "3100" + - "7946" + # - "40000-40002:40000" # uncomment to enable interactive debugging on ports (40000, 400001, 400002) + command: "-config.file=/etc/loki/loki.yaml -target=read" + networks: + - loki + restart: always + deploy: + mode: replicated + replicas: 3 + # only needed for debugging + cap_add: + - SYS_PTRACE + security_opt: + - apparmor=unconfined + + loki-write: + image: grafana/loki:2.6.0 + volumes: + - ./config:/etc/loki/ + ports: + - "3100" + - "7946" + # - "50000-50002:40000" # uncomment to enable interactive debugging on ports (50000, 50001, 50002) + command: "-config.file=/etc/loki/loki.yaml -target=write" + networks: + - loki + restart: always + deploy: + mode: replicated + replicas: 3 + # only needed for debugging + cap_add: + - SYS_PTRACE + security_opt: + - apparmor=unconfined \ No newline at end of file From 5acb336ebed83d38486117393f3917c391717736 Mon Sep 17 00:00:00 2001 From: Danny Kopping Date: Fri, 15 Jul 2022 10:59:56 +0200 Subject: [PATCH 2/6] Adding diagram & updated README Signed-off-by: Danny Kopping --- production/docker/README.md | 93 +++++++++++++----- production/docker/config/loki.yaml | 2 +- production/docker/config/promtail.yaml | 14 ++- .../docker/docker-compose-ha-diagram.png | Bin 123877 -> 0 bytes production/docker/docker-compose.yaml | 44 ++++++--- 5 files changed, 111 insertions(+), 42 deletions(-) delete mode 100644 production/docker/docker-compose-ha-diagram.png diff --git a/production/docker/README.md b/production/docker/README.md index 0c522ce38d7a..a14167c3b318 100644 --- a/production/docker/README.md +++ b/production/docker/README.md @@ -1,37 +1,80 @@ -# Loki cluster using docker-compose +# Loki with docker-compose -To deploy a cluster of loki nodes on a local machine (as shown below), you could use the `docker-compose-ha-member.yaml` file. +You can use this `docker-compose` setup to run Docker for development or in production. - +## Features -Some features of the deployment: +- Running in [Simple Scalable Deployment](https://grafana.com/docs/loki/latest/fundamentals/architecture/deployment-modes/#simple-scalable-deployment-mode) mode with 3 replicas for `read` and `write` targets +- Memberlist for [consistent hash](https://grafana.com/docs/loki/latest/fundamentals/architecture/rings/) ring +- [Minio](https://min.io/) for S3-compatible storage for chunks & indexes +- nginx gateway which acts as a reverse-proxy to the read/write paths +- Promtail for logs + - An optional log-generator +- Multi-tenancy enabled (`docker` as the tenant ID) +- Configuration for interactive debugging (see [Debugging](#debugging) section below) -- Backend: 3 Loki servers enabled with distributor, ingester, querier module -- Together they form a cluster ring based on memberlist mechanism (if using consul/etcd, modules can be separate for further separate read/write workloads) -- Index data are stored and replicated through botldb-shipper -- Replication_factor=2: the receiving distributor sends log data to 2 ingesters based on consistent hashing -- Chunk storage is a shared directory mounted from the same host directory (to simulate S3 or gcs) -- Query are performed through the two query frontend servers -- An nginx gateway to route the write and read workloads from clients (Grafana, promtail) +## Diagram -1. Ensure you have the most up-to-date Docker container images: +The below diagram describes the various components of this deployment, and how data flows between them. - ```bash - docker-compose pull - ``` +```mermaid +graph LR + Grafana --> |Query logs| nginx["nginx (port: 8080)"] + Promtail -->|Send logs| nginx -1. Run the stack on your local Docker: + nginx -.-> |read path| QueryFrontend["query-frontend"] + nginx -.-> |write path| Distributor - ```bash - docker-compose -f ./docker-compose-ha-memberlist.yaml up - ``` + QueryFrontend -.-> Querier -1. When adding data source in the grafana dashboard, using `http://loki-gateway:3100` for the URL field. + subgraph LokiRead["loki -target=read"] + Querier["querier"] + end -1. To clean up + subgraph Minio["Minio Storage"] + Chunks + Indexes + end - ```bash - docker-compose -f ./docker-compose-ha-memberlist.yaml down - ``` + subgraph LokiWrite["loki -target=write"] + Distributor["distributor"] -.-> Ingester["ingester"] + Ingester + end - Remove the data under `./loki`. + Querier --> |reads| Chunks & Indexes + Ingester --> |writes| Chunks & Indexes +``` + +## Getting Started + +Simply run `docker-compose up` and all the components will start. + +It'll take a few seconds for all the components to start up and register in the [ring](http://localhost:8080/ring). Once all instances are `ACTIVE`, Loki will start accepting reads and writes. + +Grafana will be made available at [http://localhost:3000](http://localhost:3000) (use `admin:admin` for the credentials). When adding a Loki datasource, use `http://loki-gateway` for the URL, and add a custom HTTP header named `X-Scope-OrgID` with a value of `docker`. + +All data will be stored in the `.data` directory. + +The nginx gateway runs on port `8080` and you can access Loki through it. + +## Endpoints + +- [`/ring`](http://localhost:8080/ring) - view all components registered in the hash ring +- [`/config`](http://localhost:8080/config) - view the configuration used by Loki +- [`/metrics`](http://localhost:8080/metrics) - access metrics exposed by Loki + - note: this is a roundrobin configuration, so we may see different metrics with each request + - if you need to scrape each pod's metrics individually, you should use Prometheus with its docker service discovery mechanism +- [`/memberlist`](http://localhost:8080/memberlist) - view all components in the memberlist cluster +- [all other Loki API endpoints](https://grafana.com/docs/loki/latest/api/) + +## Debugging + +View the `docker-compose.yaml` file and uncomment the sections related to debugging. + +You can follow [this guide](https://blog.jetbrains.com/go/2020/05/06/debugging-a-go-application-inside-a-docker-container/) to enable debugging in GoLand, but the basic steps are: + +1. Bind a host port to one of the Loki services +2. Add a _Go Remote_ debug configuration in GoLand and use that port +3. Run `docker-compose up` +4. Set a breakpoint and start the debug configuration +5. Build/debug something awesome :) \ No newline at end of file diff --git a/production/docker/config/loki.yaml b/production/docker/config/loki.yaml index c704fa67c2e2..b3dd8d2551ec 100644 --- a/production/docker/config/loki.yaml +++ b/production/docker/config/loki.yaml @@ -33,7 +33,7 @@ ingester: join_after: 10s observe_period: 5s ring: - replication_factor: 2 + replication_factor: 3 kvstore: store: memberlist final_sleep: 0s diff --git a/production/docker/config/promtail.yaml b/production/docker/config/promtail.yaml index 6d4b11ff1c0b..cfee3f2c4d1c 100644 --- a/production/docker/config/promtail.yaml +++ b/production/docker/config/promtail.yaml @@ -11,10 +11,18 @@ clients: tenant_id: docker scrape_configs: - - job_name: system + - job_name: generated-logs static_configs: - targets: - localhost labels: - job: varlogs - __path__: /var/log/*log \ No newline at end of file + job: generated-logs + __path__: /var/log/generated-logs.txt + pipeline_stages: + - json: + expressions: + http_method: 'method' + http_status: "status" + - labels: + http_method: + http_status: \ No newline at end of file diff --git a/production/docker/docker-compose-ha-diagram.png b/production/docker/docker-compose-ha-diagram.png deleted file mode 100644 index 5033674be92f5458dc9845ce4c6a8b2f39e53699..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123877 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 diff --git a/production/docker/docker-compose.yaml b/production/docker/docker-compose.yaml index 17ce16856ff8..2ddf715ea8b9 100644 --- a/production/docker/docker-compose.yaml +++ b/production/docker/docker-compose.yaml @@ -27,9 +27,24 @@ services: networks: - loki + # for testing purposes only, disable in production + log-generator: + image: mingrammer/flog + command: + - --loop + - --format=json + - --number=10 # number of log lines to generate per second + - --delay=100ms # delay between log lines + - --output=/var/log/generated-logs.txt + - --overwrite + - --type=log + volumes: + - ./loki/:/var/log/ + promtail: image: grafana/promtail:2.6.0 volumes: + - ./loki/:/var/log/ - ./config:/etc/promtail/ ports: - "9080:9080" @@ -87,7 +102,13 @@ services: ports: - "3100" - "7946" - # - "40000-40002:40000" # uncomment to enable interactive debugging on ports (40000, 400001, 400002) + + # uncomment to use interactive debugging + # - "40000-40002:40000" # # makes the replicas available on ports 40000, 40001, 40002 + #cap_add: + # - SYS_PTRACE + #security_opt: + # - apparmor=unconfined command: "-config.file=/etc/loki/loki.yaml -target=read" networks: - loki @@ -95,11 +116,7 @@ services: deploy: mode: replicated replicas: 3 - # only needed for debugging - cap_add: - - SYS_PTRACE - security_opt: - - apparmor=unconfined + # only needed for interactive debugging with dlv loki-write: image: grafana/loki:2.6.0 @@ -108,16 +125,17 @@ services: ports: - "3100" - "7946" - # - "50000-50002:40000" # uncomment to enable interactive debugging on ports (50000, 50001, 50002) + + # uncomment to use interactive debugging + # - "50000-50002:40000" # makes the replicas available on ports 50000, 50001, 50002 + # cap_add: + # - SYS_PTRACE + # security_opt: + # - apparmor=unconfined command: "-config.file=/etc/loki/loki.yaml -target=write" networks: - loki restart: always deploy: mode: replicated - replicas: 3 - # only needed for debugging - cap_add: - - SYS_PTRACE - security_opt: - - apparmor=unconfined \ No newline at end of file + replicas: 3 \ No newline at end of file From 6898f0d21450df02bb3defe04e2f706a309fe785 Mon Sep 17 00:00:00 2001 From: Danny Kopping Date: Fri, 15 Jul 2022 11:11:05 +0200 Subject: [PATCH 3/6] Upgrade guide Signed-off-by: Danny Kopping --- CHANGELOG.md | 1 + docs/sources/upgrading/_index.md | 10 ++++++++++ production/docker/config/nginx.conf | 3 ++- production/docker/docker-compose.yaml | 1 + 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bd7f8d439f30..af662a638445 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ #### Loki ##### Enhancements +* [6691](https://github.com/grafana/loki/pull/6691) **dannykopping**: Update production-ready Loki cluster in docker-compose * [6317](https://github.com/grafana/loki/pull/6317) **dannykoping**: General: add cache usage statistics * [6444](https://github.com/grafana/loki/pull/6444) **aminesnow** Add TLS config to query frontend. * [6372](https://github.com/grafana/loki/pull/6372) **splitice**: Add support for numbers in JSON fields. diff --git a/docs/sources/upgrading/_index.md b/docs/sources/upgrading/_index.md index 46e2634f6b16..e551adfda7a7 100644 --- a/docs/sources/upgrading/_index.md +++ b/docs/sources/upgrading/_index.md @@ -42,6 +42,16 @@ If you want to run at most a single querier per node, set `$._config.querier.use This value now defaults to 3100, so the Loki process doesn't require special privileges. Previously, it had been set to port 80, which is a privileged port. If you need Loki to listen on port 80, you can set it back to the previous default using `-server.http-listen-port=80`. +#### docker-compose setup has been updated + +The docker-compose [setup](https://github.com/grafana/loki/blob/main/production/docker) has been updated to **v2.6.0** and includes many improvements. + +Notable changes include: +- authentication (multi-tenancy) is **enabled** by default; you can disable it in `production/docker/config/loki.yaml` by setting `auth_enabled: false` +- storage is now using Minio instead of local filesystem + - move your current storage into `.data/minio` and it should work transparently +- log-generator was added - if you don't need it, simply remove the service from `docker-compose.yaml` or don't start the service + ## 2.6.0 ### Loki diff --git a/production/docker/config/nginx.conf b/production/docker/config/nginx.conf index bd19a04fb906..45676d11c2e2 100644 --- a/production/docker/config/nginx.conf +++ b/production/docker/config/nginx.conf @@ -34,7 +34,8 @@ http { server { listen 80; - + listen 3100; + location = /ring { proxy_pass http://cluster$request_uri; } diff --git a/production/docker/docker-compose.yaml b/production/docker/docker-compose.yaml index 2ddf715ea8b9..944fe6a6e46a 100644 --- a/production/docker/docker-compose.yaml +++ b/production/docker/docker-compose.yaml @@ -79,6 +79,7 @@ services: - ./config/nginx.conf:/etc/nginx/nginx.conf ports: - "8080:80" + - "3100" networks: - loki From 3be5f1fb0382f1f38899aff85bf2817a702c3848 Mon Sep 17 00:00:00 2001 From: Danny Kopping Date: Fri, 15 Jul 2022 15:44:16 +0200 Subject: [PATCH 4/6] Adding steps to build debug image Signed-off-by: Danny Kopping --- production/docker/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/production/docker/README.md b/production/docker/README.md index a14167c3b318..d5d6f46cbe8c 100644 --- a/production/docker/README.md +++ b/production/docker/README.md @@ -69,7 +69,11 @@ The nginx gateway runs on port `8080` and you can access Loki through it. ## Debugging -View the `docker-compose.yaml` file and uncomment the sections related to debugging. +First, you'll need to build a Loki image that includes and runs [delve](https://github.com/go-delve/delve). + +Run `make loki-debug-image` from the root of this project. Grab the image name from the output (it'll look like `grafana/loki:...-debug`) and replace the Loki images in `docker-compose.yaml`. + +Next, view the `docker-compose.yaml` file and uncomment the sections related to debugging. You can follow [this guide](https://blog.jetbrains.com/go/2020/05/06/debugging-a-go-application-inside-a-docker-container/) to enable debugging in GoLand, but the basic steps are: From 05e38d806e7c11f3efea39b371f1a1742098e931 Mon Sep 17 00:00:00 2001 From: Danny Kopping Date: Fri, 15 Jul 2022 16:21:01 +0200 Subject: [PATCH 5/6] Add prometheus Signed-off-by: Danny Kopping --- production/docker/README.md | 6 +++--- production/docker/config/prometheus.yaml | 22 ++++++++++++++++++++++ production/docker/docker-compose.yaml | 16 +++++++++++++++- 3 files changed, 40 insertions(+), 4 deletions(-) create mode 100644 production/docker/config/prometheus.yaml diff --git a/production/docker/README.md b/production/docker/README.md index d5d6f46cbe8c..ef353d7e59bb 100644 --- a/production/docker/README.md +++ b/production/docker/README.md @@ -12,6 +12,7 @@ You can use this `docker-compose` setup to run Docker for development or in prod - An optional log-generator - Multi-tenancy enabled (`docker` as the tenant ID) - Configuration for interactive debugging (see [Debugging](#debugging) section below) +- Prometheus for metric collection ## Diagram @@ -57,13 +58,12 @@ All data will be stored in the `.data` directory. The nginx gateway runs on port `8080` and you can access Loki through it. +Prometheus runs on port `9090`, and you can access all metrics from Loki & Promtail here. + ## Endpoints - [`/ring`](http://localhost:8080/ring) - view all components registered in the hash ring - [`/config`](http://localhost:8080/config) - view the configuration used by Loki -- [`/metrics`](http://localhost:8080/metrics) - access metrics exposed by Loki - - note: this is a roundrobin configuration, so we may see different metrics with each request - - if you need to scrape each pod's metrics individually, you should use Prometheus with its docker service discovery mechanism - [`/memberlist`](http://localhost:8080/memberlist) - view all components in the memberlist cluster - [all other Loki API endpoints](https://grafana.com/docs/loki/latest/api/) diff --git a/production/docker/config/prometheus.yaml b/production/docker/config/prometheus.yaml new file mode 100644 index 000000000000..ac6e57af20c3 --- /dev/null +++ b/production/docker/config/prometheus.yaml @@ -0,0 +1,22 @@ +global: + scrape_interval: 5s + +scrape_configs: + - job_name: 'prometheus' + static_configs: + - targets: + - 'prometheus:9090' + - job_name: 'loki' + dns_sd_configs: + - names: + - loki-read + - loki-write + - loki-frontend + type: A + port: 3100 + - job_name: 'promtail' + dns_sd_configs: + - names: + - promtail + type: A + port: 9080 \ No newline at end of file diff --git a/production/docker/docker-compose.yaml b/production/docker/docker-compose.yaml index 944fe6a6e46a..3c65fa7986b8 100644 --- a/production/docker/docker-compose.yaml +++ b/production/docker/docker-compose.yaml @@ -27,6 +27,17 @@ services: networks: - loki + prometheus: + image: prom/prometheus:v2.27.0 + ports: + - 9090:9090 + volumes: + - ./config/prometheus.yaml:/etc/prometheus/prometheus.yml + - prometheus:/prometheus + command: [ '--log.level=debug', '--config.file=/etc/prometheus/prometheus.yml', '--query.lookback-delta=30s' ] + networks: + - loki + # for testing purposes only, disable in production log-generator: image: mingrammer/flog @@ -139,4 +150,7 @@ services: restart: always deploy: mode: replicated - replicas: 3 \ No newline at end of file + replicas: 3 + +volumes: + prometheus: \ No newline at end of file From 9c1efcd851fbdd924423e853d3c517a284efcea4 Mon Sep 17 00:00:00 2001 From: Danny Kopping Date: Fri, 15 Jul 2022 16:38:40 +0200 Subject: [PATCH 6/6] Add datasources and disable Grafana auth Signed-off-by: Danny Kopping --- production/docker/README.md | 6 +++--- production/docker/config/datasources.yaml | 25 +++++++++++++++++++++++ production/docker/docker-compose.yaml | 10 ++++++++- 3 files changed, 37 insertions(+), 4 deletions(-) create mode 100644 production/docker/config/datasources.yaml diff --git a/production/docker/README.md b/production/docker/README.md index ef353d7e59bb..750616d052bc 100644 --- a/production/docker/README.md +++ b/production/docker/README.md @@ -50,9 +50,7 @@ graph LR Simply run `docker-compose up` and all the components will start. -It'll take a few seconds for all the components to start up and register in the [ring](http://localhost:8080/ring). Once all instances are `ACTIVE`, Loki will start accepting reads and writes. - -Grafana will be made available at [http://localhost:3000](http://localhost:3000) (use `admin:admin` for the credentials). When adding a Loki datasource, use `http://loki-gateway` for the URL, and add a custom HTTP header named `X-Scope-OrgID` with a value of `docker`. +It'll take a few seconds for all the components to start up and register in the [ring](http://localhost:8080/ring). Once all instances are `ACTIVE`, Loki will start accepting reads and writes. All logs will be stored with the tenant ID `docker`. All data will be stored in the `.data` directory. @@ -60,6 +58,8 @@ The nginx gateway runs on port `8080` and you can access Loki through it. Prometheus runs on port `9090`, and you can access all metrics from Loki & Promtail here. +Grafana runs on port `3000`, and there are Loki & Prometheus datasources enabled by default. + ## Endpoints - [`/ring`](http://localhost:8080/ring) - view all components registered in the hash ring diff --git a/production/docker/config/datasources.yaml b/production/docker/config/datasources.yaml new file mode 100644 index 000000000000..cf6948fec545 --- /dev/null +++ b/production/docker/config/datasources.yaml @@ -0,0 +1,25 @@ +apiVersion: 1 +datasources: + - access: proxy + basicAuth: false + jsonData: + httpHeaderName1: "X-Scope-OrgID" + secureJsonData: + httpHeaderValue1: "docker" + editable: true + isDefault: true + name: loki + type: loki + uid: loki + url: http://loki-gateway + version: 1 + + - access: proxy + basicAuth: false + editable: true + isDefault: false + name: prometheus + type: prometheus + uid: prometheus + url: http://prometheus:9090 + version: 1 \ No newline at end of file diff --git a/production/docker/docker-compose.yaml b/production/docker/docker-compose.yaml index 3c65fa7986b8..1611f5a0bd6a 100644 --- a/production/docker/docker-compose.yaml +++ b/production/docker/docker-compose.yaml @@ -24,6 +24,13 @@ services: image: grafana/grafana:8.5.9 ports: - "3000:3000" + environment: + GF_AUTH_ANONYMOUS_ENABLED: "true" + GF_AUTH_DISABLE_LOGIN_FORM: "true" + GF_AUTH_ANONYMOUS_ORG_ROLE: "Admin" + volumes: + - ./config/datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yml + - grafana:/var/lib/grafana networks: - loki @@ -153,4 +160,5 @@ services: replicas: 3 volumes: - prometheus: \ No newline at end of file + prometheus: + grafana: \ No newline at end of file