elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值
elasticsearch-head 是用于监控 elasticsearch 状态的客户端插件,包括数据可视化、执行增删改查操作等。
安装前准备
在安装之前需要做些准备工作
1、安装elasticsearch之前,需要安装jdk,安装过程可参考:linux安装jdk,详解
所需要的配置环境,可以在这里查到,点击具体版本的setup界面可查。
因为我的机器是jdk1.8的环境,所以本文就以安装elasticsearch6.2为例的。
2、安装elasticsearch-head之前,需要安装node.js并添加相关编辑器
2.1下载node
可通过yum等工具从库源下载,也可从官网下载,这里主要介绍第二种方式。
下载对应于linux的binaries包(已编译的软件包)
2.2解压文件夹并配置环境变量
# 解压到/opt/install文件夹内
tar xf node-v12.18.2-linux-x64.tar.xz -C /opt/install
# 添加环境变量:export PATH=$PATH:/opt/install/node-v12.18.2-linux-x64/bin (即对应解压的bin目录)
vi /etc/profile
source /etc/profile
2.3设置npm国内镜像
# 设置npm源为淘宝NPM镜像
npm config set registry https://registry.npm.taobao.org
# 查看是否设置成功
npm config get registry
3、为了安全起见,elasticsearch不允许root用户使用,若没有其他用户,可以自行添加
#添加用户名为es的用户
useradd es
#为es设置密码
passwd es
elasticsearch安装
下载软件可到官网,再导入到linux文件夹中(可利用ftp工具);也可以使用wget命令,实际操作时wget的下载速度不稳定,所以这里建议第一种方法。
我下载了6.2.2版本的,然后解压到了/opt/install下(自己新建的文件夹)
tar -zxf elasticsearch-7.8.0-linux-aarch64.tar.gz -C /opt/install
elasticsearch配置
1、配置/opt/install/elasticsearch-7.8.0/config/elasticsearch.yml
添加的配置项语句
http.cors.enabled: true
http.cors.allow-origin: "*"
2、配置/etc/security/limits.conf
添加的配置项语句,es为用户名
es soft nofile 65536
es hard nofile 131072
es soft nproc 4096
es hard nproc 4096
3、配置/etc/sysctl.conf
#修改配置,添加配置语句 vm.max_map_count=262144
vi /etc/sysctl.conf
#让配置生效
sysctl -p
4、给予es用户使用elsticsearch文件夹的权限
chown -R es:es /opt/install/elasticsearch-6.2.2/
elsticsearch-head安装
可从github上下载,之后转到linux内。
由于下载的是zip压缩包,所以必须先解压工具unzip
#安装解压缩zip的工具
yum install -y unzip zip
解压文件到指定的文件夹,这里是/opt/install
unzip -d /opt/install elasticsearch-head-master.zip
到解压文件下执行npm安装命令,npm会根据package.json配置文件中的依赖配置下载安装对应依赖
#到达解压的文件夹中
cd /opt/install/elasticsearch-head-master/
#初始化下载设置,生成的默认的package.json
npm init -y
#利用node安装相关依赖
npm install
#产看安装项目
npm fund
运行elasticsearch与head
转换为es用户,转到es文件夹下,执行启动命令
#转换用户
su es
#转到elasticsearch文件夹下
cd /opt/install/elasticsearch-6.2.2/
#执行启动
bin/elasticsearch
由于elasticsearch会在前台运行,占用会话窗口,我在这里另起了一个会话,打开elasticsearch-head
#到elasticsearch-head文件夹下
cd /opt/install/elasticsearch-head-master/
#启动
npm run start
打开虚拟机输入虚拟机地址:9100,查看elasticsearch-head
连接端口为虚拟机地址:9200,连接数据库