10
Grafana-Loki-Promtail使用Docker-Compose安装
source link: https://syxdevcode.github.io/2022/10/24/Grafana-Loki-Promtail%E4%BD%BF%E7%94%A8Docker-Compose%E5%AE%89%E8%A3%85/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
创建对应目录
mkdir -p /opt/grafana/loki/config
mkdir -p /opt/grafana/promtail/log
mkdir -p /opt/grafana/conf
mkdir -p /opt/grafana/data
mkdir -p /opt/grafana/log
创建配置文件
loki配置文件
路径:/opt/grafana/loki/config/local-config.yaml
:
auth_enabled: false
server:
http_listen_port: 3100
grpc_server_max_recv_msg_size: 157286400 # 150M
grpc_server_max_send_msg_size: 157286400 # 150M
common:
path_prefix: /loki
storage:
filesystem:
chunks_directory: /loki/chunks
rules_directory: /loki/rules
replication_factor: 1
ring:
kvstore:
store: inmemory
schema_config:
configs:
- from: 2020-10-24
store: boltdb-shipper
object_store: filesystem
schema: v11
index:
prefix: loki_index_
period: 24h
limits_config:
ingestion_rate_strategy: local
ingestion_rate_mb: 15 # 每个用户每秒的采样率限制
ingestion_burst_size_mb: 30 # 每个用户允许的采样突发大小
reject_old_samples: true # 是否拒绝旧样本
reject_old_samples_max_age: 720h # 720小时之前的样本被拒绝
storage_config:
boltdb_shipper:
active_index_directory: /loki/boltdb-shipper-active
cache_location: /loki/boltdb-shipper-cache
cache_ttl: 24h
shared_store: filesystem
filesystem:
directory: /loki/chunks
compactor:
working_directory: /loki/retention
shared_store: filesystem
compaction_interval: 10m
retention_enabled: true
retention_delete_delay: 2h
retention_delete_worker_count: 150
chunk_store_config:
max_look_back_period: 4320h
table_manager:
retention_deletes_enabled: true # 保留删除开启
retention_period: 4320h # 超过4320h的块数据将被删除
ruler:
alertmanager_url: http://localhost:9093
promtail配置文件
参考:https://grafana.com/docs/loki/latest/clients/promtail/configuration/
server:
http_listen_port: 9080
grpc_listen_port: 0
grpc_server_max_recv_msg_size: 157286400 # 150M
grpc_server_max_send_msg_size: 157286400 # 150M
positions:
filename: /tmp/positions.yaml
clients:
- url: http://loki:3100/loki/api/v1/push
scrape_configs:
- job_name: system
static_configs:
- targets:
- localhost
labels:
job: varlogs
__path__: /var/log/*log
创建用户和用户组
1,宿主机新增用户 grafana
,并修改UID和GID都为472(因为容器内的运行用户也是grafana,且UID和GID都是472)
useradd grafana
vi /etc/passwd # 编辑用户Id
# 参考: -------
grafana:x:472:472::/home/grafana:/bin/sh
2,编辑用户组
vi /etc/group
# 参考: -------
grafana:x:472:
3,修改目录所有者为grafana
chown -R grafana:grafana /opt/grafana/conf && \
chmod -R a+r /opt/grafana/conf && \
chmod -R a+r /opt/grafana/data && \
chown -R grafana:grafana /opt/grafana/data
创建docker网络
docker network create --driver bridge --subnet 10.10.13.0/24 --gateway 10.10.13.1 docker_compose_net
编排docker-compose
version: "3"
networks:
default:
external:
name: docker_compose_net
services:
loki:
image: grafana/loki:2.6.0
restart: unless-stopped
container_name: loki
ports:
- "3100:3100"
volumes:
- /opt/grafana/loki/:/etc/loki/
- /opt/grafana/loki/config/:/etc/loki/config
command: -config.file=/etc/loki/config/local-config.yaml
environment:
- TZ=Asia/Shanghai # 时区配置亚洲上海
promtail:
image: grafana/promtail:2.6.0
restart: unless-stopped
container_name: promtail
volumes:
- /opt/grafana/promtail/log:/var/log
- /opt/grafana/promtail/:/etc/promtail/
command: -config.file=/etc/promtail/config.yml
environment:
- TZ=Asia/Shanghai # 时区配置亚洲上海
grafana:
image: grafana/grafana:latest
restart: unless-stopped
container_name: grafana
volumes:
# - /opt/grafana/conf/:/etc/grafana/ # 不指定配置文件,使用默认配置文件
- /opt/grafana/data/:/var/lib/grafana/
- /opt/grafana/log/:/var/log/grafana/
ports:
- "3000:3000"
user: '472'
environment:
- TZ=Asia/Shanghai # 时区配置亚洲上海
启动&移除
# 启动
docker-compose up -d
# 移除
docker-compose down -v
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK