本文为大家介绍如何在Linux服务器上如何安装、配置Elasticsearch以及可视化工具Kibana。
依赖
jdk 11(ELK7版本以上需要)
es依赖java,因此,我们要先安装jdk11。
下载elasticsearch安装包
首先从官网下载elasticsearch安装包,官网地址如下:

解压elasticsearch安装包
将elasticsearch安装包上传到服务器指定目录下(本例中是/opt/elasticsearch),然后通过如下命令解压:
tar -xvzf elasticsearch-7.6.0-linux-x86_64.tar.gz
启动elasticsearch
解压后,进入/opt/elasticsearch/elasticsearch-7.6.0/bin目录,执行如下命令启动elasticsearch:
./elasticsearch
结果报错了,如下图所示,从报错信息可以看出,elasticsearch为了安全性,是不能用root用户启动的,因此需要创建一个新用户或者使用其他非root用户来启动elasticsearch。

创建用户
创建用户命令如下:
useradd espasswd es
输入两次密码后,用户创建完毕,然后将/opt/elasticsearch目录的属主改为es账户,执行如下命令:
chown -R es /opt/elasticsearch
然后,我们切换成es用户:
su es
在启动es之前,由于我们的服务器内存有限,因此先配置一下es的内存。
修改java的jvm内存配置
这一步不是必须的,默认情况下,es的jvm内存配置为1G,如果你的服务器内存本身并不是太大,可以将该配置设置的小一点点。

改成如下图所示(视自己的服务器配置)。

cd /opt/elasticsearch/elasticsearch-7.6.0/configvim jvm.options
配置外网访问es
默认情况下,我们只能在当前linux服务器上访问elasticsearch ,如果想要在外网访问 elasticsearch ,需要修改配置文件,进入elasticsearch文件目录下的config文件夹中(/opt/elasticsearch/elasticsearch-7.6.0/config),修改elasticsearch.yml文件。
vim elasticsearch.yml

network.host: 0.0.0.0
#
# Set a custom port for HTTP:
#
http.port: 9200
将如上配置改成如下所示

host改成服务器本机IP即可。
再次启动es
再次启动es出现以下报错,说明现在的环境不符合elasticsearch的要求。

切换成root用户,再次启动es,结果依然报错,报错信息如下。

再次编辑elasticsearch.yml配置文件,添加如下配置。

node.name: node-1
cluster.initial_master_nodes: ["node-1"]
再次启动es:
./elasticsearch -d
-d 表示以后台启动。
浏览器访问es
打开浏览器,访问http://IP:9200/ ,其中IP是服务器的IP,结果如下所示,说明es安装成功。

另外,服务器防火墙需要放开9200和9300端口,如果是云服务器,配置相应的安全规则即可。
Kibana是一个开源的分析与可视化平台,可以非常方便的和Elasticsearch一起使用,下面介绍一下如何安装和配置Kibana。
下载Kibana安装包
下载地址如下:
本文下载版本为kibana-7.6.0-linux-x86_64.tar.gz。

解压Kibana包安装包
将Kibana包安装包上传到/opt/kibana目录,然后通过如下命令解压:
tar -xvzf kibana-7.6.0-linux-x86_64.tar.gz
配置Kibana
进入/opt/kibana/kibana-7.6.0-linux-x86_64/config目录,修改kibana.yml,配置如下信息:
server.port: 5601 #kibana端口server.host:"0.0.0.0"#所有主机都能访问,或者也可以指定一个ipelasticsearch.hosts:"http://es服务公网IP:9200"#配置es的访问地址 kibana.index:".kibana"

启动Kibana
Kibana和es一样,也不能通过root用户启动,因此需要新创建一个用户,或者用上面我们创建es用户。
进入bin目录,通过如下命令启动kibana:
nohup ./kibana &
结果报错,信息如下。

要想解决这个问题,先切换到root用户,然后安装如下依赖:
yum install -y ipa-gothic-fonts xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-utils xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc fontconfig freetype
访问Kibana
浏览器输入http://服务器IP:5601/,出现如下页面。

点击左上角菜单按钮,选择DevTools打开ES操作界面。

Kibana常用命令
查看集群中节点信息
命令:
GET/_cat/nodes?v
结果如下:

查看集群中的索引信息
命令:
GET _cat/indices?v
结果如下:

创建索引
7.X 默认不在支持指定索引类型,默认索引类型是_doc。
命令:
PUT /test{"mappings":{"properties":{"title":{"type":"keyword"},"name":{"type":"text"},"age":{"type":"integer"},"date":{"type":"date","format":"yyyy-MM-dd HH:mm:ss"}}}}
结果如下:

删除索引
命令:
DELETE test


版权声明:本文内容来自知乎:非著名程序员杨某,遵循CC 4.0 BY-SA版权协议上原文接及本声明。
本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进许可。
原文链接:https://zhuanlan.zhihu.com/p/613207388
如有涉及到侵权,请联系,将立即予以删除处理。
在此特别鸣谢原作者的创作。
此篇文章的所有版权归原作者所有,与本公众号无关,商业转载建议请联系原作者,非商业转载请注明出处。