centos7下Elasticsearch7.13安装配置

1. 环境

OS: Centos7.x虚拟机 1H2G
jdk: 1.8
elasticsearch: 7.13.3

2. 安装 JDK

2.1 查看可用的JDK

yum search java|grep jdk

2.2 安装JDK

yum install -y java-1.8.0-openjdk.x86_64

3. 环境准备

3.1 修改系统配置

vim /etc/security/limits.conf
# 在文件的最后追加如下配置:
es soft nofile 65535
es hard nofile 65537
# 上面两行语句表示, es用户的软限制为65535, 硬限制为65537

vim /etc/sysctl.conf
# 追加最大虚拟空间限制
vm.max_map_count=655360
# 使系统配置生效
sysctl -p

3.2 创建 elasticsearch 组和用户

# 创建 elsearch 用户组
groupadd elsearch

# 创建用户es, 并制定用户组为elsearch
useradd -m -g elsearch es

# 设置用户密码
passwd es <换行输入密码>

######## 拓展知识点 ########
# 创建一个不能登录的用户: es
# /bin/nologin /bin/false 的意思是禁止某个用户登录
useradd -r -g elsearch -s /bin/false es

# 查看所有用户组
cat /etc/group

# 删除用户组
groupdel elsearch

# 查看所有用户
cat /etc/passwd

# 删除用户
userdel -r es

4. 安装 Elasticsearch

4.1 下载安装包

下载 elasticsearch
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.13.3-linux-x86_64.tar.gz

下载 kibana
https://artifacts.elastic.co/downloads/kibana/kibana-7.13.3-linux-x86_64.tar.gz

把安装包 elasticsearch-7.13.3-linux-x86_64.tar.gz 解压到 /opt/, 变更文件夹所有者:

chown -R es:elsearch /opt/elasticsearch-7.13.3

创建文件夹用于存放log

mkdir /var/log/elasticsearch/
chown -R es:elsearch /var/log/elasticsearch/

创建文件夹用于存放data

mkdir /data/elasticsearch/
chown -R es:elsearch /data/elasticsearch/

4.2 修改配置文件

vim /opt/elasticsearch-7.13.3/config/elasticsearch.yml
node.name: node-1
path.data: /data/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
cluster.initial_master_nodes: ["node-1"]

4.3 指定使用es用户启动

su - es -c "/opt/elasticsearch-7.13.3/bin/elasticsearch -d"

5. 可能遇到的错误

问题

max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

解决方法:

#切换到root用户修改
vim /etc/security/limits.conf

# 在最后面追加下面内容
es hard nofile 65536
es soft nofile 65536

修改后重新登录 es 用户,使用如下命令查看是否修改成功

ulimit -Hn
65536

问题:

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决方法 提高vm.max_map_count 的大小

# 切换到root用户
vim /etc/sysctl.conf
# 在最后面追加下面内容
vm.max_map_count=262144
# 使用 sysctl -p 查看修改后的结果
sysctl -p

问题:

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)

解决方法:

# 由于elasticsearch5.0默认分配jvm空间大小为2g,修改jvm空间分配
# 如果使用虚拟机安装,内存最好不小于2G
# vim config/jvm.options  
-Xms512m
-Xmx512m

阿里云上可能出现的问题:

system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk

解决方法:在es配置中加入下面命令即可

bootstrap.system_call_filter: false

 在确定服务器端口(9200)开启,elasticsearch启动的情况下(ps -ef | grep elasticsearch)可以在浏览器中访问

关闭elasticSearch

# 找到elasticsearch的进程号
jps | grep Elasticsearch
3673 Elasticsearch

kill -9 3673

技术交流群:576269252

点击链接加入群聊【互联网技术交流群】:https://jq.qq.com/?_wv=1027&k=N7NQbQMO

------------------------------------------
声明: 原创文章,未经允许,禁止转载!
------------------------------------------

 
posted @ 2017-04-03 23:17  景岳  阅读(22433)  评论(0编辑  收藏  举报