Java elasticsearch安裝以及部署教程
1 概述
1.1 Elastic Stack的核心
The Elastic Stack,包括ElasticSearch,Kibana,Beats和Logstash(也稱為ELK Stack)
能夠安全可靠的獲取任何來源,任何格式的數(shù)據(jù),然后實(shí)時(shí)的對(duì)詩(shī)句進(jìn)行搜索,分析和可視化
Elasticsearch,簡(jiǎn)稱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ù)庫(kù) 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中的反射機(jī)制和動(dòng)態(tài)代理
本文將詳細(xì)介紹反射機(jī)制以及動(dòng)態(tài)代理機(jī)制,而且基本現(xiàn)在的主流框架都應(yīng)用了反射機(jī)制,如spring、MyBatis、Hibernate等等,這就有非常重要的學(xué)習(xí)意義2021-06-06
springboot項(xiàng)目賬戶注冊(cè)邏輯功能實(shí)現(xiàn)
這篇文章主要介紹了springboot項(xiàng)目賬戶注冊(cè)邏輯功能實(shí)現(xiàn),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-12-12
springboot Actuator的指標(biāo)監(jiān)控可視化功能詳解
SpringBoot Actuator是springboot為簡(jiǎn)化我們對(duì)微服務(wù)項(xiàng)目的監(jiān)控功能抽取出來的模塊,使得我們每個(gè)微服務(wù)快速引用即可獲得生產(chǎn)界別的應(yīng)用監(jiān)控、審計(jì)等功能。這篇文章主要介紹了springboot Actuator的指標(biāo)監(jiān)控可視化,需要的朋友可以參考下2021-08-08
Maven項(xiàng)目繼承實(shí)現(xiàn)過程圖解
這篇文章主要介紹了Maven項(xiàng)目繼承實(shí)現(xiàn)過程圖解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
Spring與Dubbo搭建一個(gè)簡(jiǎn)單的分布式詳情
這篇文章主要介紹了Spring與Dubbo搭建一個(gè)簡(jiǎn)單的分布式詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08

