怎么又是你

京东数据安全JAVA招聘

京东集团数据安全-高级JAVA研发

联系方式:qinpengfei@jd.com


京东集团汇聚零售、物流、健康、科技、金融等丰富的业务场景,是国内最具影响力和正向价值的新型实体企业。我们的团队不仅负责数据安全前沿技术研究,还承担了集团各业务线的数据安全服务职责,致力于用先进、高效的技术手段消除数据安全风险,提升京东数亿用户、数百万生态合作伙伴、数十万京东体系员工的数据安全服务体验。京东平台拥有高并发、多业务的复杂场景,为技术深度优化、个人核心竞争力的形成提供了最佳实践可能。这里有多元化、讲逻辑、友爱、创新的团队,更是一块理想的实战场地,舞台广阔,欢迎有技术、有情怀的你来尽情施展,和同频的人同行,一起做有价值的事情!




岗位职责:

• 负责京东数据安全产品的系统设计,核心功能开发和维护工作;

• 对系统有整体宏观的思考,规划形成统一的平台和组件;

• 负责技术难点攻关,持续对线上系统进行性能优化及稳定性提升;

• 拆解产品需求,提出技术实现方案和步骤;

• 参与知识传播及技术分享,促进团队成员共同进步。




岗位任职要求:

• 3年以上互联网领域的设计与开发经验,具备扎实的开发基础,精通一种开发语言(Java,Go);

• 熟练掌握IO、多线程开发技术,对事务、锁、并发等实现机制有深入了解;

• 熟练使用Spring、Spring MVC等框架,并对框架原理有一定了解;

• 熟悉SOA架构,对RPC、序列化、服务治理有相应了解;

• 熟悉常用数据库软件(MySQL)的原理和使用,熟悉常用ORM和连接池组件,对数据库的优化有一定的理解;

• 熟悉计算机网络基础原理、了解常用网络通信协议;

• 热爱技术,对技术有不懈的追求,喜欢研究开源代码,良好的学习能力、团队协作能力和沟通能力。




具备以下者优先:

• 具备丰富的大型互联网系统设计经验,熟悉分布式、缓存、消息、负载均衡等机制和实现,具备海量数据研发和处理经验优先;

• 具备数据安全相关基础设施、平台的设计和研发经验者优先;




岗位亮点:

• 技术栈丰富,可参与高并发、高性能、高可用、大数据系统的开发建设,掌握各环节核心技术要素,和团队一起对系统能力进行升级和迭代;

• 接触前沿技术,可参与零信任项目,和行业大佬一起共事,日处理亿级别调用量,有机会为全公司各个业务线提供服务;

• 技术挑战性高,公司具有极其丰富的业务场景、数据场景和海量数据规模;
 
继续阅读 »
京东集团数据安全-高级JAVA研发

联系方式:qinpengfei@jd.com


京东集团汇聚零售、物流、健康、科技、金融等丰富的业务场景,是国内最具影响力和正向价值的新型实体企业。我们的团队不仅负责数据安全前沿技术研究,还承担了集团各业务线的数据安全服务职责,致力于用先进、高效的技术手段消除数据安全风险,提升京东数亿用户、数百万生态合作伙伴、数十万京东体系员工的数据安全服务体验。京东平台拥有高并发、多业务的复杂场景,为技术深度优化、个人核心竞争力的形成提供了最佳实践可能。这里有多元化、讲逻辑、友爱、创新的团队,更是一块理想的实战场地,舞台广阔,欢迎有技术、有情怀的你来尽情施展,和同频的人同行,一起做有价值的事情!




岗位职责:

• 负责京东数据安全产品的系统设计,核心功能开发和维护工作;

• 对系统有整体宏观的思考,规划形成统一的平台和组件;

• 负责技术难点攻关,持续对线上系统进行性能优化及稳定性提升;

• 拆解产品需求,提出技术实现方案和步骤;

• 参与知识传播及技术分享,促进团队成员共同进步。




岗位任职要求:

• 3年以上互联网领域的设计与开发经验,具备扎实的开发基础,精通一种开发语言(Java,Go);

• 熟练掌握IO、多线程开发技术,对事务、锁、并发等实现机制有深入了解;

• 熟练使用Spring、Spring MVC等框架,并对框架原理有一定了解;

• 熟悉SOA架构,对RPC、序列化、服务治理有相应了解;

• 熟悉常用数据库软件(MySQL)的原理和使用,熟悉常用ORM和连接池组件,对数据库的优化有一定的理解;

• 熟悉计算机网络基础原理、了解常用网络通信协议;

• 热爱技术,对技术有不懈的追求,喜欢研究开源代码,良好的学习能力、团队协作能力和沟通能力。




具备以下者优先:

• 具备丰富的大型互联网系统设计经验,熟悉分布式、缓存、消息、负载均衡等机制和实现,具备海量数据研发和处理经验优先;

• 具备数据安全相关基础设施、平台的设计和研发经验者优先;




岗位亮点:

• 技术栈丰富,可参与高并发、高性能、高可用、大数据系统的开发建设,掌握各环节核心技术要素,和团队一起对系统能力进行升级和迭代;

• 接触前沿技术,可参与零信任项目,和行业大佬一起共事,日处理亿级别调用量,有机会为全公司各个业务线提供服务;

• 技术挑战性高,公司具有极其丰富的业务场景、数据场景和海量数据规模;
  收起阅读 »

【INFINI Workshop 北京站】 一起动手实验,在实践中掌握 Easysearch!名额有限,欢迎大家免费报名参加。

【INFINI Workshop 北京站】
一起动手实验,在实践中掌握 Easysearch!名额有限,欢迎大家免费报名参加。

报名邮箱:jiayi@infinilabs.com (或 在线报名 )
时间:2023-06-15 13:30 ~ 17:30
地点:北京 - WeWork 辉煌时代大厦 3 楼 3E 会议室

8eafe62ab925f7488a0181b4edfac9.jpg

 
继续阅读 »
【INFINI Workshop 北京站】
一起动手实验,在实践中掌握 Easysearch!名额有限,欢迎大家免费报名参加。

报名邮箱:jiayi@infinilabs.com (或 在线报名 )
时间:2023-06-15 13:30 ~ 17:30
地点:北京 - WeWork 辉煌时代大厦 3 楼 3E 会议室

8eafe62ab925f7488a0181b4edfac9.jpg

  收起阅读 »

INFINI Labs 产品更新 | Easysearch 新增跨集群复制 (CCR)、支持快照生命周期管理 (SLM) 功能等

INFINI Labs 产品重量级更新!!!本次更新了很多亮点功能,如 Easysearch 新增跨集群复制 (CCR)、支持快照生命周期管理 (SLM) 功能等;支持多集群、跨版本的搜索基础设施统一管控平台 Console 新增了免费授权申请功能等。欢迎大家下载使用。

Console 在线体验:http://demo.infini.cloud (用户名/密码:readonly/readonly)。

INFINI Easysearch v1.2.0

INFINI Easysearch 是一个分布式的近实时搜索与分析引擎,核心引擎基于开源的 Apache Lucene。Easysearch 衍生自基于开源协议 Apache 2.0 的 Elasticsearch 7.10 版本。Easysearch 的目标是提供一个轻量级的 Elasticsearch 可替代版本,并继续完善和支持更多的企业级功能。

Easysearch 本次更新如下:

Features

  • 正式发布快照生命周期管理 (SLM) API, 支持定时备份和删除快照,以及保留快照的个数
  • 增加跨集群复制 (Cross-cluster replication) 功能:
    • 支持手动或自动复制索引
    • 支持暂停和恢复复制索引
    • 支持取消指定索引的跨集群复制

Bug Fix

  • security 模块修复缺少某些角色验证属性的问题

Improvements

  • 兼容 ES6.0 版本的索引

INFINI Gateway v1.15.0

INFINI Gateway 是一个面向搜索场景的高性能数据网关,所有请求都经过网关处理后再转发到后端的搜索业务集群。基于 INFINI Gateway,可以实现索引级别的限速限流、常见查询的缓存加速、查询请求的审计、查询结果的动态修改等等。

Gateway 本次更新如下:

Features

  • 增加 auto_generate_doc_id 在线过滤器,支持 index 自动生成 _id

Bug Fix

  • 修复 floating_ip 错误抢占的问题
  • 修复 elasticsearch 对 x-forwarded-for 的错误覆盖问题
  • 修复 queue_consumer 在队列没有消息时高 CPU 占用的问题

INFINI Console v1.3.0

INFINI Console 是一款非常轻量级的多集群、跨版本的搜索基础设施统一管控平台。通过对流行的搜索引擎基础设施进行跨版本、多集群的集中纳管, 企业可以快速方便的统一管理企业内部的不同版本的多套搜索集群。

Console 本次更新如下:

Features

  • 数据看板新增新增 Dashboard 导入导出功能

  • 数据看板表格组件 UI 调整,并新增排序功能
  • 数据看板组件支持多指标(折线图、面积图、柱状图、条形图)

  • 数据迁移新增增量迁移、定时运行功能
  • 数据比对新增增量比对、定时运行功能

更多参见:增量数据迁移介绍

  • 监控报表新增索引,节点健康状态指标
  • 新增免费授权申请功能

  • 新增 Agent 管理功能
    • Agent 注册以及基本信息修改
    • 查看 Agent 主机 ES 进程信息,进程关联到已注册集群后,自动采集该 ES 集群指标及日志
    • 通过 Agent 查看 ES 节点日志
    • Agent 支持 Linux 平台脚本一键安装

更多参见 :Agent 管理功能介绍

Bug fix

  • 修复没给菜单权限,左侧菜单依然显示的问题
  • 修复删除数据看板 Dashboard 时 url 中 id 不更新的问题
  • 修复数据看板指标字段搜索无数据的问题
  • 修复数据探索切换索引(视图)时报错的问题
  • 修复数据探索切换时间字段后索引显示不正常的问题
  • 修复数据探索切换表格样式的问题
  • 修复数据看板框选一个坐标点进行时间过滤时无数据的问题
  • 修复数据看板只读用户标签页样式的问题
  • 修复数据看板组件放大后进入编辑界面 UI 不正常的问题

Improvements

  • 节点监控详情分片列表增加索引写入指标
  • 数据看板柱状图和条形图新增配置是否堆叠
  • 告警模版添加函数 get_keystore_secret 支持访问 keystore 变量

INFINI Agent v0.5.0

INFINI Agent 是 INFINI Console 的一个可选探针组件,负责采集和上传集群指标和日志等信息,并可通过 Console 管理。Agent 支持主流操作系统和平台,安装包轻量且无任何外部依赖,可以快速方便地安装。

探针 Agent 本次更新如下:

Features

  • 支持将 Agent 注册到 Console
  • 添加保存配置到动态加载目录接口

Improvements

  • 优化自动发现 Elasticsearch 实例进程
  • 优化查看 Elasticsearch 实例日志相关 API

期待反馈

欢迎下载体验使用,如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github(https://github.com/infinilabs) 中的对应项目中提交 Feature Request 或提交 Bug。

也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群讨论,或者扫码加入我们的知识星球一起学习交流。

关于极限科技(INFINI Labs)

关于极限科技

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。

极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。

官网:https://www.infinilabs.com

继续阅读 »

INFINI Labs 产品重量级更新!!!本次更新了很多亮点功能,如 Easysearch 新增跨集群复制 (CCR)、支持快照生命周期管理 (SLM) 功能等;支持多集群、跨版本的搜索基础设施统一管控平台 Console 新增了免费授权申请功能等。欢迎大家下载使用。

Console 在线体验:http://demo.infini.cloud (用户名/密码:readonly/readonly)。

INFINI Easysearch v1.2.0

INFINI Easysearch 是一个分布式的近实时搜索与分析引擎,核心引擎基于开源的 Apache Lucene。Easysearch 衍生自基于开源协议 Apache 2.0 的 Elasticsearch 7.10 版本。Easysearch 的目标是提供一个轻量级的 Elasticsearch 可替代版本,并继续完善和支持更多的企业级功能。

Easysearch 本次更新如下:

Features

  • 正式发布快照生命周期管理 (SLM) API, 支持定时备份和删除快照,以及保留快照的个数
  • 增加跨集群复制 (Cross-cluster replication) 功能:
    • 支持手动或自动复制索引
    • 支持暂停和恢复复制索引
    • 支持取消指定索引的跨集群复制

Bug Fix

  • security 模块修复缺少某些角色验证属性的问题

Improvements

  • 兼容 ES6.0 版本的索引

INFINI Gateway v1.15.0

INFINI Gateway 是一个面向搜索场景的高性能数据网关,所有请求都经过网关处理后再转发到后端的搜索业务集群。基于 INFINI Gateway,可以实现索引级别的限速限流、常见查询的缓存加速、查询请求的审计、查询结果的动态修改等等。

Gateway 本次更新如下:

Features

  • 增加 auto_generate_doc_id 在线过滤器,支持 index 自动生成 _id

Bug Fix

  • 修复 floating_ip 错误抢占的问题
  • 修复 elasticsearch 对 x-forwarded-for 的错误覆盖问题
  • 修复 queue_consumer 在队列没有消息时高 CPU 占用的问题

INFINI Console v1.3.0

INFINI Console 是一款非常轻量级的多集群、跨版本的搜索基础设施统一管控平台。通过对流行的搜索引擎基础设施进行跨版本、多集群的集中纳管, 企业可以快速方便的统一管理企业内部的不同版本的多套搜索集群。

Console 本次更新如下:

Features

  • 数据看板新增新增 Dashboard 导入导出功能

  • 数据看板表格组件 UI 调整,并新增排序功能
  • 数据看板组件支持多指标(折线图、面积图、柱状图、条形图)

  • 数据迁移新增增量迁移、定时运行功能
  • 数据比对新增增量比对、定时运行功能

更多参见:增量数据迁移介绍

  • 监控报表新增索引,节点健康状态指标
  • 新增免费授权申请功能

  • 新增 Agent 管理功能
    • Agent 注册以及基本信息修改
    • 查看 Agent 主机 ES 进程信息,进程关联到已注册集群后,自动采集该 ES 集群指标及日志
    • 通过 Agent 查看 ES 节点日志
    • Agent 支持 Linux 平台脚本一键安装

更多参见 :Agent 管理功能介绍

Bug fix

  • 修复没给菜单权限,左侧菜单依然显示的问题
  • 修复删除数据看板 Dashboard 时 url 中 id 不更新的问题
  • 修复数据看板指标字段搜索无数据的问题
  • 修复数据探索切换索引(视图)时报错的问题
  • 修复数据探索切换时间字段后索引显示不正常的问题
  • 修复数据探索切换表格样式的问题
  • 修复数据看板框选一个坐标点进行时间过滤时无数据的问题
  • 修复数据看板只读用户标签页样式的问题
  • 修复数据看板组件放大后进入编辑界面 UI 不正常的问题

Improvements

  • 节点监控详情分片列表增加索引写入指标
  • 数据看板柱状图和条形图新增配置是否堆叠
  • 告警模版添加函数 get_keystore_secret 支持访问 keystore 变量

INFINI Agent v0.5.0

INFINI Agent 是 INFINI Console 的一个可选探针组件,负责采集和上传集群指标和日志等信息,并可通过 Console 管理。Agent 支持主流操作系统和平台,安装包轻量且无任何外部依赖,可以快速方便地安装。

探针 Agent 本次更新如下:

Features

  • 支持将 Agent 注册到 Console
  • 添加保存配置到动态加载目录接口

Improvements

  • 优化自动发现 Elasticsearch 实例进程
  • 优化查看 Elasticsearch 实例日志相关 API

期待反馈

欢迎下载体验使用,如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github(https://github.com/infinilabs) 中的对应项目中提交 Feature Request 或提交 Bug。

也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群讨论,或者扫码加入我们的知识星球一起学习交流。

关于极限科技(INFINI Labs)

关于极限科技

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。

极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。

官网:https://www.infinilabs.com

收起阅读 »

社区日报 第1644期 (2023-06-09)


1、使用 Elasticsearch 进行可扩展的语义向量搜索(梯子)
https://medium.com/gsi-technol ... 5ba8e
2、探索 ElasticSearch 中矢量搜索的强大功能(梯子)
https://medium.com/state-of-th ... 6229c
3、Elasticsearch 8 中的矢量搜索视频(梯子)
https://www.youtube.com/watch?v=CM0OSbHTaeA

编辑:铭毅天下
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili
继续阅读 »

1、使用 Elasticsearch 进行可扩展的语义向量搜索(梯子)
https://medium.com/gsi-technol ... 5ba8e
2、探索 ElasticSearch 中矢量搜索的强大功能(梯子)
https://medium.com/state-of-th ... 6229c
3、Elasticsearch 8 中的矢量搜索视频(梯子)
https://www.youtube.com/watch?v=CM0OSbHTaeA

编辑:铭毅天下
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili 收起阅读 »

社区日报 第1643期 (2023-06-08)

1.如何高效地将应用日志发送到 Elasticsearch(需要梯子)
https://medium.com/cloud-nativ ... 70168
2.基于公共键合并两个 Elasticsearch 索引(需要梯子)
https://martin-beranek.medium. ... 5c969
3.Qunar 万亿级 Elasticsearch 集群节点迁移实战
https://mp.weixin.qq.com/s/zpz6k4lXQlvvBx756hyWQA

编辑:Se7en
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili
继续阅读 »
1.如何高效地将应用日志发送到 Elasticsearch(需要梯子)
https://medium.com/cloud-nativ ... 70168
2.基于公共键合并两个 Elasticsearch 索引(需要梯子)
https://martin-beranek.medium. ... 5c969
3.Qunar 万亿级 Elasticsearch 集群节点迁移实战
https://mp.weixin.qq.com/s/zpz6k4lXQlvvBx756hyWQA

编辑:Se7en
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili 收起阅读 »

社区日报 第1642期 (2023-06-07)

1.lucene 数据结构之 IndexedDISI
https://zhuanlan.zhihu.com/p/632553473
2.lucene DocValues之NumericDocValues
https://zhuanlan.zhihu.com/p/631980445
3.深入理解 Elasticsearch 分页技术
https://zhuanlan.zhihu.com/p/609576187
 
编辑:kin122
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili
 
继续阅读 »
1.lucene 数据结构之 IndexedDISI
https://zhuanlan.zhihu.com/p/632553473
2.lucene DocValues之NumericDocValues
https://zhuanlan.zhihu.com/p/631980445
3.深入理解 Elasticsearch 分页技术
https://zhuanlan.zhihu.com/p/609576187
 
编辑:kin122
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili
  收起阅读 »

让 Easysearch 运行在 Kylin V10 (Lance)-aarch64 上

简介

本文主要介绍在国产操作系统 Kylin V10 (Lance)-aarch64 上安装单机版 Easysearch/Console/Agent/Gateway/Loadgen

系统配置

在安装之前,需要先进行系统参数调整并创建操作用户,以下命令均需要使用 root 用户操作。

#配置nofile和memlock
tee /etc/security/limits.d/21-infini.conf <<-'EOF'
*                soft    nofile         1048576
*                hard    nofile         1048576
*                soft    memlock        unlimited
*                hard    memlock        unlimited
root             soft    nofile         1048576
root             hard    nofile         1048576
root             soft    memlock        unlimited
root             hard    memlock        unlimited
EOF

#关闭THP
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
grep -i HugePages_Total /proc/meminfo

grep -wq transparent_hugepage /etc/rc.local || cat <<-'EOF' >> /etc/rc.local

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
  echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
  echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
EOF
chmod 755 /etc/rc.local

#内核调优
tee /etc/sysctl.d/70-infini.conf <<-'EOF'
vm.max_map_count = 262145
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time = 900
net.ipv4.tcp_max_tw_buckets = 2000000
net.ipv4.ip_local_port_range = 1024 65535
EOF
sysctl -p /etc/sysctl.d/70-infini.conf

用户配置

#创建Easysearch操作用户
groupadd -g 602 es
useradd -u 602 -g es -m -d /home/es -c 'easysearch' -s /bin/bash es

配置 JDK

#在各个节点上分别操作
wget -N https://release.infinilabs.com/easysearch/jdk/zulu17.40.19-ca-jdk17.0.6-linux_aarch64.tar.gz -P /usr/src

mkdir -p /usr/local/jdk
tar -zxf /usr/src/zulu*.tar.gz -C /usr/local/jdk --strip-components 1

tee /etc/profile.d/java.sh <<-'EOF'
# set java environment
JAVA_HOME=/usr/local/jdk
CLASSPATH=$CLASSPATH:$JAVA_HOME/lib
PATH=$JAVA_HOME/bin:$PATH
export PATH JAVA_HOME CLASSPATH
EOF
source /etc/profile
java -version

Easysearch 部署

部署及密码配置

#在线安装
curl -sSL http://get.infini.sh | bash -s -- -p easysearch -d /data/easysearch
#初始化证书(若不采用默认证书,如需要调整证书可修改证书生成文件)
cd /data/easysearch
bin/initialize.sh
ll /data/easysearch/config/{*.crt,*.key,*.pem}

#调整默认密码及服务配置文件
export ES_HOME=/data/easysearch
pass=`tr -cd 'a-zA-Z0-9!@#$%' </dev/urandom | head -c20`
#记录密码后,删除该文件
echo $pass > /tmp/pass
hash=`$ES_HOME/bin/hash_password.sh -p $pass`
echo $hash

#更新密码字段
cat <<EOF > $ES_HOME/config/security/user.yml
meta:
  type: "user"
  config_version: 2

# Define your internal users here

## Admin users
admin:
  hash: "$hash"
  reserved: true
  external_roles:
    - "admin"
  description: "Admin user"
EOF

配置文件及 JVM 调整

cat <<EOF > /data/easysearch/config/easysearch.yml
cluster.name: infinilabs
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
transport.port: 9300
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

cluster.initial_master_nodes: ["node-1"]

path.home: /data/easysearch
path.data: /data/easysearch/data
path.logs: /data/easysearch/logs

http.compression: true

security.enabled: true
security.audit.type: noop
security.ssl.transport.cert_file: instance.crt
security.ssl.transport.key_file: instance.key
security.ssl.transport.ca_file: ca.crt
security.ssl.transport.skip_domain_verify: true
security.ssl.http.enabled: true
security.ssl.http.cert_file: instance.crt
security.ssl.http.key_file: instance.key
security.ssl.http.ca_file: ca.crt

security.allow_default_init_securityindex: true

security.nodes_dn:
  - 'CN=infini.cloud,OU=UNIT,O=ORG,L=NI,ST=FI,C=IN'

security.restapi.roles_enabled: [ "superuser", "security_rest_api_access" ]

security.system_indices.enabled: true
security.ssl.http.clientauth_mode: OPTIONAL
security.system_indices.indices: [".infini-*"]

#for admin dn
## specify admin certs to operate against system indices, basic_auth is not required
##  curl -k  --cert config/admin.crt --key config/admin.key   -XDELETE 'https://localhost:9200/.infini-*/'
security.authcz.admin_dn:
  - 'CN=admin.infini.cloud,OU=UNIT,O=ORG,L=NI,ST=FI,C=IN'
EOF

#根据实际机器内存的大小进行配置,推荐配置为机器内存一半,且不超过31G
sed -i "s/1g/4g/g" $ES_HOME/config/jvm.options

备份目录及权限调整

#创建备份目录
mkdir -p /data/easysearch/backup
#更新目录权限
chown -R es.es /data/easysearch

环境变量及启动服务

su - es
grep -wq easysearch ~/.bashrc || cat<<EOF >> ~/.bashrc
export ES_HOME=/data/easysearch
EOF
source ~/.bashrc

#以后台方式启动服务
$ES_HOME/bin/easysearch -d

Easysearch 验证

curl -ku "admin:$pass" https://127.0.0.1:9200
curl -ku "admin:$pass" https://127.0.0.1:9200/_cluster/health?pretty
curl -ku "admin:$pass" https://127.0.0.1:9200/_cat/nodes?v

部署 Console

curl -sSL http://get.infini.sh | bash -s -- -p console

#安装服务并启动
cd /opt/console
./console-linux-arm64 -service install
./console-linux-arm64 -service start

#验证
systemctl status console

部署 Agent

curl -sSL http://get.infini.sh | bash -s -- -p agent

#修改Agent配置文件
cd /opt/agent
sed -i "/ES_ENDPOINT:/ s|\(.*\: \).*|\1$https://localhost:9200|" agent.yml
sed -i "/ES_USER:/ s|\(.*\: \).*|\1admin|" agent.yml
sed -i "/ES_PASS:/ s|\(.*\: \).*|\1$pass|" gateway.yml
sed -i "/API_BINDING:/ s|\(.*\: \).*|\1\"0.0.0.0:8080\"|" agent.yml
head -n 5 agent.yml

#安装服务并启动
./agent-linux-arm64 -service install
./agent-linux-arm64 -service start

#验证
systemctl status agent

部署 Gateway

curl -sSL http://get.infini.sh | bash -s -- -p gateway
cd /opt/gateway

#修改Gateway配置文件
sed -i "/ES_PASS:/ s|\(.*\: \).*|\1$pass|" gateway.yml
head -n 10 gateway.yml

#安装服务并启动
./gateway-linux-arm64 -service install
./gateway-linux-arm64 -service start

#检查服务
systemctl status gateway
curl -u "admin:$pass" http://127.0.0.1:8000

部署 Loadgen

curl -sSL http://get.infini.sh | bash -s -- -p loadgen

#写入数据测试
cd /opt/loadgen
mkdir -p mock
cat <<EOF > mock/nginx.log
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET / HTTP/1.1" 200 8676 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/bootstrap/css/bootstrap.css HTTP/1.1" 200 17235 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/daterangepicker/daterangepicker.css HTTP/1.1" 200 1700 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/fork-awesome/css/v5-compat.css HTTP/1.1" 200 2091 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /assets/font/raleway.css HTTP/1.1" 200 145 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/fork-awesome/css/fork-awesome.css HTTP/1.1" 200 8401 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /assets/css/overrides.css HTTP/1.1" 200 2524 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /assets/css/theme.css HTTP/1.1" 200 306 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/fancytree/css/ui.fancytree.css HTTP/1.1" 200 3456 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /syncthing/development/logbar.js HTTP/1.1" 200 486 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
EOF

cat <<EOF > loadgen.yml
env:
  ES_USERNAME: admin
  ES_PASSWORD: $pass
  ES_ENDPOINT: http://localhost:8000
runner:
  # total_rounds: 1
  no_warm: false
  # Whether to log all requests
  log_requests: false
  # Whether to log all requests with the specified response status
  log_status_codes:
    - 0
    - 500
  assert_invalid: false
  assert_error: false
variables:
  - name: ip
    type: file
    path: dict/ip.txt
  - name: message
    type: file
    path: mock/nginx.log
    replace: # replace special characters in the value
      '"': '\"'
      '\': '\\'
  - name: user
    type: file
    path: dict/user.txt
  - name: id
    type: sequence
  - name: uuid
    type: uuid
  - name: now_local
    type: now_local
  - name: now_utc
    type: now_utc
  - name: now_unix
    type: now_unix
  - name: suffix
    type: range
    from: 10
    to: 13
requests:
  - request:
      method: POST
      runtime_variables:
        batch_no: uuid
      runtime_body_line_variables:
        routing_no: uuid
      basic_auth:
        username: $[[env.ES_USERNAME]]
        password: $[[env.ES_PASSWORD]]
      url: $[[env.ES_ENDPOINT]]/_bulk
      body_repeat_times: 5000
      body: |
        { "index" : { "_index" : "test-$[[suffix]]", "_id" : "$[[uuid]]" } }
        { "id" : "$[[uuid]]","routing_no" : "$[[routing_no]]","batch_number" : "$[[batch_no]]","message" : "$[[message]]","random_no" : "$[[suffix]]","ip" : "$[[ip]]","now_local" : "$[[now_local]]","now_unix" : "$[[now_unix]]" }
EOF

#执行测试
./loadgen-linux-arm64 -c 6 -d 6 --compress

#检查测试索引文档
curl -u "admin:$pass" http://127.0.0.1:8000/_cat/indices/test*?v

至此,完成在 Kylin V10 (Lance)-aarch64 上安装单机版 Easysearch/Console/Agent/Gateway/Loadgen。通过浏览器 http://安装机器 IP:9000/ 即可访问 Console,对 Easysearch 进行配置管理。

继续阅读 »

简介

本文主要介绍在国产操作系统 Kylin V10 (Lance)-aarch64 上安装单机版 Easysearch/Console/Agent/Gateway/Loadgen

系统配置

在安装之前,需要先进行系统参数调整并创建操作用户,以下命令均需要使用 root 用户操作。

#配置nofile和memlock
tee /etc/security/limits.d/21-infini.conf <<-'EOF'
*                soft    nofile         1048576
*                hard    nofile         1048576
*                soft    memlock        unlimited
*                hard    memlock        unlimited
root             soft    nofile         1048576
root             hard    nofile         1048576
root             soft    memlock        unlimited
root             hard    memlock        unlimited
EOF

#关闭THP
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
grep -i HugePages_Total /proc/meminfo

grep -wq transparent_hugepage /etc/rc.local || cat <<-'EOF' >> /etc/rc.local

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
  echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
  echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
EOF
chmod 755 /etc/rc.local

#内核调优
tee /etc/sysctl.d/70-infini.conf <<-'EOF'
vm.max_map_count = 262145
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time = 900
net.ipv4.tcp_max_tw_buckets = 2000000
net.ipv4.ip_local_port_range = 1024 65535
EOF
sysctl -p /etc/sysctl.d/70-infini.conf

用户配置

#创建Easysearch操作用户
groupadd -g 602 es
useradd -u 602 -g es -m -d /home/es -c 'easysearch' -s /bin/bash es

配置 JDK

#在各个节点上分别操作
wget -N https://release.infinilabs.com/easysearch/jdk/zulu17.40.19-ca-jdk17.0.6-linux_aarch64.tar.gz -P /usr/src

mkdir -p /usr/local/jdk
tar -zxf /usr/src/zulu*.tar.gz -C /usr/local/jdk --strip-components 1

tee /etc/profile.d/java.sh <<-'EOF'
# set java environment
JAVA_HOME=/usr/local/jdk
CLASSPATH=$CLASSPATH:$JAVA_HOME/lib
PATH=$JAVA_HOME/bin:$PATH
export PATH JAVA_HOME CLASSPATH
EOF
source /etc/profile
java -version

Easysearch 部署

部署及密码配置

#在线安装
curl -sSL http://get.infini.sh | bash -s -- -p easysearch -d /data/easysearch
#初始化证书(若不采用默认证书,如需要调整证书可修改证书生成文件)
cd /data/easysearch
bin/initialize.sh
ll /data/easysearch/config/{*.crt,*.key,*.pem}

#调整默认密码及服务配置文件
export ES_HOME=/data/easysearch
pass=`tr -cd 'a-zA-Z0-9!@#$%' </dev/urandom | head -c20`
#记录密码后,删除该文件
echo $pass > /tmp/pass
hash=`$ES_HOME/bin/hash_password.sh -p $pass`
echo $hash

#更新密码字段
cat <<EOF > $ES_HOME/config/security/user.yml
meta:
  type: "user"
  config_version: 2

# Define your internal users here

## Admin users
admin:
  hash: "$hash"
  reserved: true
  external_roles:
    - "admin"
  description: "Admin user"
EOF

配置文件及 JVM 调整

cat <<EOF > /data/easysearch/config/easysearch.yml
cluster.name: infinilabs
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
transport.port: 9300
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

cluster.initial_master_nodes: ["node-1"]

path.home: /data/easysearch
path.data: /data/easysearch/data
path.logs: /data/easysearch/logs

http.compression: true

security.enabled: true
security.audit.type: noop
security.ssl.transport.cert_file: instance.crt
security.ssl.transport.key_file: instance.key
security.ssl.transport.ca_file: ca.crt
security.ssl.transport.skip_domain_verify: true
security.ssl.http.enabled: true
security.ssl.http.cert_file: instance.crt
security.ssl.http.key_file: instance.key
security.ssl.http.ca_file: ca.crt

security.allow_default_init_securityindex: true

security.nodes_dn:
  - 'CN=infini.cloud,OU=UNIT,O=ORG,L=NI,ST=FI,C=IN'

security.restapi.roles_enabled: [ "superuser", "security_rest_api_access" ]

security.system_indices.enabled: true
security.ssl.http.clientauth_mode: OPTIONAL
security.system_indices.indices: [".infini-*"]

#for admin dn
## specify admin certs to operate against system indices, basic_auth is not required
##  curl -k  --cert config/admin.crt --key config/admin.key   -XDELETE 'https://localhost:9200/.infini-*/'
security.authcz.admin_dn:
  - 'CN=admin.infini.cloud,OU=UNIT,O=ORG,L=NI,ST=FI,C=IN'
EOF

#根据实际机器内存的大小进行配置,推荐配置为机器内存一半,且不超过31G
sed -i "s/1g/4g/g" $ES_HOME/config/jvm.options

备份目录及权限调整

#创建备份目录
mkdir -p /data/easysearch/backup
#更新目录权限
chown -R es.es /data/easysearch

环境变量及启动服务

su - es
grep -wq easysearch ~/.bashrc || cat<<EOF >> ~/.bashrc
export ES_HOME=/data/easysearch
EOF
source ~/.bashrc

#以后台方式启动服务
$ES_HOME/bin/easysearch -d

Easysearch 验证

curl -ku "admin:$pass" https://127.0.0.1:9200
curl -ku "admin:$pass" https://127.0.0.1:9200/_cluster/health?pretty
curl -ku "admin:$pass" https://127.0.0.1:9200/_cat/nodes?v

部署 Console

curl -sSL http://get.infini.sh | bash -s -- -p console

#安装服务并启动
cd /opt/console
./console-linux-arm64 -service install
./console-linux-arm64 -service start

#验证
systemctl status console

部署 Agent

curl -sSL http://get.infini.sh | bash -s -- -p agent

#修改Agent配置文件
cd /opt/agent
sed -i "/ES_ENDPOINT:/ s|\(.*\: \).*|\1$https://localhost:9200|" agent.yml
sed -i "/ES_USER:/ s|\(.*\: \).*|\1admin|" agent.yml
sed -i "/ES_PASS:/ s|\(.*\: \).*|\1$pass|" gateway.yml
sed -i "/API_BINDING:/ s|\(.*\: \).*|\1\"0.0.0.0:8080\"|" agent.yml
head -n 5 agent.yml

#安装服务并启动
./agent-linux-arm64 -service install
./agent-linux-arm64 -service start

#验证
systemctl status agent

部署 Gateway

curl -sSL http://get.infini.sh | bash -s -- -p gateway
cd /opt/gateway

#修改Gateway配置文件
sed -i "/ES_PASS:/ s|\(.*\: \).*|\1$pass|" gateway.yml
head -n 10 gateway.yml

#安装服务并启动
./gateway-linux-arm64 -service install
./gateway-linux-arm64 -service start

#检查服务
systemctl status gateway
curl -u "admin:$pass" http://127.0.0.1:8000

部署 Loadgen

curl -sSL http://get.infini.sh | bash -s -- -p loadgen

#写入数据测试
cd /opt/loadgen
mkdir -p mock
cat <<EOF > mock/nginx.log
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET / HTTP/1.1" 200 8676 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/bootstrap/css/bootstrap.css HTTP/1.1" 200 17235 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/daterangepicker/daterangepicker.css HTTP/1.1" 200 1700 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/fork-awesome/css/v5-compat.css HTTP/1.1" 200 2091 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /assets/font/raleway.css HTTP/1.1" 200 145 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/fork-awesome/css/fork-awesome.css HTTP/1.1" 200 8401 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /assets/css/overrides.css HTTP/1.1" 200 2524 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /assets/css/theme.css HTTP/1.1" 200 306 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /vendor/fancytree/css/ui.fancytree.css HTTP/1.1" 200 3456 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
175.10.75.216 - - [28/Jul/2020:21:20:26 +0800] "GET /syncthing/development/logbar.js HTTP/1.1" 200 486 "http://dl-console.elasticsearch.cn/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
EOF

cat <<EOF > loadgen.yml
env:
  ES_USERNAME: admin
  ES_PASSWORD: $pass
  ES_ENDPOINT: http://localhost:8000
runner:
  # total_rounds: 1
  no_warm: false
  # Whether to log all requests
  log_requests: false
  # Whether to log all requests with the specified response status
  log_status_codes:
    - 0
    - 500
  assert_invalid: false
  assert_error: false
variables:
  - name: ip
    type: file
    path: dict/ip.txt
  - name: message
    type: file
    path: mock/nginx.log
    replace: # replace special characters in the value
      '"': '\"'
      '\': '\\'
  - name: user
    type: file
    path: dict/user.txt
  - name: id
    type: sequence
  - name: uuid
    type: uuid
  - name: now_local
    type: now_local
  - name: now_utc
    type: now_utc
  - name: now_unix
    type: now_unix
  - name: suffix
    type: range
    from: 10
    to: 13
requests:
  - request:
      method: POST
      runtime_variables:
        batch_no: uuid
      runtime_body_line_variables:
        routing_no: uuid
      basic_auth:
        username: $[[env.ES_USERNAME]]
        password: $[[env.ES_PASSWORD]]
      url: $[[env.ES_ENDPOINT]]/_bulk
      body_repeat_times: 5000
      body: |
        { "index" : { "_index" : "test-$[[suffix]]", "_id" : "$[[uuid]]" } }
        { "id" : "$[[uuid]]","routing_no" : "$[[routing_no]]","batch_number" : "$[[batch_no]]","message" : "$[[message]]","random_no" : "$[[suffix]]","ip" : "$[[ip]]","now_local" : "$[[now_local]]","now_unix" : "$[[now_unix]]" }
EOF

#执行测试
./loadgen-linux-arm64 -c 6 -d 6 --compress

#检查测试索引文档
curl -u "admin:$pass" http://127.0.0.1:8000/_cat/indices/test*?v

至此,完成在 Kylin V10 (Lance)-aarch64 上安装单机版 Easysearch/Console/Agent/Gateway/Loadgen。通过浏览器 http://安装机器 IP:9000/ 即可访问 Console,对 Easysearch 进行配置管理。

收起阅读 »

INFINI Easysearch 完成龙芯架构兼容性认证

近日,极限科技旗下软件产品 INFINI Easysearch 搜索引擎软件 V1.0 在龙芯中科的龙芯 3C5000L 平台上完成兼容性测试,功能与稳定性良好,并获得龙架构兼容互认证书。

龙芯是中国自主可控计算机处理器的代表品牌之一。龙芯处理器是由中国科学院计算技术研究所自主研发的一款高性能、低功耗、安全可靠的处理器。龙芯 3C5000L 是龙芯中科专门面向服务器领域的通用处理器。基于龙芯 3A5000 处理器,片上集成共 16 个高性能 LA464 处理器核,采用全新的龙芯自主指令系统(LoongArch®),在提高集成度的同时保持系统和软件与龙芯 3A5000 完全兼容。

极限科技研发的 INFINI Easysearch 是一个分布式的近实时搜索与分析引擎,核心引擎基于开源的 Apache Lucene。 同时也是一款具备自主可控的分布式近实时搜索型数据库产品,具备高性能、高可用、弹性伸缩、高安全性等特性,具备支持丰富的个性化搜索及聚合分析能力,可部署在物理机、虚拟机、容器、私有云和公有云,能承载 PB 级别的海量业务数据,为金融核心系统、运营商、制造业和政企业务系统提供安全、稳定、可靠的快速检索和实时数据探索分析能力,可满足不同业务场景的各项复杂需求。

此次通过龙芯架构(LoongArch)的兼容性测试,有效验证了 Easysearch 对于国产化 CPU 的互操作性与可靠性。此外,Easysearch 也实现了对麒麟、统信、欧拉等国产操作系统的支持。未来,极限科技将继续加强与各大厂商的合作,深化对国产化软硬件技术栈的支持能力,为用户提供更加优质、稳定、高效、安全的搜索服务。

关于极限科技(INFINI Labs)

关于极限科技

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。

极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。

详情参见官网:https://www.infinilabs.com

继续阅读 »

近日,极限科技旗下软件产品 INFINI Easysearch 搜索引擎软件 V1.0 在龙芯中科的龙芯 3C5000L 平台上完成兼容性测试,功能与稳定性良好,并获得龙架构兼容互认证书。

龙芯是中国自主可控计算机处理器的代表品牌之一。龙芯处理器是由中国科学院计算技术研究所自主研发的一款高性能、低功耗、安全可靠的处理器。龙芯 3C5000L 是龙芯中科专门面向服务器领域的通用处理器。基于龙芯 3A5000 处理器,片上集成共 16 个高性能 LA464 处理器核,采用全新的龙芯自主指令系统(LoongArch®),在提高集成度的同时保持系统和软件与龙芯 3A5000 完全兼容。

极限科技研发的 INFINI Easysearch 是一个分布式的近实时搜索与分析引擎,核心引擎基于开源的 Apache Lucene。 同时也是一款具备自主可控的分布式近实时搜索型数据库产品,具备高性能、高可用、弹性伸缩、高安全性等特性,具备支持丰富的个性化搜索及聚合分析能力,可部署在物理机、虚拟机、容器、私有云和公有云,能承载 PB 级别的海量业务数据,为金融核心系统、运营商、制造业和政企业务系统提供安全、稳定、可靠的快速检索和实时数据探索分析能力,可满足不同业务场景的各项复杂需求。

此次通过龙芯架构(LoongArch)的兼容性测试,有效验证了 Easysearch 对于国产化 CPU 的互操作性与可靠性。此外,Easysearch 也实现了对麒麟、统信、欧拉等国产操作系统的支持。未来,极限科技将继续加强与各大厂商的合作,深化对国产化软硬件技术栈的支持能力,为用户提供更加优质、稳定、高效、安全的搜索服务。

关于极限科技(INFINI Labs)

关于极限科技

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。

极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。

详情参见官网:https://www.infinilabs.com

收起阅读 »

社区日报 第1641期 (2023-06-06)

1. 是不是可以用TiDB 代替普通的RDS+ES?(需要梯子)
https://medium.com/%40shenli35 ... b7f30

2. 构建可拓展的搜索系统(需要梯子)
https://blog.devgenius.io/sear ... a2d34

3. 持久化k8s event,你还能这样做(需要梯子)
https://medium.com/%40andrew.k ... 5cc45

编辑:斯蒂文
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili
继续阅读 »
1. 是不是可以用TiDB 代替普通的RDS+ES?(需要梯子)
https://medium.com/%40shenli35 ... b7f30

2. 构建可拓展的搜索系统(需要梯子)
https://blog.devgenius.io/sear ... a2d34

3. 持久化k8s event,你还能这样做(需要梯子)
https://medium.com/%40andrew.k ... 5cc45

编辑:斯蒂文
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili
收起阅读 »

社区日报 第1640期 (2023-06-05)

1. Elasticsearch 地理位置查询
   https://blog.51cto.com/u_10535186/5382523
2. Elasticsearch 预处理
   https://blog.csdn.net/laoyang3 ... 28606
3. Elasticsearch:异步搜索
   https://blog.csdn.net/UbuntuTo ... 64176
编辑:yuebancanghai
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili
继续阅读 »
1. Elasticsearch 地理位置查询
   https://blog.51cto.com/u_10535186/5382523
2. Elasticsearch 预处理
   https://blog.csdn.net/laoyang3 ... 28606
3. Elasticsearch:异步搜索
   https://blog.csdn.net/UbuntuTo ... 64176
编辑:yuebancanghai
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili 收起阅读 »

社区日报 第1639期 (2023-06-01)

1.在 GKE 上使用 Bitnami helm Chart 安装 Elasticsearch(需要梯子)
https://medium.com/%40domainad ... 6b7e1
2.RediSearch vs Elasticsearch(需要梯子)
https://medium.com/%40aytuncca ... 3222f
3.如何将 GitHub 高级安全警报与 Elasticsearch 集成(需要梯子)
https://blog.devgenius.io/how- ... 44cb4

编辑:Se7en
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili
继续阅读 »
1.在 GKE 上使用 Bitnami helm Chart 安装 Elasticsearch(需要梯子)
https://medium.com/%40domainad ... 6b7e1
2.RediSearch vs Elasticsearch(需要梯子)
https://medium.com/%40aytuncca ... 3222f
3.如何将 GitHub 高级安全警报与 Elasticsearch 集成(需要梯子)
https://blog.devgenius.io/how- ... 44cb4

编辑:Se7en
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili 收起阅读 »

社区日报 第1638期 (2023-05-31)

1.Elasticsearch:使用字节大小的向量节省空间 
https://blog.csdn.net/UbuntuTo ... 39327
2.Elasticsearch 实现distinct计算方法(需要梯子)
https://pratik-patil.medium.co ... ad4a7
3.使用 LangChain 和 Elasticsearch 的隐私优先 AI 搜索
https://blog.csdn.net/UbuntuTo ... 40333

编辑:kin122
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili
继续阅读 »
1.Elasticsearch:使用字节大小的向量节省空间 
https://blog.csdn.net/UbuntuTo ... 39327
2.Elasticsearch 实现distinct计算方法(需要梯子)
https://pratik-patil.medium.co ... ad4a7
3.使用 LangChain 和 Elasticsearch 的隐私优先 AI 搜索
https://blog.csdn.net/UbuntuTo ... 40333

编辑:kin122
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili 收起阅读 »

社区日报 第1637期 (2023-05-30)

1. 原来K + E可以用kubeDB来部署(需要梯子)
https://medium.com/appscode/de ... 20dd0
2. 多领域数据是怎么打破数据孤岛的?(需要梯子)
https://medium.com/ownbackup/b ... e932d
3. 为啥用了倒排索引,日志搜索可以嗖嗖的(需要梯子)
https://blog.devgenius.io/what ... 81d20
编辑:斯蒂文
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili
 
继续阅读 »
1. 原来K + E可以用kubeDB来部署(需要梯子)
https://medium.com/appscode/de ... 20dd0
2. 多领域数据是怎么打破数据孤岛的?(需要梯子)
https://medium.com/ownbackup/b ... e932d
3. 为啥用了倒排索引,日志搜索可以嗖嗖的(需要梯子)
https://blog.devgenius.io/what ... 81d20
编辑:斯蒂文
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站: https://ela.st/bilibili
  收起阅读 »

社区日报 第1636期 (2023-05-29)

1. ElasticSearch 垃圾回收器优化
   https://blog.csdn.net/wwd0501/ ... 84146
2. 使用 Elastic 机器学习进行 data frame 分析
   https://blog.csdn.net/UbuntuTo ... 90329
3. Elasticsearch 电商实战经验深度复盘
   https://blog.51cto.com/u_14886891/5283265
编辑:yuebancanghai
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili
继续阅读 »
1. ElasticSearch 垃圾回收器优化
   https://blog.csdn.net/wwd0501/ ... 84146
2. 使用 Elastic 机器学习进行 data frame 分析
   https://blog.csdn.net/UbuntuTo ... 90329
3. Elasticsearch 电商实战经验深度复盘
   https://blog.51cto.com/u_14886891/5283265
编辑:yuebancanghai
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
B站:https://ela.st/bilibili 收起阅读 »

INFINI Labs 产品更新 | Console 新增数据比对、新增数据看板表格组件及支持下钻功能等

INFINI Labs 产品更新啦~,本次产品版本更新包括 Gateway v1.14.0、Console v1.2.0、Easysearch v1.1.1 等,其中 Console 在上一版基础上做了很多优化改进以及新增了一些特性,如新增数据比对校验功能、数据看板模块新增了表格组件、图表组件支持下钻功能等。欢迎下载体验。

INFINI Gateway v1.14.0

极限网关本次更新如下:

Features

  • 支持自定义服务名称
  • metrics 增加实例 user_in_ms 和 sys_in_ms 采集
  • elasticsearch 增加 dial_timeout 选项

Bug Fix

  • 修复网关开启实时日志推送后命令行日志无法输出的问题
  • logging 修复 min_elapsed_time_in_ms 选项不生效的问题
  • 修复一个消费闲置队列造成 CPU 占用高的问题

更多更新参见【 Gateway 版本历史 】。

INFINI Console v1.2.0

Console 本次更新如下:

数据比对

数据比对目前支持跨集群索引全量数据校验,常用于索引数据迁移之后,校验两端的数据是否一致,保障数据迁移的正确性。通过 UI 界面创建数据校验任务和管理。

进入校验任务详情,能够可视化展示分区子任务的进度,不同的颜色方块表示进度状态,如绿色表示校验成功、红色表示校验失败,如失败了可以查看 log 日志进行错误原因定位。

具体操作参见:教程

数据看板

Console 数据看板模块新增了表格组件,进一步扩展 Dashboard 看板图表多样化,增强数据可视化能力。详情查看 操作演示视频

同时,数据看板模块新增了下钻功能,支持图表组件配置自定义下钻 URL 链接,在图表组件上进行时间范围框选后即可点击下钻按钮进行链接跳转。详情查看 操作演示视频

告警模板支持环境变量

新版 Console 支持解析系统环境变量和配置文件中配置的环境变量。在配置告警规则消息内容时可通过 {{$.env.VARIABLE}} 方式设置环境变量,详情参见:教程

除了以上主要新增功能外,Console 其他更新如下:

Bug fix

  • 修复数据看板组件复制的问题
  • 修复开启实时推送日志后,不写文件日志的问题
  • 修复初始化时,系统集群没有索引,节点元数据的问题
  • 修复网关重启后,数据迁移任务无法结束的问题
  • 修复数据迁移任务统计数据重复的问题
  • 修复数据探索列表时间字段排序问题

Improvements

  • 告警规则表达式显示优化
  • 优化数据迁移任务调度流程,减少 ES 调用次数
  • 数据迁移任务增加跳过 scroll/bulk 文档数检查选项

更多更新参见【 Console 版本历史 】。

INFINI Framework

INFINI Framework 作为 INFINI Search Platform 各产品组件的公共框架模块,其更新如下:

Features

  • 支持自定义服务名称,可用于单机多实例部署
  • 新增统计接口别名:/stats/prometheus

INFINI Easysearch v1.1.1

Easysearch 是一个分布式的近实时搜索与分析引擎,核心引擎基于开源的 Apache Lucene。Easysearch 衍生自基于开源协议 Apache 2.0 的 Elasticsearch 7.10.2 版本。本次主要更新如下:

Bug fix

  • 修复模板别名在某些场景不生效的 Bug
  • 防止 BigArray 在某些场景发生内存泄漏
  • 修复 SourceValueFetcher 可能遗漏字段的 Bug

Improvements

  • easysearch.yml 增加 elasticsearch.api_compatibility 配置项,兼容 logstash-oss,filebeat-oss,apm-server-oss 等 elasticsearch 的客户端

更多更新参见【 Easysearch 版本历史 】。

期待反馈

欢迎下载体验使用,如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github(https://github.com/infinilabs) 中的对应项目中提交 Feature Request 或提交 Bug。

您还可以通过邮件联系我们:hello@infini.ltd

或者拨打我们的热线电话:(+86) 400-139-9200

也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群讨论,或者扫码加入我们的知识星球一起学习交流。

联系我们

最后祝大家周末愉快!

关于极限科技(INFINI Labs)

关于极限科技

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。

极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。

继续阅读 »

INFINI Labs 产品更新啦~,本次产品版本更新包括 Gateway v1.14.0、Console v1.2.0、Easysearch v1.1.1 等,其中 Console 在上一版基础上做了很多优化改进以及新增了一些特性,如新增数据比对校验功能、数据看板模块新增了表格组件、图表组件支持下钻功能等。欢迎下载体验。

INFINI Gateway v1.14.0

极限网关本次更新如下:

Features

  • 支持自定义服务名称
  • metrics 增加实例 user_in_ms 和 sys_in_ms 采集
  • elasticsearch 增加 dial_timeout 选项

Bug Fix

  • 修复网关开启实时日志推送后命令行日志无法输出的问题
  • logging 修复 min_elapsed_time_in_ms 选项不生效的问题
  • 修复一个消费闲置队列造成 CPU 占用高的问题

更多更新参见【 Gateway 版本历史 】。

INFINI Console v1.2.0

Console 本次更新如下:

数据比对

数据比对目前支持跨集群索引全量数据校验,常用于索引数据迁移之后,校验两端的数据是否一致,保障数据迁移的正确性。通过 UI 界面创建数据校验任务和管理。

进入校验任务详情,能够可视化展示分区子任务的进度,不同的颜色方块表示进度状态,如绿色表示校验成功、红色表示校验失败,如失败了可以查看 log 日志进行错误原因定位。

具体操作参见:教程

数据看板

Console 数据看板模块新增了表格组件,进一步扩展 Dashboard 看板图表多样化,增强数据可视化能力。详情查看 操作演示视频

同时,数据看板模块新增了下钻功能,支持图表组件配置自定义下钻 URL 链接,在图表组件上进行时间范围框选后即可点击下钻按钮进行链接跳转。详情查看 操作演示视频

告警模板支持环境变量

新版 Console 支持解析系统环境变量和配置文件中配置的环境变量。在配置告警规则消息内容时可通过 {{$.env.VARIABLE}} 方式设置环境变量,详情参见:教程

除了以上主要新增功能外,Console 其他更新如下:

Bug fix

  • 修复数据看板组件复制的问题
  • 修复开启实时推送日志后,不写文件日志的问题
  • 修复初始化时,系统集群没有索引,节点元数据的问题
  • 修复网关重启后,数据迁移任务无法结束的问题
  • 修复数据迁移任务统计数据重复的问题
  • 修复数据探索列表时间字段排序问题

Improvements

  • 告警规则表达式显示优化
  • 优化数据迁移任务调度流程,减少 ES 调用次数
  • 数据迁移任务增加跳过 scroll/bulk 文档数检查选项

更多更新参见【 Console 版本历史 】。

INFINI Framework

INFINI Framework 作为 INFINI Search Platform 各产品组件的公共框架模块,其更新如下:

Features

  • 支持自定义服务名称,可用于单机多实例部署
  • 新增统计接口别名:/stats/prometheus

INFINI Easysearch v1.1.1

Easysearch 是一个分布式的近实时搜索与分析引擎,核心引擎基于开源的 Apache Lucene。Easysearch 衍生自基于开源协议 Apache 2.0 的 Elasticsearch 7.10.2 版本。本次主要更新如下:

Bug fix

  • 修复模板别名在某些场景不生效的 Bug
  • 防止 BigArray 在某些场景发生内存泄漏
  • 修复 SourceValueFetcher 可能遗漏字段的 Bug

Improvements

  • easysearch.yml 增加 elasticsearch.api_compatibility 配置项,兼容 logstash-oss,filebeat-oss,apm-server-oss 等 elasticsearch 的客户端

更多更新参见【 Easysearch 版本历史 】。

期待反馈

欢迎下载体验使用,如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github(https://github.com/infinilabs) 中的对应项目中提交 Feature Request 或提交 Bug。

您还可以通过邮件联系我们:hello@infini.ltd

或者拨打我们的热线电话:(+86) 400-139-9200

也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群讨论,或者扫码加入我们的知识星球一起学习交流。

联系我们

最后祝大家周末愉快!

关于极限科技(INFINI Labs)

关于极限科技

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。

极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。

收起阅读 »