文章目录
- 一、软件下载配置
- 1. 下载
- 2. 解压
- 3. 录结构理解
- 二、采用自带的jdk
- 2.1. 启动脚本
- 2.2. 添加jdk判断
- 三、配置与启动
- 3.1. 核心配置简述
- 3.2. 核心配置
- 3.3. 创建数据存储目录
- 3.4. 创建es用户
- 3.5. 修改目录权限
- 3.6. JVM配置
- 3.7. 增加资源分配
- 3.8. 内核参数
- 3.9. 刷新 配置
- 3.10. 切换用户
- 3.11. 开启跨域
- 3.12. 权限不足
- 3.13. 前台启动
- 3.14. 后台启动(官方推荐)
- 3.15. 监控进程服务
- 3.16. 测试验证
一、软件下载配置
https://www.elastic.co/cn/
1. 下载
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.15.2-linux-x86_64.tar.gz
2. 解压
tar -xzf elasticsearch-7.15.2-linux-x86_64.tar.gz
3. 录结构理解
- Elasticsearch目录结构理解
- bin:可执行文件在里面,运行es的命令就在这个里面
- config:配置文件目录
- lib:依赖的jar
- logs:日志
- modules:模块
- plugins:可以自己开发的插件
- data:这个目录,没有,自己新建一下:mkdir data,这个作为索引目录
二、采用自带的jdk
声明:Elasticsearch自带的jdk启用Elasticsearch,如果用自己安装的java环境则不需要处理,可以跳过2.1 和2.2
2.1. 启动脚本
修改Elasticsearch启动脚本,在开头处添加以下配置
cd elasticsearch-7.15.2/
vim /app/elasticsearch-7.15.2/bin/elasticsearch
- elastic中jdk路径
export JAVA_HOME=/app/elasticsearch-7.15.2/jdk
export PATH=$JAVA_HOME/bin:$PATH
2.2. 添加jdk判断
if [ -x "$JAVA_HOME/bin/java" ]; thenJAVA="/app/elasticsearch-7.15.2/jdk/bin/java"
elseJAVA=`which java`
fi
注:官方推荐用自带的jdk
三、配置与启动
3.1. 核心配置简述
- Elasticsearch核心配置
- cluster.name:集群名称(随意)
- node.name: 节点名称(随意)
- path.data:数据存储的位置,这个目录暂时没有创建,稍后不上
- path.logs: 日志存储的位置
- network.host: 允许访问的IP,0.0.0.0表示所有,为了安全,可以指定允许访问的IP,并且可以设置多个
- http.port: 端口号
- cluster.initial_master_nodes: 集群中初始化的主节点,这里与node.name即可
- action.auto_create_index: 开始自动创建索引,7.14.0版本开始推荐配置这个属性
3.2. 核心配置
vim /app/elasticsearch-7.15.2/config/elasticsearch.yml
cluster.name: dianping-app
node.name: es-node-1
path.data: /app/elasticsearch-7.15.2/data
path.logs: /app/elasticsearch-7.15.2/logs
network.host: 0.0.0.0
http.port: 9200
cluster.initial_master_nodes: ["node-1"]
action.auto_create_index: .monitoring*,.watches,.triggered_watches,.watcher-history*,.ml*
http.cors.enabled: true
http.cors.allow-origin: "*"
3.3. 创建数据存储目录
cd /app/elasticsearch-7.15.2/
mkdir data
3.4. 创建es用户
es7不能使用root用户启动,因此,需要创建es操作用户
adduser es
passwd es
3.5. 修改目录权限
chown es:es /app/elasticsearch-7.15.2/ -R
3.6. JVM配置
(根据生产环境硬件配置调试)
vim config/jvm.options
测试可以采用默认
3.7. 增加资源分配
增加资源分配,资源分配不够进程会自动关闭服务
vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
3.8. 内核参数
vim /etc/sysctl.conf
vm.max_map_count=262145
3.9. 刷新 配置
sysctl -p
3.10. 切换用户
启动Elasticsearch,第一次建议前台启动,方便查看日志,稳定后可切换至后台启动
启动前先切换至为es创建的专属用户
su - es
3.11. 开启跨域
3.2如果已经添加,3.11可以跳过
config/elasticsearch.yml
vim /app/elasticsearch-7.15.2/confige/lasticsearch.yml
- 添加跨域设置
http.cors.enabled: true
http.cors.allow-origin: "*"
3.12. 权限不足
如果没遇到权限不足,则可以跳过3.12
如果出现如下问题,是es用户授权不足的问题需要为指定文件夹授权即可
chown -R es:es /app/elasticsearch-7.15.2/logs/
3.13. 前台启动
cd /app/elasticsearch-7.15.2
bin/elasticsearch
3.14. 后台启动(官方推荐)
./bin/elasticsearch -d
3.15. 监控进程服务
ps -ef |grep elasticsearchnetstat -an |grep 9200
3.16. 测试验证
http://192.168.159.134:9200/_cat
http://192.168.159.134:9200/_cat/health