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應用構建與交付、多數據中心資源管理等技術, 爲用戶提供雲原生應用全生命週期解決方案,構建應用與基礎設施、應用與應用、基礎設施與基礎設施之間互聯互通的生態體系, 知足支撐業務高速發展所需的敏捷開發、高效運維和精益管理需求。

相關文章
相關標籤/搜索