ElasticSearch7.1.1 安装与配置
• 下载:https://www.elastic.co
• 安装前确保已经安装和配置了 jdk8
• 1、下载和安装
wget
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.1.1-li
nux-x86_64.tar.gz
• 下载后,存放在 root 目录下
cd /root
tar xf elasticsearch-7.1.1-linux-x86_64.tar.gz -C /usr/local
cd /usr/local
mv elasticsearch-7.1.1 elasticsearch
cd elasticsearch/
• 2、创建 ES 用户和组
– 创建 elsearch 用户组及 elsearch 用户,因为使用 root 用户执行
ES 程序,将会出现错误;所以这里需要创建单独的用户去执行 ES
文件
命令一:groupadd elsearch
命令二:useradd elsearch -g elsearch
命令三:chown -R elsearch:elsearch elasticsearch 该命令是更改该
文件夹下所属的用户组的权限
• 3、修改 host 文件,执行命令 vim /etc/hosts
– 10.25.34.90 elasticsearch
• 4、创建 ES 数据文件和日志文件,直接在 root 用户根目录下创建
命令一:mkdir /data
命令二:chown -R elsearch:elsearch /data/
命令三:su - elsearch 切换用户
命令四:mkdir -p /data/es/data
命令五:mkdir -p /data/es/logs
• 5、修改 ES 配置文件,使用 cd 命令进入到 config 文件下,执行 vim
elasticsearch.yml 命令,如图所示,本次没有配置集群,只是简单的配
置了一下;详细说明可以参考官网
[root@cent7os /usr/local/elasticsearch/config]# egrep -v "^$|#"
elasticsearch.yml
cluster.name: my-es
node.name: node-1
path.data: /data/es/data
path.logs: /data/es/logs
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
network.host: 10.2.0.7
http.port: 9200
discovery.seed_hosts: ["10.0.0.7"]
cluster.initial_master_nodes: ["node-1"]
http.cors.enabled: true
http.cors.allow-origin: "*"
关于上面的警告都忽略了,然后直接就执行命令
• 6、执行 ES 文件,进入到 bin 目录下
– 前台运行,执行./elasticsearch
– 后台运行,执行 ./elasticesrarch -d
出现下面报错
[1]: max file descriptors [4096] for elasticsearch process is too low,
increase to at least [65536] 意思是说你的进程不够用了
解决方案:切到 root 用户:进入到 security 目录下的 limits.conf;执行
命令 vim /etc/security/limits.conf
在文件的末尾添加下面的参数值:
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
前面的*符号必须带上,然后重新启动就可以了。执行完成后可以使用命令
ulimit -n 查看进程数
[root@web01 ~]# ulimit -n
65536
[2]: max virtual memory areas vm.max_map_count [65530]is too low,
increase to at least [262144]需要修改系统变量的最大值了
解 决 方 案 : 切换 到 root 用 户 修 改 配 置 sysctl.conf 增 加 配 置 值 :
vm.max_map_count=655360
执行命令 sysctl -p,然后重新启动 ES 服务 就可以了。
• 如果没有什么问题话,出现下面的启动成功信息
• 然后执行 curl 'http://10.25.34.90:9200/' 命令,就出现下面的结果:
或者通过浏览器访问
• 7、安装 head 插件
• 7.1 下 载 head 安 装 包 , 下 载 地 址 :
https://github.com/mobz/elasticsearch-head/archive/master.zip
这是接从 git 上下载下来 ,然后上传到虚拟机上的;
• 由于 head 插件不能放在 elasticsearch-7.1.1 文件夹里,head 插件需
要单独放,单独去执行;所以在elasticsearch 同级目录下解压了 head 插
件;解压出来的文件名字,如图
• 7.2 head 插件是 node.js 实现的,因此需要安装 nodejs
– 命令一:curl -sL https://rpm.nodesource.com/setup_8.x | bash
-
– 命令二:yum install -y nodejs
• 验证是否安装成功
– node –v
– npm -v
• 7.3 进入 elasticsearch-head-master 目录,安装 grunt
– npm install grunt --save-dev
– npm install
• 7.4 修改配置文件
– cd 进入 elasticsearch-head-master 文件夹下,执行命令 vim
Gruntfile.js 文件:增加 hostname 属性,设置为*。
– 修改 vim _site/app.js 文件:修改 head 的连接地址:http://es
服务器 ip:9200
• 安装 npm install 时 报 PhantomJS not found on PATH 错误
• 文件太大下载失败,可以从
https://npm.taobao.org/mirrors/phantomjs//phantomjs-2.1.1-linux
-x86_64.tar.bz2 下载 PhantomJS 文件,并将该文件拷贝到
/tmp/phantomjs 目录下:
cp phantomjs-2.1.1-linux-x86_64.tar.bz2 /tmp/phantomjs
• 7.5 启动插件
– 在 elasticsearch-head-master 下执行,npm run start 命令,
• 7.6 在浏览器中访问 es 了,注意端口是 9100.成功结果如下
• 8、关闭 es 服务
– 若是 es 的前台运行,则用 ctrl + c 来停止
– 若是 es 的后台运行,则用 kill -9 进程号来停止
– Jps 列出进程
– Kill 9 进程号