Set up Loki

This commit is contained in:
AngrySoundTech
2023-03-04 09:18:27 -05:00
parent 55104bd39d
commit 9fad02f5e2
7 changed files with 93 additions and 1 deletions

View File

@@ -44,7 +44,9 @@ end;
subgraph Monitoring;
mon_grafana[Grafana];
mon_loki[Loki];
mon_grafana-->mon_loki;
mon_grafana-->mc_postgres;
mon_grafana-->mc_mariadb;
mon_grafana-.->auth_keycloak;

View File

@@ -3,6 +3,15 @@
rule: allow
name: OpenSSH
# Docker bypasses UFW and modifies iptables directly
- name: Protect port 3100 for Loki
iptables:
chain: DOCKER-USER
in_interface: ens18 # TODO: Make interface configurable for others
destination_port: 3100
protocol: tcp
jump: REJECT
# TODO: Nodes in swarm
#- name: Allow Docker-machine communication from trusted
# ufw:

View File

@@ -33,6 +33,12 @@ services:
- traefik.http.routers.keycloak-public-https.tls=true
- traefik.http.routers.keycloak-public-https.tls.certresolver=le
- traefik.http.services.keycloak-public.loadbalancer.server.port=8080
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
postgres:
image: postgres:latest
@@ -51,6 +57,12 @@ services:
deploy:
placement:
constraints: [node.role == manager]
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
networks:
traefik-public:

View File

@@ -22,6 +22,12 @@ services:
deploy:
placement:
constraints: [node.role == manager]
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
paper:
image: ghcr.io/civmc/civdocker/paper:1.18.5
@@ -75,6 +81,12 @@ services:
deploy:
placement:
constraints: [node.role == manager]
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
queue:
image: ghcr.io/civmc/civdocker/queue:1.18.5
@@ -98,6 +110,12 @@ services:
deploy:
placement:
constraints: [node.role == manager]
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
kira:
image: ghcr.io/civmc/kira:2.0.0
@@ -109,6 +127,12 @@ services:
deploy:
placement:
constraints: [node.role == manager]
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
mariadb:
image: mariadb:10.7.1
@@ -126,6 +150,12 @@ services:
deploy:
placement:
constraints: [node.role == manager]
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
postgres:
image: timescale/timescaledb:latest-pg14
@@ -147,6 +177,12 @@ services:
deploy:
placement:
constraints: [node.role == manager]
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
rabbitmq:
image: rabbitmq:3.9.16-management
@@ -162,6 +198,12 @@ services:
deploy:
placement:
constraints: [node.role == manager]
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
networks:
minecraft_default:

View File

@@ -39,13 +39,22 @@ services:
- traefik.http.routers.grafana-public-https.tls=true
- traefik.http.routers.grafana-public-https.tls.certresolver=le
- traefik.http.services.grafana-public.loadbalancer.server.port=3000
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
loki:
image: grafana/loki
networks:
- monitoring
ports:
- "3100:3100"
volumes:
- /opt/stacks/monitoring/loki-data:/data/loki
- /opt/stacks/monitoring/loki-config/local-config.yaml:/etc/loki/local-config.yaml
- /opt/stacks/monitoring/loki-data:/loki
deploy:
placement:
constraints: [node.role == manager]

View File

@@ -12,6 +12,12 @@ services:
mode: global
placement:
constraints: [node.platform.os == linux]
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
portainer:
image: portainer/portainer-ce:2.11.1
@@ -38,6 +44,12 @@ services:
- traefik.http.routers.portainer-https.tls=true
- traefik.http.routers.portainer-https.tls.certresolver=le
- traefik.http.services.portainer.loadbalancer.server.port=9000
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
networks:
agent_network:

View File

@@ -34,6 +34,12 @@ services:
- --accesslog
- --log
- --api
logging:
driver: grafana/loki-docker-driver
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
loki-retries: "5"
loki-batch-size: "400"
networks:
traefik-public: