亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

詳解ElasticSearch6.4.0集群搭建

2024-07-14 08:42:18
字體:
來源:轉載
供稿:網友

最近在學習ES相關內容,為了方便自己使用,在本地虛擬機上搭建了一個3節點的ES集群,在搭建過程中,遇到了許多坑,網上的資料也比較分散,所以詳細整理一下搭建過程發出來供參考。搭建過程中,由于是兩臺虛擬機,所以有一種很快速的辦法,搭建一臺,然后通過克隆虛擬機然后修改可以迅速完成,但是為了更熟悉整個過程,本過程是每臺虛擬機都逐一去操作。

一、軟件及環境準備

服務器環境

CentOS6.9_64位兩臺

es-master:192.168.0.11

es-slave:192.168.0.12

注意:內存允許的情況下,稍微給大一點內存,否則啟動會失敗,本地測試可以使用1.5-2G內存,es-master上準備搭建兩個節點,所以內存最好給到2G以上.

ES軟件

最新版ElasticSearch6.4.0

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

JDK軟件

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

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

環境規劃

es-master包括兩個節點:elasticesearch-node1,elasticesearch-node3

es-slave包括一個節點:elasticesearch-node2

修改服務器主機名稱,方便后續操作

(1)服務器192.168.0.11上操作:

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

(2)服務器192.168.0.12上操作:

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

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

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

注意:生產環境不能直接關防火墻,可以添加防火墻規則,使得ES的tcp端口對遠程指定主機開放。

二、JDK安裝配置

主機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

 注意:如果沒有網絡,可以手動下載,然后上傳即可。

 [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

主機es-slave上操作同上,略.

配置環境變量,es-master和es-slave上配置過程相同,如下

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

測試是否安裝完成

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

三、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/#復制一份作為第二個es節點[root@es-master local]# cp -r elasticsearch-node1/ elasticsearch-node3

創建elk用戶,并將elasticsearch-node1和elasticsearch-node3授權給elk

注意:由于elasticsearch啟動的時候不能直接用root用戶啟動,所以需要創建普通用戶

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

分別創建兩個elasticsearch節點的數據目錄和日志目錄

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

修改操作系統的內核配置文件sysctl.conf

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

解釋:max_map_count文件包含限制一個進程可以擁有的VMA(虛擬內存區域)的數量。虛擬內存區域是一個連續的虛擬地址空間區域。

在進程的生命周期中,每當程序嘗試在內存中映射文件,鏈接到共享內存段,或者分配堆空間的時候,這些區域將被創建。
當進程達到了VMA上線但又只能釋放少量的內存給其他的內核進程使用時,操作系統會拋出內存不足的錯誤。

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

修改limits.conf文件

#limits.conf:用來保護系統的資源訪問,和sysctl.conf很像,但是limits.conf是針對于用戶,而sysctl.conf是針對于操作系統.[root@es-master local]# vim /etc/security/limits.conf#在文件末尾添加如下內容:elk soft nofile 65536elk hard nofile 131072elk soft nproc 4096elk hard nproc 4096

修改elasticsearch-node1節點的配置文件jvm.options

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

修改如下兩個選項:

  • -Xms512m  #elasticsearch啟動時jvm所分配的初始堆內存大小
  • -Xmx512m  #elasticsearch啟動之后允許jvm分配的最大堆內存大小,生產環境中可能需要調大

注意:如果內存足夠大,可以不用修改,默認為1G

修改elasticsearch-node1節點的配置文件elasticsearch.yml

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

修改elasticsearch-node3節點的配置文件jvm.options

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

修改如下兩個選項:

  • -Xms512m
  • -Xmx512m

修改elasticsearch-node3節點的配置文件elasticsearch.yml

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

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

es-slave上的操作如下:

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

[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/

創建elk用戶,并將elasticsearch-node2授權給elk

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

創建數據目錄,并將目錄的屬主和屬組改為elk用戶,elk組

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

修改操作系統的內核配置文件sysctl.conf

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

修改limits.conf文件,可以直接從es-master的配置中復制過來

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

修改elasticsearch-node2節點的配置文件jvm.options

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

修改如下兩個選項:

  • -Xms512m
  • -Xmx512m

修改elasticsearch-node2節點的配置文件elasticsearch.yml

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

至此es-slave上的elasticsearch節點配置完成。

四、啟動ES集群

首先切換為elk用戶,并啟動es-slave服務器上的elasticsearch-node2節點

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

注意:-d參數表示以后臺進程啟動,默認情況下會在控制臺輸出日志。

查看是否啟動成功,可以通過查看進程及端口來確定是否啟動成功,如果啟動失敗,可以通過查看日志來排查原因

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

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

測試是否可以訪問

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

切換到es-master服務器上,然后切換到elk身份,分別啟動elasticSearch-node1節點和elasticsearch-node3節點

[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

查看進程及端口,確定是否啟動成功

#查看進程,可以看到有兩個節點的進程[elk@es-master bin]$ ps -ef| grep elasticsearch[elk@es-master bin]$ lsof -i:9200[elk@es-master bin]$ lsof -i:9300使用curl測試節點是否可以正常訪問,方法同上,需要驗證elasticsearch-node1和elasticsearch-node3節點[elk@es-master ~]$ curl 192.168.0.11:9200[elk@es-master ~]$ curl 192.168.0.11:9300

驗證完畢之后,ES集群就啟動完畢。

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

下載kibana,并上傳到es-master服務器上

下載地址: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#修改如下內容:#對外服務監聽端口server.port: 5601#綁定可以訪問5601端口服務的IP地址,0.0.0.0表示任何地址在沒有防火墻限制的情況下都可以訪問,生產環境別這樣設置,不安全。server.host: "0.0.0.0"#默認值為主機名稱,表示kibana實例綁定的主機,可以是IP地址或者主機名稱.server.name: "es-master"#用來處理ES請求的服務URLelasticsearch.url: "http://192.168.0.11:9200"#用來控制證書的認證,可選的值為full,none,certificate。此處由于沒有證書,所以設置為null,否則啟動會提示錯誤.elasticsearch.ssl.verificationMode: none

啟動kibana

[root@es-master config]# cd /usr/local/kibana-6.4.0/bin#以后臺進程啟動,kibana默認是控制臺方式啟動,Ctrl+C就會退出[root@es-master bin]# nohup ./kibana &#查看日志是否啟動正常[root@es-master bin]# tail -f nohup.out

如果啟動正常,在瀏覽器端訪問http://192.168.0.11:5601,即可看到圖形化操作工具

至此,就可以愉快的開始ES的語法學習之旅了。

ES的語法學習可參考:https://www.elastic.co/guide/cn/elasticsearch/guide/current/_tutorial_conclusion.html

六、ElasticSearch和kibana的停止

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

停止ES服務

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

停止Kibana服務

[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]

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩成人av网| 亚洲国产欧美日韩精品| 亚洲国产欧美自拍| 日韩美女中文字幕| 2019中文字幕在线| 国产欧美日韩中文字幕在线| 日本久久久a级免费| 久久综合88中文色鬼| 久久成人一区二区| 亚洲精品国产精品乱码不99按摩| 国产精品一久久香蕉国产线看观看| 国产91网红主播在线观看| 亚洲毛片在线免费观看| 亚洲电影在线观看| 性欧美暴力猛交69hd| 在线播放国产一区二区三区| 一个人www欧美| 欧美日韩国产精品一区二区三区四区| 亚洲激情国产精品| 欧美激情视频在线免费观看 欧美视频免费一| 亚洲深夜福利视频| 97超视频免费观看| 亚洲女同精品视频| 欧美大秀在线观看| 欧美日韩精品在线视频| 久久久亚洲精品视频| 精品福利在线视频| 亚洲欧美在线x视频| 欧美丰满老妇厨房牲生活| 亚洲男人天堂古典| 国产精品偷伦视频免费观看国产| 神马国产精品影院av| 57pao精品| 国产小视频91| 一区二区三区无码高清视频| 亚洲第一视频网| 欧美国产精品人人做人人爱| 国产精品久久久久久亚洲调教| 亚洲精品mp4| 在线播放日韩av| 欧美另类在线播放| 亚洲欧美成人一区二区在线电影| 日韩中文第一页| 久久99热这里只有精品国产| 91精品久久久久久久久久入口| 国产成人亚洲综合青青| 久久天天躁狠狠躁夜夜爽蜜月| 日韩欧美在线视频日韩欧美在线视频| 国产精品老女人视频| 成人情趣片在线观看免费| 欧美日韩aaaa| 欧美精品18videos性欧| 亚洲日本aⅴ片在线观看香蕉| 欧美日韩成人在线观看| 亚洲成色www8888| 欧美日韩国产精品| 精品亚洲va在线va天堂资源站| 国产精国产精品| 国产精品一区二区三区在线播放| 91精品国产高清久久久久久91| 2019中文字幕全在线观看| 亚洲成人久久网| 色爱精品视频一区| 精品国产一区二区三区久久狼黑人| 亚洲免费视频在线观看| 日韩欧美亚洲一二三区| 91久久综合亚洲鲁鲁五月天| 亚洲а∨天堂久久精品喷水| 亚洲欧美激情精品一区二区| 亚洲国产精品系列| 91国产美女视频| 久久精品国产2020观看福利| 亚洲人成网站777色婷婷| 亚洲毛片在线观看.| 精品少妇v888av| 色哟哟网站入口亚洲精品| 国产久一一精品| 国产丝袜高跟一区| 欧美日韩国产一中文字不卡| 亚洲欧美日韩另类| 欧美日韩成人网| 原创国产精品91| 97国产精品人人爽人人做| 911国产网站尤物在线观看| 欧美亚洲国产视频小说| 日韩中文在线观看| 欧美俄罗斯乱妇| 另类专区欧美制服同性| 日韩欧美国产网站| 一夜七次郎国产精品亚洲| 亚洲国产免费av| 欧美性xxxxxx| 中文字幕九色91在线| 欧美午夜精品伦理| 夜夜嗨av色综合久久久综合网| 日韩在线视频线视频免费网站| 一区二区三区久久精品| 亚洲韩国欧洲国产日产av| 91香蕉国产在线观看| 最近2019好看的中文字幕免费| 欧美麻豆久久久久久中文| 国产一区二区丝袜高跟鞋图片| 不卡中文字幕av| 欧美成人黑人xx视频免费观看| 最近2019年日本中文免费字幕| 成人在线视频网| 日韩中文字幕网站| 国产精品影片在线观看| 国产精品亚洲激情| 亚洲精品美女久久| 亚洲国产成人一区| 日韩av色综合| 国产精品久久久久久久久久新婚| 国产精品美女主播在线观看纯欲| 国产精品视频最多的网站| 欧美裸体xxxx| 久热爱精品视频线路一| 欧美性猛交xxxx乱大交3| 亚洲黄色免费三级| 久久久久久久一区二区| 欧美激情精品久久久| 综合激情国产一区| 中文字幕亚洲字幕| 欧美另类高清videos| 另类美女黄大片| 国产高清在线不卡| 久久久精品一区| 国产激情视频一区| 欧美日韩国产va另类| 91在线高清免费观看| 欧美午夜电影在线| 亚洲一区二区三区视频| 成人av在线网址| 精品国产一区二区在线| 亚洲品质视频自拍网| 久久久国产精品一区| 色午夜这里只有精品| 日韩大陆欧美高清视频区| 精品二区三区线观看| 精品国产一区二区三区久久久| 北条麻妃久久精品| 91精品久久久久久久久久入口| 欧美日韩亚洲国产一区| 97精品视频在线| 日日噜噜噜夜夜爽亚洲精品| 日韩福利伦理影院免费| 久久久av亚洲男天堂| 国产日韩在线看| 日韩久久精品成人| 深夜精品寂寞黄网站在线观看| 伊人青青综合网站| 精品美女久久久久久免费| 亚洲国产另类久久精品| 久久久久久12| 中文字幕精品在线视频| 日韩av电影在线播放| 欧美伊久线香蕉线新在线| 97香蕉超级碰碰久久免费的优势| 欧美尤物巨大精品爽| 岛国av一区二区在线在线观看| 精品福利在线视频| 国产精品揄拍一区二区| 国产精品大陆在线观看| 欧美性视频在线|