【微服務】開源PaaS Rainbond v3.6.0正式釋出,Service Mesh開箱即用

天府雲創發表於2018-06-20

Rainbond是以應用為中心的開源PaaS,由好雨基於Docker、Kubernetes等容器技術自主研發,可作為公有云或私有云環境下的應用交付平臺、DevOps平臺、自動化運維平臺和行業雲平臺,或作為企業級的混合雲多雲管理工具、kubernetes容器管理工具或Service Mesh微服務架構治理工具。

Service Mesh微服務架構是開源PaaS Rainbond在v3.6.0版本中的重點新增特性,可以開箱即用。

這種微服務架構經過過去一年多的發展,已然成為雲原生技術堆疊中不容忽視的關鍵元件。它允許我們在開發應用時,只關注業務程式碼,而不需要關心技術底層邏輯,服務拆分帶來的複雜性問題也迎刃而解。

Rainbond的Service Mesh微服務架構以透明代理的形式提供服務間通訊,不會與業務程式碼耦合,換句話說,Service Mesh對於業務是無侵入的。

其次,Rainbond通過外掛式擴充套件來實現治理功能,例如服務發現和註冊、彈性伸縮與負載均衡、容錯處理(斷路器與限流)、監控與報警、資料儲存與共享、日誌分析等等。

* 解讀Rainbond ServiceMesh微服務架構

* Rainbond外掛體系設計簡介

另外值得一提的是,Rainbond的Service Mesh微服務架構對spring cloudapi gateway、dubbo等框架有良好支援。

除了以上特性,Rainbond v3.6.0還新增了應用的備份與恢復以及快資料中心的應用遷移功能(詳見下文)。同時,Rainbond經過本次更新,在穩定性方面得到了大幅度提升,解決了2個生產環境中可能會造成嚴重影響的bug:

  • 解決了docker程式由於預設xfs檔案系統io阻塞導致卡死的問題
  • 解決了由於etcd服務連線異常導致各元件cpu洩漏的問題

本次版本升級詳細介紹如下:

新特性1:ServiceMesh開箱即用

Rainbond利用容器的sidecar模式,抽象出應用外掛層,根據不同的外掛型別提供不同的控制策略,例如可根據應用容器的啟動順序、執行環境等,並在全域性應用執行時提供標準的服務發現介面、配置發現介面,相當於Rainbond通過外掛的方式提供了envoy的執行環境。

ServiceMesh功能在Rainbond中通過**服務網路治理外掛**來實現,在“我的外掛”中安裝該外掛,並在需要使用的應用中啟用該外掛,即在該應用上啟用了Service Mesh,示例如下:

  • 安裝**服務網路治理外掛**
servicemesh01
  • **在應用中啟用外掛**
servicemesh02
  • **配置外掛**
servicemesh03

更多資訊參考相關文件:

應用A/B測試方案

應用灰度釋出方案

新特性2:應用組備份與恢復

無論是測試還是生產環境,業務系統的備份、遷移與恢復都是比較複雜和耗時的工作。Rainbond收集多家企業級使用者和公有云使用者的反饋,經過2個月的開發,推出了應用組的備份、遷移與恢復功能,使用者僅需輕鬆點選就可以解決複雜業務組的備份、遷移與恢復。

backup

詳細文件請參考:應用備份和恢復

新特性3:內部應用市場管理

針對內部應用市場,Rainbond過往版本可以將應用釋出到內部應用市場,供其他團隊安裝使用。本次升級支援將雲市同步或者內部分享的應用打包下載,這樣使用者可以將應用遷移到離線Rainbond,或其他Docker環境下執行,目前支援好雨應用打包格式和docker-compose.yaml格式。

Rainbond v3.6.0詳細更新日誌

應用控制檯

  • 支援應用組的完整備份和恢復

對執行的業務系統狀態進行整體、全面快照,一旦出現無法解決的問題可快速回滾到備份時刻

  • 支援應用組跨資料中心、跨租戶遷移
  • 支援內部應用市場管理
  • 應用和外掛的同步、刪除與解除安裝。
  • 內部應用市場應用的匯出,可匯出相容docker-compose或可匯入Rainbond平臺的rainbondApp應用包
  • 支援離線匯入RainbondApp到內部市場
  • 支援基於Github、Gitlab的Webhook自動部署原始碼建立的應用
  • 支援站內信公告
  • 監控模組支援自動發現監控服務,自動配置監控專案
  • 控制檯支援使用者自定義角色的許可權控制

底層服務

  • Rainbond元件全面高可用支援,RegionDB可使用CockroachDB,UI DB可使用TiDB
  • 叢集DNS升級,提供更高的查詢效能,支援自定義普通域名和泛域名解析
  • 重構rbd-monitor元件(Prometheus),支援服務高可用與分散式部署,並增加服務自動註冊/發現機制

外掛

  • 服務網路治理外掛外掛

開箱即用的支援ServiceMesh架構,並可根據需要自定義擴充套件

  • 支援應用的灰度釋出和,A/B測試(HTTP)
  • 支援服務到服務的限流和熔斷機制(HTTP)
  • 支援服務到服務的智慧路由(HTTP)
  • 支援服務到服務的效能分析和錯誤跟蹤,基於應用拓撲圖展示完整流量拓撲
  • 支援從雲市場或內部市場分享和安裝應用外掛
  • MySQL資料庫熱備份外掛 (基於Percona XtraBackup實現)
  • PostgreSQL資料庫備份外掛 (基於pg_dump實現)
  • MongoDB資料庫備份外掛 (基於mongodump實現)
  • 日誌收集對接ES外掛
  • rbd-lb 增加vrrpd功能,支援VIP(測試階段,預設不啟用)

Rainbond安裝程式

  • 支援一鍵擴容管理節點
  • 重構安裝流程,支援全域性配置檔案
  • 增加升級與維護模組,方便後續執行升級維護操作
  • 增加CockroachDB支援(需要手動修改配置)
  • 增加Rainbond元件最大記憶體限制功能

解決的BUG

  1. 修復了自定義域名不生效的問題
  2. 修復了自定義https不生效的問題
  3. 解決了某些情況下重新部署應用負載均衡不更新問題
  4. 解決了外掛重新構建後,應用重啟外掛新版不生效問題
  5. 解決了應用效能分析資料歷史查詢問題
  6. 解決了效能監控資料有負數的問題
  7. 解決了原始碼建立應用高階設定頁面顯示BUG,支援定義php、java等原始碼型別的中介軟體版本和依賴庫
  8. 解決了docker程式由於xfs檔案系統io阻塞導致卡死的問題
  9. 解決了由於etcd server退出導致各元件cpu洩漏問題

相關文章