Elasticsearch 1 (linux下搭建es环境、windows下搭建es环境、head安装、Kibana安装)

写在前面

Elasticsearch 1 : 本文
Elasticsearch 2 : https://blog.csdn.net/a__int__/article/details/111604720
Elasticsearch 3 : https://blog.csdn.net/a__int__/article/details/111644611
Elasticsearch 4 : https://blog.csdn.net/a__int__/article/details/111875343

1、Elasticsearch初识

ES:(elasticsearch搜索引擎)是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。

本文仅适用于es 7.X版本

本文的下一章
Elasticsearch 2 : https://blog.csdn.net/a__int__/article/details/111604720

2、es包内文件

先看一下es包解压后的目录
在这里插入图片描述

config目录
在这里插入图片描述
jvm.options里面的配置内容

在这里插入图片描述
jvm相关参数解释:
-Xms 堆的初始大小
-Xmx 堆的最大值

这里面默认设置1G 的堆内存,我们需要根据我们自己电脑可用内存大小调节

elasticsearch.yml里可配置参数:

属性名说明
cluster.name配置elasticsearch的集群名称,默认是elasticsearch。建议修改成一个有意义的名称。
node.name节点名,es会默认随机指定一个名字,建议指定一个有意义的名称,方便管理
path.conf设置配置文件的存储路径,tar或zip包安装默认在es根目录下的config文件夹,rpm安装默认在/etc/ elasticsearch
path.data设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开
path.logs设置日志文件的存储路径,默认是es根目录下的logs文件夹
path.plugins设置插件的存放路径,默认是es根目录下的plugins文件夹
bootstrap.memory_lock设置为true可以锁住ES使用的内存,避免内存进行swap
network.host设置bind_host和publish_host,设置为0.0.0.0允许外网访问
http.port设置对外服务的http端口,默认为9200。
transport.tcp.port集群结点之间通信端口
discovery.zen.ping.timeout设置ES自动发现节点连接超时的时间,默认为3秒,如果网络延迟高可设置大些
discovery.zen.minimum_master_nodes主结点数量的最少值 ,此值的公式为:(master_eligible_nodes / 2) + 1 ,比如:有3个符合要求的主结点,那么这里要设置为2

3、Linux下安装

3.1、下载与配置

es官网下载:https://www.elastic.co/cn/downloads/elasticsearch

可能下载很慢,可以使用迅雷下载,linux上没迅雷自己想办法

这里我们在linux上安装

运行之前,我们需要切换成一个非root账户
因为出于安全考虑,elasticsearch默认不允许以root账号运行。

创建用户:useradd newname
设置密码:passwd newname
切换用户:su - newname

以下指令都是在newname用户下进行

准备工作:

# 解压
tar -zxvf elasticsearch.tar.gz
# 移动到我们要安装的位置
mv elasticsearch-7.10.1/ /home/newname/elasticsearch-7.10.1
# 进入elasticsearch目录下的config目录
cd config
# 修改jvm.options
vim jvm.options
# 修改elasticsearch.yml
vim elasticsearch.yml

修改jvm.options:修改默认配置:-Xms1g -Xmx1g为

-Xms512m
-Xmx512m

修改elasticsearch.yml(修改数据、日志目录、远程访问):

这一步如果不知道自己当前的具体目录,可以输入pwd显示目录

path.data: /home/newname/elasticsearch-7.10.1/data # 数据目录位置
path.logs: /home/newname/elasticsearch-7.10.1/logs # 日志目录位置
network.host: 0.0.0.0

如上指定的两个目录,在对应位置手动创建一下

mkdir data
mkdir logs

目前我们是做的单机安装,如果要做集群,只需要在这个配置文件中添加其它network.host节点信息即可。

3.2、运行

运行之前,注意下面几点:
1、需要在非root账户下运行
2、es-7.10需要安装jdk11
3、jdk需要配置环境变量
4、这个非root账户要有读写文件的权限、或者给es所在目录提权

查询es与jdk对应版本https://www.elastic.co/cn/support/matrix#matrix_jvm

非root账户提权 参考:https://blog.csdn.net/csdnzouqi/article/details/95499348
linux安装jdk1.8 参考:https://blog.csdn.net/weixin_39984161/article/details/91447727

进入elasticsearch根目录,再进入其bin目录

./elasticsearch

3.3、可能出现的报错

第一种错误:not find jdk

在这一步如果报找不到jdk的错误,可能是下列问题:
1、没使用非root账户
2、jdk没有配置环境变量

查找java安装路径:https://www.cnblogs.com/fuyuanming/p/11555427.html
配置Java环境变量:https://blog.csdn.net/panchao888888/article/details/80989349

第二种错误:unable to install syscall filter
在这里插入图片描述

如果用centos6(其linux内核版本为2.6 ),则会出现如下报错,原因是Elasticsearch的插件要求至少3.5以上版本。

不过没关系,我们禁用这个插件即可。修改elasticsearch.yml文件,在最下面添加如下配置:

bootstrap.system_call_filter: false

第三种错误:文件权限不足
在这里插入图片描述
登陆root账户,修改配置文件如下

vim /etc/security/limits.conf

添加内容

* soft nofile 65536

* hard nofile 131072

* soft nproc 4096

* hard nproc 4096

第四种错误:线程数不够
[2]: max number of threads [1024] for user [leyou] is too low, increase to at least [4096]

这是线程数不够,继续修改配置:

vim /etc/security/limits.d/90-nproc.conf 

将* soft nproc 1024改为

* soft nproc 4096

第五种错误:进程虚拟内存

max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

报的错误也可能是

controller process has stopped - no new native processes can be started

vm.max_map_count:限制一个进程可以拥有的VMA(虚拟内存区域)的数量,继续修改配置文件:

vim /etc/sysctl.conf 

添加下面内容

vm.max_map_count=655360

完成后执行sysctl -p命令,载入sysctl配置文件;

sysctl -p

配置完成重启终端端口

第六种错误:
Exception in thread “main” SettingsException[Failed to load settings from…

出现这个错误要注意elasticsearch.yml文件是否填写有错:
在yaml文件里,”:“后面必须要加空格

或者考虑是不是该用户没有权限读取elasticsearch.yml文件
切到elasticsearch.yml目录下
执行sudo chmod 777 elasticsearch.yml

第七种错误:Exception in thread “main” java.nio.file.AccessDeniedException:

这个还是文件权限不足
解决方法: chown -R 用户名:用户名 文件(目录)名

尽量将整个elasticsearch所在目录都放权

sudo chown -R leyou:leyou /home/leyou/elasticsearch-7.10.1

第八种错误:bootstrap checks failed
解决方案:

在elasticsearch的config目录下,修改elasticsearch.yml配置文件,将下面的配置加入到该配置文件中:

ip替换host1等,多节点请添加多个ip地址,单节点可写按默认来
#配置以下三者,最少其一
#[discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes]
cluster.initial_master_nodes: [“node-1”] #这里的node-1为node-name配置的值

具体参考:https://my.oschina.net/openplus/blog/1582122

3.4、访问客户端

运行成功后可以看到:

  • 9300:集群节点间通讯接口
  • 9200:客户端访问接口

通过主机ip+9200可以访问客户端,但是要确保你的linux防火墙9200端口开放

centos开放9200端口

firewall-cmd --zone=public --add-port=9200/tcp --permanent
firewall-cmd --reload

访问
在这里插入图片描述

4、windows下安装

es下载网址:https://www.elastic.co/cn/downloads/elasticsearch

直接下载很慢:用迅雷下载

这里我使用的版本:
es 版本 7.10
jdk 版本 1.8

下载完解压
在这里插入图片描述
进入bin目录,双击elasticsearch.bat就可以运行
在这里插入图片描述

运行成功后可以看到:

  • 9300:集群节点间通讯接口
  • 9200:客户端访问接口

访问:http://127.0.0.1:9200/
在这里插入图片描述

4.1、配置

进入config目录,修改elasticsearch.yml文件,添加如下两个路径,记得也要创建对应的文件夹
在这里插入图片描述

进入config目录,修改jvm.options文件,根据我电脑的内存,我将堆内存改成了512m
在这里插入图片描述

进入bin目录,双击elasticsearch.bat启动

如果不出问题的话,es就开始运行了,如果出现问题,比如闪退了,
可以打开一个cmd窗口运行elasticsearch.bat,查看错误是什么
这里插入图片描述

5、安装可视化界面head

安装head之前需要安装node.js

参考:https://www.cnblogs.com/jianguo221/p/11487532.html
注意:node.js依赖于python,所以你可能还需安装python:https://www.cnblogs.com/huys/p/10043436.html
当然node.js官网最新版,安装时会自动帮你安装python环境

下载head插件:https://github.com/mobz/elasticsearch-head
在这里插入图片描述
下载完成,进入解压目录,打开对应的cmd
在这里插入图片描述
输入npm install 安装依赖
在这里插入图片描述

如果npm安装太慢,可以使用cnpm指令安装,参考:https://www.cnblogs.com/liyuspace/p/10338570.html

依赖安装完成,输入npm run start
在这里插入图片描述
访问页面
在这里插入图片描述
由于es的端口是9200,这里使用head连接的话就跨域了,所以我们在es里面配置一下跨域
在es目录,找到config目录下的elasticsearch.yml
添加下面配置

http.cors.enabled: true
http.cors.allow-origin: "*"

保存后,重启es、head
在这里插入图片描述
连接
在这里插入图片描述

6、安装数据分析工具Kibana

Kibana :可以进行数据查看、数据分析、数据可视化
kibana在很多日志系统中,用来做日志分析,我们使用kibana进行请求测试

Kibana下载:https://www.elastic.co/cn/downloads/kibana

下载的时候需要注意:Kibana 和 es版本要一致
下载完成解压很慢

解压完成找到kibana.bat双击运行
在这里插入图片描述
在这里插入图片描述
访问web端
在这里插入图片描述

打开它的控制台

在这里插入图片描述
在这里插入图片描述

6.1、Kibana配置

Kibana汉化:
找到config目录下的kibana.yml,在里面添加下面内容:

i18n.locale: "zh-CN"

改完重启生效,
如果你想自定义汉化内容,你可以修改下列文件
位置:kibana根目录\x-pack\plugins\translations\translations
在这里插入图片描述

7、总结

仅windows下

7.1、elasticsearch

下载:https://www.elastic.co/cn/downloads/elasticsearch
运行:双击bin/elasticsearch.bat
访问:http://localhost:9200/

7.2、head

下载:https://github.com/mobz/elasticsearch-head
运行:npm install (下载依赖)、npm run start(运行)
访问:http://localhost:9100/

7.3、Kibana

下载:https://www.elastic.co/cn/downloads/kibana
运行:双击bin/kibana.bat
访问:http://localhost:5601/

7.4、利用镜像下载

下载太慢的同学,还可以从华为镜像下载
ElasticSearch: https://mirrors.huaweicloud.com/elasticsearch/?C=N&O=D
logstash: https://mirrors.huaweicloud.com/logstash/?C=N&O=D
kibana: https://mirrors.huaweicloud.com/kibana/?C=N&O=D

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值