对象存储接入(MinIO / COS)
日志(Loki)和链路(Tempo)默认存本地卷。数据量大或要跨节点共享时,可以改存对象存储。
先看哪些组件需要
- 单机部署:只有**日志(Loki)**需要考虑对象存储。单机不具备链路追踪能力、不产生链路数据,
ops-tempo无需也不建议配置对象存储。 - 集群部署:日志和链路都可以用对象存储,且必须用两个不同的桶。
一、准备 MinIO
已有 MinIO 或云对象存储可跳到第二步。
docker run -d --name minio \
-p 9000:9000 -p 9001:9001 \
-e MINIO_ROOT_USER=minioadmin \
-e MINIO_ROOT_PASSWORD='<强随机密码>' \
-v /data/minio:/data \
--restart always \
minio/minio server /data --console-address ":9001"
9000是 S3 API 端口(平台连的是这个),9001是 Web 控制台 。- 生产请把
MINIO_ROOT_PASSWORD换成强随机串,并只在内网暴露 9000。
浏览器打开 http://MinIO主机IP:9001,用上面的账号密码登录。
二、建桶
Loki 和 Tempo 必须用不同的桶,共用会互相覆盖元数据。
控制台 Buckets → Create Bucket,或用命令行:
docker run --rm --network host --entrypoint sh minio/mc -c "
mc alias set local http://<MinIO主机IP>:9000 minioadmin '<密码>' &&
mc mb local/mdis-loki &&
mc mb local/mdis-tempo &&
mc ls local"
命名没有强制要求,本文用 mdis-loki / mdis-tempo。