ElasticSearch 5.4 安裝

    1. 前期準備java

  •     環境準備
IP地址 操做系統 內存
192.168.1.10 centos 7 16
192.168.1.11 centos 7 16
192.168.1.12 centos 7 16
192.168.1.13 centos 7 16

 

 

 

 

 

 

  •       安裝包下載

      官方下載地址:https://www.elastic.co/downloads/elasticsearch。 node

  •      jdk版本須要 jdk 8

   2. 安裝過程web

    首先解壓安裝包,而後進入解壓程序文件夾。bootstrap

# 解壓安裝包
tar
-xvf elasticsearch-5.4.0.tar;
# 進入解壓後的文件夾
cd elasticsearch-5.4.0

 

    在elasticsearch的根目錄下啓動elasticsearch或者將elasticsearch作爲環境變量添加到/etc/profile中(相似於JAVA_HOME的配置),以下是在elasticsearch的根目錄下啓動的命令:centos

 

./bin/elasticsearch

 

 若是是以root用戶登陸並執行的上述命令,則會看到以下所示的錯誤提示api

[root@localhost elasticsearch]# ./bin/elasticsearch
[2017-06-26T18:31:30,940][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-1] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:127) ~[elasticsearch-5.4.0.jar:5.4.0]
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:114) ~[elasticsearch-5.4.0.jar:5.4.0]
    at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) ~[elasticsearch-5.4.0.jar:5.4.0]
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) ~[elasticsearch-5.4.0.jar:5.4.0]
    at org.elasticsearch.cli.Command.main(Command.java:88) ~[elasticsearch-5.4.0.jar:5.4.0]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) ~[elasticsearch-5.4.0.jar:5.4.0]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) ~[elasticsearch-5.4.0.jar:5.4.0]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:106) ~[elasticsearch-5.4.0.jar:5.4.0]
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:204) ~[elasticsearch-5.4.0.jar:5.4.0]
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:360) ~[elasticsearch-5.4.0.jar:5.4.0]
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:123) ~[elasticsearch-5.4.0.jar:5.4.0]
    ... 6 more
[root@localhost elasticsearch]#

 錯誤信息很明確,不能以root帳號來啓動elasticsearch。那麼就須要以一個團隊獨有的帳號(不建議使用我的帳號,我的脫離團隊可能致使任務運行出錯)。 建立用戶和用戶組的腳本以下:瀏覽器

# 建立用戶 es-user
useradd es-user
# 建立用戶組 es-group groupadd es
-group
# 添加用戶es-user 到 es-group組 usermod
-G es-group es-user

 使用新建立的帳號啓動es,可能會遇到以下幾個問題。服務器

1. max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

 解決方案: 使用管理員角色編輯/etc/security/limits.conf文件,增長以下四條便可。網絡

 * soft nofile 65536
 * hard nofile 65536
 * soft nproc 2048
 * hard nproc 4096
2. max virtual memory areas vm.max_map_count[65530] is too low, increase to at least [262144]

  解決方案: 使用管理員角色編輯/etc/sysctl.conf,增長以下命令便可。elasticsearch

vm.max_map_count=262144
3. memory locking requested for elasticsearch process but memory is not locked

  解決方案: 使用管理員角色編輯/etc/security/limits.conf文件,增長以下兩條便可。

*  soft  memlock  unlimited
*   hard  memlock  unlimited

 

這樣就能正常的運行起單機版的elasticsearch,運行成功後,在本地的瀏覽器輸入http://localhost:9200 可以看到es的基本信息。在其餘服務器也能夠經過http://ip:9200來訪問。 

  單機版的elasticsearch安裝是否是挺簡單的^-^。

  

 

 3.  ElasticSearch 集羣安裝

     

  集羣的安裝其實和單機的安裝是相似的。主要是配置文件(./config/elasticsearch.yml) 的調整,ElasticSearch可以根據配置信息自動發現集羣的其餘節點,並經過選舉的方式來推選主節點。

經常使用的配置信息:

  1. cluster.name : 集羣的名稱,當包含多個節點時,同一個集羣的節點上各個節點的cluster.name必須徹底同樣,互聯的服務器就是經過該屬性來判斷是否屬於同一個集羣。
  2. node.name : 當前節點的名稱,集羣存在多個節點的時候,經過該屬性來區分各個節點。
  3. path.data :  該節點的數據存放位置,通常指定爲服務器上的非系統磁盤,若是放到系統磁盤上,容易形成空間不足。
  4. path.logs :該節點的elasticSearch運行日誌的保存位置,同path.data,建議放到費系統磁盤。
  5. bootstrap.memory_lock:啓動的時候是否鎖定內存,避免系統內容交換到磁盤,若是內存交換到磁盤對性能影響巨大。
  6. network.host : 集羣中該節點的網絡標識,必須和系統配置的網絡IP一致。不然找不到該IP。
  7. http.port :webapi 對應的端口號,默認爲9200
  8. discovery.zen.ping.unicast.hosts: 用來指定集羣的其餘節點,不須要指定所有,僅指定部分集羣節點便可,elasticsearch可以自動發現所有節點。
  9. discovery.zen.minimum_master_nodes : 用來指定集羣至少包含的節點數,建議爲節點總數/2 + 1,也就是超過半數,這樣不會形成一個集羣存在兩個主節點的狀況。不然,當部分節點與其餘節點網絡不通了,這部分節點會自動組成集羣,選舉本身的主節點,這時網路恢復就會存在兩個主節點,沒法工做了

配置上述配置信息後,將集羣的各個節點服務啓動便可構成集羣。單個節點的安裝見上述。

  集羣啓動後,經過http://ip:9200/_cat/nodes 可以查看集羣的節點信息,其中 標記爲 * 的爲主節點。若是主節點掛掉,集羣會從新選舉產生新的主節點。

  經過 http://ip:9200/_cat 能夠查看集羣的其餘信息,經過指定_cat後的參數來展現不一樣的系統功能。

 

 安裝就記錄到這,此篇博文供你們來參閱,也是我的學習的一個記錄。

相關文章
相關標籤/搜索