Rainbond 5.1.8发布,应用网关支持多IP网络接入

2019年10月23日,Rainbond发布5.1.8版本,本次版本更新带来了应用网关对多IP的支持, 第三方组件对域名实例的支持 等新功能和修复若干BUG。node

  • Rainbond:支撑企业应用的开发、架构、交付和运维的全流程,经过“无侵入”架构无缝衔接各种企业应用,底层资源能够对接和管理IaaS、虚拟机和物理服务器。 Rainbond是什么?
  • 发布版本:5.1.8
  • 版本更新:推荐
  • 更新范围:应用网关,第三方组件

应用网关支持多IP

应用网关是外部流量进入租户空间应用组件的惟一入口, 提供HTTP, HTTPs路由, TCP/UDP服务, 负载均衡器, 高级路由(A/B测试, 灰度发布)等功能。git

在5.1.8之前, 全部的TCP/UDP类策略绑定的IP:PORT都是0.0.0.0:port, 这样一个端口只能给一个程序使用。且多个网关节点配置彻底等价,咱们服务器的端口是有限的(最大65535),于是带来了规则数量上限。 在当前版本中咱们引入第二个变量IP地址,全部网关节点动态上报当前节点的可用IP地址供用户选择,从而带来了如下的功能:github

  • 内外网隔离: 网关节点通常处于内外网结合点,南向面对内网网络,北向面对外网网络。由不一样的IP地址来呈现,选择不一样的IP地址造成内外网隔离的特性。
  • 定向网关: 部分用户场景中须要针对部分服务有独立的访问入口,好比特殊的租户或特殊的接入网络等。
  • 跨团队通讯: 默认状况下团队间服务不能直接通讯,但其能够经过应用网关的中转通讯。
  • 虚拟IP的支持: 虚拟IP是变化的,可能在多个网关服务上迁移,支持定向绑定虚拟IP的端口是灵活的解决方案。

第三方组件支持域名实例

运行于Rainbond集群以外,运行生命周期不受Rainbond管理,且在网络上可以与Rainbond集群通讯的组件称为第三方组件。例如单独运行的MySQL服务,或运行于Windows服务器的.net服务等。web

在云计算的环境中, 各个云服务商都推出了许多云服务, 好比: 阿里云的云数据库 RDS MySQL 版, 云数据库 Redis 版, 云数据库 MongoDB 版 和 亚马逊的 Elasticsearch Service. 这些云服务提供的公网链接地址都是域名docker

为了方便用户将实例地址为域名的第三方组件加入到 Rainbond 中, 在这次迭代中, 第三方组件在只支持IP实例的基础上增长了域名实例。Rainbond ServiceMesh层能够动态解析域名并加载通讯地址,第三方组件健康检测器也增长了对域名的支持。数据库

其余功能改进和BUG修复

  • 应用支持带插件备份和恢复
  • 规范产品抽象描述 #266
  • 离线模式下优化云端应用市场页面的网络故障展现。
  • 建立或更新应用时,有几率出现没法点击“查看日志” #214
  • 多实例组件在线缩容,组件状态不停进入启动中 #460
  • 自定义域名 一旦绑定,在网关策略选项中修改其配置时,会被认为 是违法域名,禁止修改 #461
  • 应用共享其余服务存储设置后不生效 #456
  • 5.1.7在建立应用时没法正确保存ARG参数 #453
  • 使用svn从源码建立,平台识别路径错误 #444
  • 对环境变量命名的检测问题 #391
  • 环境变量删除失败,操做无响应 #434
  • 经过源码建立应用时,使用https链接,仓库地址前加空格平台会断定为ssh链接 #224
  • 组件日志打印无缩进 #217
  • 应用发布到应用市场时添加的应用图标没法预览 #215
  • .Netcore 语言源码构建,cmd 参数没有被传递致使运行异常 #447

安装

> 参考Rainbond安装文档指南api

升级

升级要求和注意事项
  • V5.1.8版本支持从V5.1.2 - V5.1.7版本升级,若是你还未升级到V5.1.2版本,参考V5.1.x版本升级文档,先升级至V5.1.2版本:bash

    grctl version, 例如5.1.7版本显示以下:grctl version v5.1.7-release-afa0e36-2019-09-11-00服务器

  • 升级过程会重启管理服务,所以单管理节点的集群会短暂影响控制台操做和应用访问,请选择合理的升级时间段。网络

  • 升级过程脚本须要从集群获取节点数据,请务必在集群正常工做状况下进行升级。

  • 升级前请备份控制台和数据中心数据库。

  • 升级过程的主要耗时点是解压升级包和导入服务镜像的过程,根据你的服务器写入速度而定。

  • 若是你手动调整过/opt/rainbond/conf下的服务配置文件致使升级失败请到社区咨询。

下载 5.1.8 更新包

离线包镜像大小约1.3GB,须要保证当前集群磁盘可用空间至少不低于2G

# Rainbond 组件升级包
wget https://pkg.rainbond.com/offline/5.1/rainbond.images.2019-10-20-5.1.8.tgz -O /grdata/services/offline/rainbond.images.upgrade.5.1.8.tgz

# 升级脚本包
wget https://pkg.rainbond.com/offline/5.1/rainbond-ansible.upgrade.5.1.8.tgz -O /grdata/services/offline/rainbond-ansible.upgrade.5.1.8.tgz
第一个管理节点执行下述命令升级平台

再次提醒,升级前系统比较运行正常,升级过程耗时取决于你的系统磁盘写入速度,脚本未成功以前请勿主动终止升级。

rm -rf  /tmp/rainbond-ansible
rm -rf /grdata/services/offline/upgrade
mkdir -p /tmp/rainbond-ansible
tar xf /grdata/services/offline/rainbond-ansible.upgrade.5.1.8.tgz -C /tmp/rainbond-ansible
cd /tmp/rainbond-ansible/scripts/upgrade/
bash ./upgrade.sh
平台升级完成验证
  • 执行 grctl cluster肯定全部服务和节点运行正常

  • 执行grctl version命令 确认版本已升级到5.1.8

  • 执行dps命令查看如下组件运行使用的镜像版本是否为v5.1.8-release

组件 版本
rbd-worker v5.1.8-release
rbd-api v5.1.8-release
rbd-app-ui v5.1.8-release
rbd-chaos v5.1.8-release
rbd-eventlog v5.1.8-release
rbd-gateway v5.1.8-release
rbd-monitor v5.1.8-release
rbd-webcli v5.1.8-release
rbd-mq v5.1.8-release

升级常见问题排查

  • 升级后以上镜像版本没有变化

下面以rbd-api组件为例,升级后镜像版本停留在旧版本,手动更新单个组件

# 从新拉取rbd-api镜像
docker pull rainbond/rbd-api:v5.1.8-release
# 修改镜像tag
docker tag rainbond/rbd-api:v5.1.8-release goodrain.me/rbd-api:v5.1.8-release
# 找到rbd-api配置文件/opt/rainbond/conf/master.yaml
修改-i指定的rbd-api镜像信息为goodrain.me/rbd-api:v5.1.8-release

# 更新node节点上的服务
 node service update
# 此时从新查看组件运行使用的镜像版本应为修改后的镜像版本,查看集群状态健康,到此完成手动更新

升级若有问题,请至[社区反馈](

相关文章
相关标签/搜索