溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Centos 7.6部署elasticsearch集群

發(fā)布時(shí)間:2020-05-29 03:19:02 來源:網(wǎng)絡(luò) 閱讀:478 作者:xuad88 欄目:系統(tǒng)運(yùn)維

一、Elasticsearch集群介紹

1、Elasticsearch集群節(jié)點(diǎn)
候選主節(jié)點(diǎn)(Master-eligible node):一個(gè)節(jié)點(diǎn)啟動(dòng)后,就會(huì)使用Zen Discovery機(jī)制去尋找集群中的其他節(jié)點(diǎn),并與之建立連接。集群中會(huì)從候選主節(jié)點(diǎn)中選舉出一個(gè)主節(jié)點(diǎn),主節(jié)點(diǎn)負(fù)責(zé)創(chuàng)建索引、刪除索引、分配分片、追蹤集群中的節(jié)點(diǎn)狀態(tài)等工作。Elasticsearch中的主節(jié)點(diǎn)的工作量相對較輕,用戶的請求可以發(fā)往任何一個(gè)節(jié)點(diǎn),由該節(jié)點(diǎn)負(fù)責(zé)分發(fā)和返回結(jié)果,而不需要經(jīng)過主節(jié)點(diǎn)轉(zhuǎn)發(fā)。
數(shù)據(jù)節(jié)點(diǎn)(Data node):數(shù)據(jù)節(jié)點(diǎn)負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)和相關(guān)具體操作,比如CRUD、搜索、聚合。所以,數(shù)據(jù)節(jié)點(diǎn)對機(jī)器配置要求比較高,首先需要有足夠的磁盤空間來存儲(chǔ)數(shù)據(jù),其次數(shù)據(jù)操作對系統(tǒng)CPU、Memory和IO的性能消耗都很大。通常隨著集群的擴(kuò)大,需要增加更多的數(shù)據(jù)節(jié)點(diǎn)來提高可用性。
客戶端節(jié)點(diǎn)(Client node):客戶端節(jié)點(diǎn)就是既不做候選主節(jié)點(diǎn)也不做數(shù)據(jù)節(jié)點(diǎn)的節(jié)點(diǎn),只負(fù)責(zé)請求的分發(fā)、匯總等等,也就是下面要說到的協(xié)調(diào)節(jié)點(diǎn)的角色。這樣的工作,其實(shí)任何一個(gè)節(jié)點(diǎn)都可以完成,單獨(dú)增加這樣的節(jié)點(diǎn)更多是為了負(fù)載均衡。
協(xié)調(diào)節(jié)點(diǎn)(Coordinating node):協(xié)調(diào)節(jié)點(diǎn),是一種角色,而不是真實(shí)的Elasticsearch的節(jié)點(diǎn),你沒有辦法通過配置項(xiàng)來配置哪個(gè)節(jié)點(diǎn)為協(xié)調(diào)節(jié)點(diǎn)。集群中的任何節(jié)點(diǎn),都可以充當(dāng)協(xié)調(diào)節(jié)點(diǎn)的角色。當(dāng)一個(gè)節(jié)點(diǎn)A收到用戶的查詢請求后,會(huì)把查詢子句分發(fā)到其它的節(jié)點(diǎn),然后合并各個(gè)節(jié)點(diǎn)返回的查詢結(jié)果,最后返回一個(gè)完整的數(shù)據(jù)集給用戶。在這個(gè)過程中,節(jié)點(diǎn)A扮演的就是協(xié)調(diào)節(jié)點(diǎn)的角色。毫無疑問,協(xié)調(diào)節(jié)點(diǎn)會(huì)對CPU、Memory要求比較高。
2、部署方案
默認(rèn)情況下節(jié)點(diǎn)既可以做候選主節(jié)點(diǎn)也可以做數(shù)據(jù)節(jié)點(diǎn),所以我們使用兩臺(tái)機(jī)器分別部署master+data節(jié)點(diǎn)。
Centos 7.6部署elasticsearch集群
3、系統(tǒng)環(huán)境

主機(jī)名 IP地址 操作系統(tǒng)
node1 192.168.2.211 Centos 7.6 64位
node2 192.168.2.212 Centos 7.6 64位

二、部署前的準(zhǔn)備工作

1、關(guān)閉 selinux

sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
sed -i 's/SELINUXTYPE=targeted/#&/' /etc/selinux/config
setenforce 0

2、安裝需要用的工具

yum -y install vim wget java

3、下載elasticsearch并解壓

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.2.tar.gz
mkdir /data
tar zxvf elasticsearch-7.4.0-linux-x86_64.tar.gz -C /data/
mv /data/elasticsearch-6.6.2 /data/elasticsearch

4、防火墻開放以下端口

firewall-cmd --permanent --add-port=9200/tcp
firewall-cmd --permanent --add-port=9300/tcp
firewall-cmd --reload

三、部署elasticsearch集群

1、修改elasticsearch配置
vim /data/elasticsearch/config/elasticsearch.yml

cluster.name: cluster-test   #集群名稱,每個(gè)節(jié)點(diǎn)集群名稱一樣
node.name: test-1    #節(jié)點(diǎn)名稱,每個(gè)節(jié)點(diǎn)設(shè)置唯一的名稱
path.data: /data/elasticsearch/data   #數(shù)據(jù)存儲(chǔ)路徑
path.logs: /data/elasticsearch/logs   #日志文件存放路徑
network.host: 0.0.0.0
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.2.211", "192.168.2.212"]   #節(jié)點(diǎn)列表
discovery.zen.minimum_master_nodes: 2   #候選主節(jié)點(diǎn)數(shù)量
gateway.recover_after_nodes: 1   #集群中只要有1個(gè)節(jié)點(diǎn)就正常工作

2、創(chuàng)建啟動(dòng)用戶

useradd els -p 123456
chown -R els:els /data/elasticsearch

3、修改limit數(shù)量,需要重新登陸系統(tǒng)生效
vim /etc/security/limits.conf #添加以下內(nèi)容

* soft nofile 65536
* hard nofile 65536

4、修改內(nèi)核參數(shù)vm.max_map_count
vim /etc/sysctl.conf #添加以下內(nèi)容

vm.max_map_count=262144
sysctl -p

5、切換到els用戶,啟動(dòng)elasticsearch

su - els
/data/elasticsearch/bin/elasticsearch -d

6、查看集群狀態(tài)
查看集群節(jié)點(diǎn)狀態(tài)

curl http://192.168.2.211:9200/_cat/nodes?pretty

Centos 7.6部署elasticsearch集群
查看集群狀態(tài)

curl http://192.168.2.211:9200/_cluster/state?pretty

Centos 7.6部署elasticsearch集群

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI