最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解ElasticSearch6.4.0集群搭建

 更新時(shí)間:2018年09月10日 09:39:11   作者:夏日寒冰  
這篇文章主要介紹了詳解ElasticSearch6.4.0集群搭建,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

最近在學(xué)習(xí)ES相關(guān)內(nèi)容,為了方便自己使用,在本地虛擬機(jī)上搭建了一個(gè)3節(jié)點(diǎn)的ES集群,在搭建過(guò)程中,遇到了許多坑,網(wǎng)上的資料也比較分散,所以詳細(xì)整理一下搭建過(guò)程發(fā)出來(lái)供參考。搭建過(guò)程中,由于是兩臺(tái)虛擬機(jī),所以有一種很快速的辦法,搭建一臺(tái),然后通過(guò)克隆虛擬機(jī)然后修改可以迅速完成,但是為了更熟悉整個(gè)過(guò)程,本過(guò)程是每臺(tái)虛擬機(jī)都逐一去操作。

一、軟件及環(huán)境準(zhǔn)備

服務(wù)器環(huán)境

CentOS6.9_64位兩臺(tái)

es-master:192.168.0.11

es-slave:192.168.0.12

注意:內(nèi)存允許的情況下,稍微給大一點(diǎn)內(nèi)存,否則啟動(dòng)會(huì)失敗,本地測(cè)試可以使用1.5-2G內(nèi)存,es-master上準(zhǔn)備搭建兩個(gè)節(jié)點(diǎn),所以?xún)?nèi)存最好給到2G以上.

ES軟件

最新版ElasticSearch6.4.0

下載地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.0.tar.gz

本地下載地址:http://m.fzitv.net/codes/579429.html

JDK軟件

jdk-8u161-linux-x64.tar.gz

下載地址:http://download.oracle.com/errors/download-fail-1505220.html

本地下載地址:http://m.fzitv.net/softs/325375.html

環(huán)境規(guī)劃

es-master包括兩個(gè)節(jié)點(diǎn):elasticesearch-node1,elasticesearch-node3

es-slave包括一個(gè)節(jié)點(diǎn):elasticesearch-node2

修改服務(wù)器主機(jī)名稱(chēng),方便后續(xù)操作

(1)服務(wù)器192.168.0.11上操作:

[root@localhost ~]# hostname es-master
[root@localhost ~]# vim /etc/sysconfig/network
#修改以下內(nèi)容:
HOSTNAME=es-master
#退出重新登錄
[root@localhost ~]# logout

(2)服務(wù)器192.168.0.12上操作:

[root@localhost ~]# hostname es-slave
[root@localhost ~]# vim /etc/sysconfig/network
#修改以下內(nèi)容:
HOSTNAME=es-slave
#退出重新登錄
[root@localhost ~]# logout

(3)為了后續(xù)操作方便,分別關(guān)閉es-master和es-slave服務(wù)器的防火墻

[root@es-master ~]# service iptables stop
[root@es-slave ~]# service iptables stop

注意:生產(chǎn)環(huán)境不能直接關(guān)防火墻,可以添加防火墻規(guī)則,使得ES的tcp端口對(duì)遠(yuǎn)程指定主機(jī)開(kāi)放。

二、JDK安裝配置

主機(jī)es-master上操作

下載,并解壓到指定目錄

 [root@es-master ~]# mkdir -pv /home/software
 [root@es-master ~]# cd /home/software/
 [root@es-master software]# wget http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz

 注意:如果沒(méi)有網(wǎng)絡(luò),可以手動(dòng)下載,然后上傳即可。

 [root@es-master software]# mkdir -pv /usr/local/java
 [root@es-master software]# tar xf jdk-8u181-linux-x64.tar.gz -C /usr/local/java

主機(jī)es-slave上操作同上,略.

配置環(huán)境變量,es-master和es-slave上配置過(guò)程相同,如下

[root@es-master software]# vim /etc/profile
#在末尾添加如下內(nèi)容:
JAVA_HOME=/usr/local/java/jdk1.8.0_181
export PATH=$PATH:$JAVA_HOME/bin
#使環(huán)境變量生效
[root@es-master ~]# source /etc/profile

測(cè)試是否安裝完成

[root@es-master ~]# java -version
java version "1.8.0_161"
#輸出版本號(hào),表示配置成功.

三、ElasticSearch安裝及配置

es-master上的操作如下:

下載及解壓ElasticSearch6.4.0

[root@es-master ~]# cd /home/software/
[root@es-master ~]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.0.tar.gz
[root@es-master software]# tar xf elasticsearch-6.2.4.tar.gz -C /usr/local/
[root@es-master local]# mv elasticsearch-6.4.0 elasticsearch-node1/
#復(fù)制一份作為第二個(gè)es節(jié)點(diǎn)
[root@es-master local]# cp -r elasticsearch-node1/ elasticsearch-node3

創(chuàng)建elk用戶(hù),并將elasticsearch-node1和elasticsearch-node3授權(quán)給elk

注意:由于elasticsearch啟動(dòng)的時(shí)候不能直接用root用戶(hù)啟動(dòng),所以需要?jiǎng)?chuàng)建普通用戶(hù)

[root@es-master local]# useradd elk
[root@es-master local]# chown -R elk:elk elasticsearch-node1/ elasticsearch-node3/

分別創(chuàng)建兩個(gè)elasticsearch節(jié)點(diǎn)的數(shù)據(jù)目錄和日志目錄

[root@es-master local]# mkdir -pv /data/{elasticsearch1,elasticsearch3}/{data,logs}
[root@es-master local]# chown -R elk:elk /data/{elasticsearch1,elasticsearch3}

修改操作系統(tǒng)的內(nèi)核配置文件sysctl.conf

[root@es-master local]# vim /etc/sysctl.conf
#在配置文件最后面添加如下內(nèi)容
vm.max_map_count=655360

解釋?zhuān)簃ax_map_count文件包含限制一個(gè)進(jìn)程可以擁有的VMA(虛擬內(nèi)存區(qū)域)的數(shù)量。虛擬內(nèi)存區(qū)域是一個(gè)連續(xù)的虛擬地址空間區(qū)域。

在進(jìn)程的生命周期中,每當(dāng)程序嘗試在內(nèi)存中映射文件,鏈接到共享內(nèi)存段,或者分配堆空間的時(shí)候,這些區(qū)域?qū)⒈粍?chuàng)建。
當(dāng)進(jìn)程達(dá)到了VMA上線(xiàn)但又只能釋放少量的內(nèi)存給其他的內(nèi)核進(jìn)程使用時(shí),操作系統(tǒng)會(huì)拋出內(nèi)存不足的錯(cuò)誤。

#使修改之后的配置文件生效
[root@es-master local]# sysctl -p

修改limits.conf文件

#limits.conf:用來(lái)保護(hù)系統(tǒng)的資源訪(fǎng)問(wèn),和sysctl.conf很像,但是limits.conf是針對(duì)于用戶(hù),而sysctl.conf是針對(duì)于操作系統(tǒng).
[root@es-master local]# vim /etc/security/limits.conf
#在文件末尾添加如下內(nèi)容:
elk soft nofile 65536
elk hard nofile 131072
elk soft nproc 4096
elk hard nproc 4096

修改elasticsearch-node1節(jié)點(diǎn)的配置文件jvm.options

[root@es-master local]# cd elasticsearch-node1/config/
[root@es-master config]# vim jvm.options

修改如下兩個(gè)選項(xiàng):

  • -Xms512m  #elasticsearch啟動(dòng)時(shí)jvm所分配的初始堆內(nèi)存大小
  • -Xmx512m  #elasticsearch啟動(dòng)之后允許jvm分配的最大堆內(nèi)存大小,生產(chǎn)環(huán)境中可能需要調(diào)大

注意:如果內(nèi)存足夠大,可以不用修改,默認(rèn)為1G

修改elasticsearch-node1節(jié)點(diǎn)的配置文件elasticsearch.yml

[root@es-master local]# vim elasticsearch-node1/config/elasticsearch.yml
#修改以下項(xiàng)
#表示集群標(biāo)識(shí),同一個(gè)集群中的多個(gè)節(jié)點(diǎn)使用相同的標(biāo)識(shí)
cluster.name: elasticsearch
#節(jié)點(diǎn)名稱(chēng)
node.name: "es-node1"
#數(shù)據(jù)存儲(chǔ)目錄
path.data: /data/elasticsearch1/data
#日志目錄
path.logs: /data/elasticsearch1/logs
#節(jié)點(diǎn)所綁定的IP地址,并且該節(jié)點(diǎn)會(huì)被通知到集群中的其他節(jié)點(diǎn)
network.host: 192.168.0.11
#綁定監(jiān)聽(tīng)的網(wǎng)絡(luò)接口,監(jiān)聽(tīng)傳入的請(qǐng)求,可以設(shè)置為IP地址或者主機(jī)名
network.bind_host: 192.168.0.11
#發(fā)布地址,用于通知集群中的其他節(jié)點(diǎn),和其他節(jié)點(diǎn)通訊,不設(shè)置的話(huà)默認(rèn)可以自動(dòng)設(shè)置。必須是一個(gè)存在的IP地址
network.publish_host: 192.168.0.11
#對(duì)外提供服務(wù)的http端口,默認(rèn)為9200
http.port: 9200
#集群中主節(jié)點(diǎn)的初始列表,當(dāng)主節(jié)點(diǎn)啟動(dòng)時(shí)會(huì)使用這個(gè)列表進(jìn)行非主節(jié)點(diǎn)的監(jiān)測(cè)
discovery.zen.ping.unicast.hosts: ["192.168.0.11","192.168.0.12","192.168.0.11:9301"]
#下面這個(gè)參數(shù)控制的是,一個(gè)節(jié)點(diǎn)需要看到的具有master節(jié)點(diǎn)資格的最小數(shù)量,然后才能在集群中做操作。官方推薦值是(N/2)+1;
#其中N是具有master資格的節(jié)點(diǎn)的數(shù)量(我們的情況是3,因此這個(gè)參數(shù)設(shè)置為2)
#但是:但對(duì)于只有2個(gè)節(jié)點(diǎn)的情況,設(shè)置為2就有些問(wèn)題了,一個(gè)節(jié)點(diǎn)DOWN掉后,肯定連不上2臺(tái)服務(wù)器了,這點(diǎn)需要注意
discovery.zen.minimum_master_nodes: 2
#ES默認(rèn)開(kāi)啟了內(nèi)存地址鎖定,為了避免內(nèi)存交換提高性能。但是Centos6不支持SecComp功能,啟動(dòng)會(huì)報(bào)錯(cuò),所以需要將其設(shè)置為false
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

修改elasticsearch-node3節(jié)點(diǎn)的配置文件jvm.options

[root@es-master local]# cd elasticsearch-node3/config/
[root@es-master config]# vim jvm.options

修改如下兩個(gè)選項(xiàng):

  • -Xms512m
  • -Xmx512m

修改elasticsearch-node3節(jié)點(diǎn)的配置文件elasticsearch.yml

[root@es-master local]# vim elasticsearch-node3/config/elasticsearch.yml
#修改以下項(xiàng)
cluster.name: elasticsearch
node.name: "es-node3"
path.data: /data/elasticsearch3/data
path.logs: /data/elasticsearch3/logs
network.host: 192.168.0.11
network.bind_host: 192.168.0.11
network.publish_host: 192.168.0.11
#節(jié)點(diǎn)間的通信端口,接收單值或者一個(gè)范圍。如果指定一個(gè)范圍,該節(jié)點(diǎn)將會(huì)綁定范圍的第一個(gè)可用頂點(diǎn)
transport.tcp.port: 9301
http.port: 9201
discovery.zen.ping.unicast.hosts: ["192.168.0.11","192.168.0.12","192.168.0.11:9301"]
discovery.zen.minimum_master_nodes: 2
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

至此,es-master上的配置操作完成。

es-slave上的操作如下:

上傳elasticsearch的安裝包,然后解壓重命名,可以直接從es-master上遠(yuǎn)程拉取

[root@es-slave ~]# cd /home/software/
[root@es-slave software]# scp 192.168.0.11:/home/software/elasticsearch-6.4.0.tar.gz ./
[root@es-slave software]# tar xf elasticsearch-6.4.0.tar.gz -C /usr/local/

創(chuàng)建elk用戶(hù),并將elasticsearch-node2授權(quán)給elk

[root@es-slave local]# useradd elk
[root@es-slave local]# chown -R elk:elk elasticsearch-node2

創(chuàng)建數(shù)據(jù)目錄,并將目錄的屬主和屬組改為elk用戶(hù),elk組

[root@es-slave local]# mkdir -pv /data/elasticsearch2/{data,logs}
[root@es-slave local]# chown -R elk:elk /data/elasticsearch2

修改操作系統(tǒng)的內(nèi)核配置文件sysctl.conf

[root@es-slave local]# vim /etc/sysctl.conf
#在配置文件最后面添加如下內(nèi)容
vm.max_map_count=655360
[root@es-slave local]# sysctl -p

修改limits.conf文件,可以直接從es-master的配置中復(fù)制過(guò)來(lái)

[root@es-master local]# vim /etc/security/limits.conf
#在文件末尾添加如下內(nèi)容:
elk soft nofile 65536
elk hard nofile 131072
elk soft nproc 4096
elk hard nproc 4096

修改elasticsearch-node2節(jié)點(diǎn)的配置文件jvm.options

[root@es-slave local]# cd elasticsearch-node2/config/
[root@es-slave config]# vim jvm.options

修改如下兩個(gè)選項(xiàng):

  • -Xms512m
  • -Xmx512m

修改elasticsearch-node2節(jié)點(diǎn)的配置文件elasticsearch.yml

[root@es-slave local]# vim elasticsearch-node2/config/elasticsearch.yml
#修改以下項(xiàng)
cluster.name: elasticsearch
node.name: "es-node2"
path.data: /data/elasticsearch2/data
path.logs: /data/elasticsearch2/logs
network.host: 192.168.0.12
network.bind_host: 192.168.0.12
network.publish_host: 192.168.0.12
discovery.zen.ping.unicast.hosts: ["192.168.0.11","192.168.0.12","192.168.0.11:9301"]
discovery.zen.minimum_master_nodes: 2
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

至此es-slave上的elasticsearch節(jié)點(diǎn)配置完成。

四、啟動(dòng)ES集群

首先切換為elk用戶(hù),并啟動(dòng)es-slave服務(wù)器上的elasticsearch-node2節(jié)點(diǎn)

[root@es-slave local]# su - elk
[elk@es-slave ~]$ cd /usr/local/elasticsearch-node2/bin/
[elk@es-slave bin]$ ./elasticsearch -d

注意:-d參數(shù)表示以后臺(tái)進(jìn)程啟動(dòng),默認(rèn)情況下會(huì)在控制臺(tái)輸出日志。

查看是否啟動(dòng)成功,可以通過(guò)查看進(jìn)程及端口來(lái)確定是否啟動(dòng)成功,如果啟動(dòng)失敗,可以通過(guò)查看日志來(lái)排查原因

[elk@es-slave bin]$ ps -ef| grep elasticsearch
[elk@es-slave bin]$ lsof -i:9200

注意:日志文件在elasticsearch.yml配置文件中所指定的目錄下

測(cè)試是否可以訪(fǎng)問(wèn)

[elk@es-slave ~]$ curl 192.168.0.12:9200
如果返回類(lèi)似如下結(jié)果,表示啟動(dòng)正常:
{
 "name" : "es-node2",
 "cluster_name" : "elasticsearch",
 "cluster_uuid" : "gczyFNKrTe2YbEQmlg7-nw",
 "version" : {
  ...
 },
 "tagline" : "You Know, for Search"
}

切換到es-master服務(wù)器上,然后切換到elk身份,分別啟動(dòng)elasticSearch-node1節(jié)點(diǎn)和elasticsearch-node3節(jié)點(diǎn)

[root@es-master ~]# su - elk
[elk@es-master ~]$ cd /usr/local/elasticsearch-node1/bin/
[elk@es-master bin]$ ./elasticsearch -d
[elk@es-master bin]$ cd /usr/local/elasticsearch-node3/bin/
[elk@es-master bin]$ ./elasticsearch -d

查看進(jìn)程及端口,確定是否啟動(dòng)成功

#查看進(jìn)程,可以看到有兩個(gè)節(jié)點(diǎn)的進(jìn)程
[elk@es-master bin]$ ps -ef| grep elasticsearch
[elk@es-master bin]$ lsof -i:9200
[elk@es-master bin]$ lsof -i:9300
使用curl測(cè)試節(jié)點(diǎn)是否可以正常訪(fǎng)問(wèn),方法同上,需要驗(yàn)證elasticsearch-node1和elasticsearch-node3節(jié)點(diǎn)
[elk@es-master ~]$ curl 192.168.0.11:9200
[elk@es-master ~]$ curl 192.168.0.11:9300

驗(yàn)證完畢之后,ES集群就啟動(dòng)完畢。

五、安裝及配置ES前端圖形化操作工具

下載kibana,并上傳到es-master服務(wù)器上

下載地址:https://artifacts.elastic.co/downloads/kibana/kibana-6.4.0-linux-x86_64.tar.gz

解壓,重命名

[root@es-master software]# wget https://artifacts.elastic.co/downloads/kibana/kibana-6.4.0-linux-x86_64.tar.gz
[root@es-master software]# tar xf kibana-6.4.0-linux-x86_64.tar.gz -C /usr/local
[root@es-master software]# cd /usr/local
[root@es-master local]# mv kibana-6.4.0-linux-x86_64 kibana-6.4.0

修改kibana的配置文件kibana.yml

[root@es-master local]# cd kibana-6.4.0/config
[root@es-master config]# vim kibana.yml
#修改如下內(nèi)容:
#對(duì)外服務(wù)監(jiān)聽(tīng)端口
server.port: 5601
#綁定可以訪(fǎng)問(wèn)5601端口服務(wù)的IP地址,0.0.0.0表示任何地址在沒(méi)有防火墻限制的情況下都可以訪(fǎng)問(wèn),生產(chǎn)環(huán)境別這樣設(shè)置,不安全。
server.host: "0.0.0.0"
#默認(rèn)值為主機(jī)名稱(chēng),表示kibana實(shí)例綁定的主機(jī),可以是IP地址或者主機(jī)名稱(chēng).
server.name: "es-master"
#用來(lái)處理ES請(qǐng)求的服務(wù)URL
elasticsearch.url: "http://192.168.0.11:9200"
#用來(lái)控制證書(shū)的認(rèn)證,可選的值為full,none,certificate。此處由于沒(méi)有證書(shū),所以設(shè)置為null,否則啟動(dòng)會(huì)提示錯(cuò)誤.
elasticsearch.ssl.verificationMode: none

啟動(dòng)kibana

[root@es-master config]# cd /usr/local/kibana-6.4.0/bin
#以后臺(tái)進(jìn)程啟動(dòng),kibana默認(rèn)是控制臺(tái)方式啟動(dòng),Ctrl+C就會(huì)退出
[root@es-master bin]# nohup ./kibana &
#查看日志是否啟動(dòng)正常
[root@es-master bin]# tail -f nohup.out

如果啟動(dòng)正常,在瀏覽器端訪(fǎng)問(wèn)http://192.168.0.11:5601,即可看到圖形化操作工具

至此,就可以愉快的開(kāi)始ES的語(yǔ)法學(xué)習(xí)之旅了。

ES的語(yǔ)法學(xué)習(xí)可參考:https://www.elastic.co/guide/cn/elasticsearch/guide/current/_tutorial_conclusion.html

六、ElasticSearch和kibana的停止

目前es和kibana的bin目錄下未提供停止ES服務(wù)和kibana服務(wù)的腳本,可以使用kill -9 pid來(lái)停止服務(wù)

停止ES服務(wù)

[root@es-master bin]# ps -ef| grep elasticsearch | grep -v grep | awk '{print $2}'
[root@es-master bin]# kill -9 pid[上一步所輸出的pid]

停止Kibana服務(wù)

[root@es-master bin]# ps -ef| grep node | grep -v grep | grep -v elasticsearch | awk '{print $2}'
[root@es-master bin]# kill -9 pid[上一步所輸出的pid]

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Mapper批量插入Oracle數(shù)據(jù)@InsertProvider注解

    Mapper批量插入Oracle數(shù)據(jù)@InsertProvider注解

    今天小編就為大家分享一篇關(guān)于Mapper批量插入Oracle數(shù)據(jù)@InsertProvider注解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • @Valid和@Validated注解校驗(yàn)以及異常處理方式

    @Valid和@Validated注解校驗(yàn)以及異常處理方式

    在Javaweb開(kāi)發(fā)中,防止數(shù)據(jù)庫(kù)惡意攻擊是至關(guān)重要的,盡管前端校驗(yàn)可以起到一定的篩選作用,但通過(guò)工具如postman直接對(duì)后端發(fā)起請(qǐng)求的情況仍然需要后端進(jìn)行嚴(yán)格的數(shù)據(jù)校驗(yàn),Java生態(tài)下,@Valid注解配合SpringBoot提供了一個(gè)便捷高效的后端數(shù)據(jù)校驗(yàn)方案
    2024-11-11
  • idea maven pom不自動(dòng)更新的解決方法

    idea maven pom不自動(dòng)更新的解決方法

    這篇文章主要介紹了idea maven pom不自動(dòng)更新的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Java圖片裁剪和生成縮略圖的實(shí)例方法

    Java圖片裁剪和生成縮略圖的實(shí)例方法

    這篇文章主要介紹了Java圖片裁剪和生成縮略圖的實(shí)例方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-01-01
  • Java實(shí)現(xiàn)可視化走迷宮小游戲的示例代碼

    Java實(shí)現(xiàn)可視化走迷宮小游戲的示例代碼

    這篇文章主要介紹了Java如何實(shí)現(xiàn)可視化走迷宮小游戲。本程序適用于java程序員鞏固類(lèi)與對(duì)象、文件讀取、事件響應(yīng)、awt包中各種工具的相關(guān)概念以及對(duì)邏輯能力的鍛煉,需要的可以參考一下
    2022-11-11
  • 最新評(píng)論

    永胜县| 南丰县| 武宣县| 西贡区| 扎兰屯市| 大庆市| 康马县| 宣恩县| 河西区| 桂阳县| 山东| 东平县| 台中县| 北辰区| 锡林郭勒盟| 马山县| 左贡县| 南郑县| 阜新| 屏东县| 平罗县| 和硕县| 通州区| 阳高县| 台中县| 定日县| 麻城市| 漳平市| 靖江市| 高碑店市| 张北县| 雅安市| 奉新县| 莱芜市| 东丽区| 宜章县| 宿州市| 静宁县| 鹤岗市| 达拉特旗| 景泰县|