ElasticSearch6学习(1)

安装准备:

安装Elasticsearch唯一的要求是安装Java8,包括对应的Jdk。其他java9/java10没尝试,考虑兼容问题。我这里只用了java8

安装java8可以参考我之前写的一篇文章:https://www.cnblogs.com/phpper/p/9201562.html

安装Elasticsearch

首先到官网下载最新版本的Elasticsearch压缩包。下载地址:https://www.elastic.co/downloads/elasticsearch

可以使用命令,注意将最新的可用的下载链接填入:(比如我的安装路径是:/usr/local/src目录)

1sudo wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.0.zip 2sudo unzip elasticsearch-6.3.0.zip

运行Elasticsearch

Elasticsearch已经准备就绪,执行以下命令可在前台启动:

./bin/elasticsearch

看错误信息。使用非root账户,因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户。

1第一步:liunx创建新用户 adduser XXX 然后给创建的用户加密码 passwd XXX 输入两次密码。 2 3第二步:切换刚才创建的用户 su XXX 然后执行elasticsearch 会显示Permission denied 权限不足。 4 5第三步:给新建的XXX赋权限,chmod 777 * 这个不行,因为这个用户本身就没有权限,肯定自己不能给自己付权限。所以要用root用户登录付权限。 6 7第四步:root给XXX赋权限,chown -R XXX /你的elasticsearch安装目录。

比如 我上面添加的用户是guest.

 /usr/local/src/elasticsearch-6.3.0/config/jvm.options,没有jvm文件的权限,改一下所属的用户,切换到root账户执行:

chown guest /usr/local/src/elasticsearch-6.3.0/ -R

然后启动es试下正常如下:

如果想在后台以守护进程模式运行,添加-d参数(./bin/elasticsearch -d)。或者:nohup ./bin/elasticsearch &

打开另一个终端进行测试,查看是否启动:

netstat -anp |grep 9200

启动正常,执行下

curl 'http://localhost:9200/?pretty'

说明ELasticsearch集群已经启动并且正常运行。

Elasticsearch外网访问设置

默认情况下安装elasticsearch之后是无法进行外网访问的,可以通过设置来完成这一目的:

1、更改配置文件

sudo vim elk/config/elasticsearch.yml

找到network.host这一行,更改为:

network.host: 0.0.0.0

2、重启服务,发现报错

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

3、因为我的启动出现了:

以root账户更改/etc/sysctl.conf文件,添加如下内容

vm.max_map_count=655360

或者:

sudo sysctl -w vm.max_map_count=262144

所以上面的命令需要更改下这个虚拟内存值。

4、以root账户执行下面命令(可以不执行,正常情况下修改即可生效)

sudo sysctl -p

5、再次启动服务,开放9200端口。在另台机器访问。结果如下

安装Kiabna

Kibana是一个为 ElasticSearch 提供的数据分析的 Web 接口。可使用它对日志进行高效的搜索、可视化、分析等各种操作。

首先到官网下载最新版本的Kiabna压缩包。下载地址:https://www.elastic.co/downloads/kibana

可以使用如下命令,注意将最新的可用的下载链接填入:

sudo wget https://artifacts.elastic.co/downloads/kibana/kibana-6.3.0-linux-x86_64.tar.gzsudo sha1sum kibana-6.3.0-linux-x86_64.tar.gz sudo tar -xzf kibana-6.3.0-linux-x86_64.tar.gzcd kibana-6.3.0-linux-x86_64/

注意:

  • https://www.elastic.co/downloads/kibana 可以在该地址获取下载链接,一定要选择对于系统和版本。
  • 按照文档的要求,一般情况下kibana的版本必须和Elasticsearch安装的版本一致。

安装X-Pack

X-Pack是一个Elastic Stack的扩展,将安全,警报,监视,报告和图形功能包含在一个易于安装的软件包中。在Elasticsearch 5.0.0之前,您必须安装单独的Shield,Watcher和Marvel插件才能获得在X-Pack中所有的功能。

下载前提

Elasticsearch 6.3.0

Kibana 6.3.0

Elasticsearch下载X-Pack

在Es的根目录(比如我的是/usr/local/src/elasticsearch-6.3.0,每个节点),运行 bin/elasticsearch-plugin进行安装。

sudo bin/elasticsearch-plugin install x-pack

从错误信息来看。这个版本的es已经包含了x-pack.

Kibana下载X-Pack

在Kibana根目录运行 bin/kibana-plugin 进行安装。

sudo bin/kibana-plugin install x-pack

从提示信息来看。这个版本的也已经包含了x-pack.

运行Kibana。(注意 执行下目录权限:sudo chown guest /usr/local/src/kibana-6.3.0-linux-x86_64/  -R)

设置Kibana公网访问,修改2处:

1:修改config/kibaba.yml下的server.host为0.0.0.0或者去掉前面的注释

sudo vim config/kibana.yml

2:注释掉 elasticsearch.url

设置好后重启:

bin/kibana -d

 或者

nohup bin/kibana -d

 这里很奇怪。每次我要关闭es后才能启动成功。

待续

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

Java日期时间API系列31

  时间戳是指格林威治时间1970年01月01日00时00分00秒起至现在的总毫秒数,是所有时间的基础,其他时间可以通过时间戳转换得到。Java中本来已经有相关获取时间戳的方法,Java8后增加新的类Instant等专用于处理时间戳问题。 1获取时间戳的方法和性能对比1.1获取时间戳方法Java8以前

ElasticSearch6学习(1) - HelloWorld