Image (node)
Image
I have been running Apache Solr Cloud and Zookeeper to help improve the search performance and UX around Drupal based sites for a year or so now. Here I look at updating Java run time and how to restart your solr.
- Java requires updating e.g. OpenJDK 8 Runtime Environment - Go ahead and update Java runtime.
- Once Java has been updated, it will be necessary to restart your Solr Cloud and then restart any nodes. First of all lets log on to the server and switch to the authorised solr user e.g.
su solr
- Lets have a look at what is running before we stop and restart the server. we can use
solr status
e.g./opt/solr/bin/solr status
command. This should give us a bit more info e.g.
- Found 5 Solr nodes:
- Solr process 1954 from /var/solr/solr-7354.pid not found.
- Solr process 2664 from /var/solr/solr-75744.pid not found.
- Solr process 7231 running on port 7575
- Solr process 6724 running on port 8983
- Solr process 7019 running on port 7574
- We can also use process command
ps -ef | grep solr
. This will return data on just the running processes. The -ef flag is used to see every process on the system using standard syntax. e.g.solr 6724 1 0 Apr05 ? 14:10:59 java -server -Xms512m -Xmx512m -XX:+UseG1GC -XX:+PerfDisableSharedMem -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=250 -XX:+UseLargePages -XX:+AlwaysPreTouch -XX:+ExplicitGCInvokesConcurrent -verbose:gc -XX:+PrintHeapAtGC -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+PrintTenuringDistribution -XX:+PrintGCApplicationStoppedTime -Xloggc:/opt/solr/example/cloud/node1/solr/../logs/solr_gc.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=9 -XX:GCLogFileSize=20M -Dsolr.jetty.inetaccess.includes= -Dsolr.jetty.inetaccess.excludes= -DzkClientTimeout=30000 -DzkRun -Dsolr.log.dir=/opt/solr/example/cloud/node1/solr/../logs -Djetty.port=8983 -DSTOP.PORT=7983 -DSTOP.KEY=solrrocks -Duser.timezone=UTC -XX:-OmitStackTraceInFastThrow -XX:OnOutOfMemoryError=/opt/solr/bin/oom_solr.sh 8983 /opt/solr/example/cloud/node1/solr/../logs -Djetty.home=/opt/solr/server -Dsolr.solr.home=/opt/solr/example/cloud/node1/solr -Dsolr.data.home= -Dsolr.install.dir=/opt/solr -Dsolr.default.confdir=/opt/solr/server/solr/configsets/_default/conf -Dlog4j.configurationFile=/opt/solr/server/resources/log4j2.xml -Xss256k -Dsolr.log.muteconsole -jar start.jar --module=http --module=gzip
There's some useful info here. e.g.Dsolr.solr.home=/opt/solr/example/cloud/node1/solr
gives us the location of the master solr node. This will be useful in the next step. It also shows us the port that each nod is running on e.g.-Djetty.port=8983
- Lets go ahead and stop solr e.g.
/opt/solr/bin/solr stop -all
-Sending stop command to Solr running on port 8983 ... waiting up to 180 seconds to allow Jetty process 6724 to stop gracefully.
- Now we can try starting again. e.g.
/opt/solr/bin/solr start -cloud -p 8983 -s /opt/solr/example/cloud/node1/solr
. - Hopefully this all goes smoothly. We can now check that our nodes are still running as expected using either
ps
orsolr
commands.
Add new comment