目录
Elasticsearch - Linux 安装7.14.0
开启跨域 (./config/elasticsearch.yml)
elasticsearch-head 谷歌插件以及安装和使用说明
Elasticsearch - Linux 安装7.14.0
-
Elasticsearch官网下载最新版本7.14.0
- Elasticsearch linux环境安装帮助文档
-
安装单实例Elasticsearch
- 将下载好的压缩包上传至服务器并解压
- 创建软件安装包文件夹(看自己意愿,这个不重要,方便整理)
- mkdir /home/chenyb/software
- 将es压缩包移动只软件安装包文件夹(看自己意愿,这个不重要,方便整理)
- mv /home/chenyb/elasticsearch-7.14.0-linux-x86_64.tar.gz /home/chenyb/software/
- 解压到指定文件下(这里解压到/usr/local/文件夹下)
- cd /usr/local/
- tar -zxvf /home/chenyb/software/elasticsearch-7.14.0-linux-x86_64.tar.gz
- 创建软件安装包文件夹(看自己意愿,这个不重要,方便整理)
- 更名(看自己意愿,这个不重要,方便整理)
- mv elasticsearch-7.14.0/ elasticsearch
- Elasticsearch目录结构理解
- bin:可执行文件在里面,运行es的命令就在这个里面
- config:配置文件目录
- lib:依赖的jar
- logs:日志
- modules:模块
- plugins:可以自己开发的插件
- data:这个目录,没有,自己新建一下:mkdir data,这个作为索引目录
- Elasticsearch自带的jdk启用Elasticsearch,如果用自己安装的java环境则不需要处理
- 修改Elasticsearch启动脚本
- cd ./elasticsearch/bin/
-
vim elasticsearch
- 修改Elasticsearch启动脚本
#elastic中jdk路径
export JAVA_HOME=/usr/local/elasticsearch/jdk/
export PATH=$JAVA_HOME/bin:$PATH
#添加的jdk判断
if [ -x "$JAVA_HOME/bin/java" ]; then
JAVA="/usr/local/elasticsearch/jdk/bin/java"
else
JAVA=`which java`
fi
- 官方推荐用自带的jdk
- Elasticsearch核心配置(vim ./config/elasticsearch.yml)
- 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版本开始推荐配置这个属性
# ======================== Elasticsearch Configuration =========================
#
cluster.name: chen-es-application
#
node.name: es-node-1
#
path.data: /usr/local/elasticsearch/data
#
path.logs: /usr/local/elasticsearch/logs
#
network.host: 0.0.0.0
#
http.port: 9200
#
#discovery.seed_hosts: ["host1", "host2"]
cluster.initial_master_nodes: ["es-node-1"]
#
action.auto_create_index: .monitoring*,.watches,.triggered_watches,.watcher-history*,.ml*
- 创建数据存储目录
- mkdir data
- 需要创建新用户负责操作elasticsearch,elasticsearch不允许root用户直接操作
- adduser es
- chown -R es:es /usr/local/elasticsearch/
- JVM配置(根据生产环境硬件配置调试)
- vim config/jvm.options
- 增加资源分配,资源分配不够进程会自动关闭服务
- vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
-
- vim /etc/sysctl.conf
vm.max_map_count=262145
-
- 刷新 配置
- sysctl -p
- 刷新 配置
- 启动Elasticsearch,第一次建议前台启动,方便查看日志,稳定后可切换至后台启动
- 启动前先切换至为es创建的专属用户
- su es
- 前台启动
- ./bin/elasticsearch
- 后台启动(官方推荐)
- ./bin/elasticsearch -d -p pid
- 启动前先切换至为es创建的专属用户
- 如果出现如下问题,是es用户授权不足的问题需要为指定文件夹授权即可
- chown -R es:es /usr/local/elasticsearch/logs/
- 查看启动进程
- 访问测试
-
开启跨域 (./config/elasticsearch.yml)
http.cors.enabled: true
http.cors.allow-origin: "*"
-
elasticsearch-head 谷歌插件以及安装和使用说明
-
Elasticsearch集群搭建(经典3节点)
- 准备三台服务器
- 分别部署了Elasticsearch
- 修改核心配置文件(./config/elasticsearch.yml),分别配置三个节点
- cluster.name:集群名称(集群标识,集群中唯一且一致)
- node.name:节点名称(节点唯一,不能与其他节点有冲突)
- path.data:数据存放位置
- path.logs:日志存放位置
- network.host:ip访问权限,0.0.0.0允许所有远程访问
- http.port:端口号(集群中唯一且一致)
- discovery.seed_hosts:集群各个节点通讯ip,包含自身
- cluster.initial_master_nodes:最初的master节点
- action.auto_create_index:自动生成索引配置,7.14版本官方要求配置
- node.master:当master节点宕机,是否会参加竞选master和投票
- node.data:当前节点是否允许存放数据
- 去除注释查看.yml配置
- more ./config/elasticsearch.yml | grep ^[^#]
cluster.name: es-cluster
node.name: es-node-1
path.data: /usr/local/elasticsearch/data
path.logs: /usr/local/elasticsearch/logs
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["192.168.213.152", "192.168.213.153","192.168.213.154"]
cluster.initial_master_nodes: ["es-node-1"]
action.auto_create_index: .monitoring*,.watches,.triggered_watches,.watcher-history*,.ml*
node.master: true
node.data: true
- 清除原数据备份
- rm -rf ./data
- 切换用户启动elasticsearch,分别启动三个节点,先启动master
- su es
- ./bin/elasticsearch
- 观察启动日志
- 查看集群信息