Rainbond:如何制做一个可分享的云市应用?

应用是Rainbond可管理的最小服务单元,用户能够将多个应用组成一个复杂的业务系统,这套业务系统能够对外提供服务,也能够分享给其余组织独立部署。本文将会经过Solo+Pinpoint(Pinpoint-java性能分析最佳实践)这个例子,演示“如何制做一个可分享的云市应用”, 分享后的应用可供团队、公司或云市的用户一键安装部署完整的服务体系,实现标准化得一键交付部署。html

对于尚未了解Rainbond,或者尚未成功安装Rainbond的同窗,建议先到如下的两个连接进行学习:java

建立应用

应用的建立有3种方式,分别是从源码建立、从Docker镜像建立和从应用市场安装,详情请参见:建立一个应用git

接下来将会用从源码建立和从应用市场安装——github

同步应用到内部市场

若是内部市场里没有要建立的应用,则须要先从云端下载。docker

建立应用

首先,经过从应用市场(应用市场是好雨提供的一项公有云服务,提供了经常使用的开发应用及工具)安装的方式装Pinpoint。这是在云帮平台上部署应用很是简单的一种方式。这种部署方式对于像pinpoint这种多组件的复杂应用来讲,最大程度的下降了部署难度与工做量。数据库

  • 进入Rainbond,选择【从云市安装】
  • 在搜索栏中搜索【pinpoint】
  • 选择已有的【应用组】,或者建立一个新的【应用组】
  • 点击【肯定】,等待一小段时间后,应用就部署完成了

而后,再以一样的方法建立MySQL(由于Solo须要依赖于MySQL)浏览器

最后,用源码建立应用的方式建立Solo。安全

  • 点击【建立应用】--【从源码建立】
  • 填写应用名称、应用名、仓库地址和代码版本等信息
  • 点击【肯定】

这种方式会有一个应用检测的过程,这个过程时间有点长,咱们直接跳过,进入高级设置。服务器

在高级设置中,须要开启对外服务、添加环境变量、添加服务依赖和设置内存信息:微信

  • 开启对外服务,这样咱们才能够经过浏览器访问应用。
  • 添加环境变量ENABLE_APM = true和APP_NAME = Solov999,这样Solo才能够和Pinpoint关联起来。

传统架构下的pinpoint,须要在被监控的对象里附加Agent,并经过修改配置文件使之生效。在云帮平台上,咱们将这两个步骤也作了相应的简化。 由 好雨官方OpenJDK镜像 为基础制做的应用,都默认集成了Pinpoint-Agent,不须要二次安装。 云帮平台利用设置 环境变量 的方式,代替了配置文件,键值对形式的环境变量很是简单易用。

  • 分别添加MySQL和Pinpoint-Collector两个服务依赖。
  • 设置内存为1G(能够根据实际状况进行调整)。

整个应用的建立已经完成,接下来就能够访问刚刚安装好的应用了

访问solo——

经过Pinpoint监控Solo——

因为Pinpoint-Web的实时监控功能是用Websocket实现的,而Rainbond的负载均衡组件还没有支持Websocket,因此须要将Pinpoint-Web的访问方式从Http改为Tcp。不然没法使用Pinpoint-Web的实时监控功能。

能够看到,能够经过Pinpoint实时地监控Solo,说明咱们成功地安装、整个了Pinpoint和Solo。

发布应用到市场

发布

在Rainbond中,你能够将整套业务系统打包成一个云市应用,并选择将该应用发布到团队、公司、好雨公有云市。分享到不一样的范围,可见性也有所不一样,具体可见范围以下:

  • 团队:只有当前团队下的成员可见
  • 公司:当前企业下的全部成员可见
  • 好雨云市:链接好雨公有云市的全部企业及用户可见

好雨云市是Rainbond定义的一种对于Rainbond应用的存储、共享、交付、管理途径。 对于当前IT软件交付的方式复杂,人力投入大的难题,Rainbond对异构应用服务提供了标准化的打包形式,将软件、依赖部署关系、功能扩展插件、版本信息、运行环境、配置信息甚至是初始化数据等总体打包存放于应用市场。所以应用市场是Rainbond定义的一种应用的共享途径,它能够跨团队,跨数据中心,甚至跨平台的分享应用。应用市场的应用是完整的业务解决方案集成体,或者是优秀的架构实践体,其能够标准化得一键交付部署。

咱们将一个应用组内完整的业务解决方案集成体总体打包成一个云市应用,发布成功后,其余用户在建立应用时能够选择从应用市场安装的方式一键安装部署完整的服务体系,实现标准化得一键交付部署。详情请参见:应用发布

填写完应用名、版本、分享范围、图标等应用基本信息后,就能够提交了。

提交了以后,会进行应用检测。应用检测完成后,来到页面的下边,点击确认分享,将应用发布出去。

而后咱们就能够在内部市场找到刚刚发布的Solo-Pinpoint(仅仅能够在内部市场中找到)。

上架

若是想要能够在云市中找到刚刚发布的Solo-Pinpoint应用,那么须要在云市中上架Solo-Pinpoint。上架后的应用能够被链接好雨公有云市的全部企业及用户看到。

  • 信息编辑,使用Markdown编写应用的详细介绍,让用户能够更好地去了解应用。

  • 设置价格

  • 上架

完成上架以后,咱们就能够在云端中找到Solo-Pinpoint

应用导入和导出

为了让用户可以更好的管理本身的应用,快捷简单交付业务,咱们为平台设计了应用导入导出功能,该功能容许用户经过简单的几回点击,就能够将内部市场的应用打包为一个压缩文件,并能够下载到本地。在导出的时候,支持两种格式,一种为rainbond-app格式,另外一种为docker-compose格式。详情请见:应用导入与导出

应用导出

  • 进入内部市场页面
  • 找到Solo-Pinpoint,点击该应用版块上的导出应用

导出的过程可能会比较长。导出成功后, 下载按钮会由灰色变成蓝色,点击下载按钮进行下载,将文件下载到本地。

下载完成后, 会获得一个叫Solo-Pinpoint-v1.0.zip的文件, 这就是Solo-Pinpint的备份文件。

应用导入

应用导入有如下两种方式:

  • 若是你的网络状况不乐观的状况下,咱们建议您直接在对应的数据中心的服务器上进行操做。你能够将RainbondAPP文件复制到数据中心管理节点上咱们提供的目录下。
  • 若是网络状况较好,能够直接经过网络上传文件至数据中心指定目录下(本文章使用的方式)。

咱们先将市场里的Solo-Pinpoint删除了,再导入上边导出的Solo-Pinpoint-v1.0.zip。

上传完成后,勾选Solo-Pinpoint-v1.0.zip,点击确认导入。

由于Solo-Pinpoint-v1.0.zip这个文件的大小有1G,因此上传和导入会比较久。

导入完成以后, 能够再次在内部市场中找到Solo-Pinpoint。

应用备份和恢复

应用备份

对于生成环境的业务系统,咱们须要对其进行按期的全量备份操做,过去咱们针对数据单独进行备份,或对数据库进行单独备份。缺少一种全局统一备份的机制,特别是对于分布式应用。Rainbond应用组备份与恢复完成对业务系统的总体的、全量的备份,以实现整个系统故障时的全局回滚。详情请见:应用备份

备份操做分为本地备份和云端备份两种,这里使用的是本地备份:

本地备份:将一组应用备份在本地,本地备份的应用没法进行跨数据中心和租户的迁移操做。

云端备份:须要配置sftp服务器和私有hub仓库才能进行云端备份,云端备份能够实现应用的跨数据中心和租户操做,而且还能支持该组备份的导出。目前企业版支持管理后台配置sftp和hub仓库的配置。

备份操做以下——

备份成功——

应用恢复

接下来,咱们对 5.1 应用备份 中备份的文件Solo-Pinpoint-v1.0.zip进行恢复,操做以下:

恢复操做过程当中请勿关闭恢复页面,不然可能会致使恢复失败。

为了保证您的数据安全,恢复操做过程咱们会生成一份您的备份应用的拷贝,您能够在恢复的最后一步中选择删除原有的应用。

恢复成功后,会多出一个叫Solo-Pinpoint_1ccf的应用,这就是恢复后的应用。

成功启动恢复后的Solo-Pinpoint_1ccf

总结

本文经过Solo+Pinpoint这个例子,对“如何制做一个可分享的云市应用?”进行了演示,但愿你们能够获得这个技能;同时,对这个Solo-Pinpoint这个应用执行了导入、导出、备份和恢复等操做,但愿能够帮助你们了解Rainbond。

关于Rainbond

Rainbond(云帮)是"以应用为中心”的开源PaaS, 深度整合基于Kubernetes的容器管理、ServiceMesh微服务架构最佳实践、多类型CI/CD应用构建与交付、多数据中心资源管理等技术, 为用户提供云原生应用全生命周期解决方案,构建应用与基础设施、应用与应用、基础设施与基础设施之间互联互通的生态体系, 知足支撑业务高速发展所需的敏捷开发、高效运维和精益管理需求。

相关文章
相关标签/搜索