Add documentation for how to install ES from homebrew on macOS (#6387)

* Add documentation for how to install ES from brew

* A bit clearer

* Update docs/installation/mac.md

Co-Authored-By: Ridhwana <Ridhwana.Khan16@gmail.com>

* Update docs/installation/mac.md

Co-Authored-By: Ridhwana <Ridhwana.Khan16@gmail.com>

* Move testing section after installation

* Update docs/installation/mac.md

Co-Authored-By: Vaidehi Joshi <vaidehi.sj@gmail.com>

* Update docs/installation/mac.md

Co-Authored-By: Vaidehi Joshi <vaidehi.sj@gmail.com>

Co-authored-by: Ridhwana <Ridhwana.Khan16@gmail.com>
Co-authored-by: Vaidehi Joshi <vaidehi.sj@gmail.com>
This commit is contained in:
rhymes 2020-03-02 15:33:33 +01:00 committed by GitHub
parent 2ef6b5ac50
commit 7b6417ca78
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -61,7 +61,12 @@ redis-cli ping
DEV requires Elasticsearch version 7 or higher.
We recommend installing from archive on Mac. The following directions were
You have the option of installing Elasticsearch with Homebrew or through an
archive. We recommend installing from archive on Mac.
### Installing Elasticsearch from the archive
The following directions were
[taken from the Elasticsearch docs themselves](https://www.elastic.co/guide/en/elasticsearch/reference/7.5/targz.html#install-macos),
so check those out if you run into any issues or want further information. Make
sure to download **the OSS version** of Elasticsearch, `elasticsearch-oss`.
@ -89,6 +94,95 @@ To start elasticsearch as a daemonized process:
./bin/elasticsearch -d
```
### Installing Elasticsearch with Homebrew
The following directions were
[taken from the Elasticsearch docs](https://www.elastic.co/guide/en/elasticsearch/reference/current/brew.html).
```shell
brew tap elastic/tap
brew install elastic/tap/elasticsearch-oss
```
After installation you can manually test if the Elasticsearch server starts by
issuing the command `elasticsearch` in the shell. You can then start the server
as a service with `brew services start elastic/tap/elasticsearch-oss`.
You can find further info on your local Elasticsearch installation by typing
`brew info elastic/tap/elasticsearch-oss`.
#### Troubleshooting startup issues
Two possible startup issues you might encounter:
- `java.nio.file.FileSystemLoopException`:
```text
Exception in thread "main" org.elasticsearch.bootstrap.BootstrapException: java.nio.file.FileSystemLoopException: /usr/local/etc/elasticsearch/elasticsearch
Likely root cause: java.nio.file.FileSystemLoopException: /usr/local/etc/elasticsearch/elasticsearch
```
This happens because the installation of Elasticsearch might have a recursive link in the
configuration directory causing the infinite loop:
```shell
> ll /usr/local/etc/elasticsearch
elasticsearch -> /usr/local/etc/elasticsearch
```
By manually removing the link with
`rm -i /usr/local/etc/elasticsearch/elasticsearch` the issue should be fixed.
- `java.lang.IllegalStateException`:
```text
java.lang.IllegalStateException: Could not load plugin descriptor for plugin directory [plugins]
Likely root cause: java.nio.file.NoSuchFileException: /usr/local/Cellar/elasticsearch-oss/7.6.0/libexec/plugins/plugins/plugin-descriptor.properties
```
This happens for a similar reason as the previous error, the installation might
create a recursive link in the plugins directory.
```shell
> ll /usr/local/var/elasticsearch/plugins
plugins -> /usr/local/var/elasticsearch/plugins
```
By manually removing the link with
`rm -i /usr/local/var/elasticsearch/plugins/plugins` the issue should be fixed.
### Testing if Elasticsearch is running
Once installed and started you can test if it's up and running correctly by
issuing the following command:
```shell
curl http://localhost:9200
```
You should receive in response a JSON document containing some information about
your local Elasticsearch installation, for example:
```json
{
"name": "hostname",
"cluster_name": "elasticsearch_...",
"cluster_uuid": "...",
"version": {
"number": "7.6.0",
"build_flavor": "oss",
"build_type": "tar",
"build_hash": "7f634e9f44834fbc12724506cc1da681b0c3b1e3",
"build_date": "2020-02-06T00:09:00.449973Z",
"build_snapshot": false,
"lucene_version": "8.4.0",
"minimum_wire_compatibility_version": "6.8.0",
"minimum_index_compatibility_version": "6.0.0-beta1"
},
"tagline": "You Know, for Search"
}
```
## Installing DEV
1. Fork DEV's repository, e.g. <https://github.com/thepracticaldev/dev.to/fork>