ElasticSearch入門 —— 集群搭建
一、環境介紹與安裝準備
1、環境說明
2臺虛擬機,OS為ubuntu13.04,ip分別為xxx.xxx.xxx.140和xxx.xxx.xxx.145。
2、安裝準備
ElasticSearch(簡稱ES)由java語言實現,運行環境依賴java。ES 1.x版本,官方推薦至少使用jdk1.6的環境,建議使用oracle java,可以去官網下載,本文使用jdk-7u51-linux-i586.gz。ES可以去官網下載,也可以在這裏下載,本文使用elasticsearch-1.0.1.tar.gz。
二、安裝
1、安裝JAVA
關於java的安裝,請參照這裏。
2、ES安裝
(1)解壓elasticsearch-1.0.1.tar.gz,sudo tar -zvxf elasticsearch-1.0.1.tar.gz,在當前路徑生成目錄:elasticsearch-1.0.1;為該目錄做一個軟連接ln -s elasticsearch-1.0.1 elasticsearch。完成之後,目錄結構如下圖:
(2)配置es。這裏只做最簡單的配置,修改ES_HOME/config/elasticsearch.yml文件,將node.name的值設置為“test-node1”,表示當前這個es服務節點名字為test-node1。
(3)啟動ES。進入ES安裝目錄,執行命令:bin/elasticsearch -d -Xms512m -Xmx512m,然後在瀏覽器輸入http://ip:9200/,查看頁面信息,是否正常啟動。status=200表示正常啟動了,還有一些es的版本信息,name為配置文件中node.name的值。
(4)在另外一臺機器上,安裝同樣的步驟安裝ES,因為至少2臺服務才算集群嘛!註意,在配置時,將node.name的值設置為test-node2,總之必須和之前配置值不同。
兩臺es服務同時起來,因為配置文件中均默認cluster.name=elasticsearch,所以這兩臺機器自動構建成一個集群,集群名字為elasticsearch。
3、elasticsearchservicewrapper安裝
這個是對elasticsearch執行命令的包裝服務,安裝之後,方便elasticsearch的啟動,停止等等操作。
(1)下載elasticsearchservicewrapper
git clone https://github.com/elasticsearch/elasticsearch-servicewrapper,然後將目錄下的service目錄拷貝至ES_HOME/bin目錄下。
(2)簡單配置jvm的內存
修改ES_HOME/bin/service/elasticsearch.conf,set.default.ES_HEAP_SIZE=1024,該值根據機器的配置可自定義。
(3)安裝啟動服務
執行命令:ES_HOME/bin/service/elasticsearch install
(4)啟動/停止/重啟服務
執行命令:ES_HOME/bin/service/elasticsearch start/stop/restart
4、插件安裝
集群安裝成功之後,需要對集群中的索引數據、運行情況等信息進行查看,索引需要安裝一些插件,方面後續工作。工欲善其事必先利其器,下面介紹幾個實用的插件:
(1)head
和插件名字一樣,首推這個插件。通過head,可以查看集群幾乎所有信息,還能進行簡單的搜索查詢,觀察自動恢復的情況等等。
執行下面的命令開始安裝:sudo elasticsearch/bin/plugin -install mobz/elasticsearch-head
記得兩臺機器都安裝一下哦。安裝完成之後,在瀏覽器輸入:http://ip:9200/_plugin/head/ ,可以查看顯示效果。如下圖:
cluster health:green (2, 20) : 表示該集群目前處於健康狀態,集群包含2臺機器,索引總共20個分片。粗線綠框表示主分片,細線綠框為備份分片。
還有很多功能,請讀者自己去體驗。
(2)bigdesk
bigdesk是集群監控插件,通過該插件可以查看整個集群的資源消耗情況,cpu、內存、http鏈接等等。
執行命令安裝:sudo elasticsearch/bin/plugin -install lukas-vlcek/bigdesk
安裝完成之後,在瀏覽器輸入:http://ip:9200/_plugin/bigdesk/#nodes ,顯示界面如下:
點擊test-node1節點,可以查看單個節點的資源使用情況,包括JVM、Thread Pools、OS、Process、HTTP&Transport、Indice、File system。
ES的插件非常之多,請參考ES插件大全。
ElasticSearch入門 —— 集群搭建