Centos7 單機安裝Elasticsearch6.3.0
安裝Elasticsearch至少需要JAVA1.8以上的版本,這裏直接用yum安裝
1 # yum -y install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64
ELasticsearch官方下載,這裏使用的tar包安裝,官網也有做好的RPM包直接安裝
1 # wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.0.tar.gz
配置sysctl.conf
1 #修改sysctl配置
2 vim /etc/sysctl.conf
3 #添加如下配置
4 vm.max_map_count=262144
5 #讓配置生效
6 sysctl -p
7 #查看配置的數目
8 sysctl -a|grep vm.max_map_count
elasticsearch從5.0版本之後不允許root賬戶啟動
1 #添加用戶 2 adduser elsearch 3 4 #設定密碼 5 passwd elsearch 6 7 #添加權限 8 chown -R research:research /data/elasticsearch-6.3.0 9 10 #切換用戶 11 su elsearch 12 13 #啟動elasticsearch 14 15 ./elasticsearch-6.3.0/bin/elasticsearch 16 配置limits.conf 17 18 vim /etc/security/limits.conf19 把 20 * soft nofile 65535 21 * hard nofile 65535 22 23 改為 24 * soft nofile 65536 25 * hard nofile 65536 26 27 #切換用戶 28 su elsearch 29 30 配置所有用戶訪問 31 vim /data/elasticsearch-6.3.0/config/elasticsearch.yml 32 添加一下內容 33 network.host: 0.0.0.0
curl查看9200端口,筆記本使用Chrome瀏覽器打不開換火狐可以,不知為何
1 [root@node2 ~]# curl localhost:92002 { 3 "name" : "XifVC-v", 4 "cluster_name" : "elasticsearch", 5 "cluster_uuid" : "xasjIJiDSM6bAOeMHeF2GQ", 6 "version" : { 7 "number" : "6.3.0", 8 "build_flavor" : "default", 9 "build_type" : "tar", 10 "build_hash" : "424e937", 11 "build_date" : "2018-06-11T23:38:03.357887Z", 12 "build_snapshot" : false, 13 "lucene_version" : "7.3.1", 14 "minimum_wire_compatibility_version" : "5.6.0", 15 "minimum_index_compatibility_version" : "5.0.0" 16 }, 17 "tagline" : "You Know, for Search" 18 }
安裝Elasticsearch head插件
1 wget https://npm.taobao.org/mirrors/node/latest-v4.x/node-v4.5.0-linux-x64.tar.gz 2 3 [elsearch@node2 ~]$ sudo tar zxvf node-v4.5.0-linux-x64.tar.gz -C /usr/local/ 4 配置環境變量 5 export NODE_HOME=/usr/local/node-v4.5.0-linux-x64 6 export PATH=$PATH:$NODE_HOME/bin 7 export NODE_PATH=$NODE_HOME/lib/node_modules
安裝npm
[root@node2 ~]# npm install -g cnpm --registry=https://registry.npm.taobao.org 下載head插件 [elsearch@node2 ~]$ wget https://github.com/mobz/elasticsearch-head/archive/master.zip [elsearch@node2 ~]$ sudo unzip master.zip [root@node2 ~]# npm install -g grunt [root@node2 ~]# npm install -g grunt-cli --registry=https://registry.npm.taobao.org --no-proxy
下載依賴包
[root@node2 ~]# cd /usr/local/elasticsearch-head-master/ [root@node2 elasticsearch-head-master]# npm install 接下來是漫長的等待時間
啟動head
[elsearch@node2 elasticsearch-head-master]$ sudo vim Gruntfile.js connect: { server: { options: { hostname:‘0.0.0.0‘, port: 9100, base: ‘.‘, keepalive: true } } } }); 在當前目錄啟動head 通過命令grunt server 啟動head
[root@node2 elasticsearch-head-master]# grunt server
Running "connect:server" (connect) task
Waiting forever...
Started connect web server on http://localhost:9100
啟動之後打開鏈接發現集群狀態未連接,網上查了資料是
Cross-origin resource sharing (CORS) is a mechanism that allows restricted resources ,即跨域訪問。
這個字段默認為false,在Elasticsearch安裝集群之外的一臺機上用Sense、Head等監控插件訪問Elasticsearch是不允許的。這個字段最早可以追溯到1.4.x版本,而非5.x特有。
具體這個http.cors.x字段還有哪些用途和用法,見下表:
http.cors.enabled | 是否支持跨域,默認為false |
http.cors.allow-origin | 當設置允許跨域,默認為*,表示支持所有域名,如果我們只是允許某些網站能訪問,那麽可以使用正則表達式。比如只允許本地地址。 /https?:\/\/localhost(:[0-9]+)?/ |
http.cors.max-age | 瀏覽器發送一個“預檢”OPTIONS請求,以確定CORS設置。最大年齡定義多久的結果應該緩存。默認為1728000(20天) |
http.cors.allow-methods | 允許跨域的請求方式,默認OPTIONS,HEAD,GET,POST,PUT,DELETE |
http.cors.allow-headers | 跨域允許設置的頭信息,默認為X-Requested-With,Content-Type,Content-Length |
http.cors.allow-credentials | 是否返回設置的跨域Access-Control-Allow-Credentials頭,如果設置為true,那麽會返回給客戶端。 |
所以我在配置文件中添加
http.cors.enabled: true http.cors.allow-origin: "*"
摘自https://www.cnblogs.com/zklidd/p/6433123.html
重啟ELasticSearch之後再啟動head
Bigdesk直接可以通過python提供的http服務器,
python -m SimpleHTTPServer
運行,服務器運行,端口號是8000,默認情況下linux系統下安裝過了python,所以下載下來壓縮包,直接運行服務就可以了。
下載地址
#官網地址
https://github.com/hlstudio/bigdesk
#我的七牛地址
http://yellowcong.qiniudn.com/bigdesk-master.zip
安裝
#下載
wget http://yellowcong.qiniudn.com/bigdesk-master.zip
#解壓
unzip bigdesk-master.zip
#進入到sit目錄
cd /bigdesk-master/_site
#啟動web服務器
#監聽端口號是 8000
python -m SimpleHTTPServer
Centos7 單機安裝Elasticsearch6.3.0