INFINI 产品更新啦 20220923
资讯动态 • liaosy 发表了文章 • 0 个评论 • 2415 次浏览 • 2022-09-23 22:47

今天 INFINI Labs 为大家又带来了一波产品更新,请查阅。
INFINI Gateway v1.8.0
极限网关本次迭代更新如下:
- 修复上下文条件 consumer_has_lag参数和 配置、文档不一致的 Bug。
- 修改备集群故障,主集群不能正常写数据的 Bug。
- 修复 Bulk 请求处理异常造成数据复制不一致的问题。
- 修复请求日志里面关于 Bulk 统计数据丢失的问题。
- 修复大并发情况下,请求体为空的异常。
INFINI Console v0.6.0
口碑爆棚的 Elasticsearch 多集群管控平台 INFINI Console 更新如下:
- 新增主机概览。
- 新增主机监控。
- 节点概览新增日志查看功能(需安装 Agent)。
- Insight 配置框新增 Search 配置。
- 优化 Discover 时间范围 Auto Fit,设为15分钟。
- 优化 Discover 保存搜索,会保存当前的字段过滤和 Insight 图表配置。
- 优化本地列表搜索查找,支持通配符过滤。
- 优化告警规则必填字段标记显示。
- 修复了 Discover 字段过滤白屏问题。
- 修复了 Discover 表格添加字段后排序失效问题。(感谢@卢宝贤反馈)
- 修复了 Elasticsearch 8.x 删除文档报错不兼容的问题。(感谢@卢宝贤反馈)
- 修复了创建新索引不成功时,异常处理的问题。
- 修复了低版本浏览器js不兼容导致集群注册不成功的问题。
- 修复了开发工具中使用加载命令失败报错的问题。
INFINI Agent v0.2.0
数据采集工具探针(INFINI Agent)更新如下:
- 新增按节点读日志文件列表的API
- 新增读具体日志文件内容的API
- 新增 Elasticsearch 节点掉线后的基础信息保存
- 新增主机在线状态的采集
- 新增基于 Centos 的 Docker 镜像
- 新增主机配置信息采集: 操作系统信息、磁盘大小、内存大小、CPU配置等
- 新增主机指标的采集: CPU使用率、磁盘使用率、磁盘IO、内存使用率、swap 使用率、网络IO等
- 新增 Elasticsearch 进程信息采集
- 修复发现 Elasticsearch 进程时频繁提示端口访问错误的Bug
- 修复 Elasticsearch 节点地址为 0.0.0.0 时无法获取节点信息的Bug
- 修复 CPU 指标数据显示异常的Bug
- 修复 stats API 在 Windows 平台的兼容性
INFINI Framework 2000923
INFINI Framework 也带来了很多改进:
- 重构了磁盘队列压缩相关配置,支持段文件的压缩。
- 当集群不可用的情况下,跳过集群节点元数据的获取。
- 完善节点可用性检测,避免频繁的不可用状态切换。
- 修复 Elasticsearch 主机地址为空的异常。
- 完善本地磁盘队列文件的清理,避免删除正在使用的文件。
期待反馈
如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github([https://github.com/infinilabs](https://github.com/infinilabs))中的对应项目中提交 Feature Request 或提交 Bug。 - INFINI Gateway: [https://github.com/infinilabs/gateway](https://github.com/infinilabs/gateway)
- INFINI Console: [https://github.com/infinilabs/console/issues](https://github.com/infinilabs/console/issues)
- 下载地址: [https://www.infinilabs.com/#/download](https://www.infinilabs.com/#/download)
您还可以通过邮件联系我们:hello@infini.ltd
或者拨打我们的热线电话:(+86) 400-139-9200
也欢迎大家微信扫码添加小助手,加入用户群讨论,或者扫码加入我们的知识星球一起学习交流。

感谢大家的围观,祝大家周末愉快。
如何解决ES 一秒钟的事务问题?
Elasticsearch • Charele 回复了问题 • 3 人关注 • 2 个回复 • 1944 次浏览 • 2022-09-27 18:53
长期招聘ES技术人员
求职招聘 • yangmf2040 发表了文章 • 2 个评论 • 2507 次浏览 • 2022-09-23 10:45
工作地点:深圳
vx:15773601117
email:yangf@newmindtech.cn
工作地点:深圳
vx:15773601117
email:yangf@newmindtech.cn
API 网关 Apache APISIX 集成 Elasticsearch 实现实时日志监控
Elasticsearch • WangChengCheng 发表了文章 • 0 个评论 • 2486 次浏览 • 2022-09-23 10:18
本文将为你介绍 Apache APISIX 的 elasticsearch-logger 插件的相关信息,以及如何通过此插件获取 APISIX 的实时日志。
背景信息
Apache APISIX 是一个动态、实时、高性能的 API 网关,提供了负载均衡、动态上游、灰度发布、服务熔断、身份认证、可观测性等丰富的流量管理功能。作为 API 网关,Apache APISIX 不仅拥有丰富的插件,而且支持插件的热加载。
Elasticsearch 是一个基于 [Lucene](https://zh.m.wikipedia.org/zh-hans/Lucene) 库的搜索引擎。它提供了分布式、RESTful 风格的搜索和数据分析引擎,具有可扩展性、可分布式部署和可进行相关度搜索等特点,能够解决不断涌现出的各种用例。同时还可以集中存储用户数据,帮助用户发现意料之中以及意料之外的情况。
插件介绍
APISIX 以 HTTP 请求的方式向 Elasticsearch 发送 APISIX 的 Runtime 日志。插件elasticsearch-logger
采用 [bulk](https://www.elastic.co/guide/e ... s-bulk) 的格式进行日志上报,这允许 APISIX 可以将多条日志合并后再进行上报,这使得 APISIX 在对 Elasticsearch 进行日志上报方面更加灵活并且具有较好的性能。你可以参考文档 [APISIX 批处理器](https://apisix.apache.org/zh/d ... essor/) 对日志合进行更加细致的配置。
配置步骤
首先,你需要安装完成 APISIX,本文所有步骤基于 Centos 7.5 系统进行。详细的安装步骤参考 [APISIX 安装指南](https://apisix.apache.org/zh/d ... guide/)。
步骤1:启动 Elasticsearch
本示例只演示了通过docker-compose
启动 Elasticsearch 单节点的方式,其它启动方式可参考 [Elasticsearch 官方文档](https://www.elastic.co/cn/downloads/elasticsearch)。
``` shell使用 docker-compose 启动 1 个 Elasticsearch 节点, 1 个 kibana
version: '3.8'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.1
container_name: elasticsearch
environment:
ES_JAVA_OPTS: -Xms512m -Xmx512m
discovery.type: single-node
xpack.security.enabled: 'false'
networks:
- es-net
ports:- "9200:9200"
- "9300:9300"
kibana:
image: docker.elastic.co/kibana/kibana:7.17.1
container_name: kibana
environment:
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
I18N_LOCALE: zh-CN
networks:- es-net
depends_on:- elasticsearch
ports:- "5601:5601"
networks:
es-net:
driver: bridge
```
步骤2:创建路由并配置插件
APISIX 默认配置文件中已启用elasticsearch-logger
插件,所以你只需要通过下方命令创建路由并配置elasticsearch-logger
插件就可以在 APISIX 中正常使用了。
shell<br /> curl <a href="http://127.0.0.1:9180/apisix/admin/routes/1" rel="nofollow" target="_blank">http://127.0.0.1:9180/apisix/admin/routes/1</a> \<br /> -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '<br /> {<br /> "plugins":{<br /> "elasticsearch-logger":{<br /> "endpoint_addr":"<a href="http://127.0.0.1:9200"" rel="nofollow" target="_blank">http://127.0.0.1:9200"</a>,<br /> "field":{<br /> "index":"services",<br /> "type":"collector"<br /> },<br /> "ssl_verify":false,<br /> "retry_delay":1,<br /> "buffer_duration":60,<br /> "max_retry_count":0,<br /> "batch_max_size":1000,<br /> "inactive_timeout":5,<br /> "name":"elasticsearch-logger"<br /> }<br /> },<br /> "upstream":{<br /> "type":"roundrobin",<br /> "nodes":{<br /> "127.0.0.1:1980":1<br /> }<br /> },<br /> "uri":"/elasticsearch.do"<br /> }'<br />
上述代码中配置了 Elasticsearch 地址、目标field
,用户名与密码。
通过上述设置,就可以实现将/elasticsearch.do
路径的 API 请求日志发送至 Elasticsearch 的功能。
步骤3:发送请求
接下来我们通过 API 发送一些请求。
shell<br /> curl -i <a href="http://127.0.0.1:9080/elasticsearch.do" rel="nofollow" target="_blank">http://127.0.0.1:9080/elasticsearch.do</a>\?q\=hello<br /> HTTP/1.1 200 OK<br /> ...<br /> hello, world<br />
此时你可以登录 Kibana 控制台检索查看相关日志:

自定义日志结构
当然,在使用过程中我们也可以通过elasticsearch-logger
插件提供的元数据配置,来设置发送至 Elasticsearch 的日志数据结构。通过设置log_format
数据,可以控制发送的数据类型。
比如以下数据中的$host
、$time_iso8601
等,都是来自于 NGINX 提供的内置变量;也支持如$route_id
和$service_id
等 Apache APISIX 提供的变量配置。
shell<br /> curl <a href="http://127.0.0.1:9180/apisix/admin/plugin_metadata/elasticsearch-logger" rel="nofollow" target="_blank">http://127.0.0.1:9180/apisix/a ... ogger</a> \<br /> -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '<br /> {<br /> "log_format": {<br /> "host": "$host",<br /> "@timestamp": "$time_iso8601",<br /> "client_ip": "$remote_addr"<br /> }<br /> }'<br />
通过发送请求进行简单测试,可以看到上述日志结构设置已生效。目前 Apache APISIX 提供多种日志格式模板,在配置上具有极大的灵活性,更多日志格式细节可参考 [Apache APISIX 官方文档](https://apisix.apache.org/docs ... tadata)。
此时你可以登录 Kibana 控制台检索查看相关自定义日志:

如需关闭自定义日志结构,可参考下方操作。
shell<br /> curl <a href="http://127.0.0.1:9180/apisix/admin/plugin_metadata/elasticsearch-logger" rel="nofollow" target="_blank">http://127.0.0.1:9180/apisix/a ... ogger</a> \<br /> -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X DELETE<br />
此时,插件elasticsearch-logger
将使用默认格式上报日志。
关闭插件
如使用完毕,只需移除路由配置中elasticsearch-logger
插件相关的配置并保存,即可关闭路由上的插件。得益于 Apache APISIX 的动态化优势,开启和关闭插件的过程都不需要重启 Apache APISIX。
shell<br /> curl <a href="http://127.0.0.1:9080/apisix/admin/routes/1" rel="nofollow" target="_blank">http://127.0.0.1:9080/apisix/admin/routes/1</a> \<br /> -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '<br /> {<br /> "methods": ["GET"],<br /> "uri": "/hello",<br /> "plugins": {},<br /> "upstream": {<br /> "type": "roundrobin",<br /> "nodes": {<br /> "127.0.0.1:1980": 1<br /> }<br /> }<br /> }'<br />
总结
本文为大家介绍了关于 elasticsearch-logger 插件的功能与使用步骤,更多关于 elasticsearch-logger 插件说明和完整配置列表,可以参考官方文档。
也欢迎随时在 [GitHub Discussions](https://github.com/apache/apisix/discussions) 中发起讨论,或通过[邮件列表](https://apisix.apache.org/zh/docs/general/join)进行交流。
elasticsearch设置某个、某类节点的数据不参与rebalance?
Elasticsearch • Charele 回复了问题 • 3 人关注 • 5 个回复 • 2221 次浏览 • 2022-09-28 09:57
如何向工作状态的索引添加analyzer
Elasticsearch • Charele 回复了问题 • 2 人关注 • 1 个回复 • 1173 次浏览 • 2022-09-22 11:59
如何在线上工作的索引添加analyzer?
回复Elasticsearch • caryliang 发起了问题 • 1 人关注 • 0 个回复 • 1403 次浏览 • 2022-09-22 10:29
社区日报 第1504期 (2022-09-22)
社区日报 • Se7en 发表了文章 • 0 个评论 • 1153 次浏览 • 2022-09-22 10:16
https://mp.weixin.qq.com/s/4UkqvTh41CdQ5U7_BkqoLg
2.Elasticsearch SearchScroll 原理和优化(二)
https://mp.weixin.qq.com/s/QqCT9Ti-TrE6qZvC0gim0A
3.SpringBoot 操作 ES 进行各种高级查询
https://mp.weixin.qq.com/s/g7WZCaNMsST3_Sv2PsPWRQ
编辑:Se7en
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili
使用ElasticsearchRestTemplate操作时会出现java.io.IOException: 远程主机强迫关闭了一个现有的连接。
Elasticsearch • Charele 回复了问题 • 2 人关注 • 1 个回复 • 1591 次浏览 • 2022-09-21 15:51
社区日报 第1503期 (2022-09-21)
社区日报 • kin122 发表了文章 • 0 个评论 • 942 次浏览 • 2022-09-21 14:12
https://medium.com/%40stavsofe ... c4cd0
2. 关于nested文档查询的优化讨论
https://discuss.elastic.co/t/p ... 81792
3.怎么去毁掉 ES 的性能-1(需要梯子)
https://blog.allegro.tech/2021 ... .html
编辑:kin122
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili
社区日报 第1503期 (2022-09-20)
社区日报 • God_lockin 发表了文章 • 0 个评论 • 1631 次浏览 • 2022-09-20 15:49
1. 来个Beats的workshop吗少年(I)(需要梯子)
https://towardsdatascience.com ... 69793
2. 来个Beats的workshop吗少年(II)(需要梯子)
https://towardsdatascience.com ... b4b00
3. 想在10亿级别的数据集上做搜索?这不来一手ES吗(需要梯子)
https://medium.com/elucidata/h ... 33fda
编辑:斯蒂文
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili
es 6.2.4 集群配置升级后,从32c升级成64c后,机器物理内存从64g升为128g,es堆内存还是30g没变,但是升级后发现es的index和get的耗时变大了一倍,整体读写耗时变大了好多
回复Elasticsearch • yushiweibill 发起了问题 • 2 人关注 • 0 个回复 • 1535 次浏览 • 2022-09-20 15:47
es的同义词filter在analyzer中是如何工作的?
Elasticsearch • Ombres 回复了问题 • 3 人关注 • 1 个回复 • 1073 次浏览 • 2022-09-21 23:48
Observability:使用 Elastic Agent 来进行 Uptime 监控
Elasticsearch • liuxg 发表了文章 • 0 个评论 • 1068 次浏览 • 2022-09-19 18:35
Beats:使用 Heartbeat 进行 Uptime 监控
Observability:使用 Elastic Agent 来摄入日志及指标 - Elastic Stack 8.0
Observability:如何使用 Elastic Agents 把微服务的数据摄入到 Elasticsearch 中
更多阅读,请参阅 https://elasticstack.blog.csdn ... 29912