一、准备环境
因为ElasticSearch的运行需要依赖于jdk8,所以首先需要在CentOS下安装好jdk1.8,并且配置好jdk环境变量,jdk具体安装步骤可参考CentOS7环境下安装jdk这篇笔记。
二、安装ElasticSearch
1. 从ElasticSearch官网下载安装包,这里选择6.8.4版本
2. 将elasticsearch安装包上传到centos中并且解压
[root@localhost elasticsearch]# tar -xf elasticsearch-6.8.4.tar.gz
[root@localhost elasticsearch]# ll
总用量 145148
drwxr-xr-x. 8 root root 143 10月 16 14:23 elasticsearch-6.8.4
-rw-r--r--. 1 root root 148628251 11月 22 16:39 elasticsearch-6.8.4.tar.gz
[root@localhost elasticsearch]# pwd
/opt/elasticsearch
[root@localhost elasticsearch]#
3. 编辑elasticsearch配置
编辑文件 /opt/elasticsearch/elasticsearch-6.8.4/config/elasticsearch.yml ,在文件的最后加上以下代码:
cluster.name: study-cluster # 集群名称
path.data: /opt/elasticsearch/elasticsearch-6.8.4/data # ES数据存储路径
path.logs: /opt/elasticsearch/elasticsearch-6.8.4/logs # ES日志存储路径
node.name: study-node-1 # 当前节点的名称
network.host: 192.168.206.134 # 配置当前结点绑定的IP地址,可设置为0.0.0.0
http.port: 9200 # 设置对外服务的HTTP端口,默认为9200
# 配置elasticsearch允许跨域
http.cors.enabled: true
http.cors.allow-origin: "*"
4. 设置jvm内存大小
elasticsearch默认情况下安装的内存大小是1g,但是目前在虚拟机里面安装学习使用没有那么大的内存,所以需要将默认内存设备小一些,我这里设置成512m,
编辑 /opt/elasticsearch/elasticsearch-6.8.4/config/jvm.options 文件,设置
-Xms512m
-Xmx512m
5. 新增elasticsearch启动用户
elasticsearch默认情况下不允许root用户启动,否则会报错,所以需要新建一个用户来启动elasticsearch,这里通过以下操作新建用户名为elasticsearch-user,所属组为elasticsearch-group的用户
- 新建组名为elasticsearch-group的用户组
[root@localhost config]# groupadd elasticsearch-group
[root@localhost config]#
- 在用户组elasticsearch-group下新建用户名为elasticsearch-user的用户
[root@localhost config]# useradd -g elasticsearch-group elasticsearch-user
[root@localhost config]#
- 将elasticsearch相关的目录所有者改成刚刚新增的用户,这里目录是 /opt/elasticsearch
[root@localhost elasticsearch]# chown -R elasticsearch-user:elasticsearch-group /opt/elasticsearch
[root@localhost elasticsearch]# ll
总用量 145148
drwxr-xr-x. 8 elasticsearch-user elasticsearch-group 143 10月 16 14:23 elasticsearch-6.8.4
-rw-r--r--. 1 elasticsearch-user elasticsearch-group 148628251 11月 22 16:39 elasticsearch-6.8.4.tar.gz
[root@localhost elasticsearch]#
6. 启动elasticsearch
切换到刚刚新增的用户elasticsearch-user,然后启动elasticsearch
6.1 切换用户elasticsearch-user
[root@localhost elasticsearch]# su elasticsearch-user
[elasticsearch-user@localhost elasticsearch]$
6.2 启动elasticsearch
/opt/elasticsearch/elasticsearch-6.8.4/bin/elasticsearch
通过上面命令启动的时候,可以发现会启动失败,从输出日志中可以看到以下错误
ERROR: [2] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
错误1:elasticsearch-user这个用户的最大打开线程数(4096)太低,至少增加到65535
错误1解决办法: 切换到root用户,编辑/etc/security/limits.conf文件,在最后加上以下代码
elasticsearch-user soft nofile 65535
elasticsearch-user hard nofile 65535
错误2:进程虚拟内存数量太低
错误2解决办法: 切换到root用户,编辑/etc/sysctl.conf文件,在最后加上以下代码
vm.max_map_count=262144
保存后使用命令 sysctl -p 查看已经成功修改
[root@localhost elasticsearch]# sysctl -p
vm.max_map_count = 262144
[root@localhost elasticsearch]#
修改完上面两个错误后,重新切换成elasticsearch-user用户执行启动命令/opt/elasticsearch/elasticsearch-6.8.4/bin/elasticsearch
启动完成后,在浏览器上访问端口http://server_ip:9200
elasticsearch启动成功。
6.3 后台启动elasticsearch
在6.2中通过命令 /opt/elasticsearch/elasticsearch-6.8.4/bin/elasticsearch 的方式启动elasticsearch属于前台启动的方式,将命令行退出后,elasticsearch也会直接关闭,所以一般情况下使用的是后台启动的方式,后台启动的方式也比较简单,添加个参数 -d 即可,通过下面命令进行后台启动
[elasticsearch-user@localhost elasticsearch]$ /opt/elasticsearch/elasticsearch-6.8.4/bin/elasticsearch -d
[elasticsearch-user@localhost elasticsearch]$
通过后台启动的方式,在命令行中没有日志输出,我们可以通过之前在elasticsearch.yml配置的日志文件路径中查看启动日志
7. 关闭elasticsearch
elasticsearch通过杀进程的方式进行关闭,首先通过以下命令查看elasticsearch的进程数
ps aux|grep elasticsearch
可以看出elasticsearch在所占用的进程是17771,接下来可以通过 kill -9 进行关闭
[elasticsearch-user@localhost logs]$ kill -9 17771
[elasticsearch-user@localhost logs]$ ps aux|grep elasticsearch
root 17427 0.0 0.1 191932 2456 pts/0 S 17:19 0:00 su elasticsearch-user
elastic+ 17836 0.0 0.0 112724 992 pts/0 R+ 17:33 0:00 grep --color=auto elasticsearch
[elasticsearch-user@localhost logs]$
三、安装Kibana可视化界面
1. 从elasticsearch官网下载kibana安装包,kibana安装包的版本需要跟elasticsearch版本号一致,否则会出现各种问题,上面安装elasticsearch的版本号施6.8.4,所以这里kibana也是下载6.8.4版本的
2. 将kibana安装包上传到centos下并且解压
3. 编辑kibana配置文件
编辑配置文件 /opt/elasticsearch/kibana-6.8.4-linux-x86_64/config/kibana.yml,在最后添加以下代码
# 访问端口
server.port: 5601
# 绑定的主机IP,这里写的是本机IP
server.host: "192.168.206.134"
# 连接的elasticsearch的地址
elasticsearch.hosts: ["http://192.168.206.134:9200"]
# 配置pid文件存储运行Kibana时的进程号,便于用kill -9 `cat /opt/elasticsearch/kibana-6.8.4-linux-x86_64/kibana.pid`来杀进程
pid.file: /opt/elasticsearch/kibana-6.8.4-linux-x86_64/kibana.pid
4. 后台启动kibana,并且将输出日志输出到kibana.log
nohup /opt/elasticsearch/kibana-6.8.4-linux-x86_64/bin/kibana > kibana.log 2>&1 &
启动成功后,在浏览器通过http://server_ip:5601访问
至此,kibana安装完毕