文章目录
前言
Elasticsearch作为主流的搜索引擎,在分布式系统中被广泛的使用,本篇主要就是介绍它的安装
简介
官网地址:https://www.elastic.co/cn/elasticsearch/
Elasticsearch 是位于 Elastic Stack 核心的分布式搜索和分析引擎。Logstash 和 Beats 有助于收集、聚合和丰富您的数据并将其存储在 Elasticsearch 中。Kibana 使您能够以交互方式探索、可视化和分享对数据的见解,并管理和监控堆栈。Elasticsearch 可以理解成一种数据库,类似MySQL,也可以对数据进行增删改查,它优势是搜索速度快,如果表中有上亿级别的数据,使用ES检索数据要远远快于传统的关系型数据库。
Elasticsearch安装
因为Elasticsearch 不允许使用root用户,所以我们需要新建一个用户,新建的用户主要是用来启动ES服务。
- 新建用户
useradd es
- 配置密码
passwd 12345678
本人的安装都是在 /usr/local目录下 - 上传和解压(版本elasticsearch-7.6.1-linux-x86_64.tar.gz)下载地址:https://registry.npmmirror.com/binary.html```tar -zxvf elasticsearch-7.6.1-linux-x86_64.tar.gz```
- 重命名目录
mv elasticsearch-7.6.1/ elasticsearch
- 进入目录
cd elasticsearch
- 新建目录(数据目录及日志目录)
mkdir datamkdir logs
- 修改配置(进入config目录,编辑elasticsearch.yml文件)
cd configvim elasticsearch.yml``````添加内容path.data: /usr/local/elasticsearch/data # 数据目录位置path.logs: /usr/local/elasticsearch/logs # 日志目录位置修改绑定的ipnetwork.host: 0.0.0.0 # 绑定到0.0.0.0,允许任何ip来访问
- 切换用户
切换用户前先给es用户授予root权限及目录操作权限
vim /etc/sudoers #进入编辑
es ALL=(ALL) ALL #授予root权限
chown -R es /usr/local/elasticsearch #为elasticsearch 目录授权
su es #切换用户
- 运行(在/usr/local/elasticsearch目录下)
./bin/elasticsearch
可能出现以下错误:
错误1:权限不足【max file descriptors…】
切换为root用户,修改配置文件:
vim /etc/security/limits.conf
添加以下内容
* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 4096
错误2:线程数不足【max number of threads … 】
修改配置文件:
vim /etc/security/limits.d/20-nproc.conf
修改以下内容
* soft nproc 1024
改为:
* soft nproc 4096
错误3:进程虚拟内存不足【max virtual memory…】
修改配置文件:
vim /etc/sysctl.conf
添加以下内容
vm.max_map_count=655360
执行命令
sysctl -p
错误4:参数需要设置默认值【the default discovery settings 】
修改配置文件:
vim /usr/local/elasticsearch/config/elasticsearch.yml
设置默认参数
cluster.name: wooola-es
node.name: node-1
cluster.initial_master_nodes: ["node-1"]
- 回到es用户,再次启动ES
出现这两个端口信息则表示成功
9300:集群节点间通讯接口
9200:客户端访问接口
若出现java.nio.file.AccessDeniedException: /usr/local/elasticsearch/config/jvm.options 错误,则表示es账户权限不足,需要为目录授权。
- 测试在浏览器中访问 虚拟机ip地址:9200 可以看到对应的版本号信息
安装Kibana
Kibana是ES的客户端工具(不能使用root账户启动噢!)
- 安装node.js 下载地址:https://registry.npmmirror.com/binary.html```tar -vxf node-v12.18.2-linux-x64.tar.xzmv node-v12.18.2-linux-x64 nodejsln -s /usr/local/nodejs/bin/node /usr/local/binln -s /usr/local/nodejs/bin/npm /usr/local/binnode -v```
- 解压kibana
tar -vxfkibana-7.6.1-linux-x86_64.tar.gzmv kibana-7.6.1-linux-x86_64 kibana
- 修改配置文件并添加内容
vim /usr/local/kibana/config/kibana.yml server.host: "0.0.0.0"elasticsearch.hosts: ["http://机器IP:9200"]
ps:若安装的Kibana的版本低一点,则将elasticsearch.hosts 改为elasticsearch.url: “http://机器IP:9200” - 启动(切换es用户,在kibana目录下启动,若出现权限不足情况,则再次给es用户授权)
./bin/kibana
kibana启动若报错后会自动杀死elasticsearch的进程,但是kibana需要在elasticsearch启动后再启动,所以需要重新启动elasticsearch此时可能出现以下错误:
错误1:虚拟机分配内存太大【Cannot allocate memory…】
1)进入elasticsearch的jvm.options文件中
vim /usr/local/elasticsearch/config/jvm.options
2)修改分配的内存大小
-Xms256m
-Xmx256m
- 重新启动,出现listening则表示安装成功
访问5601端口
安装分词器
分词器能把一个字符串拆分成多个单词,搜索时再按每个单词分别索引,这样能大大提高搜索效率。
安装步骤
- 下载分词器文件,其版本需要与ES版本对应==>elasticsearch-analysis-ik-7.6.1.zip
- 在elasticsearch的plugins目录下新增一个目录ik用来放分词器文件,解压elasticsearch-analysis-ik-7.6.1.zip
unzip elasticsearch-analysis-ik-7.6.1.zip
解压完成后记得删除ik目录下的安装包文件,重新启动elasticsearch与kibana
1)此时elasticsearch可能再次报错无权限,只需要重新授权一下即可
2)若kibana出现 The Reporting plugin encountered issues launching Chromium in a self-test. You may have trouble generating reports.
安装以下软件包,然后重新启动 kibana即可
yum install ipa-gothic-fonts
yum install xorg-x11-fonts-100dpi
yum install xorg-x11-fonts-75dpi
yum install xorg-x11-utils
yum install xorg-x11-fonts-cyrillic
yum install xorg-x11-fonts-Type1
yum install xorg-x11-fonts-misc
yum install fontconfig
yum install freetype
- 使用kibana测试分词器
到此全部安装结束!!!!
版权归原作者 枕微凉 所有, 如有侵权,请联系我们删除。