恒美微站
首页
关于我们
建站服务
主题模板
案例展示
资讯中心
联系我们
ScyllaDB Manager 与 ScyllaDB Monitoring 集成排查指南:Dashboard 显示 not connected 的定位与修复
首页
资讯中心
/
ScyllaDB Manager 与 ScyllaDB Monitoring 集成排查指南:Dashboard 显示 not connected 的定位与修复
ScyllaDB Manager 与 ScyllaDB Monitoring 集成排查指南:Dashboard 显示 not connected 的定位与修复
发布时间:2026/9/15 18:11:16
ScyllaDB Manager 与 ScyllaDB Monitoring 集成排查指南Dashboard 显示 not connected 的定位与修复【免费下载链接】scylladbNoSQL data store using the Seastar framework, compatible with Apache Cassandra and Amazon DynamoDB项目地址: https://gitcode.com/GitHub_Trending/sc/scylladb导读本文是面向 ScyllaDB 运维人员的故障排查指南主题源自 docs/troubleshooting/manager-monitoring-integration.rst当 ScyllaDB Manager 与 ScyllaDB Monitoring 均已安装但 Monitoring 中的 Manager Dashboard 却显示 ScyllaDB Manager not connected未连接时如何按步骤定位根因并修复。读完本文你将掌握一套从sctool连通性验证、Monitoring 启动参数核对到 Prometheus 抓取地址与 Manager 绑定地址对齐、以及自建 Prometheus 下手动添加scylla_managertarget 的完整实战方法。症状SymptomScyllaDB Manager 和 ScyllaDB Monitoring 都已安装但当你在 ScyllaDB Monitoring 中查看时ScyllaDB Manager Dashboard 显示 ScyllaDB Manager 的状态为 not connected。出现该症状时Manager 本身可能运行正常问题往往出在监控数据链路上Manager 的指标metrics没有被 Monitoring 栈中的 Prometheus 正确抓取或抓取地址与 Manager 的绑定地址不一致。下面按步骤逐层排查。排查步骤总览整个排查流程共分六步先验证两端进程是否存活再检查 Dashboard 状态最后深入 IP 绑定/抓取地址与 Prometheus target 配置验证 ScyllaDB Manager Server 正在运行验证 ScyllaDB Monitoring 以带 Manager Dashboard-Mflag的方式启动复查 Manager Dashboard 连接状态若仍未连接检查 IP 地址不同步问题最常见根因非 Docker 自建 Prometheus 场景下检查scylla_managertarget 是否存在于 Targets 列表缺失 target 时手动将scylla_manager加入 Prometheus。第一步验证 ScyllaDB Manager Server 正在运行从 ScyllaDB Monitoring 所在节点执行以下 ScyllaDB Manager 命令行sctool命令sctool version sctool status -c CLUSTERNAMEsctool version用于确认 Manager 命令行客户端与 Server 之间的通信是否正常sctool status -c CLUSTERNAME用于确认指定集群在 Manager 侧的托管状态。如果两条命令都能返回响应且无报错说明ScyllaDB Manager Server 正在运行问题不在 Manager 进程本身可以继续下一步。第二步验证 Monitoring 以 Manager Dashboard 模式启动ScyllaDB Monitoring 需要以包含 Manager Dashboard的方式启动。启动脚本start-all.sh支持-Mflag用于指定 Manager Dashboard 的版本示例中为 2.0-v指定监控栈版本示例中为 3.0-s、-n、-d分别指定 ScyllaDB servers、node_exporter servers 的清单文件与数据目录/start-all.sh -s path/to/scylla_servers.yml -n path/to/node_exporter_servers.yml -d path/to/mydata -v 3.0 -M 2.0说明上述参数含义与启动方式以 ScyllaDB Monitoring 官方部署文档为准此处仅为复现该文档给出的可执行示例。若启动时遗漏-MflagMonitoring 栈中就不会加载 Manager Dashboard从而出现看不到 Manager 或显示未连接的现象。第三步复查 Manager Dashboard 连接状态在 ScyllaDB Monitoring 中打开ScyllaDB Manager Dashboard确认是否已显示 ScyllaDB Manager 为connected。若已显示 connected问题已解决无需继续若仍未连接继续执行下一步重点排查 IP 地址同步问题。IP 地址不同步最常见的根因绝大多数not connected案例的根因是IP 地址没有同步ScyllaDB Manager 将 Prometheus API 绑定在一个 IP 地址上而 Prometheus 却从另一个 IP 地址去拉取 Manager 的 metrics两端对不上Dashboard 自然显示未连接。注意当 Monitoring 与 Manager 运行在同一台服务器上时这个 IP 可能不等于127.0.0.1localhost。例如 Docker 网络中 Manager 容器对外暴露的往往是172.17.0.1这类网桥地址。修复需要两端同时对齐Manager 侧修改 prometheus 绑定地址在/etc/scylla-manager/scylla-manager.yaml中将 Prometheus 绑定的 TCP 地址修改为 Prometheus 实际运行所在的IPADDRESS:PORT# Bind prometheus API to the specified TCP address using HTTP protocol. # By default it binds to all network interfaces but you can restrict it # by specifying it like this 127.0.0.1:5090 or any other combination # of ip and port. prometheus: 172.17.0.1:5090要点该配置项默认绑定到所有网络接口通过指定ip:port如172.17.0.1:5090可将其限制到特定地址Manager 的 Prometheus API 默认端口为5090文档示例中的172.17.0.1:5090即为一例。Prometheus 侧修改抓取地址在 ScyllaDB Monitoring 的scylla-monitoring/prometheus/scylla_manager_servers.yml中修改 Prometheus 拉取 Manager metrics 的 IP 地址使其与上面的绑定地址一致。该文件默认将地址设置为172.17.0.1:5090- targets: - 172.17.0.1:5090两端都改为同一地址后Prometheus 才能从 Manager 的 Prometheus API 上成功抓取到指标Dashboard 随之恢复 connected 状态。非 Docker 场景检查 Prometheus Targets如果没有使用 ScyllaDB Monitoring 栈Docker 方式而是使用自己的 Prometheus 部署则需要检查scylla_managertarget 是否已被 Prometheus 纳入抓取范围。打开 Prometheus 的 Targets 页面http://[Prometheus_IP]:9090/targets status 菜单 - targets常见的现象是页面里只有scylla和node_exporter两个分组完全没有 scylla_manager如图所示node_exporter与scylla分组都在但 Targets 页面中不存在scylla_manager分组说明 Prometheus 的抓取配置中根本没有 Manager 的 target。手动将 scylla_manager 加入 Prometheus一旦确认缺失就需要按照前面IP 地址同步一节的方法将scylla_managertarget 添加到 Prometheus 的抓取配置中即在 Prometheus 配置中增加指向 Manager Prometheus API 地址IPADDRESS:5090的 target 项等价于 Monitoring 栈中scylla_manager_servers.yml所描述的内容。添加并 reload 配置后再回到 Targets 页面应当看到新增的scylla_manager分组且状态为 UP如上图所示scylla_manager (1/1 up)Endpoint 指向 Manager 的 metrics 地址示例中为10.10.3.38:56090/metricsjob 标签为scylla_manager说明抓取已成功Manager 指标已进入 Prometheus。关联仓库配置从源码理解地址与端口虽然 Manager 与 Monitoring 属于独立组件但本仓库中 ScyllaDB 自身的 Prometheus 指标暴露方式与上述排查逻辑一致可作为类比参考conf/scylla.yaml 中定义了 ScyllaDB 节点的 Prometheus API 配置默认端口为9180prometheus_address默认与listen_address保持一致并允许显式覆盖如prometheus_address: 1.2.3.4设置端口为 0 可禁用 Prometheus APIdocs/operating-scylla/admin.rst 中对prometheus_address的说明为用于 Prometheus 查询的地址并与prometheus_port配合使用docs/dev/metrics.md 描述了 ScyllaDB 指标暴露格式Prometheus exposition format。可以看到节点/服务暴露 metrics 的地址与Prometheus 抓取该地址必须一一对应是 ScyllaDB 生态中所有监控集成的通用原则。Manager 的prometheus绑定配置与scylla_manager_servers.yml的 target 列表正是这一原则在 Manager 监控链路上的具体体现。小结当 ScyllaDB Manager Dashboard 显示 not connected 时按以下顺序排查即可快速收敛sctool version/sctool status -c CLUSTERNAME确认 Manager Server 存活确认 Monitoring 以带-Mflag 的方式启动且版本匹配复查 Dashboard 是否恢复 connected仍未恢复时将/etc/scylla-manager/scylla-manager.yaml的prometheus绑定地址与scylla-monitoring/prometheus/scylla_manager_servers.yml的 target 地址对齐注意同一主机上可能不是 127.0.0.1自建 Prometheus 场景下到http://[Prometheus_IP]:9090/targets确认scylla_manager是否存在且 UP缺失则手动添加 target 并 reload确认状态为 UP。核心原则只有一条让 Prometheus 从 Manager 实际绑定的地址上抓到 metrics两端的 IP 与端口完全一致Dashboard 便会恢复 connected。【免费下载链接】scylladbNoSQL data store using the Seastar framework, compatible with Apache Cassandra and Amazon DynamoDB项目地址: https://gitcode.com/GitHub_Trending/sc/scylladb创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考