主机名 | IP | 系统版本 | 应用版本 |
T-ES1-srv | 10.80.5.1 | CentOS 7.4 | Elasticsearch 6.4.1 |
yum -y install java-1.8.0-openjdk
安装完成,查看java版本
Elasticsearch的安装很简单,下载下来解压即可
进入/usr/local目录
cd /usr/local/
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.1.tar.gz
tar -zxvf elasticsearch-6.4.1.tar.gz
我们重命名下ES的文件夹,并且删掉原来的下载的包
mv elasticsearch-6.4.1 elasticsearch
rm elasticsearch-6.4.1.tar.gz
Elasticsearch 要求不能使用超级用户root运行,所以我们建立一个esuser账号
创建esuser账户
adduser esuser
# 修改密码
passwd esuser
然后,给esuser用户elasticsearch目录的授权。
chown -R esuser /usr/local/elasticsearch/
切换至elasticsearch目录,并以esuser用户运行
cd /usr/local/elasticsearch/
su esuser
运行elasticsearch,如果想后台运行后面加 -d
./bin/elasticsearch
我们先启动下看看有没有问题
elasticsearch默认restful-api的端口是9200 不支持Ip地址,只能在本机用http://localhost:9200来访问。如果需要改变,需要修改配置文件。
vim /usr/local/elasticsearch/config/elasticsearch.yml
我们在最后加上下面的配置
# 允许远程访问
network.host: 0.0.0.0
action.destructive_requires_name: true
# 允许跨域访问
http.cors.enabled: true
http.cors.allow-origin: “*”
然后重启下ES
默认使用9200端口,我们打开下,请先回到root用户下
su root
firewall-cmd –permanent –zone=public –add-port=9200/tcp
firewall-cmd –reload
max_map_count 的值是指一个进程最多可用于的内存映射区(memory map areas),在调用malloc会用到,由mmap/mprotect生成。
切换到root用户修改配置/etc/sysctl.conf
su root
vim /etc/sysctl.conf
加入
vm.max_map_count=655360
然后使其生效
sysctl -p
解决办法:
切换到root用户修改/etc/security/limits.conf
su root
vim /etc/security/limits.conf
加入
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
修改完成后重启下机器
reboot
没问题就后台启动
./bin/elasticsearch -d
我们这时在别的机器上访问下ES,出现下面内容代表已经安装完成