es(二)

1: 集群相關名詞

1.集群健康狀態(tài)
綠色: 所有數(shù)據都完整,并且副本數(shù)滿足
黃色: 所有數(shù)據都完整,但是有的索引副本數(shù)不滿足
紅色: 有的數(shù)據不完整

2.節(jié)點類型
主節(jié)點: 負責調度數(shù)據分配到哪個節(jié)點
數(shù)據節(jié)點: 負責處理落到自己身上的數(shù)據
默認: 主節(jié)點同時也是數(shù)據節(jié)點

3.數(shù)據分片
主分片: 實際存儲的數(shù)據,負責讀寫,粗框的是主分片
副本分片: 主分片的副本,提供讀,同步主分片,細框的是副本分片

4.副本:
主分片的備份,副本數(shù)量可以自定義

2: 部署ES集群

1.安裝java
rpm -ivh jdk-8u102-linux-x64.rpm

2.安裝ES
rpm -ivh elasticsearch-6.6.0.rpm

3.配置ES配置文件
配置內存鎖定:
systemctl edit elasticsearch.service
[Service]
LimitMEMLOCK=infinity
集群配置文件:
b01配置文件:
[root@db-01 ~]# cat /etc/elasticsearch/elasticsearch.yml 
cluster.name: linux
node.name: node-1
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: true
network.host: 10.0.0.114,127.0.0.1
http.port: 9200
discovery.zen.ping.unicast.hosts: ["10.0.0.114","10.0.0.115"]
discovery.zen.minimum_master_nodes: 1
http.cors.enabled: true
http.cors.allow-origin: "*"
==================================================================
db02配置文件:
[root@db-02 ~]# grep "^[a-Z]" /etc/elasticsearch/elasticsearch.yml 
cluster.name: linux
node.name: node-2
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: true
network.host: 10.0.0.115,127.0.0.1
http.port: 9200
discovery.zen.ping.unicast.hosts: ["10.0.0.114","10.0.0.115"]
discovery.zen.minimum_master_nodes: 1
http.cors.enabled: true
http.cors.allow-origin: "*"

4.啟動
systemctl daemon-reload
systemctl restart elasticsearch

5.查看日志
tail -f /var/log/elasticsearch/linux.log

3: ES集群相關注意

注意事項:
1.插入和讀取數(shù)據在任意節(jié)點都可以執(zhí)行,效果一樣
2.es-head可以連接集群內任一臺服務

3.主節(jié)點負責讀寫
如果主分片所在的節(jié)點壞掉了,副本分片會升為主分片

4.主節(jié)點負責調度
如果主節(jié)點壞掉了,數(shù)據節(jié)點會自動升為主節(jié)點

第九章: 查看集群各種信息

GET _cat/nodes
GET _cat/health
GET _cat/master
GET _cat/fielddata
GET _cat/indices
GET _cat/shards
GET _cat/shards/oldzhang

3: 集群注意事項

注意1:發(fā)現(xiàn)節(jié)點參數(shù)不需要把集群內所有的機器IP都加上
只需要包含集群內任意一個IP和自己的IP就可以
discovery.zen.ping.unicast.hosts: ["10.0.0.51","10.0.0.53"]

注意2: 集群選舉相關的參數(shù)需要設置為集群節(jié)點數(shù)的大多數(shù)
discovery.zen.minimum_master_nodes: 2

注意3: 默認創(chuàng)建索引為1副本5分片

注意4: 數(shù)據分配的時候會出現(xiàn)2中顏色
紫色: 正在遷移
黃色: 正在復制
綠色: 正常

注意5: 3節(jié)點的時候
0副本一臺都不能壞
1副本的極限情況下可以壞2臺: 1臺1臺的壞,不能同時壞2臺
2副本的情況可以同時壞2臺

第十一章: 自定義副本分片和索引
索引為2副本3分片
索引為0副本5分片

注意:
索引一旦建立完成,分片數(shù)就不可以修改了
但是副本數(shù)可以隨時修改

命令:

1.創(chuàng)建索引的時候就自定義副本和分片
PUT /yayayaay/
{
  "settings": {
    "number_of_shards": 3, 
    "number_of_replicas": 0
  }
}

2.修改單個索引的副本數(shù)
PUT /oldzhang/_settings/
{
  "settings": {
    "number_of_replicas": 0
  }
}

3.修改所有的索引的副本數(shù)
PUT /_all/_settings/
{
  "settings": {
    "number_of_replicas": 0
  }
}

工作如何設置:
2個節(jié)點: 默認就可以
3個節(jié)點: 重要的數(shù)據,2副本 不重要的默認
日志收集: 1副本3分片

4: 監(jiān)控

3節(jié)點實驗宕機一臺機器谁撼,集群狀態(tài)仍然為綠色
監(jiān)控注意,不能只監(jiān)控集群狀態(tài)
1.監(jiān)控節(jié)點數(shù)
2.監(jiān)控集群狀態(tài)
3.2者任意一個發(fā)生改變了都報警

監(jiān)控命令:
GET _cat/nodes
GET _cat/health

5.增強插件x-pack監(jiān)控功能![
1579175412(1).jpg

1579175412(1).jpg

6.安全功能

7.x版本以上有自帶功能冈止,或者使用search-guard插件

7.優(yōu)化

1.內存
不要超過32G (官方說明)

48內存
系統(tǒng)留一半: 24G
自己留一半: 24G
8G 12G 16G 24G 30G 慢慢擴大容量,生產建議

8.es的備份和恢復

前提條件:
必須要有Node環(huán)境和npm軟件
nodejs
npm

1.nodejs環(huán)境安裝
https://nodejs.org/dist/v10.16.3/node-v10.16.3-linux-x64.tar.xz
tar xf  node-v10.16.3-linux-x64.tar.xz -C /opt/node
vim /etc/profile
export PATH=/opt/node/bin:$PATH
source /etc/profile
[root@db-01 ~]# node -v
v10.16.3
[root@db-01 ~]# npm -v
6.9.0

2.指定使用國內淘寶npm源
npm install -g cnpm --registry=https://registry.npm.taobao.org

3.安裝es-dump
cnpm install elasticdump -g

4.備份命令
elasticdump \
  --input=http://10.0.0.114:9200/oldzhang \
  --output=/data/oldzhang.json \
  --type=data
    
elasticdump \
  --input=http://10.0.0.114:9200/oldzhang \
  --output=$|gzip > /data/oldzhang.json.gz  
  
5.恢復命令 
elasticdump \
--input=/data/oldzhang.json \
--output=http://10.0.0.114:9200/oldzhang
  
6.注意
恢復的時候需要先解壓縮成json格式 
恢復的時候,如果已經存在相同的數(shù)據,會被覆蓋掉
如果新增加的數(shù)據,則不影響,繼續(xù)保留

9.集群發(fā)現(xiàn)相關參數(shù)

discovery.zen.fd.ping_timeout: 120s  
discovery.zen.fd.ping_retries: 6  
discovery.zen.fd.ping_interval: 30s  

超時時間為120s
重試次數(shù)為6次
每次間隔30秒 

10.中文分詞

es是國外開發(fā),不支持中文詞語組合搜索

1.插入測試數(shù)據
POST /news/txt/1
{"content":"美國留給伊拉克的是個爛攤子嗎"}

POST /news/txt/2
{"content":"公安部:各地校車將享最高路權"}

POST /news/txt/3
{"content":"中韓漁警沖突調查:韓警平均每天扣1艘中國漁船"}

POST /news/txt/4
{"content":"中國駐洛杉磯領事館遭亞裔男子槍擊 嫌犯已自首"}

2.檢測
POST /news/_search
{
    "query" : { "match" : { "content" : "中國" }},
    "highlight" : {
        "pre_tags" : ["<tag1>", "<tag2>"],
        "post_tags" : ["</tag1>", "</tag2>"],
        "fields" : {
            "content" : {}
        }
    }
}
image.png

分詞配置
0.前提條件

  • 所有的ES節(jié)點都需要安裝
  • 所有的ES都需要重啟才能生效
1.配置中文分詞器
cd /usr/share/elasticsearch
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.6.0/elasticsearch-analysis-ik-6.6.0.zip

本地文件安裝
/usr/share/elasticsearch/bin/elasticsearch-plugin install file:///XXX/elasticsearch-analysis-ik-6.6.0.zip

systemctl restart elasticsearch

2.創(chuàng)建索引 
PUT /news2

3.創(chuàng)建模板
POST /news2/text/_mapping
{
        "properties": {
            "content": {
                "type": "text",
                "analyzer": "ik_max_word",
                "search_analyzer": "ik_smart"
            }
        }

}


4.插入測試數(shù)據
POST /news2/text/1
{"content":"美國留給伊拉克的是個爛攤子嗎"}

POST /news2/text/2
{"content":"公安部:各地校車將享最高路權"}

POST /news2/text/3
{"content":"中韓漁警沖突調查:韓警平均每天扣1艘中國漁船"}

POST /news2/text/4
{"content":"中國駐洛杉磯領事館遭亞裔男子槍擊 嫌犯已自首"}
image.png

自定義字典



字典里面沒有

cd /etc/elasticsearch/analysis-ik/
mkdir custom
cd custom
[root@mongo-01 custom]# cat mydict.dic 
魏旭
chown -R elasticsearch:elasticsearch custom
[root@mongo-01 analysis-ik]# vim IKAnalyzer.cfg.xml 
image.png
systemctl restart elasticsearch
image.png

要重新創(chuàng)建何暮,因為原來的已經用原來的字典分配好了樊零,不會加載新的詞典進去分配

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末酣难,一起剝皮案震驚了整個濱河市睹酌,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌拍鲤,老刑警劉巖贴谎,帶你破解...
    沈念sama閱讀 211,743評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異季稳,居然都是意外死亡擅这,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評論 3 385
  • 文/潘曉璐 我一進店門景鼠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來仲翎,“玉大人,你說我怎么就攤上這事铛漓∷菹悖” “怎么了?”我有些...
    開封第一講書人閱讀 157,285評論 0 348
  • 文/不壞的土叔 我叫張陵浓恶,是天一觀的道長玫坛。 經常有香客問我,道長包晰,這世上最難降的妖魔是什么湿镀? 我笑而不...
    開封第一講書人閱讀 56,485評論 1 283
  • 正文 為了忘掉前任炕吸,我火速辦了婚禮,結果婚禮上勉痴,老公的妹妹穿的比我還像新娘赫模。我一直安慰自己,他們只是感情好蒸矛,可當我...
    茶點故事閱讀 65,581評論 6 386
  • 文/花漫 我一把揭開白布瀑罗。 她就那樣靜靜地躺著,像睡著了一般雏掠。 火紅的嫁衣襯著肌膚如雪斩祭。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,821評論 1 290
  • 那天磁玉,我揣著相機與錄音停忿,去河邊找鬼驾讲。 笑死蚊伞,一個胖子當著我的面吹牛,可吹牛的內容都是我干的吮铭。 我是一名探鬼主播时迫,決...
    沈念sama閱讀 38,960評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼谓晌!你這毒婦竟也來了掠拳?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,719評論 0 266
  • 序言:老撾萬榮一對情侶失蹤纸肉,失蹤者是張志新(化名)和其女友劉穎溺欧,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體柏肪,經...
    沈念sama閱讀 44,186評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡姐刁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,516評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了烦味。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片聂使。...
    茶點故事閱讀 38,650評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖谬俄,靈堂內的尸體忽然破棺而出柏靶,到底是詐尸還是另有隱情,我是刑警寧澤溃论,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布屎蜓,位于F島的核電站,受9級特大地震影響钥勋,放射性物質發(fā)生泄漏炬转。R本人自食惡果不足惜控汉,卻給世界環(huán)境...
    茶點故事閱讀 39,936評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望返吻。 院中可真熱鬧姑子,春花似錦、人聲如沸测僵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽捍靠。三九已至沐旨,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間榨婆,已是汗流浹背磁携。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留良风,地道東北人谊迄。 一個月前我還...
    沈念sama閱讀 46,370評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像烟央,于是被迫代替她去往敵國和親统诺。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,527評論 2 349

推薦閱讀更多精彩內容