1. 程式人生 > >[學習ES系列]-1.認識ElasticSearch及環境準備與服務搭建

[學習ES系列]-1.認識ElasticSearch及環境準備與服務搭建

ble guide www. ges 訪問 分布 code 全文搜索 十分

一、認識ElasticSearch

Elasticsearch 是一個實時的分布式搜索分析引擎, 它能讓你以一個之前從未有過的速度和規模,去探索你的數據。 它被用作全文檢索、結構化搜索、分析以及這三個功能的組合。

摘自《Elasticsearch: 權威指南》

Elasticsearch 使用 Java 編寫的,它的內部使用 Lucene 做索引與搜索,但是它的目的是使全文檢索變得簡單, 通過隱藏 Lucene 的復雜性,取而代之的提供一套簡單一致的 RESTful API。

然而,Elasticsearch 不僅僅是 Lucene,並且也不僅僅只是一個全文搜索引擎。 它可以被下面這樣準確的形容:

  • 一個分布式的實時文檔存儲,每個字段 可以被索引與搜索
  • 一個分布式實時分析搜索引擎
  • 能勝任上百個服務節點的擴展,並支持 PB 級別的結構化或者非結構化數據

Elasticsearch 將所有的功能打包成一個單獨的服務,這樣你可以通過程序與它提供的簡單的 RESTful API 進行通信, 可以使用自己喜歡的編程語言充當 web 客戶端,甚至可以使用命令行(去充當這個客戶端)。

二、環境依賴

因Elasticsearch 使用 Java 編寫,故服務端需具備Java運行環境。

三、服務(集群)搭建

準備工作:

  • 官網下載最新版本程序:https://www.elastic.co/products/elasticsearch
  • 解壓到服務端指定目錄

重點需要關註兩個文件:

  • ./bin/elasticsearch 服務啟動程序
  • ./config/elasticsearch.yml 服務配置文件

1.運行單節點實例

單節點實例無需修改配置文件,直接啟動即可。

./bin/elasticsearch #啟動服務
(./bin/elasticsearch -d #後臺運行服務)

技術分享圖片
在瀏覽器中訪問http://localhost:9200/?pretty,看到此界面表明ES服務啟動成功

2.搭建集群

技術分享圖片
如圖所示,ElasticSearch集群由一個主節點多個從節點組成。

ElasticSearch集群搭建十分簡單,每個節點都運行起來,且都有自己的配置信息。故每個節點都需要copy一份程序代碼,修改各自配置文件信息並運行。

具體配置如下:
主節點配置信息:

#跨域設置
http.cors.enabled: true
http.cors.allow-origin: "*"

#集群配置
cluster.name: Jack-ElasticSearch
node.name: master
node.master: true

network.host: 127.0.0.1

[學習ES系列]-1.認識ElasticSearch及環境準備與服務搭建