elasticsearch集群搭建,以及kibana和ik分词器的安装(7.3.2)

本文详细介绍了如何在Linux环境下安装和配置Elasticsearch集群,包括下载安装包、配置集群参数、启动单机版及集群,并解决了可能出现的权限问题。接着讲解了Kibana的下载、安装、配置与启动,以及如何通过Kibana监控集群健康状态。最后,介绍了IK中文分词器的下载、安装和验证过程,用于提升Elasticsearch的中文搜索能力。
摘要由CSDN通过智能技术生成

elasticsearch的安装和集群的搭建

1.下载elasticsearch压缩包文件,历史版本下载 :
https://www.elastic.co/cn/downloads/past-releases/

2. 将压缩包上传至linux,解压到指定目录:
创建文件夹 mkdir elasticsearch
tar -zxvf elasticsearch-7.3.2-linux-x86_64.tar.gz -C /home/centos/elasticsearch

3. 查看配置文件:(虚拟机内存按需分配)
vi config/jvm.options

vi config/elasticsearch.yml elasticsearch的配置文件(单节点)

#集群名称
cluster.name: sinochem-es
#节点名称
node.name: es-0
#是不是有资格主节点
#node.master: true
#是否存储数据
node.data: true
#最大集群节点数
#node.max_local_storage_nodes: 3
#ip地址(外网可访问使用 0.0.0.0)
network.host: 0.0.0.0
#端口
http.port: 9200
#内部节点之间沟通端口
#transport.tcp.port: 9300
#es7.x 之后新增的配置,节点发现
#discovery.seed_hosts: ["localhost:9300", "localhost:9301", "localhost:9302"]
#es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
#cluster.initial_master_nodes: ["es-0", "es-1", "es-2"]
#数据和存储路径
path.data: /home/centos/elasticsearch-master/data
path.logs: /home/centos/elasticsearch-master/logs
# 开启跨域
http.cors.enabled: true

# 所有人访问
http.cors.allow-origin: "*"

#用安全性
xpack.security.enabled: false

4. 启动单机版elasticsearch:
1 首先需要创建es用户,root用户无法启动
2 创建es用户:useradd es
3 创建密码:passwd es
4 需要给elasticsearch赋予es用户的执行权限:
chown -R es:es /home/centos/elasticsearch-master/
5 启动:
进入到elasticsearch的bin目录下,执行 ./elasticsearch
在这里插入图片描述
6 访问 http://ip:9200/
启动成功
6 后台启动elasticsearch
bin目录下 执行 ./elasticsearch -d
查看进程: ps aux|grep elasticsearch

3. elasticsearch集群的搭建和配置:
1 将elasticsearch的安装包分别复制3份
cp -R elasticsearch-master elasticsearch-node1
在这里插入图片描述
2 分别修改3个节点的配置文件 vi config/elasticsearch.yml
master节点(名字有误 意思是第一个节点 不能准确的说是master)

#集群名称
cluster.name: xxx-es
#节点名称
node.name: es-0
#是不是有资格主节点
node.master: true
#是否存储数据
node.data: true
#最大集群节点数
node.max_local_storage_nodes: 3
#ip地址
network.host: 0.0.0.0
#端口
http.port: 9200
#内部节点之间沟通端口
transport.tcp.port: 9300
#es7.x 之后新增的配置,节点发现
discovery.seed_hosts: ["localhost:9300", "localhost:9301", "localhost:9302"]
#es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
cluster.initial_master_nodes: ["es-0", "es-1", "es-2"]
#数据和存储路径
path.data: /home/centos/elasticsearch-master/data
path.logs: /home/centos/elasticsearch-master/logs
# 开启跨域
http.cors.enabled: true

# 所有人访问
http.cors.allow-origin: "*"

#用安全性
xpack.security.enabled: false

node1节点(集群中的第二个节点)

#集群名称
cluster.name: xxx-es
#节点名称
node.name: es-1
#是不是有资格主节点
node.master: true
#是否存储数据
node.data: true
#最大集群节点数
node.max_local_storage_nodes: 3
#ip地址
network.host: 0.0.0.0
#端口
http.port: 9201
#内部节点之间沟通端口
transport.tcp.port: 9301
#es7.x 之后新增的配置,节点发现
discovery.seed_hosts: ["localhost:9300", "localhost:9301", "localhost:9302"]
#es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
cluster.initial_master_nodes: ["es-0", "es-1", "es-2"]
#数据和存储路径
path.data: /home/centos/elasticsearch-master/data
path.logs: /home/centos/elasticsearch-master/logs
# 开启跨域
http.cors.enabled: true

# 所有人访问
http.cors.allow-origin: "*"

#用安全性
xpack.security.enabled: false

node-2节点(集群中的第三个节点)

#集群名称
cluster.name: xxx-es
#节点名称
node.name: es-2
#是不是有资格主节点
node.master: true
#是否存储数据
node.data: true
#最大集群节点数
node.max_local_storage_nodes: 3
#ip地址
network.host: 0.0.0.0
#端口
http.port: 9202
#内部节点之间沟通端口
transport.tcp.port: 9302
#es7.x 之后新增的配置,节点发现
discovery.seed_hosts: ["localhost:9300", "localhost:9301", "localhost:9302"]
#es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
cluster.initial_master_nodes: ["es-0", "es-1", "es-2"]
#数据和存储路径
path.data: /home/centos/elasticsearch-master/data
path.logs: /home/centos/elasticsearch-master/logs
# 开启跨域
http.cors.enabled: true

# 所有人访问
http.cors.allow-origin: "*"

注意:本集群为单机版的集群搭建,三个节点中的cluster.name必须保持一致,node.name保持不同

3 分别启动三个 elasticsearch

4 查看集群是否搭建成功
访问 http://ip:9201/_cat/healthv
在这里插入图片描述
注:es节点启动过程中可能遇到的错误

Could not rename log file 'logs/gc.log' to 'logs/gc.log.09' (Permission denied).
Invalid -Xlog option '-Xlog:gc*,gc+age=trace,safepoint:file=logs/gc.log:utctime,pid,tags:filecount=32,filesize=64m', see error log for details.
Error: Could not create the Java Virtual Machine.

解决:root下执行 chmod 777 -R logs 这里根据你所挂载的目录要放开相应的权限

Exception in thread "main" org.elasticsearch.bootstrap.BootstrapException: java.nio.file.AccessDeniedException: /data/elasticSearch/elasticsearch-8.0.1-node-2/config/elasticsearch.keystore
Likely root cause: java.nio.file.AccessDeniedException: /data/elasticSearch/elasticsearch-8.0.1-node-2/config/elasticsearch.keystore

解决:
cd /data/elasticSearch/elasticsearch-8.0.1-node-2/config
chown -R es:es elasticsearch.keystore

ERROR: [1] bootstrap checks failed
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决:
vi /etc/sysctl.conf  
添加 一行 vm.max_map_count=655360
加载参数 sysctl -p

kibana的安装

Kibana是一个针对ElasticSearch的开源分析及可视化平台,用来搜索、查看交互存储在Elasticsearch索引中的数据。使用Kibana ,可以通过各种图表进行高级数据分析及展示。Kibana让海量数据更容易理解。它操作简单,基于浏览器的用户界面可以快速创建仪表板( dashboard )实时显示Elasticsearch查询动态。

1. Kibana的下载(版本必须与ElasticSearch一致)
历史版本下载:https://www.elastic.co/cn/downloads/past-releases/
将压缩包上传至linux

2. Kibana的安装
1 mkdir kibana 创建一个文件夹
2 解压到文件夹
tar -zxvf kibana-7.3.2-linux-x86_64.tar.gz -C /home/centos/kibana
2 修改kibana 的配置文件
vi config/kibana.yml

server.host: "0.0.0.0"

server.port: 5601

elasticsearch.hosts: ["http://localhost:9200","http://localhost:9201","http://localhost:9202"]
#elasticsearch.hosts: ["http://localhost:9200","http://localhost:9201"]
#elasticsearch.username: "es"
#elasticsearch.password: "es"
#kibana.index: ".kibana"
i18n.locale: "zh-CN"

3. Kibana的启动
1 给kibana安装目录赋予用户权限,不能使用root用户启动
chown -R es:es /home/centos/kibana/kibana-7.3.2-linux-x86_64
2 运行
bin目录下运行 ./kibana
在这里插入图片描述
后台运行 nohup ./kibana &
查看进程: ps -ef | grep node
3 访问
http://ip:5601/app/kibana
在这里插入图片描述
使用kibana访问节点信息
GET _cat/healthv
在这里插入图片描述

ik分词器的安装

1. ik分词器(中文分词器)
分词:即把一段中文或者别的划分成一个个的关键字,我们在搜索时候会把自己的信息进行分词,会把数据库中或者索引库中的数据进行分词,然后进行一一个匹配操作,默认的中文分词是将每个字看成一个词(不使用用IK分词器的情况下),比如“周同学还不发专辑”会被分为”周”,”同”,”学”,”还”,”不”,”发”,”专”,”辑” ,这显然是不符合要求的,所以我们需要安装中文分词器ik来解决这个问题

IK提供了两个分词算法: ik_smart和ik_max_word ,其中ik_smart为最少切分, ik_max_word为最细粒度划分

1. ik分词器的下载与安装

1 下载的版本要与ElasticSearch版本对应
2 下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
3 安装:
将压缩包上传至linux服务器
使用unzip解压,没有unzip命令使用 yum install -y unzip 安装
在elasticsearch的plugins目录下新建ik目录,mkdir ik
使用命令解压 unzip elasticsearch-analysis-ik-7.3.2.zip -d elasticsearch-master/plugins/ik/
4 使用es账户重启es ./elasticsearch -d
5 查看效果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值