Install Elasticsearch in 5 Minutes on Digital Ocean

May 29, 2014

development

This is a short tutorial to install Elasticsearch in 5 minutes on Ubuntu in a Digital Ocean droplet. I've been working with WordPress for a long time and what really got me hooked in the early days was the "Famous 5-Minute Install". I'm extending that same concept to one of my new favorite tools - Elasticsearch. It's a super fast search service built on Lucene that has an embedded RESTful JSON API. Since it's native JSON, any object you have in your code - whether it be a Javascript object or a C# object - can be serialized and inserted into an Elasticsearch Index. So technically you can use it as a NoSQL database. It clusters and does a lot of other fancy stuff but that's not the point of this article. Anyway you probably already know what it is if you stumbled on this post so lets get your very own Elastic Search sandbox up and running...

Step 1: Get A Server

Screen Shot 2014-05-23 at 1.23.28 PMIn order to get this done in 5 minutes we're going to use Digital Ocean to spin up a cloud server. Why? Because it's awesome and your server will be ready in 55 seconds... It's cheap to run and free to get started if you use one of their many promo codes. If this doesn't sound awesome to you, feel free to spend an hour or so setting up a Linux virtual machine. Either way, this tutorial assumes you are going to run ElasticSearch on Linux, specifically Ubuntu. So after you sign up for Digital Ocean, setup a free  Ubuntu Droplet (more info than you need is here). They'll email you the root password and you should be good to go to access the Linux console from their website. Screen Shot 2014-05-23 at 1.31.38 PM Note: there are a bunch of other things you'll want to do if you run this server in production - like setting up SSH, disabling root login, and other things. Follow this tutorial for 'Initial Server Setup With Ubuntu' for more details.

Step 2: Install Elasticsearch

Now you are ready to install Elasticsearch. Fortunately that's the easy part. Run the shell script in this gist to get up and running. Aaaand you're done. Want to make sure it's running? Run a curl in your console, hitting port 9200.

curl http://localhost:9200

You should see something like this giving you some meta data about your Elasticsearch instance.   Install ElasticSearch In 5 Minutes Now, if I had DNS setup for this hostname, you will now be able to hit Elasticsearch externally with http://elastic.brudtkuhl.com:9200 but for now you can just go at the public IP address that Digital Ocean provides. This is the first in a series of posts on my experiences working with Elasticsearch. Do you have any questions on how to install Elasticsearch? Now onto your next step: Securing Elasticsearch. Note: Links to DigitalOcean use my referral code. I'd recommend them if I didn't have a referral code.

Subscribe to my mailing list