linux上安装es、Kibana、ik分词

基本概念
ES是什么?我们可以把ES比作一个Mysql数据库,同样用来存储数据,不过比Mysql提供了更多的搜索功能,例如分词搜索,关联度搜索等,而且搜索速度也不是同一级别的, ES能够实现百万数据/秒的查询速度。接下来将ES中用到的概念和Mysql进行类比:

字段 解释
index 索引,相当于Mysql中的一个库,例如有一个叫『orders』的库,那么里面可以建立很多表,存储不同类型的数据,而表在ES中就是type
type 类型,相当于Mysql中的一张表,存储json类型的数据
document 文档,一个文档相当于Mysql一行的数据
shards 分片,通俗理解,就是数据分成几块区域来存储,可以理解为mysql中的分库分表(不太恰当)
replicas 备份,就是分片的备份数,相当于mysql的备份库


一、准备工作
ES为了安全不允许使用root用户启动。ES5之后的都不能使用添加启动参数或者修改配置文件等方法启动了,必须要创建用户。
root用户身份创建用户es:

  1. adduser es
  2. passwd es_393939  

二、 安装ES
es安装目录放在了root的家目录下,新用户是不能访问到的,所以即使ES属于新用户了,但目录权限原因访问不到lib里的jar包,所以找不到Java类。 把ES搬到新用户的家(home)目录以内即可。
为了避免上述麻烦,我们直接切换到新建的es用户下,然后新建目录和下载安装包。

[es@iZj6c49h0dw85252u6oxu0Z es]$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.0.tar.gz

解压
[es@iZj6c49h0dw85252u6oxu0Z es]$ tar -zxvf elasticsearch-6.5.0.tar.gz 
启动,通过 -d 参数,表示后台运行
[es@iZj6c49h0dw85252u6oxu0Z es]$ cd elasticsearch-6.5.0/
[es@iZj6c49h0dw85252u6oxu0Z elasticsearch-6.5.0]$ bin/elasticsearch -d

可以通过 logs/elasticsearch.log 日志,查看启动是否成功。

三、测试:

访问 http://服务器 IP:9200 后,成功返回如下 JSON 串,表示成功。

linux上安装es、Kibana、ik分词_第1张图片

但是我开始的时候也没看到成功信息而是

[root@izuf672oio5mc4fbyj0s0jz ~]# curl http://xx.xxx.xx.xxx:9200/
curl: (7) Failed connect to xx.xxx.xx.xxx:9200; Connection refused 

注:xx.xxx.xx.xxx代表我服务器的ip

修改elasticsearch.yml文件,去掉注释并修改IP:network.host: 0.0.0.0,并开通入方向的华为云访问规则,再次启动ES就可以了。

vim config/elasticsearch.yml

其他的错误日志

[1] bootstrap checks failed
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

修改 /etc/security/limits.conf ,在此配置中修改以下内容。如果服务器已经配置好,可以不用重复配置。需要在 Root 下执行

* soft nofile 65536
* hard nofile 65536

修改完成后同时使用命令修改配置:

$ ulimit -n 65536
$ ulimit -n
65536

这些配置主要为文件系统描述符及相关的配置,具体的配置可以根据自己的系统配置调大或调小。

修改/etc/sysctl.conf,增加如下内容(如果服务器已经配置好,可以不用重复配置。需要在 Root 下执行):

vm.max_map_count=655360

修改完成后,执行 sysctl -p 命令,使配置生效。

通过浏览器访问http://xx.xxx.xx.xxx:9200/,可以返回json数据证明ES可以正常运行。

linux上安装es、Kibana、ik分词_第2张图片

为了方便操作我们安装Kibana

Kibana是什么 ?
Kibana是一个开源的分析与可视化平台,设计出来用于和Elasticsearch一起使用的。你可以用kibana搜索、查看存放在Elasticsearch中的数据。Kibana与Elasticsearch的交互方式是各种不同的图表、表格、地图等,直观的展示数据,从而达到高级的数据分析与可视化的目的。
Elasticsearch、Logstash和Kibana这三个技术就是我们常说的ELK技术栈,可以说这三个技术的组合是大数据领域中一个很巧妙的设计。一种很典型的MVC思想,模型持久层,视图层和控制层。Logstash担任控制层的角色,负责搜集和过滤数据。Elasticsearch担任数据持久层的角色,负责储存数据。而我们这章的主题Kibana担任视图层角色,拥有各种维度的查询和分析,并使用图形化的界面展示存放在Elasticsearch中的数据。

准备工作

下载地址:Past Releases of Elastic Stack Software | Elastic

注:选择跟es尽量一致的版本,因为我的es是的6.5.0版本所以这个我也选择同样的版本

我的kibana也放在了和es同样的目录(/home/es/)

下载、解压后修改kibana.yml

server.port: 5601         #kibana端口
server.host: "0.0.0.0"   #所有主机都能访问,或者也可以指定一个ip

因为我在华为云上部署所以要开通入方向的华为云访问规则

启动Kikana

Kibana不能和es一样不能在root用户启动创建es用户( 如果安装es时已创建es用户并且安装在同一台服务器只需要给kibana目录授权即可 

useradd es
#修改/etc/sudoers文件,进入超级用户,因为没有写权限,所以要先把写权限加上
chmod u+w /etc/sudoers
#编辑/etc/sudoers文件,找到这一 行
vim /etc/sudoers
root ALL=(ALL:ALL) ALL
#添加这一行 es为新添加的用户名
es    ALL=(ALL)       ALL
#为了安全撤销文件的写权限
chmod u-w /etc/sudoers
#给es普通用户授理访问这个文件权限
sudo chown -R es:es /usr/local/softwore/kibana
#切换到es用户
su es

启动

cd bin
./kabana

访问地址: xx.xxx.xx.xxx:5601

linux上安装es、Kibana、ik分词_第3张图片

 安装ik分词器

下载地址:

https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v6.5.0

注意:一定要安装跟自己的es相同的版本

通过工具将下载的压缩包放入服务器并在es安装目录下的plugins目录新建ik文件夹(/usr/local/elasticsearch/plugins)

cd /usr/local/elasticsearch/plugins/ik/
unzip elasticsearch-analysis-ik-6.5.0.zip

解压完后要把压缩包删掉,否则会报错

然后重新启动es即可

最后效果 

linux上安装es、Kibana、ik分词_第4张图片

全文注意:一定要将这3软件的版本一一对应。我的Linux版本是centos7.x

参考地址:https://blog.csdn.net/lxw1005192401/article/details/128041462

https://blog.csdn.net/qq_29917503/article/details/126768884

https://blog.csdn.net/u013901132/article/details/125355713

你可能感兴趣的:(linux,elasticsearch)