您的位置:首页 > 运维架构 > Linux

elasticsearch 5.x 安装与优化 (Windows & linux)

2018-01-12 19:39 567 查看

es 5.x安装与优化

es 5.x安装与优化
1、jdk版本要求

2、安装步骤
a、创建组与账户

b、给相应的目录权限

c、修改操作系统的配置文件,否则无法正常启动

d、es配置 (Windows 用户直接从这里开始)

e、基本优化

f、启动

g、性能和集群监控

1、jdk版本要求

a、 要求JDK至少1.8+

b、操作系统最好用
linux
,建议
CentOS


2、安装步骤

es从2.x开始禁止直接使用
root
用户启动,必须独立创建账号。

a、创建组与账户

groupadd elastic
useradd elastic -g elastic -p elastic_pass


b、给相应的目录权限

chown -R elastic:elastic /ssd
chown -R elastic:elastic /home/elasticsearch-5.6.5


上面的
/ssd
是es数据存储的目录

第二行是
es
的存储位置。

c、修改操作系统的配置文件,否则无法正常启动

修改
/etc/security/limits.conf
配置文件,在末尾追加以下配置

* soft memlock unlimited
* hard memlock unlimited
* hard nofile 65536
* soft nofile 65536


执行以下操作,修改
/etc/sysctl.conf
配置文件

cat /etc/sysctl.conf | grep -v "vm.max_map_count" > /tmp/system_sysctl.conf
echo "vm.max_map_count=262144" >> /tmp/system_sysctl.conf
mv /tmp/system_sysctl.conf /etc/sysctl.conf


d、es配置 (Windows 用户直接从这里开始)

修改
elasticsearch-5.6.5/config/jvm.options
配置文件

配置 jvm 最大堆 , 和最小堆

以下是默认配置

-Xms2g
-Xmx2g


需要修改为(一般为服务器物理内存的一半)

-Xms16g
-Xmx16g


修改
elasticsearch-5.6.5/config/elasticsearch.yml
配置文件

(1) 找到
#claster.name
,去掉前面的#号(#号是注释),然后修改
cluster.name
,这个名称可以随便,例如:
elastic
similar
之类的,
cluster.name: elastic


(2) 找到
#path.data
,默认情况下索引是存放在
elasticsearch/5.6.5/data
下面的,但我们需要修改为
ssd
下面,因此修改为
path.data: /ssd/elastic/


(3) 找到
#node.name
,这里是配置节点名称,默认情况下,是随机生成的,为了方便查看和管理,修改为
node.name: ${HOSTNAME}


(4) 找到
#bootstrap.memory_lock: true
这里去掉注释#号即可

(5) 找到
#network.host:
,去掉注释并且修改为
network.host: 0.0.0.0


(6) 找到
# discovery.zen.ping.unicast.hosts: ["host1", "host2"]
,去掉注释,里面的ip则修改为部分机器即可,从安全和稳定的角度,建议每台机器配第1个节点即可。(这里是用于配置
Mater
节点选举的,也就是
Master
会从这些节点中选举,其它节点与这些节点通讯,走的是单播)

(7) 在其中几台机器的(或都增加也行)配置文件尾部增加

http.cors.enabled: true
http.cors.allow-origin: "*"


这个主要是便于监控插件走http协议获取相关数据

e、基本优化

(1) 如果是内网可以直接关掉防火墙,如果安全较高,则需要将9200-9300这个范围加入防火墙例外。

(2) 所有机器关闭
swap
swapoff -a


f、启动

(1) 使用
root
执行
sysctl -p
(以前一直使用1.x,最近更新至这个版本,目前发前每次启动前必须执行这个命令,还没有找到可以不用每次执行的方法)

(2) 使用
elastic
用户切换到
elasticsearch-5.6.5/bin
下,然后执行
./elasticsearch -d
,这里的
-d
是以后台方式运行

g、性能和集群监控

由于官方的
Xpack
需要收费,因此一直使用
elasticsearch-head
elasticsearch-bigdesk
监控集群,下载与使用地址分别是:

https://github.com/mobz/elasticsearch-head
https://github.com/hlstudio/bigdesk


elasticsearch-head
elasticsearch 5.x 以后 不支持插件, 必须单独起一个服务

bigdesk
我们目录没有使用es插件的方式,而是直接以
python
的方式运行独立站点,操作方法如下:

cd bigdesk/_site/
python -m SimpleHTTPServer


然后访问8000端口即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息