2019-10-08 01:02:25 qq_29914837 阅读数 1427
  • java进阶教程elastic stack从入门到实践

    1、课程简介          ElasticStack 是一系列开源产品的合集,包括 Elasticsearch、Kibana、Logstash 以及 Beats 等,能够安全可靠地获取任何来源、任何格式的数据,并且能够实时地对数据进行搜索、分析和可视化。其中,Logstash和Beats负责数据的收集,Kibana负责结果数据的可视化展现,Elasticsearch作为核心部分用于数据的分布式存储以及索引。   我们可以使用ElasticStack进行收集并处理任何数据,最为经典的是用于实时日志数据的收集、存储、展现。在此之前,如果实现实时日志的分析,需要经过繁琐的架构设计并且使用多个系统实现,现在只需要使用ElasticStack即可实现功能强大的实时日志分析系统,ElasticStack不仅仅用来做日志分析,它可以处理任何的数据并且进行存储、展现。          在本套课程中,我们将全面的讲解ElasticStack技术栈,从环境的部署到技术的应用,再到项目实战,让我们不仅是学习框架技术的使用,而且可以学习到使用ElasticStack如何解决实际的问题,我们通过收集系统日志数据、服务器指标数据、nginx的运行数据等,多维度的展示了ElasticStack的应用范围,最终将分析的结果数据非常友好的展现出来,没错!不需要前端的参与也可以做出“高大上”的结果显示页。   2、适应人群   有一定的Java基础,并且要有一定的web开发基础。   3、课程亮点          系统的学习ElasticStack技术栈,掌握最先进的搜索、数据收集等技术。   l  Elasticsearch   n  快速入门   n  核心详解   n  中文分词   n  Elasticsearch集群   n  Java客户端的应用   l  Beats & Kibana & Logstash   n  Filebeat(文件采集器)   n  Metricbeat(指标采集器)   n  采集Nginx的日志以及指标数据   n  Kibana自定义仪表盘   n  Logstash自定义数据处理   l  综合练习   n  收集APP产生的日志进行实时展现   n  Filebeat采集日志   n  Logstash处理数据   n  Kibana 自定义仪表盘展现   4、主讲内容   章节一:Elasticsearch入门   1.     快速入门   2.     核心讲解   3.     中文分词   4.     全文搜索   5.     Elasticsearch集群   章节二:Beats   1.     Beats 简介   2.     Filebeat采集Nginx日志   3.     Metricbeat采集Nginx指标数据   章节三:Kibana   1.     Kibana简介   2.     Metricbeat 仪表盘   3.     Nginx 指标仪表盘   4.     Nginx 日志仪表盘   5.     自定义图表   章节四:Logstash   1.     Logstash简介   2.     配置详解   3.     读取自定义日志   章节五:综合练习   1.     流程说明   2.     Filebeat采集日志   3.     Logstash处理数据   4.     Kibana 自定义仪表盘展现

    1928 人正在学习 去看看 传智

前提:安装jdk环境

一、下载地址

下载elasticsearch对应版本的安装包

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.2.tar.gz

https://download.csdn.net/download/qq_29914837/11834996

二、安装elasticsearch

进入home目录下

cd /home

创建文件夹elastic

mkdir elastic

上传linux版本的es6.2.2的安装包

解压

tar -zxvf elasticsearch-6.2.3.tar.gz

删除压缩包

rm -f elasticsearch-6.2.3.tar.gz

启动es服务器

cd elasticsearch-6.2.3/
#按ctrl+c后es服务自动关闭
./bin/elasticsearch
#后台启动
./bin/elasticsearch -d

启动报错:不能使用root用户启动服务

2019-10-07T20:21:35,823][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
        at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:125) ~[elasticsearch-6.2.3.jar:6.2.3]
        at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) ~[elasticsearch-6.2.3.jar:6.2.3]
        at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.2.3.jar:6.2.3]
        at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.2.3.jar:6.2.3]
        at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.2.3.jar:6.2.3]
        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-6.2.3.jar:6.2.3]
        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:85) ~[elasticsearch-6.2.3.jar:6.2.3]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
        at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:105) ~[elasticsearch-6.2.3.jar:6.2.3]
        at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:172) ~[elasticsearch-6.2.3.jar:6.2.3]
        at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:323) ~[elasticsearch-6.2.3.jar:6.2.3]
        at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) ~[elasticsearch-6.2.3.jar:6.2.3]
        ... 6 more

添加用户
useradd  esuser
passwd  esuser
我这里设置密码为123456

切换到esuser用户下启动

su esuser
./bin/elasticsearch -d
 tail -f logs/elasticsearch.log

启动报错:没有jvm文件的权限,改一下所属的用户


Exception in thread "main" java.nio.file.AccessDeniedException: /home/elastic/el                asticsearch-6.2.3/config/jvm.options
        at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84                )
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
        at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvid                er.java:214)
        at java.nio.file.Files.newByteChannel(Files.java:361)
        at java.nio.file.Files.newByteChannel(Files.java:407)
        at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvide                r.java:384)
        at java.nio.file.Files.newInputStream(Files.java:152)
        at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsPar                ser.java:58)

切换到root用户下,给esuser用户赋权限

su root
chown esuser /home/elastic/elasticsearch-6.2.3/ -R

启动打印出现warn提示



[2019-10-07T20:33:08,148][WARN ][o.e.b.BootstrapChecks    ] [tsVOtDK] max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

[2019-10-07T20:33:08,148][WARN ][o.e.b.BootstrapChecks    ] [tsVOtDK] max number of threads [3795] for user [esuser] is too low, increase to at least [4096]
[2019-10-07T20:33:08,148][WARN ][o.e.b.BootstrapChecks    ] [tsVOtDK] max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

原因:进程不够用了


max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
切换到root用户
vi /etc/security/limits.conf
#在文件末尾添加下面的参数值
* soft nofile 65536
* hard nofile 131072

#最大线程个数太低


max number of threads [3795] for user [esuser] is too low, increase to at least [4096]
切换到root用户
vi /etc/security/limits.conf
#在文件末尾添加下面的参数值
* soft nproc 5000
* hard nproc 5000
root soft nproc 5000
root hard nproc 5000

#esuser用户拥有的内存权限太小


max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
su root
vi /etc/sysctl.conf 
#末尾添加
vm.max_map_count=655360
#保存退出
#执行命令查看sysctl.conf文件是否生效
sysctl -p
重启es

安装完毕,验证是否安装成功

ps -ef|grep elasticsearch
curl localhost:9200

三、修改elasticsearch的config目录下的elasticsearch.yml文件

#0.0.0.0 表示不限制访问,或者指定本台服务器ip
network.host: 0.0.0.0

在这里插入图片描述
在这里插入图片描述
其它配置不作过多介绍了。

四、配置elasticsearch服务开机自启动

su root
#创建elasticsearch文件
 vi /etc/init.d/elasticsearch

内容如下:其中jdk路径和elasticsearch安装目录路径安装安装自己的更改即可!esuser为创建的用户

#!/bin/sh
#chkconfig: 2345 80 05
#description: elasticsearch
 
export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export JAVA_BIN=/usr/local/java/jdk1.8.0_191/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH
 
case "$1" in
start)
su esuser<<!
cd /home/elastic/elasticsearch-6.2.2
./bin/elasticsearch -d
!
echo "elasticsearch startup"
;;
stop)
es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`
kill -9 $es_pid
echo "elasticsearch stopped"
;;
restart)
es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`
kill -9 $es_pid
echo "elasticsearch stopped"
su esuser<<!
cd /home/elastic/elasticsearch-6.2.2
./bin/elasticsearch -d
!
echo "elasticsearch startup"
;;
*)
echo "start|stop|restart"
;;
esac
 
exit $?

保存退出,赋予该脚本执行权限

chmod +x /etc/init.d/elasticsearch

将elasticsearch添加到开机启动任务

chkconfig --add /etc/init.d/elasticsearch

五、elasticsearch集群安装

elasticsearch集群安装步骤与单机安装基本一致。

首先建议准备最少三台es服务器,避免脑裂。

如何防止elasticsearch的脑裂问题

节点名称 IP地址
node1 192.168.68.133
node2 192.168.68.134
node3 192.168.68.135

1、三台es服务器安装单机安装,如果单独启动没有问题的话,再修改为ES集群配置

2、修改elasticsearch.yml 文件

vi  elasticsearch.yml

#该3个es节点的集群名称必须相同
cluster.name: my-application  

#每个节点名称不能相同,另外两台分别为node2 ,node3
node.name:node1  

#将所有节点里面的地址修改为所有节点的IP,","除了逗号不要有空格
discovery.zen.ping.unicast.hosts: ["192.168.68.133", "192.168.68.134","192.168.68.135"]  

#默认是1,3台节点建议修改为2,防止ES脑裂
discovery.zen.minimum_master_nodes: 2    

3、查看集群效果

http://192.168.68.133:9200/_cat/nodes?pretty

效果:会显示三台es服务器ip地址


如果你觉得本篇文章对你有所帮助的话,麻烦请点击头像右边的关注按钮,谢谢!

技术在交流中进步,知识在分享中传播

2014-04-03 14:25:34 yyh30 阅读数 141
  • java进阶教程elastic stack从入门到实践

    1、课程简介          ElasticStack 是一系列开源产品的合集,包括 Elasticsearch、Kibana、Logstash 以及 Beats 等,能够安全可靠地获取任何来源、任何格式的数据,并且能够实时地对数据进行搜索、分析和可视化。其中,Logstash和Beats负责数据的收集,Kibana负责结果数据的可视化展现,Elasticsearch作为核心部分用于数据的分布式存储以及索引。   我们可以使用ElasticStack进行收集并处理任何数据,最为经典的是用于实时日志数据的收集、存储、展现。在此之前,如果实现实时日志的分析,需要经过繁琐的架构设计并且使用多个系统实现,现在只需要使用ElasticStack即可实现功能强大的实时日志分析系统,ElasticStack不仅仅用来做日志分析,它可以处理任何的数据并且进行存储、展现。          在本套课程中,我们将全面的讲解ElasticStack技术栈,从环境的部署到技术的应用,再到项目实战,让我们不仅是学习框架技术的使用,而且可以学习到使用ElasticStack如何解决实际的问题,我们通过收集系统日志数据、服务器指标数据、nginx的运行数据等,多维度的展示了ElasticStack的应用范围,最终将分析的结果数据非常友好的展现出来,没错!不需要前端的参与也可以做出“高大上”的结果显示页。   2、适应人群   有一定的Java基础,并且要有一定的web开发基础。   3、课程亮点          系统的学习ElasticStack技术栈,掌握最先进的搜索、数据收集等技术。   l  Elasticsearch   n  快速入门   n  核心详解   n  中文分词   n  Elasticsearch集群   n  Java客户端的应用   l  Beats & Kibana & Logstash   n  Filebeat(文件采集器)   n  Metricbeat(指标采集器)   n  采集Nginx的日志以及指标数据   n  Kibana自定义仪表盘   n  Logstash自定义数据处理   l  综合练习   n  收集APP产生的日志进行实时展现   n  Filebeat采集日志   n  Logstash处理数据   n  Kibana 自定义仪表盘展现   4、主讲内容   章节一:Elasticsearch入门   1.     快速入门   2.     核心讲解   3.     中文分词   4.     全文搜索   5.     Elasticsearch集群   章节二:Beats   1.     Beats 简介   2.     Filebeat采集Nginx日志   3.     Metricbeat采集Nginx指标数据   章节三:Kibana   1.     Kibana简介   2.     Metricbeat 仪表盘   3.     Nginx 指标仪表盘   4.     Nginx 日志仪表盘   5.     自定义图表   章节四:Logstash   1.     Logstash简介   2.     配置详解   3.     读取自定义日志   章节五:综合练习   1.     流程说明   2.     Filebeat采集日志   3.     Logstash处理数据   4.     Kibana 自定义仪表盘展现

    1928 人正在学习 去看看 传智

安装:

1. Download from http://www.elasticsearch.com/

2. 解压到本机,运行bin\elasticsearch.bat

  linux comman: 终端给bin下的文件赋予执行权限后在ES的目录下直接输入.

----------------

最大的特点: 
1. 数据库的 database, 就是  index 
2. 数据库的 table,  就是 tag 
3. 不要使用browser, 使用curl来进行客户端操作.  否则会出现 java heap ooxx... 

-----------------


使用REST方式来新增,查询,删除,修改记录

新增记录:

无指定id 

POST : http://10.0.43.153:9200/wordpress/article

body: {  "id":3,"title": "First title",  "content": "This my first article about elasticsearch!",  "readNum": 0,  "tags": ["first", "elasticsearch"]}

会看到返回结果是201,结果里面有这条记录的id.


指定id

PUT: http://10.0.43.153:9200/wordpress/article/1

body: {  "title": "First title1",  "content": "This my first article about elasticsearch!",  "readNum": 0,  "tags": ["first", "elasticsearch"]}


修改:

PUT: http://10.0.43.153:9200/wordpress/article/1

body: {  "title": "updated First title1",  "content": "This my first article about elasticsearch!",  "readNum": 0,  "tags": ["first", "elasticsearch"]}


查询: 

根据id查询:

http://10.0.43.153:9200/wordpress/article/BjlGjI8WSF2APy_K61q0Zw

根据其它内容来查询:

http://10.0.43.153:9200/wordpress/article/_search?pretty=true&q=content:johnson's

查找所有的记录:

查找index为wordpress,type为article的所有记录:

http://10.0.43.153:9200/wordpress/article/_search?pretty=true


“pretty=true” 表示返回结果以json的格式返回


删除:

DELETE: http://10.0.43.153:9200/wordpress/article/1


2012-03-27 14:25:25 xiongmimi 阅读数 142
  • java进阶教程elastic stack从入门到实践

    1、课程简介          ElasticStack 是一系列开源产品的合集,包括 Elasticsearch、Kibana、Logstash 以及 Beats 等,能够安全可靠地获取任何来源、任何格式的数据,并且能够实时地对数据进行搜索、分析和可视化。其中,Logstash和Beats负责数据的收集,Kibana负责结果数据的可视化展现,Elasticsearch作为核心部分用于数据的分布式存储以及索引。   我们可以使用ElasticStack进行收集并处理任何数据,最为经典的是用于实时日志数据的收集、存储、展现。在此之前,如果实现实时日志的分析,需要经过繁琐的架构设计并且使用多个系统实现,现在只需要使用ElasticStack即可实现功能强大的实时日志分析系统,ElasticStack不仅仅用来做日志分析,它可以处理任何的数据并且进行存储、展现。          在本套课程中,我们将全面的讲解ElasticStack技术栈,从环境的部署到技术的应用,再到项目实战,让我们不仅是学习框架技术的使用,而且可以学习到使用ElasticStack如何解决实际的问题,我们通过收集系统日志数据、服务器指标数据、nginx的运行数据等,多维度的展示了ElasticStack的应用范围,最终将分析的结果数据非常友好的展现出来,没错!不需要前端的参与也可以做出“高大上”的结果显示页。   2、适应人群   有一定的Java基础,并且要有一定的web开发基础。   3、课程亮点          系统的学习ElasticStack技术栈,掌握最先进的搜索、数据收集等技术。   l  Elasticsearch   n  快速入门   n  核心详解   n  中文分词   n  Elasticsearch集群   n  Java客户端的应用   l  Beats & Kibana & Logstash   n  Filebeat(文件采集器)   n  Metricbeat(指标采集器)   n  采集Nginx的日志以及指标数据   n  Kibana自定义仪表盘   n  Logstash自定义数据处理   l  综合练习   n  收集APP产生的日志进行实时展现   n  Filebeat采集日志   n  Logstash处理数据   n  Kibana 自定义仪表盘展现   4、主讲内容   章节一:Elasticsearch入门   1.     快速入门   2.     核心讲解   3.     中文分词   4.     全文搜索   5.     Elasticsearch集群   章节二:Beats   1.     Beats 简介   2.     Filebeat采集Nginx日志   3.     Metricbeat采集Nginx指标数据   章节三:Kibana   1.     Kibana简介   2.     Metricbeat 仪表盘   3.     Nginx 指标仪表盘   4.     Nginx 日志仪表盘   5.     自定义图表   章节四:Logstash   1.     Logstash简介   2.     配置详解   3.     读取自定义日志   章节五:综合练习   1.     流程说明   2.     Filebeat采集日志   3.     Logstash处理数据   4.     Kibana 自定义仪表盘展现

    1928 人正在学习 去看看 传智
[b]linux登陆欢迎信息修改[/b]

登陆信息显示数据 : /etc/issue and /etc/motd
还记得在我们登陆终端机的时候,会有几行提示的字符串.
那这些设置在哪里呢?? 嘎嘎, 是在/etc/issue里面.
这些都是我们可以自己设置的哟.

我们可以使用Vi来打开.
一般的设置都是只有:Kernel \r on an \m

咿呀?这些\r \m是代表啥捏?

以下呢就是解释咯!

\d 本地端时间的日期
\l 显示第几个终端机的接口;
\m 显示硬件的等级(i386/i486/i586/i686....)
\n 显示主机的网络名称
\o 显示 domain name
\r 操作系统的版本 (类似 uname-r)
\t 显示本地端时间的时间
\s 操作系统的名称
\v 操作系统的版本

嘿嘿.这个就是相关的意思咯
比如,我进行想设置一下本地端的时间
我们可以先vi打开/etc/issue
然后按"I"编辑. 然后写入 date: \d
然后 wq保存.
之后呢大家就可以exit退出.重新登陆一下.看看我们设置的有没有成功

那现在我们又有一个需求.

比如说,我们的服务器要在2010年8月31日10点开始维护.需要通知给其他的登陆者.
这个时候我们需要怎么办呢? 嘿嘿.这里就用到了 /etc/motd 了.
只要把你想说的通知写在这里,那么当别的用户登陆的时候都会提示他.

[b]/etc/motd[/b]
/etc/motd即messageoftoday(布告栏信息),每次用户登录时,/etc/motd文件的内容会显示在用户的终端。系统管理员可以在文件中编辑系统活动消息,例如:管理员通知用户系统何时进行软件或硬件的升级、何时进行系统维护等。如果shell支持中文,还可以使用中文,这样看起来更易于了解。/etc/motd缺点是,现在许多用户登录系统时选择自动进入图形界面,所以这些信息往往看不到。

[b]/etc/issue[/b]
/etc/issue文件的使用方法与/etc/motd文件相差不大,它们的主要区别在于:当一个网络用户或通过串口登录系统上时,/etc/issue的文件内容显示在login提示符之前,而/etc/motd内容显示在用户成功登录系统之后。
2018-09-06 20:34:09 eases_stone 阅读数 442
  • java进阶教程elastic stack从入门到实践

    1、课程简介          ElasticStack 是一系列开源产品的合集,包括 Elasticsearch、Kibana、Logstash 以及 Beats 等,能够安全可靠地获取任何来源、任何格式的数据,并且能够实时地对数据进行搜索、分析和可视化。其中,Logstash和Beats负责数据的收集,Kibana负责结果数据的可视化展现,Elasticsearch作为核心部分用于数据的分布式存储以及索引。   我们可以使用ElasticStack进行收集并处理任何数据,最为经典的是用于实时日志数据的收集、存储、展现。在此之前,如果实现实时日志的分析,需要经过繁琐的架构设计并且使用多个系统实现,现在只需要使用ElasticStack即可实现功能强大的实时日志分析系统,ElasticStack不仅仅用来做日志分析,它可以处理任何的数据并且进行存储、展现。          在本套课程中,我们将全面的讲解ElasticStack技术栈,从环境的部署到技术的应用,再到项目实战,让我们不仅是学习框架技术的使用,而且可以学习到使用ElasticStack如何解决实际的问题,我们通过收集系统日志数据、服务器指标数据、nginx的运行数据等,多维度的展示了ElasticStack的应用范围,最终将分析的结果数据非常友好的展现出来,没错!不需要前端的参与也可以做出“高大上”的结果显示页。   2、适应人群   有一定的Java基础,并且要有一定的web开发基础。   3、课程亮点          系统的学习ElasticStack技术栈,掌握最先进的搜索、数据收集等技术。   l  Elasticsearch   n  快速入门   n  核心详解   n  中文分词   n  Elasticsearch集群   n  Java客户端的应用   l  Beats & Kibana & Logstash   n  Filebeat(文件采集器)   n  Metricbeat(指标采集器)   n  采集Nginx的日志以及指标数据   n  Kibana自定义仪表盘   n  Logstash自定义数据处理   l  综合练习   n  收集APP产生的日志进行实时展现   n  Filebeat采集日志   n  Logstash处理数据   n  Kibana 自定义仪表盘展现   4、主讲内容   章节一:Elasticsearch入门   1.     快速入门   2.     核心讲解   3.     中文分词   4.     全文搜索   5.     Elasticsearch集群   章节二:Beats   1.     Beats 简介   2.     Filebeat采集Nginx日志   3.     Metricbeat采集Nginx指标数据   章节三:Kibana   1.     Kibana简介   2.     Metricbeat 仪表盘   3.     Nginx 指标仪表盘   4.     Nginx 日志仪表盘   5.     自定义图表   章节四:Logstash   1.     Logstash简介   2.     配置详解   3.     读取自定义日志   章节五:综合练习   1.     流程说明   2.     Filebeat采集日志   3.     Logstash处理数据   4.     Kibana 自定义仪表盘展现

    1928 人正在学习 去看看 传智

一、elasticsearch index 索引流程

步骤:
客户端向Node1 发送索引文档请求
Node1 根据文档ID(_id字段)计算出该文档应该属于shard0,然后请求路由到Node3的P0分片上。
Node3在P0上执行了请求。如果请求成功,则将请求并行的路由至Node1,Node2的R0上。当所有的Replicas报告成功后,Node3向请求的Node(Node1)发送成功报告,Node1再报告至Client。
当客户端收到执行成功后,操作已经在Primary shard和所有的replica shards上执行成功了
elasticsearch-写数据流程

二、 elasticsearch 数据读取流程

1.客户端发送Get请求到NODE1。
2.接着NODE1使用文档的_id决定文档属于R0 分片,然后获取R0的所有副本的地址。这次,它将请求路由至NODE2。
3.NODE2将文档返回给NODE1,NODE1将文档返回给客户端。 对于读请求,请求节点(NODE1)将在每次请求到来时都选择一个不同的replica。
shard来达到负载均衡。使用轮询策略轮询问所有的replica shards。
elasticsearch-取数据流程

三、 elasticsearch 数据更新流程

1.客户端发送更新操作请求至NODE1
2.NODE1将请求路由至NODE3,Primary shard所在的位置
3.NODE3从P0读取文档,改变source字段的JSON内容,然后试图重新对修改后的数据在P0做索引。如果此时这个文档已经被其他的进程修改了,那么它将重新执行3步骤,这个过程如果超过了retryon_conflict设置的次数,就放弃。
4.如果NODE3成功更新了文档,它将并行的将新版本的文档同步到NODE1和NODE2的replica shards重新建立索引。一旦所有的replica
shards报告成功,NODE3向被请求的节点(NODE1)返回成功,然后NODE1向客户端返回成功。

四、 elasticsearch 删除数据

(流程和数据索引类似,删除只是标记这个文档不可用,并不是立即删除)
客户端向 Node 1 发送删除请求。
节点使用文档的 _id 确定文档属于分片 0 。请求会被转发到 Node 3`,因为分片 0 的主分片目前被分配在 `Node 3 上。
Node 3 在主分片上面执行请求。如果成功了,它将请求并行转发到 Node 1 和 Node 2 的副本分片上。一旦所有的副本分片都报告成功, Node 3 将向协调节点报告成功,协调节点向客户端报告成功。

2018-09-16 18:47:20 lj872224 阅读数 125
  • java进阶教程elastic stack从入门到实践

    1、课程简介          ElasticStack 是一系列开源产品的合集,包括 Elasticsearch、Kibana、Logstash 以及 Beats 等,能够安全可靠地获取任何来源、任何格式的数据,并且能够实时地对数据进行搜索、分析和可视化。其中,Logstash和Beats负责数据的收集,Kibana负责结果数据的可视化展现,Elasticsearch作为核心部分用于数据的分布式存储以及索引。   我们可以使用ElasticStack进行收集并处理任何数据,最为经典的是用于实时日志数据的收集、存储、展现。在此之前,如果实现实时日志的分析,需要经过繁琐的架构设计并且使用多个系统实现,现在只需要使用ElasticStack即可实现功能强大的实时日志分析系统,ElasticStack不仅仅用来做日志分析,它可以处理任何的数据并且进行存储、展现。          在本套课程中,我们将全面的讲解ElasticStack技术栈,从环境的部署到技术的应用,再到项目实战,让我们不仅是学习框架技术的使用,而且可以学习到使用ElasticStack如何解决实际的问题,我们通过收集系统日志数据、服务器指标数据、nginx的运行数据等,多维度的展示了ElasticStack的应用范围,最终将分析的结果数据非常友好的展现出来,没错!不需要前端的参与也可以做出“高大上”的结果显示页。   2、适应人群   有一定的Java基础,并且要有一定的web开发基础。   3、课程亮点          系统的学习ElasticStack技术栈,掌握最先进的搜索、数据收集等技术。   l  Elasticsearch   n  快速入门   n  核心详解   n  中文分词   n  Elasticsearch集群   n  Java客户端的应用   l  Beats & Kibana & Logstash   n  Filebeat(文件采集器)   n  Metricbeat(指标采集器)   n  采集Nginx的日志以及指标数据   n  Kibana自定义仪表盘   n  Logstash自定义数据处理   l  综合练习   n  收集APP产生的日志进行实时展现   n  Filebeat采集日志   n  Logstash处理数据   n  Kibana 自定义仪表盘展现   4、主讲内容   章节一:Elasticsearch入门   1.     快速入门   2.     核心讲解   3.     中文分词   4.     全文搜索   5.     Elasticsearch集群   章节二:Beats   1.     Beats 简介   2.     Filebeat采集Nginx日志   3.     Metricbeat采集Nginx指标数据   章节三:Kibana   1.     Kibana简介   2.     Metricbeat 仪表盘   3.     Nginx 指标仪表盘   4.     Nginx 日志仪表盘   5.     自定义图表   章节四:Logstash   1.     Logstash简介   2.     配置详解   3.     读取自定义日志   章节五:综合练习   1.     流程说明   2.     Filebeat采集日志   3.     Logstash处理数据   4.     Kibana 自定义仪表盘展现

    1928 人正在学习 去看看 传智

一、首先从官网https://www.elastic.co/downloads,下载elasticsearch6.4.0版本gz压缩包

二、利用相关xftp工具上传到linux对应的安装目录下面,这里以/usr/local/src下面,用命令tar -zxvf 解压出来 得到elasticsearch-6.4.0的文件夹,cd elasticsearch-6.4.0 ,进入到config里面修改elasticsearch.yml文件相关配置,

英文elasticsearch不提倡以root用户启动,创建一个es账号来启动es

具体操作如下:

useradd es

passwd es

再输入两次密码(自定义)

 

mkdir -p /export/servers/data

mkdir -p /export/servers/logs

 

chown -R es:es /usr/local/src/elasticsearch-6.4.0

chown -R es:es /usr/local/src/elasticsearch-6.4.0/data

chown -R es:es /usr/local/src/elasticsearch-6.4.0/logs

然后使用es用户启动

 

切换es用户命令:su es

cd 到bin目录下面 ./elasticsearch

启动相关报错问题

没有更多推荐了,返回首页