1, 下载ES及Kibana
https://www.elastic.co/cn/downloads/elasticsearch
https://www.elastic.co/cn/downloads/kibana
2, 使用多个文件夹模拟ES集群
cp -rf /elasticsearch-7.14.0/* /usr/local/es-cluster/330
cp -rf /elasticsearch-7.14.0/* /usr/local/es-cluster/331
cp -rf /elasticsearch-7.14.0/* /usr/local/es-cluster/332
3, 修改配置
3.1 修改jvm.options
-Xms128m #我的虚拟机内存分配的小, 所以这里我设置的小
-Xmx128m
3.2 修改elasticsearch.yml
cluster.name: cluster-b #集群名称相同的节点会组成集群
node.name: node-330 #每个节点名称设置不一样
network.host: 192.168.184.128
http.port: 9200 #每个节点端口设置不一样
discovery.seed_hosts: ["192.168.184.128", "192.168.184.128","192.168.184.128"] #模拟
cluster.initial_master_nodes: ["node-330", "node-331","node-332"] #绑定节点名称
3.3 ulimit调整/线程的数量
3.3.1 修改Linux系统的文件打开数,将其调到65535
ulimit -n 65535
3.3.2 修改limits.conf文件
vi /etc/security/limits.conf
elasticsearch - nofile 65535 #ulimit调整
elasticsearch - nproc 4096 #线程的数量
3.4 调整mmapfs的数值
由于ES是使用mmapfs
存储索引,但是系统的默认值太低了,我们调高一点。
sysctl -w vm.max_map_count=262144
4, 新增非管理员用户并赋权
useradd elasticsearch
chown elasticsearch:elasticsearch -R 330/
chown elasticsearch:elasticsearch -R 331/
chown elasticsearch:elasticsearch -R 332/
5, 启动集群(也可以 ./elasticsearch -d 作为一个守护进程在后台运行)
6, 验证
http://192.168.184.128:9200/_cluster/health
参考: https://www.cnblogs.com/boboooo/p/12368058.html
=========================================================================
[安装Kibana]
1, 修改配置 /bin/kibana.yml
server.name: kibana
server.host: "192.168.184.128"
elasticsearch.hosts: ["http://192.168.184.128:9200"]
2, 新增用户并赋权, 参考上面es
3, 启动kibana ./bin/kibana
.........持续更新.........
问题记录:
es无法用root启动, 切换用户:
http://www.manongjc.com/article/141541.html
启动时报错:
Exception in thread "main" java.nio.file.AccessDeniedException: /root/home/searchengine/elasticsearch-6.2.4/config/jvm.options
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
at java.nio.file.Files.newByteChannel(Files.java:361)
at java.nio.file.Files.newByteChannel(Files.java:407)
at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384)
at java.nio.file.Files.newInputStream(Files.java:152)
at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:58)
错误原因:使用非 root用户启动ES,而该用户的文件权限不足而被拒绝执行
解决方法: chown 用户名:用户名 -R 文件(目录)名
启动报错:
max virtual memory areas vm.max_map_count [65530] is too low, increase to at