[TOC]
基于es 7.x版本
安装
1. 安装jdk1.8
浏览不同的es版本对java版本的要求: https://www.elastic.co/cn/support/matrix#matrix_jvm
elasticsearch 7以后自带 java jdk, 无需以下安装操作.
centos
|
|
ubuntu
|
|
安装完后查看java版本
|
|
2. 下载es
3. linux/win环境安装
目录概述
- bin 执行文件目录
- bin/elasticsearch.bat 双击安装(window)
- bin/elasticsearch (linux)
- 加个
-d
参数的话表示后台静默运行
- 加个
- config 配置目录
- elasticsearch.yml es配置文件
- jvm.options jdk配置文件
- -Xms1g 表示使用1G内存
- log4j2.properties 日志配置文件
- data 数据目录
- lib jar包目录
- logs日志目录
- modules 模块目录
- plugins 插件目录
后台启动
|
|
启动ElaticSearch
window: 双击bin/elasticsearch.bat 文件, 差不多需要1~2分钟, 注意屏幕不动, 敲个回车.
linux : bin/elasticsearch or bin/elasticsearch -d (后台运行)
测试一下
-
curl 'http://localhost:9200/?pretty'
-
http://localhost:9200/
默认情况下,Elastic 只允许本机访问,如果需要远程访问,可以修改 Elastic 安装目录的config/elasticsearch.yml
文件,去掉network.host
的注释,将它的值改成0.0.0.0
,然后重新启动 Elastic。
|
|
上面代码中,设成0.0.0.0
让任何人都可以访问。线上服务不要这样设置,要设成具体的 IP。
修改配置
对于 elasticsearch 配置并没有某个万能的配置项, 让性能提升100倍.
|
|
修改集群名称
如果配置多台联合一个集群, cluster.name 需要都相同.
|
|
修改节点名称
每个节点都是集群的一部分, 每个节点名称都不能相同, 可以使用编号命名.
- 设置一个有意义的节点名称
|
|
是否为主节点
如果是主节点,则参入集群选举.非主节点可以当数据节点或负载节点.
|
|
是否是数据节点
如果设置了主节点也可以设置成数据节点, 如果都不是,则成为负载节点.
|
|
修改索引存储路径
用于存储 ES 所有的索引数据路径,非常重要, 最好不要默认设置
|
|
修改日志路径
|
|
修改绑定地址
|
|
最好指定域局网的IP, 也可以使用0.0.0.0
表示任意都可以访问.也可以设置localhost
只允许本机访问.
修改端口
|
|
修改集群配置
以下配置只限于7.x后版本使用.
参考: 官方配置
|
|
设置收集监控数据
|
|
修改内存
设置环境变量,修改堆内存
|
|
启动时设置堆内存最小值(Xms)与最大值(Xmx)
|
|
注: 设置物理内存的一半, 最大不要超过32g
Swapping 是性能的坟墓
内存交换 到磁盘对服务器性能来说是 致命 的,如果内存交换到磁盘上,一个 100 微秒的操作可能变成 10 毫秒
最好的办法就是在你的操作系统中完全禁用 swap。这样可以暂时禁用:
|
|
永久修改 /etc/fstab
, 带有swap的那一条进行注释掉.
|
|
更好的操作是, 锁定内存.
vim elasticsearch.yml
|
|
安装遇到的坑
-
不能使用root权限运行 (linux)
解决办法就是新建一个 es帐号与组运行
|
|
- max_map_count is too low
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
临时解决
|
|
永久解决
|
|