Debian 11,多个 Solr 版本在不同端口上运行,lsof 说 Solr9 只能从 localhost.localdomain 访问

Debian 11,多个 Solr 版本在不同端口上运行,lsof 说 Solr9 只能从 localhost.localdomain 访问

我有一台运行 Solr 7.3 的 Debian 9 服务器。我已升级到 Debian 11,Solr 仍然运行正常。

现在,我尝试同时安装 Solr 9 和 Solr 7.3,以便同时运行两个版本。我遵循了官方指南

bash ./install_solr_service.sh solr-9.0.0.tgz -i /opt -d /var/solr9 -u solr -s solr9 -p 8984

安装似乎工作systemctl status solr9.service正常

● solr9.service - LSB: Controls Apache Solr as a Service
     Loaded: loaded (/etc/init.d/solr9; generated)
     Active: active (exited) since Mon 2022-11-14 12:43:13 UTC; 4min 47s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 6781 ExecStart=/etc/init.d/solr9 start (code=exited, status=0/SUCCESS)

Nov 14 12:43:07 xxx systemd[1]: Starting LSB: Controls Apache Solr as a Service...
Nov 14 12:43:13 xxx solr9[6835]: Started Solr server on port 8984 (pid=6830). Happy searching!
Nov 14 12:43:13 xxx systemd[1]: Started LSB: Controls Apache Solr as a Service.

但我无法从浏览器访问 Solr9 面板。

我已经检查过iptables --list,端口 8983(运行 Solr 7.3)的设置与端口 8984(运行 Solr 9)的设置相同。

lsof -i | grep 8983

java    5622        solr   37u  IPv6 117480      0t0  TCP *:8983 (LISTEN)

lsof -i | grep 8984

java    6830        solr  136u  IPv6 134506      0t0  TCP localhost.localdomain:8984 

答案1

我想我已经找到了解决方案,它与运行多个版本的 solr 无关,我在全新安装的 Debian 上遇到了相同的问题。

所以解决方案是:

打开配置文件/etc/default/solr.in.sh(在我的情况下是/etc/default/solr9.in.sh

附加此行

SOLR_JETTY_HOST="0.0.0.0"

重新启动服务systemctl restart solr.service(就我而言systemctl restart solr9.service

现在终于lsof -i | grep 8984说端口是开放的

java    1952        solr  136u  IPv6  29073      0t0  TCP *:8984 (LISTEN)

最后我可以从浏览器访问 Solr 管理 UI。

所有荣誉归于:https://tecadmin.net/configuring-apache-solr-to-accessible-on-public-ip/

相关内容