Running Solr with Jetty on Jelastic

| May 30, 2012

Solr is the blazing fast open source enterprise search platform, which powers the search and navigation features of the world's largest internet sites. Its major features include powerful full-text search, hit highlighting, faceted search, dynamic clustering, database integration, rich document handling, and geospatial search. Here's a detailed instruction on how to deploy Apache Solr into Jelastic cloud, written by our friend and customer Luca Cavanna

In this post I’m gonna write about Jelastic, the next generation of Java hosting platforms. I gave it a try deploying Apache Solr on the cloud and I thought it might be a good idea to share what I did. But be aware that I haven’t done anything in a distributed manner, I only deployed a single Solr instance.The following are the steps to deploy Solr on Jelastic with Jetty, you can enlarge each image just clicking on it.

  • Download the latest version of Solr (actually 3.6) and extract the downloaded archive, we’ll use later the included war file.
  • Log into the Jelastic Manager
  • Create a new environment
  • Let’s choose our environment topology: one Jetty 6 node, JDK 6 and our environment name, then let’s just wait a little for our environment to be created
  • It’s now time to upload our Solr war package: you can find it within the Solr archive previously downloaded, directory dist. It’s called apache-solr-3.6.0.war
  • Create the solr home: if you already worked with Solr you know it needs an external home directory, which you have to configure as environment variable. You need to create the solr home directory layout on Jelastic. I used a really simple configuration containing two cores and really basicsolrconfig.xml and schema.xml. Unfortunately, as far as I know you can’t actually upload to Jelastic a complete directory or a zip file and extract it on the server, so I had to manually create the directory structure and then upload the files in the right place, obtaining the directory layout
  • The next thing to do is configuring the solr home environment variable in order to tell Solr where the configuration files are. I did that adding the line
    to the variables.conf file within the server directory
  • We are now ready to actually deploy Solr on our application server: let’s do that through theDeployment Manager tab, selecting the war file we previously uploaded and deploying it to the jetty node we’ve created, choosing the desired context (ROOT in my case)
  • That;s all!

I think Jelastic is a great platform, which works fine out of the box.