-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Written guide for elasticsearch local #3881
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 6 commits
f31d441
b448a88
9363600
4adc8a6
3c73c7c
ec37b68
a5c86fe
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
.. _running-elasticsearch-locally: | ||
|
||
========================================== | ||
Enabling Elasticsearch on the local server | ||
========================================== | ||
|
||
Read the Docs has been using Elasticsearch for indexing and searching. To enable this on your local installation, you need to install elasticsearch and run the Elastic server locally. | ||
|
||
Installation has been mainly divided into following steps. | ||
|
||
1. Installing Java | ||
------------------ | ||
|
||
Elasticsearch requires Java 8 or later. Use `Oracle official documentation <http://www.oracle.com/technetwork/java/javase/downloads/index.html>`_. | ||
or opensource distribution like `OpenJDK <http://openjdk.java.net/install/>`_. | ||
|
||
After installing java, verify the installation by,:: | ||
|
||
$ java -version | ||
|
||
The result should be something like this:: | ||
|
||
openjdk version "1.8.0_151" | ||
OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.16.04.2-b12) | ||
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode) | ||
|
||
|
||
2. Downloading and installing Elasticsearch | ||
------------------------------------------- | ||
|
||
Elasticsearch can be downloaded directly from elastic.co. For Ubuntu, it's best to use the deb (Debian) package which will install everything you need to run Elasticsearch. | ||
|
||
RTD currently uses elasticsearch 1.x which can be easily downloaded and installed from `elastic.co | ||
<https://www.elastic.co/downloads/past-releases/elasticsearch-1-3-8/>`_. | ||
|
||
Install the downloaded package by following command:: | ||
|
||
$ sudo apt install .{path-to-downloaded-file}/elasticsearch-1.3.8.deb | ||
|
||
|
||
3. Running Elasticsearch from command line | ||
------------------------------------------ | ||
|
||
Elasticsearch is not started automatically after installation. How to start and stop Elasticsearch depends on whether your system uses SysV init or systemd (used by newer distributions). You can tell which is being used by running this command:: | ||
|
||
$ ps -p 1 | ||
|
||
**Running Elasticsearch with SysV init** | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'd leave how to run Elasticsearch to users for several reasons:
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. First I thought of writing exactly the same as mentioned by you (i.e directly downloading the tar file), it was previously covered in #3852 . As the said method has an advantage of not having to maintain the init systems, we have a disadvantage of having to start the elasticsearch server each time we need to run our RTD server locally. |
||
|
||
Use the ``update-rc.d command`` to configure Elasticsearch to start automatically when the system boots up:: | ||
|
||
$ sudo update-rc.d elasticsearch defaults 95 10 | ||
|
||
Elasticsearch can be started and stopped using the service command:: | ||
|
||
$ sudo -i service elasticsearch start | ||
$ sudo -i service elasticsearch stop | ||
|
||
If Elasticsearch fails to start for any reason, it will print the reason for failure to STDOUT. Log files can be found in /var/log/elasticsearch/. | ||
|
||
**Running Elasticsearch with systemd** | ||
|
||
To configure Elasticsearch to start automatically when the system boots up, run the following commands:: | ||
|
||
$ sudo /bin/systemctl daemon-reload | ||
$ sudo /bin/systemctl enable elasticsearch.service | ||
|
||
Elasticsearch can be started and stopped as follows:: | ||
|
||
$ sudo systemctl start elasticsearch.service | ||
$ sudo systemctl stop elasticsearch.service | ||
|
||
To verify run:: | ||
|
||
$ curl http://localhost:9200 | ||
|
||
You should get something like: | ||
|
||
.. code-block:: json | ||
|
||
{ | ||
status: 200, | ||
name: "Amina Synge", | ||
version: { | ||
number: "1.3.8", | ||
build_hash: "475733ee0837fba18c00c3ee76cd49a08755550c", | ||
build_timestamp: "2015-02-11T14:45:42Z", | ||
build_snapshot: false, | ||
lucene_version: "4.9" | ||
}, | ||
tagline: "You Know, for Search" | ||
} | ||
|
||
4. Index the data available at RTD database | ||
------------------------------------------- | ||
|
||
In order to search through the RTD database, you need to index it into the elasticsearch index:: | ||
|
||
$ python manage.py reindex_elasticsearch | ||
|
||
You are ready to go! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is no need to add this if you use the
doc
role :)There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh yes, I was checking out how to link the files ... Forgot to delete it .. 😀