Elasticsearch7.6.2(目前最新版本)叢集搭建及Head外掛——最詳細安裝及配置
個人環境
1.Centos7.4(三臺)
2.elasticsearch-7.6.2
官網下載:https://www.elastic.co/downloads/elasticsearch
1.環境初始化
大體配置就是如此,只不過我的主機ip不同
#關閉防火牆
systemctl stop firewalld
systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
#時間同步
yum install ntpdate ntp -y
ntpdate cn.pool.ntp.org
hwclock --systohc
#常用軟體安裝
yum install net-tools bash-completion wget vim ntpdate -y
#系統優化
vim /etc/sysctl.conf
fs.file-max=65536
vm.max_map_count = 262144
注意:
fs.file-max:該檔案指定了可以分配的檔案控制程式碼的最大數目, 為512 乘以 processes (如128個process則為 65536);
vm.max_map_count:限制一個程式可以擁有的VMA(虛擬記憶體區域)的數量。 //這個值最好設定大一點,不然ES會啟動失敗。
vim /etc/security/limits.conf
* soft nofile 65535
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
新增執行緒,不然會在啟動的時候報錯,如下所示:
[1]: max number of threads [1024] for user [leyou] is too low, increase to at least [4096]
2.JDK安裝
jdk安裝的話,最好安裝jdk11,因為ES 7.x 版本需要jdk11,而本機環境是JDK8 ,它會提醒後面版本需要 JDK 11 支援。但它是向下相容的。如圖所示:
因此,看日誌的時候顯示已經啟動。
2.1 驗證是否啟動成功
開啟瀏覽器,輸入 http://localhost:9200/ 地址,然後可以得到下面的資訊:
證明配置沒問題。
3.elasticsearch叢集安裝及配置
3.1 叢集配置
[root@bigdata2 config]# pwd
/data/program/software/elasticsearch/config
###進入elasticsearch.yml檔案中,修改如下配置 :
[root@bigdata2 config]# grep -Ev "^#|^$" elasticsearch.yml
cluster.name: my-cluster
node.name: ${HOSTNAME}
path.data: /data/program/software/elasticsearch/elk_data
path.logs: /data/program/software/elasticsearch/elk_logs
bootstrap.memory_lock: false
network.host: 192.168.239.8
http.port: 9200
discovery.seed_hosts: ["192.168.239.7", "192.168.239.9"]
cluster.initial_master_nodes: [" ${HOSTNAME} "]
http.cors.enabled: true
http.cors.allow-origin: "*"
network.host: 本機節點IP,也可以0.0.0.0
discovery.seed_hosts:一定要設定為另外兩個節點的IP
cluster.initial_master_nodes:這裡寫的是上面node.name:中的對應值,但是如果你要像我一樣寫變數,這裡一定要有空格,我因為沒有空格,把我折磨了很久。
http.cors.enabled:表示開啟蛞蝓訪問支援,此值預設為false。
http.cors.allow-origin:表示跨域訪問允許的域名地址,可使用正規表示式,“*”則表示允許所有域名訪問。
注意:重點來了!!!
elasticsearch7版本引入的新叢集協調子系統瞭解一哈,新增兩個如下配置項
discovery 和cluster 設定,以便群集中的節點可以相互發現並選擇主節點。
#設定提供群集中其他節點的列表,這些節點符合主要條件且可能是實時且可聯絡的,以便為發現過程設定種子。 此設定通常應包含群集中所有符合主節點的節點的地址。 此設定包含主機陣列或逗號分隔的字串。 每個值應採用host:port或host的形式
discovery.seed_hosts
#當您第一次啟動全新的Elasticsearch叢集時,會出現一個叢集引導步驟,該步驟確定在第一次選舉中計票的主要合格節點集因此當您在生產模式下啟動全新叢集時,必須明確列出符合條件的節點的名稱或IP地址,這些節點的投票應在第一次選舉中計算 叢集中第一個主節點啟動 許設定此項
cluster.initial_master_nodes
而這兩個配置項沒有了:
vim jvm.options
-Xms512m
-Xmx512m
預設這兩個值是1G,這個根據你虛擬機器的記憶體劃分,只有小於等於你記憶體的一半就行。
3.2 啟動叢集
以上配置三個節點都需要完成。
3.3 檢查ES是否安裝成功
(1)檢視埠
(2)瀏覽器測試
開啟瀏覽器,輸入 http://localhost:9200/ 地址:
檢視叢集資訊:http://192.168.239.7:9200/_cat/nodes?pretty
*:就是leader;-:就是follower
還可以在主機點檢視更詳細內容:
curl -XGET ‘http://192.168.239.7:9200/_cat?pretty’
4.配置圖形化介面工具Head外掛
Head外掛是Elasticsearch的圖形化介面工具,通過此外掛可以很方便的對資料進行增刪改查等資料互動操作。在Elasticsearch5.x版本以後,head外掛已經是一個獨立的Web App了,所以不需要和Elasticsearch進行整合。可以將Head外掛安裝到任何一臺機器上,我就佈置在我的第一個節點了。
由於Head外掛本質上是一個Node.js的工程,因此需要安裝Node.js,使用npm工具來安裝依賴的包。
NPM的全名叫Node Package Manager,是隨NodeJS一起安裝的包管理和分發工具,方便讓JavaScript開發者下載、安裝、上傳以及管理已經安裝的包。
4.1 下載Node.js和NPM工具
直接yum install -y nodejs會提示找不到nodejs這個模組,因此:安裝nodesource後再執行yum install -y nodejs
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
或
curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash -
然後
yum -y install nodejs
這個安裝好後,npm也在這個模組中,已經有了,所以不需要再安裝。
4.2 下載並安裝Head外掛
yum install -y git
git clone git://github.com/mobz/elasticsearch-head.git
這是從github上克隆過的,安裝好後你就會發現當前目錄下有一個ES-Head目錄。
進去elasticsearch-head/_site/app.js檔案,修改如下配置:
4.2.1 開始安裝
npm config set registry=http://registry.npm.taobao.org/ //修改源地址為淘寶NPM映象,因為預設NPM的官方源為https://registry.npmjs.org/ 。國外下載速度會很慢,所以這裡建議切換到淘寶的NPM映象站點比較好。
cd elasticsearch-head
npm install
npm install 安裝時,可能會報 phantomjs-prebuilt@2.1.16安裝失敗。解決方法:
[root@bigdata1 elasticsearch-head]# npm install phantomjs-prebuilt@2.1.16 --ignore-scripts
然後再
[root@bigdata1 elasticsearch-head]# npm install
4.2.2 啟動head外掛服務
[root@bigdata1 elasticsearch-head]# npm run start
head外掛服務啟動之後,預設的訪問埠為9100,如圖所示:
說明已正常啟動,瀏覽器開啟檢視:
自己手動建立一個索引test,如上圖所示。其中 *:是主節點,我建立索引時,配置中設定了5個分片,一個副本分片,因此可以看到每個索引都有10個分片,每個分片都用0、1、2、3、4等數字加方框表示,其中,粗體方框是主分片,細體方框是副本分片。
my-cluster是叢集的名稱,後面的“叢集健康值”通過不同的顏色表示叢集的健康狀態:其中,綠色表示主分片和副本分片都可用;黃色表示只有主分片可用,沒有副本分片;紅色表示主分片中的部分索引不可用,但是某些索引還可以繼續訪問。正常情況下都顯示綠色。
附加:Elasticsearch 7.x 外掛的安裝、檢視、刪除
安裝:
[elsearch@bigdata1 ~]$ bin/elasticsearch-plugin install xxxxxx
檢視:
[elsearch@bigdata1 ~]$ bin/elasticsearch-plugin list
刪除:
[elsearch@bigdata1 ~]$ bin/elasticsearch-plugin remove xxxxxx
友情提示:如果你安裝之前zookeeper啟動,或者kafka啟動,介意關掉它。
相關文章
- Cassandra安裝及分散式叢集搭建分散式
- Vim常用外掛安裝及配置方法
- 【詳細教程】Linux安裝redis並搭建叢集LinuxRedis
- 詳盡的 Elasticsearch7.X 安裝及叢集搭建教程Elasticsearch
- elasticsearch6.0版本安裝head外掛Elasticsearch
- Linux環境快速搭建elasticsearch6.5.4叢集和Head外掛LinuxElasticsearch
- 安裝elasticsearch-head外掛Elasticsearch
- Webpack安裝配置及打包詳細過程Web
- 蘋果cms安裝及配置詳細教程蘋果
- dolphinscheduler叢集搭建1.3.2版本【步驟詳細,且有說明,配備安裝包下載連線及配套軟體安裝連結】
- HTML&CSS 開發環境搭建-VSCode 常用外掛安裝及配置HTMLCSS開發環境VSCode
- sublime安裝外掛詳細教程
- 超詳細hadoop叢集伺服器安裝配置教程Hadoop伺服器
- ros環境搭建及vim-plug外掛安裝ROS
- SQL Server 2000詳細安裝過程及配置SQLServer
- SQL Server 2005詳細安裝過程及配置SQLServer
- ElasticSearch6.2.3安裝Head外掛Elasticsearch
- zookeeper叢集及kafka叢集搭建Kafka
- Eclipse安裝lombok外掛及外掛使用案例EclipseLombok
- jmeter下載安裝及外掛安裝JMeter
- Redis操作及叢集搭建以及高可用配置Redis
- Elasticsearch叢集搭建教程及生產環境配置Elasticsearch
- VSCODE 常用外掛及配置VSCode
- elasticsearch 6.3.0及一下版本綠色版head,免安裝Elasticsearch
- rqt的安裝及詳細介紹QT
- Nginx安裝(詳細版本)Nginx
- CentOS7安裝及配置 Zabbix全步驟,超詳細教程CentOS
- Docker的安裝配置及使用詳解Docker
- Docker 容器搭建及 Redis 叢集原理DockerRedis
- 安裝Google Chrome瀏覽器及常用外掛GoChrome瀏覽器
- yum方式安裝及配置最新的mysql5.7MySql
- gbase叢集管理之伺服器配置互信及C3工具安裝伺服器
- redis原理及叢集主從配置Redis
- fxfactory解除安裝不乾淨?Fxfactory及外掛解除安裝教程
- ElasticSearch 安裝head外掛連線不上,顯示叢集健康值:未連線的問題【原創帖】Elasticsearch
- Chrome 外掛怎麼安裝與下載?超詳細Chrome
- Windows下ElasticSearch的Head安裝及基本使用WindowsElasticsearch
- Cloudera Manager安裝 & 搭建CDH叢集Cloud