使用 Docker安裝
安裝ES
【先讀官方檔案!!!】
拉取鏡像
docker pull elasticsearch:7.6.1
創建網路
docker network create elastic
加上記憶體限制啟動 ES
docker run -d --name es01-test --net elastic -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" elasticsearch:7.6.1
安裝Kibana
Kibana是一個針對Elasticsearch的開源分析及可視化平臺,用來搜索、查看互動存盤在Elasticsearch索引中的資料,使用Kibana,可以通過各種圖表進行高級資料分析及展示,Kibana讓海量資料更容易理解,它操作簡單,基于瀏覽器的用戶界面可以快速創建儀表板( dashboard ))實時顯示Elasticsearch查詢動態,設定Kibana非常簡單,無需編碼或者額外的基礎架構,幾分鐘內就可以完成Kibana安裝并啟動Elasticsearch索引監測,
官網:https://www.elastic.co/cn/kibana
(漢化,只要在kibana.yml組態檔目錄,在組態檔中修改為zh-CN)
啟動 Kibana
# 安裝Kibana
docker pull kibana:7.6.1
# 啟動
docker run -d --name kib01-test --net elastic -p 5601:5601 -e "ELASTICSEARCH_HOSTS=http://es01-test:9200" kibana:7.6.1
啟動完成后,開放防火墻埠,查看是否可用訪問!!!注意kibana啟動會很慢而且很占CPU,我就是幾次都是CPU滿了,嚇得我趕緊找問題…
開放防火墻的指定埠
firewall-cmd --zone=public --add-port=9200/tcp --permanentfirewall-cmd --zone=public --add-port=5601/tcp --permanent
重啟防火墻
firewall-cmd --reload
配置密碼訪問ES
修改Elastic配置
使用基本許可證時,默認情況下禁用Elasticsearch安全功能,由于我測驗環境是放在公網上的,所以需要設定下密碼訪問,相關檔案可以參考這里
1、進入正在運行的容器
docker exec -it 容器id /bin/bash
#安裝 vim
yum -y install vim
#查看目錄
[root@5c43a5b9d09a elasticsearch]# ls
LICENSE.txt README.asciidoc config jdk logs plugins
NOTICE.txt bin data lib modules
2、更改 config/elasticsearch.yml 檔案,設定 xpack.security.enabled 為 true
[root@06c5914709a5 config]# vim elasticsearch.yml
[root@06c5914709a5 config]# cat elasticsearch.yml
cluster.name: "docker-cluster"
network.host: 0.0.0.0
xpack.security.enabled: true
#配置跨域
http.cors.enabled: true
http.cors.allow-origin: "*"
3、重啟elasticsearch容器
[root@VM-0-6-centos z-test]# docker restart es01-test
es01-test
4、進入容器設定各個組件的密碼
[root@06c5914709a5 elasticsearch]# ./bin/elasticsearch-setup-passwords interactive
Initiating the setup of passwords for reserved users elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user.
You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]y
Enter password for [elastic]:
Reenter password for [elastic]:
Enter password for [apm_system]:
Reenter password for [apm_system]:
Enter password for [kibana]:
Reenter password for [kibana]:
Enter password for [logstash_system]:
Reenter password for [logstash_system]:
Enter password for [beats_system]:
Reenter password for [beats_system]:
Enter password for [remote_monitoring_user]:
Reenter password for [remote_monitoring_user]:
Changed password for user [apm_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]
修改 Kibana 配置
1、修改 kibana.yml (find / -name kibana.yml)
進入容器docker exec -it 容器id /bin/bash并進入config目錄cd config
添加最后兩行配置用戶和密碼
bash-4.2$ vi kibana.yml
bash-4.2$ cat kibana.yml
#
# ** THIS IS AN AUTO-GENERATED FILE **
#
# Default Kibana configuration for docker target
server.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
xpack.monitoring.ui.container.elasticsearch.enabled: true
elasticsearch.username: "elastic"
2、創建kibana keystore
./bin/kibana-keystore create
3、在kibana keystore 中添加密碼,并輸入自己剛剛配置的ES密碼
./bin/kibana-keystore add elasticsearch.password
4、重啟容器
[root@VM-0-6-centos /]# docker restart kib01-test
kib01-test
再次訪問:ip:9200,則需要輸入賬號和密碼
賬號為:elastic

安裝IK分詞器插件
分詞:即把一段中文或者別的劃分成一個個的關鍵字,我們在搜索時候會把自己的資訊進行分詞,會把資料庫中或者索引庫中的資料進行分詞,然后進行一個匹配操作,默認的中文分詞是將每個字看成一個詞,比如“我愛中國"會被分為"我" “愛”“中”“國”,這顯然是不符合要求的,所以我們需要安裝中文分詞器ik來解決這個問題,
IK提供了兩個分詞演算法: ik_smart和ik_max_word,其中 ik_smart為最少切分,ik_max_word為最細粒度劃分!
1、進入容器
docker exec -it 容器名 /bin/bash
2、在線下載并安裝
Ik分詞器github鏈接:https://github.com/medcl/elasticsearch-analysis-ik/releases/
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.6.1/elasticsearch-analysis-ik-7.6.1.zip
3、退出容器并重啟ES
exit 或者 Ctrl + Q + P
docker restart 容器id
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-9je5Q2Tp-1627991186463)(ElasticSearch.assets/image-20210803155517310.png)]](https://img.uj5u.com/2021/08/05/253073050708492.png)
使用:
-
ik_smart最小切分
{ "tokens" : [ { "token" : "中國共產黨", "start_offset" : 0, "end_offset" : 5, "type" : "CN_WORD", "position" : 0 } ] } -
ik_max_word最細力度劃分,窮盡所有詞,
{ "tokens" : [ { "token" : "中國共產黨", "start_offset" : 0, "end_offset" : 5, "type" : "CN_WORD", "position" : 0 }, { "token" : "中國", "start_offset" : 0, "end_offset" : 2, "type" : "CN_WORD", "position" : 1 }, { "token" : "國共", "start_offset" : 1, "end_offset" : 3, "type" : "CN_WORD", "position" : 2 }, { "token" : "共產黨", "start_offset" : 2, "end_offset" : 5, "type" : "CN_WORD", "position" : 3 }, { "token" : "共產", "start_offset" : 2, "end_offset" : 4, "type" : "CN_WORD", "position" : 4 }, { "token" : "黨", "start_offset" : 4, "end_offset" : 5, "type" : "CN_CHAR", "position" : 5 } ] }
注意自己需要的詞,要加進到字典中,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/291813.html
標籤:其他
