linux下安裝ElasticSearch

一、下載軟件
二、elasticsearch常見錯(cuò)誤
2.1. root用戶啟動(dòng)elasticsearch報(bào)錯(cuò)
2.1.1. 創(chuàng)建新用戶
2.1.2. 修改新用戶的密碼
2.1.3. 授權(quán)sudo
2.1.4. 賦值elasticsearch文件夾的權(quán)限給新用戶
2.2. JVM虛擬機(jī)內(nèi)存不足
2.3. max_map_count過小
2.4. max file descriptors過小
2.5. 外網(wǎng)訪問設(shè)置
2.6. elasticsearch-head插件連不上
2.8. 配置xpack
2.8.1. 生成證書
2.8.2. 修改配置
三、最終elasticsearch.yml的配置
四诱担、運(yùn)行elasticsearch
4.1 切換新用戶
4.2 后臺(tái)運(yùn)行
五辐马、初始化密碼
六、驗(yàn)證密碼是否設(shè)置成功
七舞虱、添加索引模板(非必需)
7.1. 更新已有索引(非必需)
7.2. 設(shè)置索引模板
7.2.1. 系統(tǒng)日志
7.2.2. 慢sql日志
7.2.3. 埋點(diǎn)日志
八、安裝IK分詞器
8.1. 下載
8.2. 解壓-->將文件復(fù)制到 es的安裝目錄/plugin/ik下面即可
8.3. 重啟es并檢查插件是否安裝成功
一母市、下載軟件
https://www.elastic.co/cn/downloads/elasticsearch

二矾兜、elasticsearch常見錯(cuò)誤
2.1. root用戶啟動(dòng)elasticsearch報(bào)錯(cuò)
Elasticsearch為了安全考慮,不讓使用root啟動(dòng)患久,解決方法新建一個(gè)用戶椅寺,用此用戶進(jìn)行相關(guān)的操作浑槽。如果你用root啟動(dòng),會(huì)出現(xiàn)“java.lang.RuntimeException: can not runelasticsearch as root”錯(cuò)誤返帕,具體如下所示:

需要?jiǎng)?chuàng)建新用戶來運(yùn)行es

2.1.1. 創(chuàng)建新用戶
adduser [用戶名]
2.1.2. 修改新用戶的密碼
passwd [用戶名]
2.1.3. 授權(quán)sudo
新創(chuàng)建的用戶并不能使用sudo命令桐玻,需要給他添加授權(quán)。

添加sudoers文件可寫權(quán)限
chmod -v u+w /etc/sudoers
修改sudoers文件
vim /etc/sudoers
在sudoers文件中找到如下位置并添加如下內(nèi)容
[用戶名] ALL=(ALL) ALL(如需新用戶使用sudo時(shí)不用輸密碼荆萤,把最后一個(gè)ALL改為NOPASSWD:ALL即可)

收回sudoers文件可寫權(quán)限
chmod -v u-w /etc/sudoers
2.1.4. 賦值elasticsearch文件夾的權(quán)限給新用戶
改變文件夾及所有子文件(夾)所屬用戶和用戶組

chown -R zlt:zlt elasticsearch-6.6.1

2.2. JVM虛擬機(jī)內(nèi)存不足
錯(cuò)誤:“JavaHotSpot(TM) 64-Bit Server VM warning: INFO: error='Cannotallocate memory' (errno=12)”表示內(nèi)存不足镊靴,其配置文件為config目錄下的jvm.options,默認(rèn)為2g,可以修改為1g链韭。

2.3. max_map_count過小
錯(cuò)誤“max virtual memory areas vm.max_map_count [65530]is too low, increase to at least [262144]”偏竟,max_map_count文件包含限制一個(gè)進(jìn)程可以擁有的VMA(虛擬內(nèi)存區(qū)域)的數(shù)量,系統(tǒng)默認(rèn)是65530敞峭,修改成655360踊谋。

在/etc/sysctl.conf文件最后添加一行

vm.max_map_count=655360

并執(zhí)行命令

sysctl -p

2.4. max file descriptors過小
錯(cuò)誤“max file descriptors [65535] for elasticsearchprocess is too low, increase to at least [65536]”,maxfile descriptors為最大文件描述符旋讹,設(shè)置其大于65536即可殖蚕。

解決方法是修改/etc/security/limits.conf文件

  • 代表所有用戶

2.5. 外網(wǎng)訪問設(shè)置
修改config目錄下elasticsearch.yml文件

修改network.host為0.0.0.0
設(shè)置node.name參數(shù)
設(shè)置cluster.initial_master_nodes參數(shù):數(shù)組值需與參數(shù)node.name相同

2.6. elasticsearch-head插件連不上
修改config目錄下elasticsearch.yml文件,在最后新增以下兩個(gè)參數(shù)

http.cors.enabled: true
http.cors.allow-origin: "*"

2.8. 配置xpack
2.8.1. 生成證書
到elastsearch的目錄下執(zhí)行以下命令

bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""
2.8.2. 修改配置
修改config目錄下elasticsearch.yml文件沉迹,在最后新增以下參數(shù)

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

三睦疫、最終elasticsearch.yml的配置
cluster.name: my-es

http.cors.enabled: true

node.name: node-1
cluster.initial_master_nodes: ["node-1"]

http.cors.enabled: true
http.cors.allow-origin: "*"

bootstrap.memory_lock: false
bootstrap.system_call_filter: false

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

四、運(yùn)行elasticsearch
4.1 切換新用戶
su zlt
4.2 后臺(tái)運(yùn)行
bin/elasticsearch -d

五胚股、初始化密碼
到elastsearch的目錄下執(zhí)行以下命令笼痛,兩種方式二選一

自動(dòng)生成密碼
bin/elasticsearch-setup-passwords auto
手動(dòng)設(shè)置密碼
bin/elasticsearch-setup-passwords interactive

六裙秋、驗(yàn)證密碼是否設(shè)置成功
打開瀏覽器琅拌,輸入我們的elasticsearch的網(wǎng)址,比如本地的http://localhost:9200/ 摘刑,然后會(huì)彈出一個(gè)輸入框进宝,讓我們輸入賬號(hào)和密碼

七、添加索引模板(非必需)
如果是單節(jié)點(diǎn)的es需要去掉索引的副本配置枷恕,不然會(huì)出現(xiàn)unassigned_shards

7.1. 更新已有索引(非必需)
如果已存在 sys-log-* 或者 mysql-slowlog-* 的索引才需要執(zhí)行以下語句
需要修改IP和密碼

curl -XPUT http://192.168.28.130:9200/sys-log-*/_settings
-H 'Content-Type: application/json'
-u elastic:qEnNfKNujqNrOPD9q5kb
-d '{
"index" : {
"number_of_replicas" : 0
}
}'

curl -XPUT http://192.168.28.130:9200/mysql-slowlog-*/_settings
-H 'Content-Type: application/json'
-u elastic:qEnNfKNujqNrOPD9q5kb
-d '{
"index" : {
"number_of_replicas" : 0
}
}'

7.2. 設(shè)置索引模板
7.2.1. 系統(tǒng)日志
需要修改IP和密碼

curl -XPUT http://192.168.28.130:9200/_template/template_sys_log
-H 'Content-Type: application/json'
-u elastic:qEnNfKNujqNrOPD9q5kb
-d '{
"index_patterns" : ["sys-log-*"],
"order" : 0,
"settings" : {
"number_of_replicas" : 0
},
"mappings": {
"properties": {
"message": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
},
"analyzer": "ik_max_word"
},
"pid": {
"type": "text"
},
"serverPort": {
"type": "text"
},
"logLevel": {
"type": "text"
},
"traceId": {
"type": "text"
}
}
}
}'
7.2.2. 慢sql日志
需要修改IP和密碼

curl -XPUT http://192.168.28.130:9200/_template/template_sql_slowlog
-H 'Content-Type: application/json'
-u elastic:qEnNfKNujqNrOPD9q5kb
-d '{
"index_patterns" : ["mysql-slowlog-*"],
"order" : 0,
"settings" : {
"number_of_replicas" : 0
},
"mappings": {
"properties": {
"query_str": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
},
"analyzer": "ik_max_word"
}
}
}
}'
7.2.3. 埋點(diǎn)日志
需要修改IP和密碼

curl -XPUT http://192.168.28.130:9200/_template/template_point_log
-H 'Content-Type: application/json'
-u elastic:qEnNfKNujqNrOPD9q5kb
-d '{
"index_patterns" : ["point-log-*"],
"order" : 0,
"settings" : {
"number_of_replicas" : 0
}
}'

八党晋、安裝IK分詞器
查詢數(shù)據(jù),都是使用的默認(rèn)的分詞器徐块,分詞效果不太理想未玻,會(huì)把text的字段分成一個(gè)一個(gè)漢字,然后搜索的時(shí)候也會(huì)把搜索的句子進(jìn)行分詞胡控,所以這里就需要更加智能的分詞器IK分詞器了

8.1. 下載
下載地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
這里你需要根據(jù)你的Es的版本來下載對(duì)應(yīng)版本的IK

8.2. 解壓-->將文件復(fù)制到 es的安裝目錄/plugin/ik下面即可
完成之后效果如下:

8.3. 重啟es并檢查插件是否安裝成功
http://192.168.28.130:9200/_cat/plugins

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末扳剿,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子昼激,更是在濱河造成了極大的恐慌庇绽,老刑警劉巖锡搜,帶你破解...
    沈念sama閱讀 216,470評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異瞧掺,居然都是意外死亡耕餐,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門辟狈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來肠缔,“玉大人,你說我怎么就攤上這事哼转∽椋” “怎么了?”我有些...
    開封第一講書人閱讀 162,577評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵释簿,是天一觀的道長亚隅。 經(jīng)常有香客問我,道長庶溶,這世上最難降的妖魔是什么煮纵? 我笑而不...
    開封第一講書人閱讀 58,176評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮偏螺,結(jié)果婚禮上行疏,老公的妹妹穿的比我還像新娘。我一直安慰自己套像,他們只是感情好酿联,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著夺巩,像睡著了一般贞让。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上柳譬,一...
    開封第一講書人閱讀 51,155評(píng)論 1 299
  • 那天喳张,我揣著相機(jī)與錄音,去河邊找鬼美澳。 笑死销部,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的制跟。 我是一名探鬼主播舅桩,決...
    沈念sama閱讀 40,041評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼雨膨!你這毒婦竟也來了擂涛?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,903評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤哥放,失蹤者是張志新(化名)和其女友劉穎歼指,沒想到半個(gè)月后爹土,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,319評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡踩身,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評(píng)論 2 332
  • 正文 我和宋清朗相戀三年胀茵,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片挟阻。...
    茶點(diǎn)故事閱讀 39,703評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡琼娘,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出附鸽,到底是詐尸還是另有隱情脱拼,我是刑警寧澤,帶...
    沈念sama閱讀 35,417評(píng)論 5 343
  • 正文 年R本政府宣布坷备,位于F島的核電站熄浓,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏省撑。R本人自食惡果不足惜赌蔑,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望竟秫。 院中可真熱鬧娃惯,春花似錦、人聲如沸肥败。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽馒稍。三九已至皿哨,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間筷黔,已是汗流浹背往史。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留佛舱,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,711評(píng)論 2 368
  • 正文 我出身青樓挨决,卻偏偏與公主長得像请祖,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子脖祈,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評(píng)論 2 353