Elasticsearch
准备工作:
主节点规划:
es-m-1:172.16.5.11
es-m-2:172.16.5.12
es-m-3:172.16.5.13
数据节点规划:
es-d-1:172.16.5.21
es-d-2:172.16.5.22
es-d-3:172.16.5.23
es-d-4:172.16.5.24
es-d-5:172.16.5.25
用户准备:
默认情况下,elasticsearch不允许root用户运行。提前创建用户,这里我新建了一个叫做“admin”的用户。
目录准备及安装包准备:
数据目录
mkdir -p /home/admin/es_data
日志目录
mkdir -p /home/admin/es_logs
解压
tar -xzf elasticsearch-5.6.16.tar.gz
相关配置
open files
即时生效,重启失效
sudo ulimit -n 655360
永久生效第一步,编辑/etc/security/limits.conf
* soft nofile 655360
* hard nofile 655360
永久生效第二步
sed -i 's/#DefaultLimitNOFILE=/DefaultLimitNOFILE=655360/' /etc/systemd/system.conf
关闭swap
即时生效,重启失效
sysctl vm.swappiness=1
永久生效(物理内存剩余1%时,使用swap),编辑/etc/sysctl.conf
vm.swappiness = 1
修改ES配置文件elasticsearch.yml
以下为主节点,数据节点相应的node.master改为false,node.data改为true
#集群名字
cluster.name: es-test
#
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,Content-Type
#master节点不存储数据,有成为主节点的资格,可以参与选举
node.master: true
node.data: false
#数据与日志路径
path.data: /home/admin/es_data
path.logs: /home/admin/es_logs
#http端口
http.port: 9200
#通信端口
transport.tcp.port: 9300
#集群成员
discovery.zen.ping.unicast.hosts: ["172.16.5.11", "172.16.5.12", "172.16.5.13", "172.16.5.21", "172.16.5.22", "172.16.5.23", "172.16.5.24", "172.16.5.25"]
#
discovery.zen.minimum_master_nodes: 2
#安装head
http.cors.enabled: true
http.cors.allow-origin: "*"
#用于监听的IP地址
network.host: 127.0.0.1
#节点名字
node.name: node-1
修改配置文件jvm.options
建议为物理内存50%,且不超过32G,我这里是8G内存
-Xms4g
-Xmx4g
启动
进到ES目录里
./bin/elasticsearch -p /home/admin/es_logs/es.pid -d