OpenNJet v3.3.1 发布,云原生应用引擎
OpenNJet v3.3.1 已经发布,云原生应用引擎。
新功能
- 深层清理Lua代码
- http ssl模块新增一个指令ssl_certificate_management 用于证书续签功能配置
- 新增helper程序cert-manager,支持ACME协议,实现自动证书管理
功能优化
- http/stream vs 不允许重名
- Http 动态添加ssl VS 时,检查是否配置证书。
Bug fix
- 修复njt_stream_ftp_proxy_module 头文件中宏定义错误
- 修复upstream api 添加ip 时,指定service 字段,提示为:route 字段。
- 修复upstream api 解析fail_timeout,slow_start 字段,错误格式,被解析为 -1 的bug。
- 修复编译时openapi_parser_module没有被编译的错误。
- 修复动态location proxy_set_header 动态新变量不生效的bug
- Http 添加动态upstream,hash 算法无法获取新变量值的bug
- 修复了api gateway通过Open API 3.0 格式文档导入API接口时,报internal error错误
遗留已知问题
- tcp流量劫持基于iptables nat表prerouting添加规则,只针对外部访问(非本机ip)的数据做流量劫持
- HA/MA 配置同步关于命令式api 动态删除location消息同步存在问题
- 应用加速功能,删除location后本地缓存文件没有立马同步清理
- 配置沙箱进程,在NJet 可执行文件热升级时,无法在旧的沙箱进程退出后,再启动新的配置沙箱
- 动态VS,只能在存在的listen 上添加VS ,该功能不能创建listen
- 动态VS,不支持zone、 location、ssl_ocsp、ssl_stapling、quic 指令
- 动态VS,不支持动态创建 新的error_log、access_log 文件
- 动态location,不支持zone 指令
- 动态SSL证书添加时必须有初始证书,通过动态VS添加的ssl server,如果未配置初始证书,通过动态ssl接口添加证书会添加失败
- 显示location的api,配置if和limit_except时,存在显示异常
rpm包安装
下面是centos系统使用步骤(其他系统需要从下载链接选择对应合适的安装包)
- 下载 njet-3.3.1-1.el7.x86_64.rpm安装包
- 上传文件到待安装主机
- sudo yum localinstall ./njet-3.3.1-1.el7.x86_64.rpm
- systemctl start njet
otel安装包为opentelemetry模块的安装包(如果需要该功能,从下载连接选择对应的安装包安装即可) captcha安装包是动态验证码模块的安装包(如果需要该功能,从下载连接选择对应的安装包安装即可) OpenNJet ubuntu deb安装包基于18.04版本编译,可在ubuntu20、ubuntu22上安装使用
已安装 njet 的 ubuntu , 升级njet 包: sudo systemctl stop njet sudo apt-get update sudo apt install --only-upgrade njet
docker方式运行
可使用如下命令启动运行: docker run -d --rm --privileged tmlake/njet:3.3.1 详细运行方法参考: https://njet.org.cn/cases/njet-docker/
下载列表安装包说明:
-
njet: OpenNJet 安装包
- .deb 适用ubuntu系统
- el7.x86_64.rpm 适用centos系统
- .ky10.x86_64.rpm 适用kylin麒麟系统
- .an8.loongarch64.rpm 适用龙芯系统
-
njet_python_wsgi: 支持python脚本及wsgi应用的模块 安装包
- .deb 适用ubuntu系统
- el7.x86_64.rpm 适用centos系统
- .ky10.x86_64.rpm 适用kylin麒麟系统
-
njet_otel: telemetry 模块(链路追踪)安装包
- .deb 适用ubuntu系统
- el7.x86_64.rpm 适用centos系统
- .ky10.x86_64.rpm 适用kylin麒麟系统
-
njet_captcha: 动态验证码认证模块 可以针对location 设定访问频率,当某个location 被恶意的频繁访问时,可以根据配置, 对访问频率超过一定次数的client_ip,动态的弹出认证页面,手动输入验证码,解除限制
- .deb 适用ubuntu系统
- el7.x86_64.rpm 适用centos系统
- .ky10.x86_64.rpm 适用kylin麒麟系统
-
portal_1.0.2_noarch.npk: Portal 应用管理模块(系统无关)
-
ssh_remote_mod.so: Portal 需要的Lua 额外模块(系统无关)
-
cert-manager: 支持ACME协议,实现自动证书管理
- cert-manager-arm64 适用arm64
- cert-manager 适用x86-64
- cert-manager-loongarch64 适用LoongArch
-
registry-sync: 从配置中心同步服务的实例信息,并自动更新到NJet 的Upstream中, 目前只支持etcd
- registry-sync-arm64 适用arm64
- registry-sync 适用x86-64
- registry-sync-loongarch64 适用LoongArch