Java 現為全球第二大最受歡迎的程式語言,Spring 則是最熱門的 Java 框架,微軟與 Vmware 在 2019 年攜手發表了 Azure Spring Cloud,這是一個針對微服務所提供的完全託管服務,讓客戶可於微軟 Azure 環境中,快速部署、操作及擴展 Spring Boot 與 Spring Cloud 應用,而全球主要再保險業者 Swiss Re 則成為Azure Spring Cloud 的早期試用者之一,關鍵原因在於安全及簡單。

Azure Spring Cloud 基本上是個針對 Spring 開發者所提供的平台即服務(Platform as a Service,PaaS),可協助開發者管理 Spring Boot 應用程式,同時具備全面的監控及診斷、配置管理、服務發現、CI/CD 整合與藍/綠部署。

根據微軟的說法,Azure Spring Cloud 允許開發者不必更新程式碼,就能在 Azure 上部署基於 Spring Boot 的微服務應用,由該平台負責管理應用程式架構,讓開發者專注於商業邏輯與程式碼。

近來,總部位於瑞士的全球最大再保險業者 Swiss Re 也決定藉由 Azure Spring Cloud 來打造新的 Java 金融應用,並把既有的應用遷移到 Azure Spring Cloud。

Swiss Re 的集團金融 IT 暨解決方案架構的負責人 Jonathan Jones 表示,把應用程式轉移到公有雲的兩大目標為零信任(Zero Trust)及簡單。

以零信任為安全目標

再保險公司顧名思義就是保險公司的保險公司,它替保險公司承擔風險,Swiss Re 目前名列全球第二大再保險公司,其全球經營版圖擴及全球 25 個國家,員工數超過 1.5 萬名。

Jones 說明,該團隊於現代化的過程中,原本採行「扼殺者模式」(Strangler Pattern),亦即在更新 Spring Boot 應用時,讓新、舊版本並存,逐步淘汰舊有的系統,此一模式雖然可降低現代化的風險,卻曠日廢時,因而決定遷移至公有雲。

Swiss Re 集團以在  Azure Spring Cloud  上託管  Spring Boot  來加速現代化過程。

在研究託管平台與虛擬化基礎架構時,集團金融 IT 團隊的共識有兩項,一是簡化開發流程,二是以零信任當作目標。其中,零信任的概念是假設企業網路上的任何身分或任何裝置都是不安全的,需要被驗證。這兩項要求促使該團隊開始尋找安全的PaaS服務與基礎架構即程式碼(Infrastructure as Code,IaC),剛好微軟與 Vmware 發表了 Azure Spring Cloud。

Azure Spring Cloud 亦把安全視為首要之務,除了加密資料,確保存取應用程式資料、紀錄及配置的使用者都取得適當的授權之外;Azure Spring Cloud 上的服務實例也都是彼此隔離的,亦部署至強化安全的 Azure Kubernetes 叢集上;所有的進入許可都來自於受到 Cloudflare 保護的 Spring Cloud Gateway。

由於 Cloudflare 為知名的內容遞送網路服務供應商,也是緩解 DdoS 攻擊的專家,使得 Swiss Re 集團金融 IT 團隊不必再尋找相關的新解決方案。

事實上,在 Azure Spring Cloud 上線前,Swiss Re 就曾對該平台展開一系列的測試,包括於系統上進行高負載模擬,確定其閘道與後端服務能夠妥善處理,或是針對部署執行深度滲透測試,而 Azure Spring Cloud 通過了所有的測試。

Jones 說,該團隊藉由把網路及運算管理移轉至微軟,以減少自己的攻擊表面,他們必須配置與維護的移動元件愈少愈好。

Spring Security 不僅支援 Azure AD 身分識別管理服務,也支援 Azure RBAC 角色型存取控制,Swiss Re 使用了大量由 Spring Cloud 所提供的系統分配受控識別;後端服務的受控識別可用來存取其它的 Azure 服務,例如 Spring Boot 服務自 Azure Storage 取得靜態內容,或是進入 Azure Key Vault,讓存放於 Azure Key Vault 中的秘密得以透過 Spring 直接注入應用中。

PaaS 簡化了 Azure 的部署與開發

既然 Swiss Re 集團金融 IT 團隊把簡化視為遷移至公有雲的目標之一,那麼 Azure Spring Cloud 理應具備這樣的條件。

Azure Spring Cloud 吸引該團隊的第一個原因是它褪下了管理基礎架構與 Spring Cloud 中介軟體的複雜度。Jones 表示,Swiss Re 的商業服務有著複雜的邏輯,他們不想落入一個更複雜的境地,他們想要的是安全、簡單、對開發者友善,以及友善的操作,而 Azure Spring Cloud  剛好符合這個策略。

Jones 指出,只要提供一個 JAR 檔案,應用就開始執行了,不需要隨傳隨到的專業 DevOps 工程師,這對他們來說非常具有經濟效益。

在 Azure Spring Cloud 上,開發者可以繼續使用他們原本熟悉的工具,Azure DevOps 代管了 Git 儲存庫、工作項目與 Pipelines,團隊則利用 Apache Maven 來建置專案;為了加速開發經驗,Azure Spring Cloud 還提供了 Maven 外掛與 Visual Studio Code 擴充套件。

Jones 表示,該團隊的基礎架構是透過 Azure DevOps 上的 Terraform 任務進行部署,很高興此一 Azure Resource Manager 供應商這麼早就進駐 Azure Spring Cloud。

Swiss Re 集團金融 IT 團隊已在 Azure 上建立一個雲端原生基礎架構,支援所謂的迷你服務,有些前端以 Angular 打造,有些沒有,還有些只是 API 服務,專供其它系統呼叫。Jones 認為,此一架構非常簡單,也很不起眼,但他們對於這樣的簡化卻很開心,因為這就是他們要的。

除了安全與簡化之外,集團金融 IT 團隊藉由於 Azure Spring Cloud  上所執行的 Java 金融程式來提供巨量資料分析、報表與視覺化,該資料流程源自於微軟替團隊所設計的 Azure Databricks 資料分析平台,而原始資料則是存放於針對巨量資料分析所規畫的新一代資料湖解決方案 Azure Data Lake Storage 上。

這讓 Swiss Re 藉由 Azure Synapse Analytics 獲得了更快速也更深入的洞察力。

在 Azure Spring Cloud 上運作的 Java 金融程式,可提供大數據分析、報告和視覺化的分析與報告。

有趣的是,Jones 原本只計畫於 Azure Spring Cloud 上更新一些報表功能,沒想到試用範圍愈來愈大,可重複使用的範例讓於 Azure 上部署 Spring Boot 程式變得很容易,使得其它團隊也跟進,有一個 IT 團隊在發現此事之後,放棄了原本想要採用的 Serverless 開發模式而改用 Azure Spring Cloud。

鎖定大型企業的 Azure Spring Cloud Enterprise 登場

Azure Spring Cloud 最早於 2019 年發表,在 2020 年 9 月正式上線,而今年 9 月,微軟與 Vmware 再度發表了 Azure Spring Cloud Enterprise 預覽版,主要是針對大型企業的需求,整合了 VMware Tanzu 的商業產品,包括可大規模建立及管理容器的 VMware Tanzu Build Service,Application Configuration Service for VMware Tanzu,以及 VMware Tanzu Service Registry 等。

Azure Spring Cloud Enterprise 現為封閉預覽狀態,預計於今年底就會開放預覽,明年初正式上線。

現階段 Azure Spring Cloud  提供 3 種方案,一是供個人或開發者進行測試的基本版(Basic),月費約為 170 美元,也有供生產任務使用的標準版(Standard),月費約為 602 美元,再加上超額使用的費用。至於大型企業版(Enterprise)則尚未有預估價格出爐。

點擊 Banner 免費報名參加 Azure Spring Cloud 線上研討會,瞭解如何在 Azure 上加速 Spring Boot 程式的部署。

熱門新聞

Advertisement