You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

启用Basic Authentication后Solr Prometheus Exporter连接失败求助

解决Solr启用Basic Authentication后Prometheus Exporter无法连接的问题

核心原因

启用Basic Auth后,Exporter请求Solr时未携带认证凭证,导致被Solr拒绝访问,抛出无具体信息的RemoteSolrException。

解决方案

1. 给Solr Exporter添加认证参数

方式一:命令行直接指定

修改启动命令,添加-u参数传入用户名和密码(格式为用户名:密码):

./bin/solr-exporter -p 9309 -b http://localhost:8309/solr -f ./conf/solr-exporter-config.xml -u solr:Solr123

替换solr:Solr123为你实际的Solr Basic Auth用户名和密码。

方式二:通过配置文件指定

编辑solr-exporter-config.xml,在<solrClient>节点下添加认证配置:

<solrClient>
  <authConfig>
    <basicAuth>
      <username>solr</username>
      <password>Solr123</password>
    </basicAuth>
  </authConfig>
</solrClient>

保存后重启Exporter即可。

2. 确保Solr用户具备所需权限

Exporter需要访问Solr的核心信息、metrics端点等,确保你的Basic Auth用户拥有以下权限:

  • 访问/solr/admin/cores的权限
  • 访问各核心的/admin/ping和/admin/metrics端点的权限
    可以在Solr的security.json中配置对应的权限规则,比如:
{
  "authorization": {
    "permissions": [
      {
        "name": "metrics-read",
        "path": "/admin/metrics",
        "method": "GET"
      },
      {
        "name": "cores-read",
        "path": "/admin/cores",
        "method": "GET"
      },
      {
        "name": "ping-read",
        "path": "/admin/ping",
        "method": "GET"
      }
    ],
    "role-permissions": [
      {
        "role": "admin",
        "permission": "*"
      }
    ],
    "user-role": {
      "solr": ["admin"]
    }
  }
}

3. 验证配置正确性

  • 手动用curl测试认证是否有效:
curl -u solr:Solr123 http://localhost:8309/solr/admin/cores

如果能正常返回核心信息,说明认证凭证和权限没问题。

  • 检查Exporter启动日志,确认没有认证相关的报错。

错误排查补充

如果添加认证后仍报错,可尝试:

  • 确认Solr的Basic Auth配置正确,security.json已加载生效
  • 查看Solr的访问日志,确认Exporter的请求是否被拒绝,以及拒绝的具体原因

内容的提问来源于stack exchange,提问作者Amr Elkady

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 18:52:34