注意:我已经检查了类似的问题并尝试了他们的解决方案,但无法解决此问题。
我已经在 Ubuntu 20.04 上安装了 Solr 8.7.0 并创建了一些空白内核进行测试。我可以通过http://139.59.75.45:8983/solr/
访问管理 UI
但在我尝试从桌面 solr\example\films\films.csv 上传文档后,它停止响应。
我从终端检查过,solr 服务处于活动状态,但是当我尝试时
curl -X GET "http://139.59.75.45:8983/solr/"
我得到以下回复:
curl: (7) Failed to connect to 139.59.75.45 port 8983: Connection refused.
请注意,我在上传之前没有对核心架构进行任何更改。在搜索了所有日志之后,stackoverflow 我还是找不到原因。请告知如何解决此问题。
以下是 solr 服务状态输出:
root@lemp-02:~# service solr status
● solr.service - LSB: Controls Apache Solr as a Service
Loaded: loaded (/etc/init.d/solr; generated)
Active: active (exited) since Sat 2020-12-26 18:22:53 UTC; 9h ago
Docs: man:systemd-sysv-generator(8)
Process: 4148 ExecStart=/etc/init.d/solr start (code=exited, status=0/SUCCESS)
Dec 26 18:22:45 lemp-02 systemd[1]: Starting LSB: Controls Apache Solr as a Service...
Dec 26 18:22:45 lemp-02 su[4160]: (to solr) root on none
Dec 26 18:22:45 lemp-02 su[4160]: pam_unix(su-l:session): session opened for user solr by (uid=0)
Dec 26 18:22:53 lemp-02 solr[4225]: Started Solr server on port 8983 (pid=4220). Happy searching!
Dec 26 18:22:53 lemp-02 systemd[1]: Started LSB: Controls Apache Solr as a Service.
以下是 solr.log:
2020-12-26 18:22:47.606 INFO (main) [ ] o.e.j.u.log Logging initialized @2098ms to org.eclipse.jetty.util.log.Slf4jLog
2020-12-26 18:22:48.045 INFO (main) [ ] o.e.j.s.Server jetty-9.4.24.v20191120; built: 2019-11-20T21:37:49.771Z; git: 363d5f2df3a8a28de40604320230664b9c793c16; jvm 11.0.9.1+1-Ubuntu-0ubuntu1.20.04
2020-12-26 18:22:48.080 INFO (main) [ ] o.e.j.d.p.ScanningAppProvider Deployment monitor [file:///opt/solr-8.5.2/server/contexts/] at interval 0
2020-12-26 18:22:48.758 INFO (main) [ ] o.e.j.w.StandardDescriptorProcessor NO JSP Support for /solr, did not find org.apache.jasper.servlet.JspServlet
2020-12-26 18:22:48.783 INFO (main) [ ] o.e.j.s.session DefaultSessionIdManager workerName=node0
2020-12-26 18:22:48.783 INFO (main) [ ] o.e.j.s.session No SessionScavenger set, using defaults
2020-12-26 18:22:48.791 INFO (main) [ ] o.e.j.s.session node0 Scavenging every 600000ms
2020-12-26 18:22:48.990 INFO (main) [ ] o.a.s.s.SolrDispatchFilter Using logger factory org.apache.logging.slf4j.Log4jLoggerFactory
2020-12-26 18:22:48.999 INFO (main) [ ] o.a.s.s.SolrDispatchFilter ___ _ Welcome to Apache Solrâ„¢ version 8.5.2
2020-12-26 18:22:49.004 INFO (main) [ ] o.a.s.s.SolrDispatchFilter / __| ___| |_ _ Starting in standalone mode on port 8983
2020-12-26 18:22:49.004 INFO (main) [ ] o.a.s.s.SolrDispatchFilter \__ \/ _ \ | '_| Install dir: /opt/solr
2020-12-26 18:22:49.005 INFO (main) [ ] o.a.s.s.SolrDispatchFilter |___/\___/_|_| Start time: 2020-12-26T18:22:49.005242Z
2020-12-26 18:22:49.118 INFO (main) [ ] o.a.s.c.SolrResourceLoader Using system property solr.solr.home: /var/solr/data
2020-12-26 18:22:49.128 INFO (main) [ ] o.a.s.c.SolrXmlConfig Loading container configuration from /var/solr/data/solr.xml
2020-12-26 18:22:49.281 INFO (main) [ ] o.a.s.c.SolrXmlConfig MBean server found: com.sun.jmx.mbeanserver.JmxMBeanServer@33065d67, but no JMX reporters were configured - adding default JMX reporter.
2020-12-26 18:22:50.611 INFO (main) [ ] o.a.s.h.c.HttpShardHandlerFactory Host whitelist initialized: WhitelistHostChecker [whitelistHosts=null, whitelistHostCheckingEnabled=true]
2020-12-26 18:22:50.981 WARN (main) [ ] o.e.j.u.s.S.config Trusting all certificates configured for Client@1cb7936c[provider=null,keyStore=null,trustStore=null]
2020-12-26 18:22:50.982 WARN (main) [ ] o.e.j.u.s.S.config No Client EndPointIdentificationAlgorithm configured for Client@1cb7936c[provider=null,keyStore=null,trustStore=null]
2020-12-26 18:22:51.458 WARN (main) [ ] o.e.j.u.s.S.config Trusting all certificates configured for Client@35cd68d4[provider=null,keyStore=null,trustStore=null]
2020-12-26 18:22:51.458 WARN (main) [ ] o.e.j.u.s.S.config No Client EndPointIdentificationAlgorithm configured for Client@35cd68d4[provider=null,keyStore=null,trustStore=null]
2020-12-26 18:22:51.504 WARN (main) [ ] o.a.s.c.CoreContainer Not all security plugins configured! authentication=disabled authorization=disabled. Solr is only as secure as you make it. Consider configuring authentication/authorization before exposing Solr to users internal or external. See https://s.apache.org/solrsecurity for more info
2020-12-26 18:22:51.890 INFO (main) [ ] o.a.s.c.TransientSolrCoreCacheDefault Allocating transient cache for 2147483647 transient cores
2020-12-26 18:22:51.893 INFO (main) [ ] o.a.s.h.a.MetricsHistoryHandler No .system collection, keeping metrics history in memory.
2020-12-26 18:22:52.080 INFO (main) [ ] o.a.s.m.r.SolrJmxReporter JMX monitoring for 'solr.node' (registry 'solr.node') enabled at server: com.sun.jmx.mbeanserver.JmxMBeanServer@33065d67
2020-12-26 18:22:52.086 INFO (main) [ ] o.a.s.m.r.SolrJmxReporter JMX monitoring for 'solr.jvm' (registry 'solr.jvm') enabled at server: com.sun.jmx.mbeanserver.JmxMBeanServer@33065d67
2020-12-26 18:22:52.101 INFO (main) [ ] o.a.s.m.r.SolrJmxReporter JMX monitoring for 'solr.jetty' (registry 'solr.jetty') enabled at server: com.sun.jmx.mbeanserver.JmxMBeanServer@33065d67
2020-12-26 18:22:52.175 INFO (main) [ ] o.a.s.c.CorePropertiesLocator Found 2 core definitions underneath /var/solr/data
2020-12-26 18:22:52.176 INFO (main) [ ] o.a.s.c.CorePropertiesLocator Cores are: [mycollection, test_core]
2020-12-26 18:22:52.386 INFO (coreLoadExecutor-9-thread-2) [ x:test_core] o.a.s.c.SolrConfig Using Lucene MatchVersion: 8.5.2
2020-12-26 18:22:52.389 INFO (coreLoadExecutor-9-thread-1) [ x:mycollection] o.a.s.c.SolrConfig Using Lucene MatchVersion: 8.5.2
2020-12-26 18:22:52.539 INFO (main) [ ] o.e.j.s.h.ContextHandler Started o.e.j.w.WebAppContext@7894f09b{/solr,file:///opt/solr-8.5.2/server/solr-webapp/webapp/,AVAILABLE}{/opt/solr-8.5.2/server/solr-webapp/webapp}
2020-12-26 18:22:52.595 INFO (main) [ ] o.e.j.s.AbstractConnector Started ServerConnector@66fdec9{HTTP/1.1,[http/1.1, h2c]}{0.0.0.0:8983}
2020-12-26 18:22:52.595 INFO (main) [ ] o.e.j.s.Server Started @7094ms
2020-12-26 18:22:52.985 INFO (coreLoadExecutor-9-thread-1) [ x:mycollection] o.a.s.s.IndexSchema [mycollection] Schema name=default-config
2020-12-26 18:22:52.986 INFO (coreLoadExecutor-9-thread-2) [ x:test_core] o.a.s.s.IndexSchema [test_core] Schema name=default-config
编辑 - 1
以下是更多日志和 cli 命令结果。它看起来像它的内存不足。
以下是一些 cli 命令的结果:
root@lemp-02:~# nmap localhost
Starting Nmap 7.80 ( https://nmap.org ) at 2020-12-29 09:05 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000040s latency).
Not shown: 996 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
3306/tcp open mysql
Nmap done: 1 IP address (1 host up) scanned in 0.06 seconds
root@lemp-02:~# lsof -i -P -n
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd-r 620 systemd-resolve 12u IPv4 19121 0t0 UDP 127.0.0.53:53
systemd-r 620 systemd-resolve 13u IPv4 19122 0t0 TCP 127.0.0.53:53 (LISTEN)
sshd 800 root 3u IPv4 22677 0t0 TCP *:22 (LISTEN)
sshd 800 root 4u IPv6 22681 0t0 TCP *:22 (LISTEN)
nginx 804 root 6u IPv4 22661 0t0 TCP *:80 (LISTEN)
nginx 804 root 7u IPv6 22662 0t0 TCP *:80 (LISTEN)
nginx 805 www-data 6u IPv4 22661 0t0 TCP *:80 (LISTEN)
nginx 805 www-data 7u IPv6 22662 0t0 TCP *:80 (LISTEN)
mysqld 873 mysql 32u IPv4 27590 0t0 TCP 127.0.0.1:33060 (LISTEN)
mysqld 873 mysql 34u IPv4 28038 0t0 TCP 127.0.0.1:3306 (LISTEN)
master 1995 root 13u IPv4 29598 0t0 TCP *:25 (LISTEN)
master 1995 root 14u IPv6 29599 0t0 TCP *:25 (LISTEN)
sshd 2073 root 4u IPv4 34342 0t0 TCP 139.59.75.45:22->39.42.164.21:55432 (ESTABLISHED)
root@lemp-02:~# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
22/tcp LIMIT IN Anywhere
80,443/tcp (Nginx Full) ALLOW IN Anywhere
8983 ALLOW IN Anywhere
23/tcp ALLOW IN Anywhere
8983 ALLOW IN 139.59.75.45
22/tcp (v6) LIMIT IN Anywhere (v6)
80,443/tcp (Nginx Full (v6)) ALLOW IN Anywhere (v6)
8983 (v6) ALLOW IN Anywhere (v6)
23/tcp (v6) ALLOW IN Anywhere (v6)
root@lemp-02:~# service solr status
● solr.service - LSB: Controls Apache Solr as a Service
Loaded: loaded (/etc/init.d/solr; generated)
Active: active (exited) since Tue 2020-12-29 09:03:45 UTC; 3min 6s ago
Docs: man:systemd-sysv-generator(8)
Process: 770 ExecStart=/etc/init.d/solr start (code=exited, status=0/SUCCESS)
Dec 29 09:00:41 lemp-02 systemd[1]: Starting LSB: Controls Apache Solr as a Service...
Dec 29 09:00:41 lemp-02 su[776]: (to solr) root on none
Dec 29 09:00:41 lemp-02 su[776]: pam_unix(su-l:session): session opened for user solr by (uid=0)
Dec 29 09:03:45 lemp-02 systemd[1]: Started LSB: Controls Apache Solr as a Service.
root@lemp-02:~# netstat -tunelp | grep 8983
root@lemp-02:~# curl -X GET 'http://localhost:8983/solr'
curl: (7) Failed to connect to localhost port 8983: Connection refused
root@lemp-02:~#
以下是来自 /var/solr/logs/solr-8983-console.log 的日志数据
似乎solr-8983-console.log比solr.log更重要且信息量更大
OpenJDK 64-Bit Server VM warning: Failed to reserve shared memory. (error = 1)
OpenJDK 64-Bit Server VM warning: Failed to reserve shared memory. (error = 12)
OpenJDK 64-Bit Server VM warning: Failed to reserve shared memory. (error = 12)
java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.eclipse.jetty.start.Main.invokeMain(Main.java:218)
at org.eclipse.jetty.start.Main.start(Main.java:491)
at org.eclipse.jetty.start.Main.main(Main.java:77)
Caused by: java.security.PrivilegedActionException: java.net.SocketException: Unresolved address
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1873)
... 7 more
Caused by: java.net.SocketException: Unresolved address
at java.base/sun.nio.ch.Net.translateToSocketException(Net.java:170)
at java.base/sun.nio.ch.Net.translateException(Net.java:196)
at java.base/sun.nio.ch.Net.translateException(Net.java:202)
at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:82)
at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:342)
at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:307)
at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:231)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
at org.eclipse.jetty.server.Server.doStart(Server.java:385)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
at org.eclipse.jetty.xml.XmlConfiguration.lambda$main$1(XmlConfiguration.java:1924)
... 9 more
Caused by: java.nio.channels.UnresolvedAddressException
at java.base/sun.nio.ch.Net.checkAddress(Net.java:130)
at java.base/sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:222)
at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:80)
... 17 more
java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.eclipse.jetty.start.Main.invokeMain(Main.java:218)
at org.eclipse.jetty.start.Main.start(Main.java:491)
at org.eclipse.jetty.start.Main.main(Main.java:77)
Caused by: java.security.PrivilegedActionException: java.net.SocketException: Unresolved address
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1873)
... 7 more
Caused by: java.net.SocketException: Unresolved address
at java.base/sun.nio.ch.Net.translateToSocketException(Net.java:170)
at java.base/sun.nio.ch.Net.translateException(Net.java:196)
at java.base/sun.nio.ch.Net.translateException(Net.java:202)
at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:82)
at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:342)
at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:307)
at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:231)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
at org.eclipse.jetty.server.Server.doStart(Server.java:385)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
at org.eclipse.jetty.xml.XmlConfiguration.lambda$main$1(XmlConfiguration.java:1924)
... 9 more
Caused by: java.nio.channels.UnresolvedAddressException
at java.base/sun.nio.ch.Net.checkAddress(Net.java:130)
at java.base/sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:222)
at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:80)
... 17 more
Usage: java -jar $JETTY_HOME/start.jar [options] [properties] [configs]
java -jar $JETTY_HOME/start.jar --help # for more information
我的问题:
- 当我们检查使用时,Solr 服务正在运行并且端口
8983
是允许的,UFW
但是为什么当我们检查时它没有出现lsof -i -P -n
? - 应该更改以下两个位置的哪些日志配置文件以对日志配置进行任何更改:
/opt/solr-8.7.0/server/resources/log4j2.xml
和
/var/solr/log4j2.xml
? - 日志级别是否区分大小写,我们应该使用
finest
orFINEST
吗? - 从 solr-8983-console.log 看起来问题出在内存上。我正在使用来自 Digitalocean RAM 1GB + 1vCPU 的 5 美元 Droplet。在不考虑文档大小的情况下运行 solr 实例的最低要求是什么?
编辑 - 2
只是为了确认我对内存的怀疑,我在 Digitalocean 上创建了一个具有 16GB RAM + 2vCPU 的新实例。我在上面安装了 solr,当检查它的日志 (solr-8983-console.log) 时,我发现了与下面给出的相同的 VM 错误,这意味着它不是问题,还有其他问题:
OpenJDK 64-Bit Server VM warning: Failed to reserve shared memory. (error = 1)
OpenJDK 64-Bit Server VM warning: Failed to reserve shared memory. (error = 12)
OpenJDK 64-Bit Server VM warning: Failed to reserve shared memory. (error = 12)
2020-12-29 18:21:50.206 INFO (main) [ ] o.e.j.u.log Logging initialized @1178ms to org.eclipse.jetty.util.log.Slf4jLog
2020-12-29 18:21:50.305 WARN (main) [ ] o.e.j.x.XmlConfiguration Ignored arg: <Arg name="threadpool">
<New id="threadpool" class="com.codahale.metrics.jetty9.InstrumentedQueuedThreadPool"><Arg name="registry">
<Call id="solrJettyMetricRegistry" name="getOrCreate" class="com.codahale.metrics.SharedMetricRegistries"><Arg>solr.jetty</Arg></Call>
</Arg></New>
</Arg>
2020-12-29 18:21:50.449 INFO (main) [ ] o.e.j.s.Server jetty-9.4.27.v20200227; built: 2020-02-27T18:37:21.340Z; git: a304fd9f351f337e7c0e2a7c28878dd536149c6c; jvm 11.0.9.1+1-Ubuntu-0ubuntu1.20.04
2020-12-29 18:21:50.474 INFO (main) [ ] o.e.j.d.p.ScanningAppProvider Deployment monitor [file:///opt/solr-8.7.0/server/contexts/] at interval 0
2020-12-29 18:21:50.849 INFO (main) [ ] o.e.j.w.StandardDescriptorProcessor NO JSP Support for /solr, did not find org.apache.jasper.servlet.JspServlet
2020-12-29 18:21:50.863 INFO (main) [ ] o.e.j.s.session DefaultSessionIdManager workerName=node0
2020-12-29 18:21:50.864 INFO (main) [ ] o.e.j.s.session No SessionScavenger set, using defaults
2020-12-29 18:21:50.867 INFO (main) [ ] o.e.j.s.session node0 Scavenging every 600000ms
2020-12-29 18:21:50.944 INFO (main) [ ] o.a.s.s.SolrDispatchFilter Using logger factory org.apache.logging.slf4j.Log4jLoggerFactory
2020-12-29 18:21:50.950 INFO (main) [ ] o.a.s.s.SolrDispatchFilter ___ _ Welcome to Apache Solr™ version 8.7.0
2020-12-29 18:21:50.951 INFO (main) [ ] o.a.s.s.SolrDispatchFilter / __| ___| |_ _ Starting in standalone mode on port 8983
2020-12-29 18:21:50.951 INFO (main) [ ] o.a.s.s.SolrDispatchFilter \__ \/ _ \ | '_| Install dir: /opt/solr
2020-12-29 18:21:50.953 INFO (main) [ ] o.a.s.s.SolrDispatchFilter |___/\___/_|_| Start time: 2020-12-29T18:21:50.953065Z