1. 程式人生 > >ElasticSearch 5.4 安裝

ElasticSearch 5.4 安裝

nload text 學習 master mas nbsp 自動 table 安裝包

1. 前期準備

  •    環境準備
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。

  • jdk版本需要 jdk 8

  2.

安裝過程

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

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

    在elasticsearch的根目錄下啟動elasticsearch或者將elasticsearch做為環境變量添加到/etc/profile中(類似於JAVA_HOME的配置),如下是在elasticsearch的根目錄下啟動的命令:

./bin/elasticsearch

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

[[email protected] 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 [[email protected] 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,增加如下命令即可。

set vm.max_map_count=262144

這樣就能正常的運行起單機版的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後的參數來展示不同的系統功能。

技術分享

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

     

ElasticSearch 5.4 安裝