Centos7.9 安装 ElasticSearch 7.10.1 + Kibana7.10.1 教程
一、ES安装和配置
第一次安装ES,踩了很多坑,查阅很多资料总算是能正常启动,进入kibana页面了。后续会更新logstash
本机情况:
系统:Centos7.9
java环境:jdk1.8
1、下载资源
-
ES7.10.1版本下载地址:https://www.elastic.co/downloads/past-releases/enterprise-search-7-10-1
下载好资源为压缩包:
elasticsearch-7.10.1-linux-x86_64.tar.gz
2、在Centos7.9上安装ES7
- 下载好ES资源后,我们可以通过Xshell中的Xftp插件将ES上传至服务器上
- 解压:
tar -zxvf elasticsearch-7.10.1-linux-x86_64.tar.gz
,解压后得到elasticsearch-7.10.1
文件夹 - 将解压的文件夹重命名为
es7
并移动到/usr/local/
目录下:mv elasticsearch-7.10.1 /usr/local/es7
坑1:
这个时候直接运行可能会报错,无法使用root用户启动es。
解1:
1、创建用户组与用户:
groupadd es
useradd es -g es -p es
2、授权文件夹
chown -R es:es /usr/local/es7
坑2:
启动ES会提示各种资源限制问题:
解2:
1、修改用户资源限制
vi /etc/security/limits.conf
# 添加以下四行内容
* hard nofile 65536
* soft nofile 131072
* hard nproc 4096
* soft nproc 4096
2、修改系统配置
vi /etc/sysctl.conf
# 添加以下两行内容
fs.file-max=655360
vm.max_map_count=655360
3、使以上修改生效
/sbin/sysctl -p
4、修改limits.d目录下的配置文件
cd /etc/security/limits.d # 进入limits.d目录
# 通过ll命令可以查看到有一个以 -nproc.conf 为后缀的配置文件,我的
total 4
-rw-r--r--. 1 es root 191 Apr 1 2020 20-nproc.conf
# 上面两行使ll命令输出结果,可以看到文件名为:20-nproc.conf (ps:不同机器这个文件名可能会不一样)
vi 20-nproc.conf
# 文件内容如下,需要修改第一行
* soft nproc 4096 #(注意将这里修改为4096)
root soft nproc unlimited
- 创建ES数据和日志保存路径(这个可自己设定,只要后续配置对应即可)
mkdir -p /www/server/es/data
mkdir -p /www/server/es/logs
chown -R es:es /www/server/es
- 切换es用户
su es
- 修改ES配置文件
# ES配置文件在ES目录中的config路径下,文件名为 elasticsearch.yml
cd /usr/local/es7/config
vi elasticsearch.yml
# 修改内容如下:
cluster.name: es
node.name: node
path.data: /www/server/es/demo/data
path.logs: /www/server/es/demo/logs
bootstrap.memory_lock: false
bootstrap.system_call_filter: false # 原文件中没有,需要添加
network.host: 192.168.0.102
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
discovery.seed_hosts: ["127.0.0.1"]
cluster.initial_master_nodes: ["node"]
3、启动ES
- 切换到ES目录的bin路径中:
cd /usr/local/es7/bin
- 执行命令:
./elasticsearch
(如果想要后台执行,则加上 -d 参数:./elasticsearch -d
)
4、测试
# 在保证防火墙功能正常且端口9200开放的情况下,访问ES所在主机的9200端口:
# 我的主机ip为:192.168.0.102 所以可以使用如下命令测试:
curl 192.168.0.102:9200
# 也可以通过桌面浏览器访问,在浏览器地址栏输入:
192.168.0.102:9200
# 如果能输出或显示如下内容,说明ES安装部署成功
{
"name" : "node",
"cluster_name" : "es",
"cluster_uuid" : "HWGXE5mgQzys80be-_uuoQ", # 注意,这里如果是na,可能会导致后续kibana启动后无法连接到ES的问题,这个坑我用了一天的时间才找到解决办法
"version" : {
"number" : "7.10.1",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "1c34507e66d7db1211f66f3513706fdf548736aa",
"build_date" : "2020-12-05T01:00:33.671820Z",
"build_snapshot" : false,
"lucene_version" : "8.7.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
# 如果服务器本身能访问,其他机器无法访问,则首先要排查防火墙和端口开放情况,具体可以网上查看centos防火墙策略相关内容
二、Kibana安装和配置
1、下载资源
官网资源下载地址:https://www.elastic.co/downloads/past-releases/kibana-7-10-1
资源包为:kibana-7.10.1-linux-x86_64.tar.gz
2、在Centos7.9 上安装Kibana
- 下载好Kibana资源后,我们可以通过Xshell中的Xftp插件将ES上传至服务器上
- 解压:
tar -zxvf kibana-7.10.1-linux-x86_64.tar.gz
,解压后得到kibana-7.10.1-linux-x86_64
文件夹 - 将解压的文件夹重命名为
kibana
并移动到/usr/local/
目录下:mv elasticsearch-7.10.1 /usr/local/kibana
3、修改配置文件
# 进入kibana根目录,切换到config路径,可以看到 kibana.yml 文件,修改内容如下
server.port: 5601
server.host: "192.168.0.102" # 注意,这里的ip地址是kibana服务所在的ip
elasticsearch.hosts: "http://192.168.0.102:9200" # 这个是es服务的ip和端口号,因为我是装载了一台机器上,所以ip相同
kibana.index: ".kibana"
4、启动Kibana
# 切换到kibana根目录下的bin路径下
cd ../bin/
# 执行 kibana 脚本
./kibana
5、测试
访问 http://192.168.0.102:5601
可以进入管理页面即表示成功