Ubuntu服务器Loki与Grafana连接失败问题排查求助
Loki无法连接Grafana数据源的排查与解决方法
一、基础连通性验证
- 在Grafana所在服务器执行
curl http://localhost:3100/ready,若返回ready说明Loki服务正常;若不通,先检查Loki运行状态:systemctl status loki,再查看Loki日志定位问题:journalctl -u loki。 - 确认Grafana数据源配置的URL正确性:同一服务器下优先使用
http://localhost:3100,避免使用公网IP(除非有跨网需求),确保Loki配置中server.http_listen_port确实为3100。
二、Loki存储目录权限排查
你的Loki配置中common.path_prefix设为/etc/loki,该目录默认属root权限,若Loki以普通用户运行会无读写权限,导致服务异常:
- 创建有权限的存储目录:
mkdir -p /var/lib/loki/chunks /var/lib/loki/rules - 修改目录归属:
chown -R loki:loki /var/lib/loki(假设Loki进程以loki用户运行) - 编辑Loki配置文件,将
common.path_prefix改为/var/lib/loki,同步更新chunks_directory和rules_directory路径为/var/lib/loki/chunks、/var/lib/loki/rules - 重启Loki服务:
systemctl restart loki
三、防火墙与端口检查
- 同一服务器内,确认3100端口未被防火墙拦截:执行
ufw status查看规则,若未开放则添加:ufw allow 3100/tcp - 在Promtail所在服务器测试Loki端口可达性:
curl http://35.22.35.29:3100/ready,若不通需检查Loki服务器的防火墙规则,确保3100端口对外开放。
四、通过Grafana日志定位具体错误
查看Grafana实时日志获取详细报错:tail -f /var/log/grafana/grafana.log,在添加数据源时观察日志输出,可精准定位是超时、权限还是URL配置错误。
附:配置文件中文翻译
Promtail配置文件
server: http_listen_port: 9080 # HTTP服务监听端口 grpc_listen_port: 0 # 禁用GRPC服务监听 positions: filename: /tmp/positions.yaml # 记录日志采集进度的文件路径 clients: - url: http://35.22.35.29:3100/loki/api/v1/push # 日志推送至Loki的API地址 scrape_configs: - job_name: apache-logs # 采集任务名称 static_configs: - targets: - localhost # 日志采集目标主机 labels: job: apache # 日志标签:任务标识 __path__: /var/log/apache2/*.log # 待采集的Apache日志文件路径
Loki配置文件
auth_enabled: false # 禁用身份验证 server: http_listen_port: 3100 # HTTP服务监听端口 grpc_listen_port: 9096 # GRPC服务监听端口 common: path_prefix: /etc/loki # 基础存储根路径 storage: filesystem: chunks_directory: /etc/loki/chunks # 日志块存储目录 rules_directory: /etc/loki/rules # 规则文件存储目录 replication_factor: 1 # 数据副本数(单节点环境设为1) ring: instance_addr: 0.0.0.0 # 实例监听地址(0.0.0.0表示监听所有网卡) kvstore: store: inmemory # 使用内存存储环数据(单节点模式) schema_config: configs: - from: 2020-10-24 # 配置生效起始时间 store: boltdb-shipper # 索引存储类型 object_store: filesystem # 对象存储类型 schema: v11 # 使用的Schema版本 index: prefix: index_ # 索引文件前缀 period: 24h # 索引滚动周期 ruler: alertmanager_url: http://localhost:9093 # 关联的Alertmanager地址
内容的提问来源于stack exchange,提问作者Saksham Paliwal
相关产品推荐
相关产品推荐

