您好,登錄后才能下訂單哦!
測試環境介紹
我們搭建一個一主兩從的集群環境,由于是測試虛擬機,我這邊只在一臺服務器上來演示主從環境。
操作系統 | 服務器ip | 端口號 | 是否主節點 |
---|---|---|---|
centos7 | 192.168.43.96 | 9200 | 是 |
centos7 | 192.168.43.96 | 9400 | 否 |
centos7 | 192.168.43.96 | 9500 | 否 |
一、主節點搭建
環境搭建詳見https://blog.51cto.com/2262805/2441988文章,
elasticsearch.yml配置文件說明:
配置說明:
cluster.name 集群名稱,相同名稱為一個集群
node.name 節點名稱,集群模式下每個節點名稱唯一
node.master 當前節點是否可以被選舉為master節點,是:true、否:false
node.data 當前節點是否用于存儲數據,是:true、否:false
path.data 索引數據存放的位置
path.logs 日志文件存放的位置
bootstrap.memory_lock 需求鎖住物理內存,是:true、否:false
bootstrap.system_call_filter SecComp檢測,是:true、否:false
network.host 監聽地址,用于訪問該es
network.publish_host 可設置成內網ip,用于集群內各機器間通信
http.port es對外提供的http端口,默認 9200
discovery.seed_hosts es7.x 之后新增的配置,寫入候選主節點的設備地址,在開啟服務后可以被選為主節點
cluster.initial_master_nodes es7.x 之后新增的配置,初始化一個新的集群時需要此配置來選舉master
http.cors.enabled 是否支持跨域,是:true,在使用head插件時需要此配置
http.cors.allow-origin "*" 表示支持所有域名
我們要只需要在之前的基礎上,打開配置文件elasticsearch.yml,添加如下三個配置:
cluster.name: my-es #集群名稱
node.name: node-master #主節點名稱
node.master: true #當前節點是否可以被選舉為master節點,是:true、否:false
discovery.seed_hosts: ["192.168.43.96", "192.168.43.96", "192.168.43.96"]#寫入候選主節點的設備地址,在開啟服務后可以被選為主節點
cluster.initial_master_nodes: ["node-1"] #初始化一個新的集群時需要此配置來選舉master
修改完配置文件之后,只需要重新服務即可。
二、從節點配置
1.從節點1配置
我們再/mnt目錄,解壓之前下載的elasticsearch-7.3.0-linux-x86_64.tar.gz,并命名為elasticsearch2,并授權
chown -R testesuser:testes /mnt/elasticsearch2
進入/mnt/elasticsearch2目錄config文件夾,修改elasticsearch.yml配置文件并保存。
network.host: 192.168.43.96
http.port: 9400
discovery.seed_hosts: ["192.168.43.96", "192.168.43.96", "192.168.43.96"]
cluster.initial_master_nodes: ["node-1"]
http.cors.enabled: true
http.cors.allow-origin: "*"
cluster.name: my-es
node.name: node-slave1
cd bin/
./elasticsearch #啟動從環境1 一定要用testesuser用戶來執行
2.從節點二配置
在/mnt目錄下,繼續解壓之前的包并命名為為elasticsearch3,并授權
`chown -R testesuser:testes /mnt/elasticsearch3`
進入/mnt/elasticsearch3目錄config文件夾,修改elasticsearch.yml配置文件并保存。
和上面的配置基本一致,只是 http.port改為9500, node.name改為node-slave2
cd bin/
./elasticsearch #啟動從環境2 一定要用testesuser用戶來執行
三、Elasticsearch head驗證主從環境
啟動完成后,我們用Elasticsearch head查看,主從環境配置正常。
從圖中可以看出五星代表是主節點,圓代表是從節點。
四、異常處理
因為我們配置了主從環境,單獨啟動一個主,不啟動從,一直會出現此錯誤
master not discovered or elected yet, an election requires at least 2 nodes with ids from [X2P0yBfUSHSyGgjWWvBYeg, ZFIHple7RSijNOrRYIlPbQ, Xoew_otiTimsat1dgsYTDQ], have discovered,
只是因為我們只啟動了主,從沒有啟動,我們只需要到從的啟動路徑啟動從即可。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。