環境準備java
elasticsearch是Java程序寫的所以必須裝jdk,不然使用不了。node
[root@openstack ~]# java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)git
IP地址 | 主機名 | 系統 | 軟件版本 |
192.168.209.6 | CFCA | rhel7.4 | elasticsearch-6.0.0/elasticsearch-head |
192.168.209.7 | openstack | rhel7.4 | elasticsearch-6.0.0/elasticsearch-head |
[root@openstack ~]# cd /usr/local/
[root@openstack local]# tar zxvf elasticsearch-6.0.0.tar.gz
[root@openstack local]# cd elasticsearch-6.0.0/
[root@openstack elasticsearch-6.0.0]# ll
總用量 224
drwxr-xr-x. 2 elasticsearch elasticsearch 4096 4月 1 21:56 bin #腳本
drwxr-xr-x. 2 elasticsearch elasticsearch 75 4月 2 13:48 config #配置文件
drwxr-xr-x. 2 elasticsearch elasticsearch 4096 11月 11 2017 lib
-rw-r--r--. 1 elasticsearch elasticsearch 11358 11月 11 2017 LICENSE.txt
drwxr-xr-x. 14 elasticsearch elasticsearch 251 11月 11 2017 modules
-rw-r--r--. 1 elasticsearch elasticsearch 193097 11月 11 2017 NOTICE.txt
drwxr-xr-x. 2 elasticsearch elasticsearch 6 11月 11 2017 plugins
-rw-r--r--. 1 elasticsearch elasticsearch 9326 11月 11 2017 README.textilegithub
[root@openstack elasticsearch-6.0.0]# cd config/
[root@openstack config]# grep '^[a-z]' elasticsearch.yml 修改後的配置文件
cluster.name: my-application 集羣名稱
node.name: node-1 節點名稱
path.data: /elk/data 數據存放路徑
path.logs: /elk/logs 日誌路徑
bootstrap.memory_lock: true 內存鎖定
network.host: 0.0.0.0
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.209.6", "192.168.209.7"] 如果單節點的話此項配置註釋掉
[root@openstack ~]# mkdir -p /elk/data/ /elk/logs/
[root@openstack ~]# useradd elasticsearch
[root@openstack ~]# chown -R elasticsearch:elasticsearch /elk/
[root@openstack ~]# chown -R elasticsearch:elasticsearch /usr/local/elasticsearch-6.0.0
[root@openstack ~]# su - elasticsearch
[elasticsearch@openstack ~]$ cd /usr/local/elasticsearch-6.0.0/
[elasticsearch@openstack bin]$ ./elasticsearch -d 後臺啓動,此時啓動不了,須要修改一下配置npm
[root@openstack ~]# vim /etc/security/limits.conf 重啓參數才能生效bootstrap
* hard nofile 65536
* soft nofile 65536
* soft memlock unlimited
* hard memlock unlimitedvim
[root@openstack ~]# vim /etc/sysctl.conf
vm.max_map_count=262144
[root@openstack ~]# sysctl -p 參數生效app
切換用戶以後從新啓動,查看進程和監聽端口
[root@openstack ~]# ps -ef|grep java 查看進程
elastic+ 6750 1 1 12:29 pts/2 00:02:30 /bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+AlwaysPreTouch -server -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -XX:-OmitStackTraceInFastThrow -Dio.netty.noUnsafe=true -Dio.netty.noKeySetOptimization=true -Dio.netty.recycler.maxCapacityPerThread=0 -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -XX:+HeapDumpOnOutOfMemoryError -Des.path.home=/usr/local/elasticsearch-6.0.0 -Des.path.conf=/usr/local/elasticsearch-6.0.0/config -cp /usr/local/elasticsearch-6.0.0/lib/* org.elasticsearch.bootstrap.Elasticsearch -dcors
[root@openstack ~]# netstat -tlunp|grep java 查看端口
tcp6 0 0 :::9200 :::* LISTEN 6750/java
tcp6 0 0 :::9300 :::* LISTEN 6750/java less
[root@openstack ~]# curl 192.168.209.7:9200 查看信息
{
"name" : "node-1",
"cluster_name" : "my-application",
"cluster_uuid" : "Z3TOUu0jTUiCSHsuFJsv_g",
"version" : {
"number" : "6.0.0",
"build_hash" : "8f0685b",
"build_date" : "2017-11-10T18:41:22.859Z",
"build_snapshot" : false,
"lucene_version" : "7.0.1",
"minimum_wire_compatibility_version" : "5.6.0",
"minimum_index_compatibility_version" : "5.0.0"
},
"tagline" : "You Know, for Search"
}
另一臺機器也同樣的配置,只是節點的名稱的不同。
安裝head插件:
GitHub地址:https://github.com/mobz/elasticsearch-head
[root@openstack ~]# cd /usr/local/src/
[root@openstack src]# git clone git://github.com/mobz/elasticsearch-head.git
[root@openstack src]# ll
總用量 4
drwxr-xr-x. 7 root root 4096 4月 1 22:58 elasticsearch-head
[root@openstack src]# cd elasticsearch-head/
[root@openstack elasticsearch-head]# yum -y install npm
[root@openstack elasticsearch-head]# npm install grunt -save
[root@openstack elasticsearch-head]# ll -d node_modules/grunt #必須確認生成該文件
drwxr-xr-x. 5 root root 117 4月 1 23:28 node_modules/grunt
[root@openstack elasticsearch-head]# npm install #執行安裝
[root@openstack elasticsearch-head]# npm run start & #後臺啓動
[root@openstack src]# vim /usr/local/elasticsearch-6.0.0/config/elasticsearch.yml 修改以下elasticsearch配置文件,而且重啓該服務
http.cors.enabled: true
http.cors.allow-origin: "*"
查看一下進程和端口:
[root@openstack src]# netstat -tlunp|grep grunt
tcp 0 0 0.0.0.0:9100 0.0.0.0:* LISTEN 8911/grunt
[root@openstack src]# ps -ef|grep npm
root 8901 8749 0 15:42 pts/1 00:00:03 npm
能夠在頁面訪問:
輸入地址後就能夠查看集羣的信息了,帶星號的是master
至此集羣搭建完成,head插件也安裝成功了。