ElasticSearch(2)-- es的准备工作

上面一章节中我们学习了ES的基本的概念,可以将es的概念结合数据库进行理解。本章我们开始装es

ES的准备环境介绍

(1)VMvare14
(2)centos7
(3)jdk1.8
(4)ElasticSearch6.2.4
这里面我们就不啰嗦的去描述具体的安装,Vmvare和centos7的安装我转载的一篇博客挺详细的安装过程,可以参考。JDK的安装都是下载jar包,然后tar -zxvf XXXXX进行解压即可。注意解压JDK后,还应该对环境变量进行配置:

export JAVA_HOME="/opt/jdk1.8.0_144"

export PATH="$JAVA_HOME/bin:$PATH"

export CLASSPATH=".:$JAVA_HOME/lib"

这里我们重点讲一下ES的安装。
再准备好上面的的环境后我们就可以对ES进行安装
(1)ES的安装路径https://www.elastic.co/cn/downloads/elasticsearch
(2)解压ES(这里我是将ES放到了/opt的目录下面,tar -zxvf XXXX)

  • ES的启动
    (1)进入到es的bin目录
cd /opt/elasticsearch-6.2.4/bin

(2)启动ES

./elasticsearch

此时我们是以root用户进行登录,发现报错。
在这里插入图片描述
根据报错的描述我们发现我们不能以root用户进行启动。所以我们应该先切换ES目录的所属组和用户,然后切换当前用户再进行登录。
(3)新增组,用户并切换所属组

groupadd eszu

useradd esyonghu -g eszu -p 123456

cd /opt

chown -R esyonghu:eszu elasticsearch-6.2.4

su - esyonghu

切换成功后再次启动

./bin/elasticsearch

我这里直接就是成功的,不过据说还有可能显示当前进程被杀死了,这有可能是JVM的内存不够,我们需要给其调整初始堆和最大堆的大小

vi bin/elasticsearch

ES_JAVA_OPTS="-Xms512m -Xmx512m"

如果有不懂JVM参数的,可以去看下我的JVM调优的那篇博客https://mp.csdn.net/mdeditor/89297760#
再次启动,如果发现
在这里插入图片描述这时候基本就是成功的。我们再次测试下

curl 127.0.0.1:9200

运用curl命令访问,这里ES的默认端口号是9200,curl默认是用GET进行访问的
结果是
在这里插入图片描述

  • 通过浏览器访问ES
    (1)修改配置文件,我们咋子config下修改其elasticsearch.yml文件
 cd /opt/elasticsearch-6.2.4/config/
 vim ./elasticsearch.yml

修改network.host配置(也可以修改其端口号http.port), 将host改成当前linux的地址
在这里插入图片描述
(2)重新启动elasticsearch
我们发现此时还是在报错
在这里插入图片描述
如何解决呢?
(1)切换到root用户
(2)

esyonghu soft nofile 65536

esyonghu hard nofile 65536

esyonghu soft nproc 4096

esyonghu hard nproc 4096

(3)

扫描二维码关注公众号,回复: 5936520 查看本文章
vim /etc/security/limits.d/20-nproc.conf 
将* soft nproc 4096 修改为 esyonghu soft nproc 4096

(4)

vim /etc/sysctl.conf

在改配置文件中新增
vm.max_map_count=655360

执行

sysctl -p

使其生效,因为我们需要外部访问,所以应该关闭防火墙

systemctl stop firewalld.service

此时我们还需要重新启动下才能使修改的生效。
此时再用浏览器访问
在这里插入图片描述

安装Head插件

Head插件是ElasticSearch的集群管理工具,我们可以用它来监管ES的健康装况,可以知道哪个节点出了问题,可以用于数据的浏览和查询

  • elasticsearch-head是一款开源软件,被托管在github上面,所以如果我们要是用它,必须先安装git,通过git获取elasticsearch-head
  • 运行elasticsearch-head会用到grunt,而grunt需要npm包管理器,所以nodejs是必须的
    (1)安装git
    请参考博客https://blog.csdn.net/javaee_sunny/article/details/80450153 我是按照这个一步步安装成功的。
    (2)安装nodejs
    请参考博客https://www.cnblogs.com/lpbottle/p/7733397.html 可以成功,但是真慢。
    (3)安装cnpm
npm install cnpm -g 

(4)用git将elasticsearch-head拷贝到本地

cd /usr/local/

git clone git://github.com/mobz/elasticsearch-head.git

(5)安装elastisearch-head依赖包

[root@localhost local]# npm install -g grunt-cli

[root@localhost _site]# cd /usr/local/elasticsearch-head/

[root@localhost elasticsearch-head]# cnpm install

(6)修改Gruntfile.js

[root@localhost _site]# cd /usr/local/elasticsearch-head/

[root@localhost elasticsearch-head]# vi Gruntfile.js

在connect–>server–>options下面添加:hostname:’*’,允许所有IP可以访问
(7)修改elasticsearch-head的默认连接地址

[root@localhost elasticsearch-head]# cd /usr/local/elasticsearch-head/_site/

[root@localhost _site]# vi app.js

将this.base_uri = this.config.base_uri || this.prefs.get(“app-base_uri”) || “http://localhost:9200”;中的localhost修改成你es的服务器地址,这里我将其改为192.168.0.108
(8)配置elasticsearch允许跨域访问
打开elasticsearch.yml(在/opt/elasstic/config下面),在文件末尾追加两行代码

http.cors.enabled: true

http.cors.allow-origin: "*"

(9)打开9100端口,这里我直接把防火墙关了。(所以这一步我没有做)

-- 开启9100端口
[root@localhost elasticsearch-head]# firewall-cmd --zone=public --add-port=9100/tcp --permanent

重启防火墙,使其起作用

[root@localhost elasticsearch-head]# firewall-cmd --reload

(10)用非root用户启动elasticSearch
(11)启动elasticsearch-head

[root@localhost _site]# cd /usr/local/elasticsearch-head/

[root@localhost elasticsearch-head]# node_modules/grunt/bin/grunt server

(12)浏览器访问elasearch-head
如果没有关闭防火墙,需要关闭

systemctl stop firewalld.service

在这里插入图片描述

安装Kibana

Kibana是一个针对ElasticSearch的开源分析可视化平台,使用Kibana可以查询,查看并与存储在ES索引上的数据进行交互操作,使用Kibana能执行高级的数据分析,并能以图表,表格和地图的形式查看数据。我是觉得Kibana和Head的作用差不多,安装Kibana就行。但是我还是两个都装了。

注意

Kibana的版本一定要和ElasticSearch版本一致,所以这里我们都是使用的6.2.4的版本。

(1)下载地址:
https://www.elastic.co/downloads/kibana
(2)把下载好的压缩包放到/soft目录下
(3)解压缩,把压缩后的目录移动到/usr/local/kibana目录下

cd /usr/local
mkdir kibana
mv /soft/kibana-6.2.4-linux-x86_64/* /usr/local/kibana/

(4)编辑kibana配置文件

[root@localhost /]# vi /usr/local/kibana/config/kibana.yml

将里面的server.hostelasticsearch.url修改成现在所在服务器的IP地址(192.168.0.108)
(5)开启5601端口

Kibana的默认端口就是5601

开启防火墙

systemctl start firewalld.service

开启5601端口

firewall-cmd --permanent --zone=public --add-port=5601/tcp

重启防火墙(我直接将防火墙关了。所以没有上面的几步操作)

firewall-cmd –-reload

(6)启动Kibana

[root@localhost /]# /usr/local/kibana/bin/kibana

(7)浏览器开始访问

http://192.168.0.108:5601

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u014437791/article/details/89321274