ElasticSearch集羣搭建
背景:
我們要搭建一個ELK系統,目標是用於檢索系統和用戶畫像系統。選用的版本是elasticsearch5.5.0+logstash5.5.0+kibana5.5.0。
ElasticSearch集羣搭建步驟:
1.安裝java 8以上版本的JDK。
- 從http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 從此網站下載安裝1.8版本以上的JDK(注:es再持續更新中,參見官網確定需要的JDK版本)。參見此文的安裝步驟:http://blog.csdn.net/rchm8519/article/details/48721913
- 如果自己獨佔一臺服務器安裝環境時可以無需考慮,但是如果自己僅僅是這臺服務器上的一個用戶的話就需要注意了!(修改/etc/profile和修改~/.bashrc的區別)
2.從es官網下載elasticsearch5.5.0 && 修改配置文件。參見圖1、圖2。
參數說明:
- cluster.name :所有的cluster.name一致的es實例會加入到一個集羣中。
- node.name:該節點在集羣中的名字。
- path.data:存儲索引數據的位置。注意要掛載到一個磁盤空間大的位置,如果你要索引的數據量足夠大的話。
- path.log:存儲索引日誌得位置。注意要掛載到一個磁盤空間大的位置,如果你要索引的數據量足夠大的話。
- network.host:如果集羣中有多個節點的話,需要以ip的形式表示。
- http.port:默認端口號是9200,自己指定,端口不衝突即可。
- discovery.zen.ping.unicast.hosts:節點發現功能。
圖 1
圖 2
3.鑑於elasticsearch不能以root用戶權限運行,需要創建用戶用於運行ElasticSearch & 給用戶賦予需要的目錄權限。
3.1 創建用戶:
- useradd yongjia.sang
3.2 賦予用戶某些目錄的權限:
- chown yongjia.sang /sangyongjia -R :$home目錄
- chown yongjia.sang /srv/data -R : 寫索引數據的目錄
- chown yongjia.sang /srv/logs -R : 寫索引日誌的目錄
3.3 修改配置
- /etc/sysctl.conf 文件中添加一句:vm.max_map_count = 262144並執行命令:sysctl -p
- 在yongjia.sang用戶下運行命令: ulimit -v unlimited 將虛擬內存改爲無限大(不知道在哪個文件中配置,暫時以命令的方式解決這個問題!)
- 注:還有別的配置錯誤,需自行google解決!
集羣中每臺機器按照上述方式配置完成後,直接運行./bin/elasticsearch 文件即可啓動集羣,至此一個elasticsearch的集羣就可以運行起來了!es集羣的搭建的參數配置確實做的很精簡!