Java elasticsearch安裝以及部署教程
1 概述
1.1 Elastic Stack的核心
The Elastic Stack,包括ElasticSearch,Kibana,Beats和Logstash(也稱為ELK Stack)
能夠安全可靠的獲取任何來源,任何格式的數(shù)據(jù),然后實(shí)時(shí)的對(duì)詩句進(jìn)行搜索,分析和可視化
Elasticsearch,簡稱ES,ES是一個(gè)開源的高擴(kuò)展的分布式全文搜索引擎
是整個(gè)Elastic Stack技術(shù)棧的核心,它可以近乎實(shí)時(shí)的存儲(chǔ),檢索數(shù)據(jù)
1.2 Elasticsearch And Solr(對(duì)比圖)
2 入門
2.1 安裝
直接進(jìn)入bin目錄啟動(dòng)
9300端口為Elasticsearch集群間組件的通信端口
9200 端口為瀏覽器訪問的 http協(xié)議 RESTful 端口
瀏覽器訪問: localhost:9200
2.2 數(shù)據(jù)格式
將 Elasticsearch 里存儲(chǔ)文檔數(shù)據(jù)和關(guān)系型數(shù)據(jù)庫 MySQL 存儲(chǔ)數(shù)據(jù)的概念進(jìn)行一個(gè)類比
Elasticsearch 7.X 中, Type 的概念已經(jīng)被刪除了
2.3 java操作api
3 環(huán)境
3.1 Linux單機(jī)版
#解壓 tar -zxf elasticsearch-7.8.0-linux-x86_64.tar.gz #移動(dòng) mv elasticsearch-7.8.0 /opt/ #創(chuàng)建用戶(es不能用root用戶啟動(dòng)) adduser chen #修改文件所有者 chown -R chen /opt/elasticsearch-7.8.0/ #進(jìn)入配置文件目錄 cd /opt/elasticsearch-7.8.0/config/ #修改配置文件 vim elasticsearch.yml
#修改內(nèi)存占用 vim jvm.options
#修改系統(tǒng)配置 vim /etc/security/limits.conf #在文件末尾中增加下面內(nèi)容 #nproc : 是操作系統(tǒng)級(jí)別對(duì)每個(gè)用戶創(chuàng)建的進(jìn)程數(shù)的限制 #nofile : 是每個(gè)進(jìn)程可以打開的文件數(shù)的限制 # 每個(gè)進(jìn)程可以打開的文件數(shù)的限制( * ,代表所有用戶,也可以是具體的某一個(gè)用戶) * soft nproc 65536 * hard nproc 65536 * soft nofile 65536 * hard nofile 65536 #修改系統(tǒng)配置 #操作系統(tǒng)級(jí)別對(duì)每個(gè)用戶創(chuàng)建的進(jìn)程數(shù)的限制 vim /etc/security/limits.d/20-nproc.conf #文件末尾同樣添加 * soft nproc 65536 * hard nproc 65536 * soft nofile 65536 * hard nofile 65536 #修改系統(tǒng)配置 vim /etc/sysctl.conf # 在文件中增加下面內(nèi)容 # 一個(gè)進(jìn)程可以擁有的 VMA(虛擬內(nèi)存區(qū)域)的數(shù)量,默認(rèn)值為 65536 vm.max_map_count=655360 #重新加載 sysctl -p #進(jìn)入bin目錄 cd /opt/elasticsearch-7.8.0/bin/ #使用用戶chen啟動(dòng)es su chen ./elasticsearch #如果報(bào)錯(cuò),再執(zhí)行一遍 chown -R chen /opt/elasticsearch-7.8.0/
3.2 Linux集群部署
節(jié)點(diǎn) | ip |
---|---|
es-node01 | 192.168.59.141 |
es-node02 | 192.168.59.142 |
es-node03 | 192.168.59.143 |
就用剛剛的es環(huán)境,在上面進(jìn)行修改
#進(jìn)入配置文件夾 cd /opt/elasticsearch-7.8.0/config/ #編輯配置文件 vim elasticsearch.yml #全部刪除 ggvGd
替換成以下內(nèi)容
#集群名稱 cluster.name: es-cluster #節(jié)點(diǎn)名稱,每個(gè)節(jié)點(diǎn)的名稱不能重復(fù) node.name: es-node01 #ip 地址,每個(gè)節(jié)點(diǎn)的地址不能重復(fù) network.host: es-node01 #是不是有資格主節(jié)點(diǎn) node.master: true node.data: true http.port: 9200 transport.tcp.port: 9300 #head 插件需要這打開這兩個(gè)配置 http.cors.allow-origin: "*" http.cors.enabled: true http.max_content_length: 200mb #es7.x 之后新增的配置,初始化一個(gè)新的集群時(shí)需要此配置來選舉 master cluster.initial_master_nodes: ["es-node01"] #es7.x 之后新增的配置,節(jié)點(diǎn)發(fā)現(xiàn) discovery.seed_hosts: ["es-node01:9300","es-node02:9300","es-node03:9300"] gateway.recover_after_nodes: 2 network.tcp.keep_alive: true network.tcp.no_delay: true transport.tcp.compress: true #集群內(nèi)同時(shí)啟動(dòng)的數(shù)據(jù)任務(wù)個(gè)數(shù),默認(rèn)是 2 個(gè) cluster.routing.allocation.cluster_concurrent_rebalance: 16 #添加或刪除節(jié)點(diǎn)及負(fù)載均衡時(shí)并發(fā)恢復(fù)的線程個(gè)數(shù),默認(rèn) 4 個(gè) cluster.routing.allocation.node_concurrent_recoveries: 16 #初始化數(shù)據(jù)恢復(fù)時(shí),并發(fā)恢復(fù)線程的個(gè)數(shù),默認(rèn) 4 個(gè) cluster.routing.allocation.node_initial_primaries_recoveries: 16
修改hosts文件
cat >> /etc/hosts << EOF 192.168.59.141 es-node01 192.168.59.142 es-node02 192.168.59.143 es-node03 EOF
拿當(dāng)前Linux服務(wù)器作為范本,克隆兩臺(tái)虛擬機(jī)(完整克隆)
開機(jī)分別修改服務(wù)器ip(142 and 143)
設(shè)置主機(jī)名(分別設(shè)置)
hostnamectl set-hostname es-node01 hostnamectl set-hostname es-node02 hostnamectl set-hostname es-node03
修改node02 and node03的節(jié)點(diǎn)名稱和ip
因?yàn)槭强寺淼?所以前面的些新增用戶,修改系統(tǒng)配置,給權(quán)限什么的也被繼承過來了,現(xiàn)在只需要啟動(dòng)服務(wù)即可
3.1 elasticsearch-head chrome插件安裝
下載壓縮包,解壓。
接著點(diǎn)擊Chrome右上角選項(xiàng)->工具->管理擴(kuò)展(或則地址欄輸入chrome://extensions/),選擇打開“開發(fā)者模式”,讓后點(diǎn)擊“加載已解壓得擴(kuò)展程序”,選擇elasticsearch-head/_site,即可完成chrome插件安裝。
3.2 kibana安裝
進(jìn)入config目錄,文件末尾添加
#默認(rèn)端口 server.port: 5601 #es服務(wù)器地址 elasticsearch.hosts: ["http://localhost:9200"] #索引名 kibana.index: ".kibana" #中文 i18n.locale: "zh-CN"
進(jìn)入bin目錄啟動(dòng)
到此這篇關(guān)于elasticsearch安裝以及部署教程的文章就介紹到這了,更多相關(guān)elasticsearch框架部署內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java中List<T> Map與Map List<T>的區(qū)別小結(jié)
本文主要介紹了Java中List<T> Map與Map List<T>的區(qū)別小結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08利用Postman和Chrome的開發(fā)者功能探究項(xiàng)目(畢業(yè)設(shè)計(jì)項(xiàng)目)
這篇文章主要介紹了利用Postman和Chrome的開發(fā)者功能探究項(xiàng)目(畢業(yè)設(shè)計(jì)項(xiàng)目),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12SpingMvc復(fù)雜參數(shù)傳收總結(jié)
這篇文章主要為大家介紹了SpingMvc復(fù)雜參數(shù)傳收總結(jié),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08Spring?Security短信驗(yàn)證碼實(shí)現(xiàn)詳解
本文主要介紹了Spring?Security短信驗(yàn)證碼的實(shí)現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-11-11springboot整合JPA訪問Mysql的實(shí)現(xiàn)方法
本文主要介紹了springboot整合JPA訪問Mysql的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02