日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

elasticsearch7.1.1入门之集群的基础配置

發布時間:2024/3/13 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 elasticsearch7.1.1入门之集群的基础配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

操作系統win10,慕課網在一兩年前出了這個es的基礎教程,然后最近才開始學習,哪知道已經到了7.1.1的版本了(下面的內容都有官方文檔,只是用來記錄一下自己的學習過程)

先了解下他的基礎概念:

文檔:ES是面向文檔的,他不同與傳統的關系型數據庫,存一個對象要制定相應的列來表達他的某個屬性,他是面向整個對象(文檔)的,在創建索引時,要描述這個文檔的每個字段的數據類型。所以可以把文檔近似于對象,但是這個文檔是描述頂級對象或最終對象,他被序列化為json并存儲到es中

分片:分片是底層的基本讀寫單元,他是為了分割巨大的索引,支持讀寫并行操作,由多個節點共同完成,他是存放數據的地方,文檔就保存在分片內,他分為主分片和副分片,以主分片的數據為準,從分片要等主分片被成功寫入后再被寫入。

索引:引致官方文檔

索引(名詞):

如前所述,一個?索引?類似于傳統關系數據庫中的一個?數據庫?,是一個存儲關系型文檔的地方。?索引?(index) 的復數詞為?indices?或?indexes?。

索引(動詞):

索引一個文檔?就是存儲一個文檔到一個?索引?(名詞)中以便它可以被檢索和查詢到。這非常類似于 SQL 語句中的?INSERT?關鍵詞,除了文檔已存在時新文檔會替換舊文檔情況之外。?

到這里以后,可以了解到 一個索引擁有多個分片,一個分片擁有多個文檔,而節點、分片分別保證分布式系統的中的服務可用性

和數據可用性

類型:表示一類相似的文檔,一個索引里面可以有多個類型,用于區分同一個索引中的不同細分(后面沒有這個概念了)。

?

節點:

運行中的es實例

主節點:

負責管理集群的工作、管理集群變更

node.master: true(該配置會被認為是具有選舉為master的資格),主節點可以作為數據節點,但是在生產環境中減少工作量可以配置 node.data: false

數據節點:

負責數據相關的操作:增刪改查、搜索、聚合 配置方式:node.data:true

預處理節點:

可以在起到攔截處理的作用,在寫入數據之前,經由該節點處理 配置方式:node.ingest:true

協調節點:

路由的作用

基礎的概念就介紹到這里,如果想了解更多,需要自己去深入了解,看看文檔和相關的視頻

那接下來說一下安裝:

首先肯定要有jvm環境啦,這里通過zip包解壓,最好不要用那個msi的方式下載,因為好像做集群沒有zip包方便(就從跟著慕課網的老師視頻來學習的角度來說)zip包地址

解壓好后,配置相關的文件,這里我解壓了三個,這里如果直接復制的話,在window下面好像有點坑,然后配置跟著視頻配置相應的文件

主節點:

http.cors.enabled: true http.cors.allow-origin: "*" cluster.name: lele node.name: master node.master: true network.host: 127.0.0.1 #node.data: false

數據節點1:

cluster.name: lele node.name: slave1 network.host: 127.0.0.1 http.port: 8200 discovery.zen.ping.unicast.hosts: ["127.0.0.1"] node.data: true

cluster.name是集群的名稱,node.name是節點名字,要保證對應的節點對應上集群名稱,而后設置相應的端口,還有主節點的ip地址

數據節點2就是把端口號、節點名、改一下就可以了

集群的健康狀態?

green 健康狀態,所有主副分片都正常分配,yellow指所有主分片都正常分配,但是有副分片為正常分配,red有主分片未分配

這里說一下我遇到的坑,當時啟動時突然出現找不到jvm.options這個文件,后來上網查詢了是沒有權限。。所以以系統管理員運行bat命令就可以了,先啟動主節點再啟動從節點,然后關于可視化的那個界面按著視頻做就可以了,那里需要用到node的環境。大概的步驟就是先下載那個壓縮包,解壓,然后npm install,npm run start

然后看一下效果:

后面又接觸到了另外的可視化界面cerebro,感覺更加好用,功能更強大,而啟動的方式也從配置文件改為參數啟動,-E參數

elasticsearch -Ecluster.name=lele -Epath.data=./data/node1 -Enode.name=node1 -Ehttp.port=9200 -d

這里再記錄一下索引的分片和副本的關系,分片是把數據分成一個個部分,副本則是這些分片的副本可以通過

"number_of_shards":2,"number_of_replicas":"2",

來設置,那么這里其實有2*(2+1)個分片,需要主分片有2個,每個主分片有2個副本,應該每個節點上都有兩個主分片的數據。

然后如果為3個主分片,1個副本的話,也是六個分片,其中把數據分成3部分,每個部分有1個副本。

當磁盤空間不夠時,可能為導致索引不能分配,這時候可以設置cluster.routing.allocation.disk.threshold_enabled為false,在cerebro中的集群配置里面

最后附上慕課網鏈接,瓦力老師聲音挺好聽的!

?

?

?

?

總結

以上是生活随笔為你收集整理的elasticsearch7.1.1入门之集群的基础配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。