install elasticsearch | zuhdi.org

Install Elasticsearch

Environment

  • Debian 9.7 x64 (RAM 4GB)
  • Elasticsearch 7.1.1

Excerpt

Note

Log 2019 / 05

1. Install Elasticsearch

root@athos:~# apt-get update && apt-get -y upgrade && apt-get -y dist-upgrade

root@athos:~# apt-get -y --no-install-recommends install curl

wget -q https://artifacts.elastic.co/downloads/elasticsearch/\
elasticsearch-oss-7.1.1-amd64.deb

wget -q https://artifacts.elastic.co/downloads/elasticsearch/\
elasticsearch-oss-7.1.1-amd64.deb.sha512

root@athos:~# wget -q https://artifacts.elastic.co/downloads/elasticsearch/\
> elasticsearch-oss-7.1.1-amd64.deb

root@athos:~# wget -q https://artifacts.elastic.co/downloads/elasticsearch/\
> elasticsearch-oss-7.1.1-amd64.deb

root@athos:~# wget -q https://artifacts.elastic.co/downloads/elasticsearch/\
> elasticsearch-oss-7.1.1-amd64.deb.sha512

root@athos:~# sha512sum -c elasticsearch-oss-7.1.1-amd64.deb.sha512
elasticsearch-oss-7.1.1-amd64.deb: OK

root@athos:~# dpkg -i elasticsearch-oss-7.1.1-amd64.deb
Selecting previously unselected package elasticsearch-oss.
(Reading database ... 29541 files and directories currently installed.)
Preparing to unpack elasticsearch-oss-7.1.1-amd64.deb ...
Creating elasticsearch group...sent invalidate(group) request, exiting
sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
sent invalidate(group) request, exiting
sent invalidate(group) request, exiting
 OK
Creating elasticsearch user...sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
 OK
Unpacking elasticsearch-oss (7.1.1) ...
Setting up elasticsearch-oss (7.1.1) ...
Created elasticsearch keystore in /etc/elasticsearch
Processing triggers for systemd (232-25+deb9u11) ...

root@athos:~# /usr/share/elasticsearch/bin/elasticsearch --help

root@athos:~# /usr/share/elasticsearch/bin/elasticsearch --version
OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in 
  version 9.0 and will likely be removed in a future release.
Version: 7.1.1, Build: oss/deb/7a013de/2019-05-23T14:04:00.380842Z, JVM: 12.0.1

2. systemd

sed -i '/ExecStart=/{
  s/--quiet// 
  }' /usr/lib/systemd/system/elasticsearch.service

root@athos:~# sed -i '/ExecStart=/{
>   s/--quiet//
>   }' /usr/lib/systemd/system/elasticsearch.service

root@athos:~# systemctl enable --now elasticsearch.service
Synchronizing state of elasticsearch.service with SysV service script with 
  /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable elasticsearch
Created symlink /etc/systemd/system/multi-user.target.wants/elasticsearch.service 
  → /usr/lib/systemd/system/elasticsearch.service.

root@athos:~# systemctl status elasticsearch.service
● elasticsearch.service - Elasticsearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; 
     vendor preset: enabled)
   Active: active (running) since Thu 2019-05-30 03:13:44 UTC; 20s ago
     Docs: http://www.elastic.co
 Main PID: 2263 (java)
    Tasks: 36 (limit: 4915)
   CGroup: /system.slice/elasticsearch.service
           └─2263 /usr/share/elasticsearch/jdk/bin/java -Xms1g -Xmx1g 
             -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 
             -XX:+UseCMSInitiatingOccupancyOnly

3. Test Run

root@athos:~# curl -X GET "localhost:9200/"
{
  "name" : "athos",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "4OjJVgLeQlKnAJZ-V7NgeA",
  "version" : {
    "number" : "7.1.1",
    "build_flavor" : "oss",
    "build_type" : "deb",
    "build_hash" : "7a013de",
    "build_date" : "2019-05-23T14:04:00.380842Z",
    "build_snapshot" : false,
    "lucene_version" : "8.0.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

4. Basic Cheatsheet

4.1. Cluster Health

root@athos:~# curl -X GET "localhost:9200/_cat/health?v"
epoch      timestamp cluster       status node.total node.data active_shards_percent
1559186147 03:15:47  elasticsearch green           1         1                100.0%

4.2. List Nodes

root@athos:~# curl -X GET "localhost:9200/_cat/nodes?v"
ip        heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
127.0.0.1            9          97   3    0.03    0.08     0.03 mdi       *      athos

4.3. List Indices

root@athos:~# curl -X GET "localhost:9200/_cat/indices?v"
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size

4.4. Create Index

root@athos:~# curl -X PUT "localhost:9200/alpha?pretty"
{
  "acknowledged" : true,
  "shards_acknowledged" : true,
  "index" : "alpha"
}

root@athos:~# curl -X GET "localhost:9200/_cat/indices?v"
health status index uuid                   pri rep docs.count store.size pri.store.size
yellow open   alpha cUyecgpMTxeKTrdvt-hGOA   1   1          0       230b           230b

4.5. Delete Index

root@athos:~# curl -X DELETE "localhost:9200/alpha?pretty"
{
  "acknowledged" : true
}

Hugo. Malte Kiefer & Zuhdi Najib.