Azure Spring Apps Enterprise 現已正式推出

工程 | Josh Long | 2022 年 5 月 24 日 | ...

您好,Spring 的愛好者!這是 Microsoft 開發人員部門總裁 Julia Liuson 的客座文章

Azure Spring Cloud 現在是 Azure Spring Apps

我們在 2019 年與 VMware 共同推出了 Azure Spring Cloud,以解決開發人員、IT 營運人員和 DevOps 團隊在大規模執行 Spring Boot 應用程式時面臨的常見挑戰。從那時起,我們已協助許多客戶採用此服務,包括 BoschDigital RealtyFedExKrogerLiantisMorgan StanleyNational LifeRaley’sSwiss Re。他們重視 Azure Spring Cloud 的完全受控基礎結構,讓他們可以專注於自己的應用程式,而此服務則管理動態調整、安全性修補、現成的監視檢測等等。透過客戶意見反應,我們已擴展了此服務的功能,包括在 SpringOne 2021 中宣布預覽的 Enterprise 層。Azure Spring Cloud 是一個適用於所有類型 Spring 應用程式的功能完整平台,為了更佳地反映這一點,此服務現在是 Azure Spring Apps。


“FedEx 推出了一個全球交付預測平台,每天動態預測超過 1600 萬批貨物的預計到達時間。我們將這些基於機器學習的深入解析整合回我們的核心系統,以最佳化我們的營運,並讓我們的客戶比以往任何時候都更具備能見度。這些深入解析的暴露和使用至關重要,我們選擇 Azure Spring Apps 作為我們高用量處理的主要運算,因為它易於使用、規模及與 Azure 生態系統的整合。我們與 Microsoft 和 VMware 的合作為快速發展的 Java 團隊提供了一項驚人的服務,可為我們的客戶提供有影響力的解決方案。” - Tony Kreager,Data Engineering & Data Science 資深副總裁,FedEx Dataworks


“Azure Spring Apps 是我們全新 API 平台的核心,並為我們提供了一種將 Spring 應用程式快速且安全地投入生產的簡單方法。在 Microsoft 和 VMware 最終聯手推出此解決方案之前,我們長期以來一直在尋找一種符合我們需求的現成解決方案。Azure Spring Apps 讓我們可以專注於應用程式的商務邏輯,並消除了將這些應用程式交付給客戶的複雜性。” -- Claus Lund,資深基礎結構工程主管,National Life Group


Azure Spring Apps 是 Digital Realty API 和入口網站供應專案的重要元件。Azure Spring Apps 的受控供應專案允許我們快速部署微服務應用程式並縮短上市時間。我們已在創紀錄的時間內將舊版應用程式移轉至基於微服務的架構。結合我們開發的 REST API,我們擁有一個真正強大、有彈性且全球性的平台。我們很高興看到此供應專案的持續開發以及 Microsoft 和 VMware 之間的合作,以及它們如何使我們的團隊和全球 Java 開發人員受益。 -- Raj Sriramoju,API 工程總監,Digital Realty Trust

Azure Spring Apps Enterprise 層現已正式推出

許多組織在內部部署上執行數千個 Spring Boot 應用程式,並且需要進階功能來加速其 Spring 現代化專案。根據我們從客戶互動中學到的經驗,我們建置了一個新的 Azure Spring Apps 層—Enterprise —我們在 SpringOne 2021 上宣布了該層。Enterprise 層包括商業支援的 Spring 執行階段元件,以協助企業客戶更快地發布並釋放 Spring 的全部潛力。我們感謝許多參與預覽並分享其經驗的客戶和合作夥伴,並且我們很高興地宣布,Azure Spring Apps Enterprise 層將於 2022 年 6 月初正式推出。

Enterprise 層代表了我們與 VMware 的持續合作,將 Microsoft 的雲端平台專業知識與 VMware 創新的 Tanzu 組合結合在一起。我們也致力於使其成為一個應用程式平台,您可以在其中部署本身可在任何 Azure 服務、任何雲端或任何內部部署系統中移植的多語系應用程式。

透過 Azure Spring Apps Enterprise,您可以提高生產力並獲得 Spring 專家的 Spring 應用程式開發和部署協助。Azure Spring Apps Enterprise 建構在 Standard 層中提供的所有功能之上,包括利用更廣泛的 Azure 生態系統來增強您的 Spring Boot 應用程式的能力。

._Azure 入口網站中的 Azure Spring Apps Enterprise 層選取範圍_

Azure Spring Apps Enterprise 目前可在非洲、亞太地區、澳洲、美洲、歐洲、中國、印度、日本、韓國和阿拉伯聯合大公國的 24 個 Azure 區域中使用。我們正在將此服務擴展到瑞士和德國的多個較新的歐洲區域。

1 - 更快地發布

部署和管理 Spring 和多語系應用程式

Enterprise 層中的 完全受控 VMware Tanzu Build Service 使用開放原始碼 Cloud Native Buildpacks 和商業 VMware Tanzu Buildpacks,以企業規模自動化容器建立、管理和治理。這些 Buildpacks 可讓您更輕鬆地 建置 Spring、Java、NodeJS、Python、Go 和 .NET Core 應用程式,並設定應用程式效能監視代理程式,例如 Application Insights、New Relic、Dynatrace、AppDynamics 和 Elastic。

輕鬆將用戶端要求路由傳送到應用程式

您可以使用 完全受控 Spring Cloud Gateway for VMware Tanzu 和 API portal for VMware Tanzu 輕鬆管理和探索應用程式公開的要求路由和 API。

Spring Cloud Gateway for Tanzu 可有效地將不同的用戶端要求路由傳送到 Azure Spring Apps、Azure 和/或內部部署中的應用程式,並解決閘道後方應用程式的跨領域考量,例如安全性、路由、速率限制、快取、監視、復原能力和隱藏應用程式。

API portal for VMware Tanzu 提供 API 消費者尋找和檢視 Spring Cloud Gateway for Tanzu 公開的 API 路由詳細資料,並測試 API 要求的功能。

_圖 1 – API portal for VMware Tanzu 可視覺化可從 Spring Cloud Gateway for Tanzu 和其他符合 OpenAPI 規範的來源存取的 API_

彈性且可設定的 VMware Tanzu 元件

透過 Azure Spring Apps Enterprise 層,客戶可以在 Azure 上使用完全受控的 VMware Tanzu 元件。客戶可以在建立 Enterprise 執行個體期間,選取他們想要在其環境中使用的 VMware Tanzu 元件。Tanzu Build Service、Spring Cloud Gateway for Tanzu、API portal for VMware Tanzu、Application Configuration Service for VMware Tanzu 和 VMware Tanzu Service Registry 目前可用。

VMware Tanzu 元件為客戶提供更高的價值,以

  • 將您的企業級應用程式組合從幾個應用程式擴展到數千個應用程式,並具有端對端的可觀測性,同時將營運複雜性委派給 Microsoft 和 VMware
  • 跨 Azure Spring Apps 和任何其他運算環境移轉 Spring 應用程式
  • 控制您的組建相依性、部署多語系應用程式,並視需要部署 Spring Cloud 中介軟體元件

Microsoft 和 VMware 將會持續新增更多企業級功能,包含 Tanzu 元件,例如 VMware Tanzu 的 Application Live View、VMware Tanzu 的 VMware Tanzu Application Accelerator,以及 VMware Tanzu 的 Spring Cloud Data Flow。(Azure Spring Apps Enterprise 的藍圖尚未確認,可能會有所變更)。

2 - 透過長期支援 (LTS) 釋放 Spring 的完整潛力

企業級方案包含 VMware Spring Runtime Support,適用於應用程式開發和部署。這項支援讓您可以取得 Spring 專家的協助,進而釋放 Spring 生態系統的完整潛力,並更快地開發和部署應用程式。

一般來說,開放原始碼 Spring 專案的次要版本,從這些專案的初始版本發佈日期起,至少支援 12 個月。在 Azure Spring Apps Enterprise 中,透過 VMware Spring Runtime Support 的授權,Spring 專案的次要版本將從初始版本發佈日期起,獲得至少 24 個月* 的商業支援。即使在開放原始碼終止支援日期之後,此延伸支援也能確保 Spring 應用程式組合的安全性和穩定性。

_圖 2 - Spring Boot 的商業支援時程表_
  • 您可以在此處找到 Spring 專案的目前支援時程表

3 - 完全整合到 Azure 和 Java 生態系統中

Azure Spring Apps (包含企業級方案) 在 Azure 上於完全受控的環境中執行。您可以獲得 Azure 和 Java 生態系統的所有優點,且體驗既熟悉又直覺。

擴充應用程式的功能

如果您需要具有高度可擴縮性和可用性的後端服務,我們可以滿足您的需求。 我們已經讓您可以從 Azure Spring Apps 中的應用程式充分運用 Azure 的強大功能。 我們提供機制,讓 Spring 應用程式使用 Spring Cloud Azure 整合、開放原始碼程式庫和資料庫驅動程式,以及 Azure SDK for Java,連線至 Azure 中的資料庫、快取、儲存體、訊息傳遞、事件處理和目錄服務,並與這些服務互動。 您的應用程式可以與內部部署系統和外部服務互動。

_圖 3 - Azure 服務的 Spring Cloud Azure 整合_

將應用程式連線至 Azure 服務 - 服務連接器

您可以使用服務連接器,將 Azure 上的應用程式連線至 Azure 服務,以進行資料庫、快取、儲存體、訊息傳遞和事件處理。

服務連接器專為易於使用而設計。 在 Azure Spring Apps 中,您可以將服務連接器指向任何 Azure 服務,而服務連接器會引導您順暢地連線應用程式。 您可以使用 Terraform、ARM 範本或 Bicep 自動化這些連線。

零信任 - 安全網路

安全性是 Azure 服務的關鍵原則,您可以透過將 Java 應用程式部署到受控虛擬網路 (VNET) 中的 Azure 服務 (包括 Azure Spring Apps) 來保護它們。 這樣一來,您可以透過下列方式來保護 Spring Boot 應用程式和其其他相依性周圍的界限:

  • 將 Azure Spring Apps 與網際網路隔離,並將您的應用程式和 Azure Spring Apps 放在您的私人或公司網路中。
  • 選擇性地將應用程式公開為面向網際網路的應用程式。
  • 讓應用程式與內部部署系統 (例如資料庫、訊息傳遞系統和目錄) 互動。
  • 控制應用程式和 Azure Spring Apps 的輸入和輸出。
  • 與 Azure 網路資源 (例如應用程式閘道、Azure 防火牆、Azure Front Door 和 Express Route),以及熱門的網路產品 (例如 Palo Alto Firewall、F5 Big-IP、Cloudflare 和 Infoblox) 組合使用。

以下所示的 Azure Spring Apps 參考架構是使用典型的企業中樞和輪輻設計的基礎。 Azure Spring Apps 部署在單一輪輻中,該輪輻取決於裝載於中樞中的共用服務。

_圖 4 - 顯示針對選擇性公開為公用應用程式的應用程式,設計完善的中樞和輪輻設計_

零信任 - 端對端安全通訊

您可以保護端對端通訊,或在任何應用程式的通訊點終止傳輸層級安全性。 您可以自動化保護通訊安全所需的所有 Azure 資源的佈建和設定。

零信任的基礎是「永不信任,一律驗證且無須認證」的原則,它藉由消除不明和未受管理的憑證來協助保護所有通訊的安全,並且只信任透過在授與對這些憑證的存取權之前驗證身分識別所共用的憑證。 您可以透過使用受控識別和 Azure 角色型存取控制,在 Azure Spring Apps 中輕鬆設定應用程式,以安全地將憑證從 Azure Key Vault 載入應用程式記憶體中。

零信任 – 使用 Key Vault 管理秘密

每個應用程式都有將其連線至其環境和支援服務的屬性,例如資料庫、記錄和監視工具、訊息傳遞平台以及許多其他項目。 每一個都需要一種方法來尋找和存取它,通常是以 URL 和認證的形式,如果這些秘密遭到洩漏,則這些重要資訊可用來存取重要的客戶資料。 即使這些資料不受法律保護,而在全球幾乎所有地方,基於非常好的理由,都受到法律保護,保護客戶資料免於洩漏仍應是我們所有人的首要之務。 在 Azure Spring Apps 中,可以設定應用程式,透過使用受控識別和 Azure 角色型存取控制,直接將秘密從 Key Vault 載入到記憶體中,也就是零信任和零程式碼!

終端使用者驗證和授權

保護對應用程式的存取至關重要。 您可以使用 Azure Active Directory 中的組織身分識別和目錄 (例如 Facebook、Twitter 和 Gmail) 中的社交身分識別來保護對應用程式的存取。 您可以使用適用於 Java 的 Microsoft 驗證程式庫或適用於 Azure Active Directory 的 Spring Boot Starter。 讓終端使用者登入或進行驗證。 然後,可以授權他們。 或者,您可以使用受管理的 Spring Cloud Gateway 輕鬆設定單一登入 (SSO)。

端對端監視

您可以使用您選擇的任何工具和平台,端對端監視您的 Spring 工作負載,包括 App Insights、Log Analytics、New Relic、Dynatrace、AppDynamics、Elastic 或 Splunk。

_圖 5 - 透過 Application Insights 應用程式對應可見的應用程式交易_

端對端自動化

您可以使用各種自動化工具和平台,從概念到生產建構端對端自動化。 通常,我們會看到客戶建立的管線大致可分為三大類

  • 佈建管線 - 使用 Terraform、ARM 範本、Bicep 或 Azure CLI 佈建 Azure 資源,建立可重複執行的指令碼來一致地啟動和關閉環境。
  • 建置管線 - 使用 Maven 或 Gradle 建置 JAR,並將其儲存到 Nexus、JFrog、Azure Artifacts 等成品儲存庫中。
  • 部署管線 - 使用 GitHub Actions、Azure Pipelines 和 Azure CLI 自動執行部署,包括藍綠部署,以最大程度地減少中斷。

繼續利用現有實務

當您在 Azure 上移轉或建置及擴展 Spring 應用程式時,您可以利用您在網路、監視、自動化、身分識別提供者、內部部署系統、開發和建置工具以及應用程式程式庫中的現有投資

  • 網路 – F5、Palo Alto、Cloudflare、Checkpoint、Infoblox 等。
  • 監視 - New Relic、Dynatrace、AppDynamics、Elastic、Splunk 等。
  • 自動化 – GitHub Actions、Azure Pipelines、Jenkins、GitLab 等。
  • 身分識別提供者 – Azure Active Directory、ForgeRock、Auth0、Ping、Okta 等。
  • 內部部署系統 – 資料庫 (例如 Oracle DB、IBM DB2)、訊息 (例如 IBM MQ、TIBCO EMS)、事件 (例如 Kafka)、目錄 (例如 Active Directory、OpenLDAP、IBM ID)、郵件、FTP 等。
  • 開發工具 – IntelliJ、VS Code、Eclipse、Spring Tool Suite、Maven、Gradle 等。

4 - 今天就開始!

Azure Spring Apps Enterprise 層提供更高的生產力,您可以利用 Spring 專家讓您的專案更加成功。 我們很樂意了解您如何使用 Enterprise 建構有影響力的解決方案,並繼續向您學習。

**立即開始 -- aka.ms/spring-apps-enterprise **

您也可以透過 VMware 了解更多關於 Azure Spring Apps Enterprise 層 GA 的公告

其他資源

取得 Spring 電子報

與 Spring 電子報保持聯繫

訂閱

領先一步

VMware 提供訓練和認證,以加速您的進度。

了解更多

取得支援

Tanzu Spring 在一個簡單的訂閱中提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位檔。

了解更多

即將舉辦的活動

查看 Spring 社群中所有即將舉辦的活動。

查看全部