<!-- JSON-LD markup generated by Google Structured Data Markup Helper. -->
<script type="application/ld+json"></script>
{
 "@context" : "http://schema.org",
 "@type" : "Article",
 "name" : "How to set up Solr as a system service",
 "author" : {
   "@type" : "Person",
   "name" : "Subham Majavadiya"
 },
 "image" : "https://global-uploads.webflow.com/5ef788f07804fb7d78a4127a/5ef788f17804fbc00ca41a9c_Set%20up%20solr.png",
 "articleSection" : "how to set up SOLR as a service.",
 "articleBody" : [ "Zookeeper", "Create user", "Download solr source code", "Add solr/zookeeper hosts", "Create ZooKeeper chroot", "Create Systemd Service File", "Reload &amp; test setup" ],
 "url" : "https://www.engati.com/blog/set-up-solr",
 "publisher" : {
   "@type" : "Organization",
   "name" : "Engati"
 }
}

Tech Corner

How to set up Solr as a system service

Engati Team
.
Jun 7
.
3-4 mins

Table of contents

Key takeawaysCollaboration platforms are essential to the new way of workingEmployees prefer engati over emailEmployees play a growing part in software purchasing decisionsThe future of work is collaborativeMethodology

Most Linux distributions use the systems as a system and service manager. In this tutorial, I will show how to set up SOLR as a service.

What is Solr?

Solr is highly reliable, scalable and fault tolerant, Open-source REST-API based search engine developed under Apache Software Foundation umbrella, mature with a wide user base.

Solr is a full-text search, ready to deploy engine that can handle large volumes of text-centric data.

The purpose of Apache Solr is to index and search large amounts of text/web content and give relevant content based on search query.

Solr is also very modular. You can exchange or add functionality just by including your custom code in the form of a jar file and slightly changing the configuration.

Ps. Chatbots are also a great way to help your website visitors find the content that they're looking for. Get started with an Engati Chatbot today!

Setup prerequisites

Zookeeper

Zookeeper is a configuration-management application that comes prepackaged with Solr. It works well in the local environment, but as you increase the traffic or number of nodes, the prepackaged Zookeeper falls short of delivering proper support to your Solr cluster.
So in the production environment Zookeeper should be installed separately.

How to set Solr up in 6 steps!

1

Create user

sudo useradd -m -p $(perl -e 'print crypt($ARGV[0], "password")' solr solr

2

Download Solr source code

sudo su - solr
wget https://archive.apache.org/dist/lucene/solr/7.3.0/solr-7.3.0.tgz
tar xzf solr-7.3.0.tgz

3

Add Solr and ZooKeeper hosts

I am setting up Zookeeper and Solr both in the same machine.

vi /etc/hostszokeeper.app.local 127.0.0.1
solr.app.local 127.0.0.1

4

Create ZooKeeper chroot

If you’re using a ZooKeeper instance that is shared by other systems, it’s recommended to isolate the SolrCloud znode tree using ZooKeeper’s chroot support. For instance, to ensure all znodes created by SolrCloud are stored under /solr

/home/solr/solr-7.3.0/bin/solr zk mkroot /solr -z zookeeper.app.local:2181

5

Create Systemd Service File

Create a systemd service file usingvi /etc/systemd/system/solr.service

[Unit]
Description=Apache SOLR
After=syslog.target network.target remote-fs.target nss-lookup.target[Service]
User=solr
Type=forking
PIDFile=/home/solr/solr-7.3.0/bin/solr-8983.pid
ExecStart=/home/solr/solr-7.3.0/bin/solr start -c -h solr.app.local -p 8983 -z zookeeper.app.local:2181/solr -noprompt
ExecStop=/home/solr/solr-7.3.0/bin/solr stop
Restart=on-abnormal[Install]
WantedBy=multi-user.target

6

Reload and test setup

sudo systemctl daemon-reload
sudo systemctl start solr
sudo systemctl status solr

Now go to the browser and hit http://solr.app.local:8983 to access admin UI.

Reloading and testing setup in Solr
Reloading and testing setup in Solr

Hope this helped you get a good idea of how you should set up Solr as a system service. Happy searching!

I've set up Solr as a system service... What's next?

When you combine search with chatbot automation, you can deliver well-rounded experiences to your customers at all times. Ready to explore?

Register with Engati to bring life to your customer interactions!

Share
Share

Engati Team

At the forefront for digital customer experience, Engati helps you reimagine the customer journey through engagement-first solutions, spanning automation and live chat.

Andy is the Co-Founder and CIO of SwissCognitive - The Global AI Hub. He’s also the President of the Swiss IT Leadership Forum.

Andy is a digital enterprise leader and is transforming business strategies keeping the best interests of shareholders, customers, and employees in mind.

Follow him for your daily dose of AI news and thoughts on using AI to improve your business.

Catch our interview with Andy on AI in daily life

Continue Reading