elasticsearch集羣搭建實例

下個月又開始搞搜索了,幾個月沒動這塊還好沒有落下. 晚上在本身虛擬機上搭建了一個簡易搜索集羣,分享一下.html

操做系統環境: Red Hat 4.8.2-16java

elasticsearch : elasticsearch-1.4.1node

集羣搭建方式: 一臺虛擬機上2個節點. centos

集羣存放路徑:/export/search/elasticsearch-cluster
瀏覽器

必備環境:  java運行環境elasticsearch

集羣搭建實例展現:tcp

1. 解壓tar包,建立集羣節點分佈式

#進入到集羣路徑
[root@localhost elasticsearch-cluster]# pwd
/export/search/elasticsearch-cluster #重命名解壓包
[root@localhost elasticsearch-cluster]# ls
elasticsearch-1.4.1 [root@localhost elasticsearch-cluster]# mv elasticsearch-1.4.1 elasticsearch-node1 #進入到節點配置路徑
[root@localhost elasticsearch-cluster]# cd elasticsearch-node1/config/
[root@localhost config]# ls
elasticsearch.yml  logging.yml

2.建立集羣配置信息:工具

# elasticsearch-node1配置 # 配置集羣名稱
cluster.name: elasticsearch-cluster-centos # 配置節點名稱
node.name: "es-node1"
# 爲節點之間的通訊設置一個自定義端口(默認爲9300) 
transport.tcp.port: 9300 
# 設置監聽HTTP傳輸的自定義端(默認爲9200)
http.port: 9200              

elasticsearch配置文件說明見: http://blog.csdn.net/an74520/article/details/10175603

3.安裝head插件搜索引擎

#進入到節點bin路徑
[root@localhost bin]# pwd
/export/search/elasticsearch-cluster/elasticsearch-node1/bin 安裝插件 [root@localhost bin]# ./plugin -install mobz/elasticsearch-head

安裝完插件以後會在es節點bin路徑同級建立一個plugins目錄,存放安裝的插件

4.複製一份配置好的節點爲elasticsearch-node2

[root@localhost elasticsearch-cluster]# ls
elasticsearch-node1  elasticsearch-node2

5.修改節點2中的集羣配置信息

# elasticsearch-node2配置 # 配置集羣名稱
cluster.name: elasticsearch-cluster-centos # 配置節點名稱
node.name: "es-node2"
# 爲節點之間的通訊設置一個自定義端口(默認爲9300) 
transport.tcp.port: 9301 
# 設置監聽HTTP傳輸的自定義端(默認爲9200)
http.port: 9201             

說明:
  上面配置表示集羣中有2個節點,節點名爲別爲,"es-node1"和  "es-node2",同屬於集羣"elasticsearch-cluster-centos"
節點二中端口能夠不用配置,es在啓動時會去檢測,若是目標端口被佔用,會檢測下一個端口.由於兩節點部署在同一天虛擬機上爲了更好的說明問題,這裏手動配置了對應的端口.
咱們能夠從es對應日誌中()查看對應的啓動信息,以及端口綁定信息。

6.分別啓動節點

[root@localhost bin]# pwd
/export/search/elasticsearch-cluster/elasticsearch-node1/bin [root@localhost bin]# ./elasticsearch -d -Xms512m -Xmx512m

如上,爲啓動節點1的命令,es啓動配置相關日誌查看elasticsearch-cluster-centos.log便可.

[root@localhost logs]# pwd
/export/search/elasticsearch-cluster/elasticsearch-node2/logs [root@localhost logs]# ls
elasticsearch-cluster-centos_index_indexing_slowlog.log  elasticsearch-cluster-centos.log elasticsearch-cluster-centos_index_search_slowlog.log

7. 至此咱們的簡易集羣配置完成.查看集羣
 由於咱們安裝了head插件,因此能夠經過該插件查看,虛擬機ip爲192.168.1.108.

http://192.168.1.108:9200/_plugin/head/ (對應節點1) http://192.168.1.108:9201/_plugin/head/ (對應節點2)

集羣狀態如圖:


8.安裝Marvel插件

Marvel是Elasticsearch的管理和監控工具,對於開發使用免費的。它配備了一個叫作Sense的交互式控制檯,方便經過瀏覽器直接與Elasticsearch交互。
Marvel是一個插件,在Elasticsearch目錄中運行如下代碼來下載和安裝:

./bin/plugin -i elasticsearch/marvel/latest

若是要禁止Marvel,能夠經過以下方式

echo 'marvel.agent.enabled: false' >> ./config/elasticsearch.yml

 

附錄: elasticsearch使用JavaAPI開發相關

分佈式搜索ElasticSearch構建集羣與簡單搜索實例應用:  
  http://www.cnblogs.com/dennisit/p/3346228.html

ElasticSearch搜索實例含高亮顯示及搜索的特殊字符過濾   
  http://www.cnblogs.com/dennisit/p/3363851.html

基於Luence的分佈式搜索引擎ElasticSearch搜索實例演示(Java API)
  http://www.cnblogs.com/dennisit/archive/2013/04/08/3008631.html


轉載請註明出處:[http://www.cnblogs.com/dennisit/p/4132269.html]

相關文章
相關標籤/搜索