Logstash from Kafka to Elasticsearch学习
来源:互联网 发布:淘宝默认运费模板 编辑:程序博客网 时间:2024/06/11 03:06
Logstash from Kafka to Elasticsearch学习
目录:
1、Logstash input Kafka配置:
2、Logstash output Elasticsearch:
3、Logstash from Kafka to Elasticsearch:
1、Logstash input Kafka配置:
(1)查看/opt/package/kafka_2.10-0.10.1.0/config中的server.properties,查看到生产者的地址:
图1.1 截图1
(2)配置remoatest3.conf的input:
input{ kafka{ bootstrap_servers => "hdp1.example.com:9092" security_protocol => "SASL_PLAINTEXT" sasl_kerberos_service_name => "kafka" jaas_path => "/tmp/kafka_jaas.conf.demouser" kerberos_config => "/etc/krb5.conf" topics => ["mytopic"] }}
配置参数参考官网地址:
https://www.elastic.co/guide/en/logstash/current/plugins-inputs-kafka.html
①bootstrap_servers:用于建立与集群的初始连接的URL列表,即Kafka的接入地址(生产者)。
②security_protocol:使用的安全协议,可以为plaintext、ssl、sasl_plaintext、sasl_ssl等等。
③sasl_kerberos_service_name:Kafka服务器运行的Kerberos主题名称。其可以在Kafka的jaas配置中定义。
④jaas_path:Java Authentication and Authorization Service API(JAVA认证和授权服务)的缩写,为Kafka提供用户认证和授权服务,设置jass文件的路径。
⑤kerberos_config:Keberos配置文件的路径。
⑥topics:要订阅的主题列表,默认为“logstash”。
2、Logstash output Elasticsearch:
(1)在/opt/package/elasticsearch-5.2.2/config目录下查看elasticsearch.yml文件中的host的ip地址及运行HTTP服务的端口,端口注释即使用默认端口9200。
图2.1 截图2
(2)查看keys文件位置:
这里采用了elasticsearch的一款插件search-guard,提供加密、身份验证和授权,基于search guard SSL,也可以提供可插入的身份验证/授权模块。其功能特性:
l 基于用户和角色的权限控制
l 支持SSL和TL方式安全认证
l 支持LDAP认证
Truststore和Keystore文件用来提供客户端与服务器之间的安全数据传输。
图2.2 截图3
(3)配置remoatest3.conf的output:
output{ stdout{ codec => rubydebug } elasticsearch{ hosts => ["kdc1.example.com:9200","kdc2.example.com:9200"] user => logstash password => logstash action => "index" index => "logstash-remoatest3-%{+YYYY.MM.dd}" truststore => "/opt/package/logstash-5.2.2/config/keys/truststore.jks" truststore_password => whoami ssl => true ssl_certificate_verification => true codec => "json" }}
配置参数参考官网地址:
https://www.elastic.co/guide/en/logstash/current/plugins-outputs-elasticsearch.html
①host:elasticsearch集群中任意节点的主机名
②user:连接elasticsearch集群的安全认证的用户名
③password:连接elasticsearch集群的安全认证的密码
④action:默认值是index;
index是来自logstash的事件,索引文档;
delete是按id删除文档(此操作需要一个id);
create是索引文档,如果索引中已存在该id的文档,则失败;
update是按id更新文档。
⑤index:将事件写入的索引名字。可以使用%{}进行动态化。
⑥truststore:JKS(JAVA Keytool Keystore)信任库验证服务器的证书。
⑦truststore_password:证书密码
⑧ssl:启用与Elasticsearch集群的SSL / TLS安全通信。
⑨ssl_certificate_verification:验证服务器证书的选项
⑩codec:用于数据的编码/解码器。
3、Logstash from Kafka to Elasticsearch:
(1)首先启动生产者
KAFKA_HEAP_OPTS="-Djava.security.auth.login.config=/usr/hdp/current/kafka-broker/config/kafka_client_jaas.conf -Xmx512M" /opt/package/kafka_2.10-0.10.1.0/bin/kafka-console-producer.sh --topic mytopic --broker-list hdp1.example.com:9092 --producer.config /opt/package/kafka_2.10-0.10.1.0/config/producer.properties
(2)启动remoatest3.conf脚本
bash bin/logstash -f config/remoatest3.conf
(3)启动消费者
KAFKA_HEAP_OPTS="-Djava.security.auth.login.config=/usr/hdp/current/kafka-broker/config/kafka_client_jaas.conf -Xmx512M" /opt/package/kafka_2.10-0.10.1.0/bin/kafka-console-consumer.sh --topic mytopic --bootstrap-server hdp1.example.com:9092 --from-beginning --consumer.config /opt/package/kafka_2.10-0.10.1.0/config/consumer.properties
(4)生产者生产三条消息:
图3.1 截图4
(5)查看remoatest3.conf脚本启动后信息,根据脚本中配置的output{stdout{codec=>rubydebug}}输出了这三条消息:
图3.2 截图5
(6)查看消费者是否进行处理消息:
图3.3 截图6
(7)在Kibana中查看Elasticsearch中是否存储了这些消息:
①查看Kibana中host及port参数:
图3.4 截图7
②登录进入:http://kdc1.example.com:5601,在左边导航栏中选择Dev Tools,在控制台中输入GET _cat/indices,找到这条index信息。其中简单的CRUD操作包括PUT:添加,GET:查询,POST:修改,DELETE:删除。
图3.5 截图8
查看到health的健康状态为green,green表示一切正常;yellow表示所有数据都可用,但某些副本尚未分配;red表示某些数据因为某些原因不可用。
(8)在Kibana查看具体内容:
GET logstash-remoatest3-2017.09.08/_search
图3.6 截图9
- Logstash from Kafka to Elasticsearch学习
- kafka-logstash-elasticsearch
- logstash-kafka-elasticsearch
- Flume-Kafka-Logstash-ElasticSearch-Kibana流程说明
- Logstash之kafka数据入ElasticSearch
- 日志系统 - (kafka)logstash elasticsearch kibana
- ELK log4j kafka logstash elasticsearch系统搭建
- kafka logstash elasticsearch kibana window安装配置
- 搭建nginx-logstash-kafka-elasticsearch服务
- 使用 logstash + kafka + elasticsearch 实现日志监控
- KafKa+Logstash+Elasticsearch日志收集系统的吞吐量问题
- 使用logstash将kafka数据入到elasticsearch
- Elasticsearch 429,logstash没有更新kafka队列状态的问题
- logstash将采取kafka的数据到elasticSearch配置
- Logstash output Kafka with Kerberos学习
- Logstash学习3_通过Kafka传输数据给logstash-1.4和logstash-1.5
- ElasticSearch学习31_学习汇总_Elasticsearch+Logstash+Kibana教程
- docker 安装 elasticsearch、kibana、logstash 5.6.1,带x-pack,从kafka中获取数据
- 固定背景图片
- RxJava 2.0: flatMap()
- Nginx(总结整理)
- main函数参数argc和argv应用
- 洛谷 P2038 无线网络发射器选址
- Logstash from Kafka to Elasticsearch学习
- PCA用SVD来实现
- 1115:数字统计
- postgresql绿色解压安装
- .NET-Demo for async and await
- spring4.2.2整合webflow2.4,真是项目中的实战经验
- egl surface 与codec的数据传递
- Java初学者常问的问题_动力节点Java学院整理
- Android在运行融云官方Demo时碰到的奇葩问题。