夜雨聆风学习资料网

ARTICLE · 1246761

OpenSearch 插件开发与部署,四步走完

OpenSearch 插件开发与部署,四步走完
给 OpenSearch Dashboards 加一个自己的页面或功能,听上去像是要啃一套陌生框架。实际流程拆开只有四步:建项目、打 ZIP 包、装到服务器、注册菜单入口。这篇按顺序讲一遍,顺带说说每步容易出问题的地方。

一、第一步:创建插件项目

推荐使用 OpenSearch Dashboards 官方提供的插件生成工具。具体的开发指南可以看 OpenSearch Dashboards Developer Guide。

通常的开发流程是:

 1. 准备 Node.js、Yarn 和对应版本的 OpenSearch Dashboards 源码环境。

 2. 使用插件生成器创建项目。

 3. 开发 React / TypeScript 页面、菜单入口和相关接口。

 4. 本地启动 Dashboards,调试插件。

这一步里要紧的是版本对齐。Dashboards 的插件机制和宿主版本绑定很紧,源码环境、Node 和 Yarn 的版本如果和目标 Dashboards 版本不一致,后面打包和安装大概率会出问题。

二、第二步:编译打包

在插件项目的开发环境中,根据生成项目提供的脚本构建。例如:

yarn build

符合当前版本开发工具要求的项目,可以使用 plugin-helpers 生成安装包:

yarn plugin-helpers build --opensearch-dashboards-version="3.0.0"

生成的 ZIP 包通常位于项目的 build 目录下。具体命令以你的插件项目脚本为准。

这里的 --opensearch-dashboards-version 参数就是给打包用的目标版本。它要和目标集群上实际运行的 Dashboards 版本一致,否则安装时会被版本校验拦下来。

三、第三步:安装到 Dashboards

将 ZIP 包上传到运行 Dashboards 的服务器,例如:

/home/applog/plugins/my-ai-plugin.zip

先备份配置,并安排好维护窗口,再执行安装:

cd /home/applog/opensearch-dashboards-3.0.0 bin/opensearch-dashboards-plugin install file:///home/applog/plugins/my-ai-plugin.zip

如果安装工具要求以 root 运行,RPM/DEB 安装方式可按官方说明使用 sudo 和 --allow-root;压缩包安装方式则应按实际运行用户执行。

安装后重启 Dashboards 服务:

sudo systemctl restart opensearch-dashboards

重启完先别急着打开页面,检查启动日志,确认没有插件加载或版本兼容错误。安装命令和版本匹配要求参见官方插件管理文档。

这一步有两个细节值得注意:一是备份配置和安排维护窗口要放在执行安装之前,因为重启会中断正在使用的用户;二是压缩包方式和 RPM/DEB 方式的权限要求不同,别把 --allow-root 直接套到压缩包场景上。

四、第四步:在页面上显示插件

插件需要在代码中注册导航菜单和应用页面。安装成功后,用户登录 Dashboards,就可以通过新增的菜单入口访问插件。

如果插件要查询 OpenSearch 数据,还需要正确处理认证、权限、请求接口和错误信息。

换句话说,装上了不等于能用。真正要在生产环境跑起来,还得把「插件以什么身份访问 OpenSearch、能看到哪些索引、请求失败时怎么提示」这几件事想清楚。

五、四步之外,上线前值得再确认的几件事

把整个流程收一下,上线前建议逐项过一遍:

 1. 插件项目的 Node、Yarn 版本,与目标 Dashboards 版本是否严格对齐。

 2. 打包时的 --opensearch-dashboards-version 是否等于线上版本。

 3. 安装前是否已备份配置、是否已通知受影响的用户。

 4. 重启后启动日志里有没有插件加载失败或版本不兼容的报错。

 5. 插件访问 OpenSearch 所用的认证方式与权限范围是否已经配置到位。

这五条对上了,插件基本就能稳定跑起来。剩下的就是业务逻辑本身。

#OpenSearch #Dashboards #插件开发 #前端 #运维 #可观测性

相关学习资料