Elasticsearch7.10羣集安裝
-
初始化環境
#關閉防火牆 systemctl stop firewalld systemctl disable firewalld #關閉seliux vi /etc/selinux/config SELINUX=disabled #安裝 vim java yum -y install vim java #檢查JAVA版本 java -version #重啓機器 reboot
-
安裝ES
#下載並安裝Key rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch #添加YUM倉庫 vim /etc/yum.repos.d/elasticsearch.repo [elasticsearch] name=Elasticsearch repository for 7.x packages baseurl=https://artifacts.elastic.co/packages/7.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=0 autorefresh=1 type=rpm-md #安裝 sudo yum -y install --enablerepo=elasticsearch elasticsearch
-
修改ES配置
#備份elasticsearch.yml文件 cd /etc/elasticsearch/ cp elasticsearch.yml elasticsearch.yml.bak #創建存儲elasticsearch數據及日誌路徑 mkdir -p /data/elasticsearch/logs mkdir -p /data/elasticsearch/data #修改權限 chown -R elasticsearch:elasticsearch /data/elasticsearch/ #修改elasticsearch配置文件 vim /etc/elasticsearch/elasticsearch.yml #配置項 cluster.name: my-cluster #羣集名稱 node.name: es01 #節點名稱 path.data: /data/elasticsearch/data #數據存儲路徑 path.logs: /data/elasticsearch/logs #日誌存儲路徑 bootstrap.memory_lock: true #啓動後鎖定內存,禁用swap交換,提高ES性能 network.host: 0.0.0.0 #監聽的主機地址 http.port: 9200 #監聽的WEB端口 discovery.seed_hosts: ["192.168.110.62", "192.168.110.63"]#集羣內節點發現,除本機外的其他羣集節點 cluster.initial_master_nodes: ["192.168.110.61","192.168.110.62", "192.168.110.63"]#在全新的集羣中設置符合主節點條件的初始節點。即所有羣集中的節點 http.cors.enabled: true # 是否支持跨域 http.cors.allow-origin: "*" # *表示支持所有域名 discovery.zen.minimum_master_nodes: 2 #選主過程中需要 有多少個節點通信 gateway.recover_after_nodes: 2 #只要指定數量的節點加入集羣,就開始進行恢復 gateway.recover_after_time: 10m #期望的節點數量沒有達標,等待的時間 cluster.routing.allocation.node_initial_primaries_recoveries: 8 #初始化數據恢復時,併發恢復線程的個數 cluster.routing.allocation.node_concurrent_recoveries: 8 #設置在節點中最大允許同時進行分片分佈的個數 indices.recovery.max_bytes_per_sec: 100mb #數據在節點間傳輸最大帶寬 node.master: true #此節點是否具有成爲主節點的資格 node.data: false #此節點是否作爲數據節點存儲數據
-
-
啓動ES
注意:ES需要同時啓動,因爲master需要選舉主節點
#將Elasticsearch配置爲在系統啓動時自動啓動 sudo /bin/systemctl daemon-reload sudo /bin/systemctl enable elasticsearch.service #Elasticsearch可以按以下方式啓動和停止 sudo systemctl start elasticsearch.service sudo systemctl stop elasticsearch.service #Elasticsearch查詢啓動狀態 sudo systemctl status elasticsearch.service
-
測試es
1、在瀏覽器中輸入 http://es節點IP:9200
2、curl -X GET "localhost:9200"
安裝head
head只需要在Master節點上安裝即可 ,可以參考
yum -y install gcc-c++ #安裝組件
wget http://nodejs.org/dist/v0.10.26/node-v0.10.26.tar.gz #下載node.js
tar zxvf node-v0.10.26.tar.gz
cd node-v0.10.26
#編譯安裝
./configure --prefix=/usr/local/node/v0.10.26
make
make install
#設置環境變量
vim /etc/profile
export NODE_HOME=/usr/local/node/v0.10.26
export PATH=$NODE_HOME/bin:$PATH
export NODE_PATH=$NODE_HOME/lib/node_modules:$PATH
#讓配置立即生效
source /etc/profile
#檢查node
node -v
-
下載head插件
wget https://github.com/mobz/elasticsearch-head/archive/master.zip #安裝解壓包unzip yum -y install unzip bzip2 #解壓文件至/data目錄下 unzip -d /data/ master.zip
-
安裝grunt
cd /data/elasticsearch-head-master/ npm install grunt --version
-
修改header源碼
vim /data/elasticsearch-head-master/Gruntfile.js +95 connect: { server: { options: { port: 9100, base: '.', keepalive: true, hostname:'*' #此處不要用Tab用空格 } } } vim /data/master/elasticsearch-head-master/_site/app.js +4374 init: function(parent) { this._super(); this.prefs = services.Preferences.instance(); this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.110.61:9200"; #如果head與ES不在同一臺機器上,需要修改爲ES的IP地址,在同一臺機器上可以不修改!
-
下載header必需文件
wget https://github.com/Medium/phantomjs/archive/2.1.14.tar.gz mkdir /tmp/phantomjs/ cp 2.1.14.tar.gz /tmp/phantomjs/ #爲什麼下載這個組件 #因爲header啓動時會加載2.1.14.tar.gz,如果在/tmp/phantomjs/目錄下沒有這個組件,啓動會報錯
-
運行header
cd /data/elasticsearch-head-master/ npm install nohup grunt server #啓動
-
測試
http://192.168.110.61:9100/ tailf nohup.out