docker es持久化_Docker 搭建 ES 集群并整合 Spring Boot
一、前言
什么是 Elasticsearch ?
Elasticsearch 是一個基于 Apache Lucene(TM) 的開源搜索引擎。無論在開源還是專有領(lǐng)域,Lucene 可以被認為是迄今為止最先進、性能最好的、功能最全的搜索引擎庫,并通過簡單的 RESTful API 來隱藏 Lucene 的復雜性,從而讓全文搜索變得簡單。
Elasticsearch 不僅僅是 Lucene 和全文搜索,我們還能這樣去描述它:
分布式的實時文件存儲,每個字段都被索引并可被搜索;
分布式的實時分析搜索引擎;
可以擴展到上百臺服務器,處理 PB 級結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù)。
Elasticsearch 三大要素:
文檔(Document):在面向?qū)ο笥^念就是一個對象。在 ES 里面,是一個大 JSON 對象,是指定了唯一 ID 的最底層或者根對象。文檔的位置由 _index、_type 和 _id 唯一標識。
索引(Index):用于區(qū)分文檔成組,即分到一組的文檔集合。索引,用于存儲文檔和使文檔可被搜索。比如項目存索引 project 里面,交易存索引 sales 等。
類型(Type):用于區(qū)分索引中的文檔,即在索引中對數(shù)據(jù)邏輯分區(qū)。比如索引 project 的項目數(shù)據(jù),根據(jù)項目類型 ui 項目、插畫項目等進行區(qū)分。
二、ES 集群安裝
基于 Dokcer ,單機安裝 Docker 版集群。使用版本如下:
Elasticsearch 5.3.2
Kibana 5.3.2
JDK 8
安裝步驟:
安裝 ES 集群實例 elasticsearch001
安裝 ES 集群實例 elasticsearch002
安裝 Kibana 監(jiān)控
1. 安裝 ES 集群實例 elasticsearch001
打開命令行執(zhí)行:
docker run -d -p 9200:9200 -p 9300:9300 --name elasticsearch001 -h elasticsearch001\
-e cluster.name=lookout-es -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e xpack.security.enabled=false\
docker.elastic.co/elasticsearch/elasticsearch:5.3.2
命令淺析如下:
-d 設(shè)置后臺運行容器。
-p [宿主機端口]:[容器內(nèi)端口]。
--name 設(shè)置容器別名。
-h 設(shè)置容器的主機名。
-e 設(shè)置環(huán)境變量。這里關(guān)閉 x-pack 的安全校驗功能,防止訪問認證。
第一次運行會比較慢,因為拉取 es docker image,但是可以設(shè)置國內(nèi) Docker 鏡像地址。如果成功,命令行會出現(xiàn)如圖所示:
那么驗證下是否啟動成功,繼續(xù)執(zhí)行如下命令:
curl http://localhost:9200/_cat/health\?v
會出現(xiàn)如圖所示的結(jié)果:
cluster.name ES 集群名為 lookout-es,這個后面需要指定關(guān)聯(lián)。node 表示只有一個實例。默認 shards 分片為主備兩個。status 狀態(tài)是我們要關(guān)心的,狀態(tài)可能是下列三個值之一:
總結(jié)
以上是生活随笔為你收集整理的docker es持久化_Docker 搭建 ES 集群并整合 Spring Boot的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 土是独体字结构吗_205砂浆、混凝土强度
- 下一篇: ajax加载对应的json,jQuery