跨雲端調整 (內部部署資料) 模式
瞭解如何建置跨越 Azure 和 Azure Stack Hub 的混合式應用程式。 此模式也示範如何使用單一內部部署資料來源以遵守合規性。
內容和問題
許多組織會收集並儲存大量的敏感性資料。 經常會因為公司法規或政府原則而防止將敏感性資料儲存在公用雲端中。 這些組織也想要妥善利用公用雲端的延展性。 公用雲端可以處理季節性的流量尖峰,讓客戶在需要的時候將費用花在其真正需要的硬體上。
解決方法
此解決方案善用私人雲端的合規性優勢,並將這些優勢與公用雲端的延展性互相結合。 Azure 和 Azure Stack Hub 混合式雲端為開發人員提供一致的體驗。 此一致性可讓他們將其技能同時套用至公用雲端和內部部署環境。
解決方案部署指南可讓您將相同的 Web 應用程式部署至公用和私人雲端。 您也可以存取裝載于私人雲端的非網際網路可路由網路。 Web 應用程式會受到監視以載入。 當流量大幅增加時,程序會處理 DNS 記錄以將流量重新導向至公用雲端。 當流量不再大幅增加時,將更新 DNS 記錄,以將流量導向回到私人雲端。
單元
此解決方案使用下列元件:
階層 | 元件 | 描述 |
---|---|---|
Azure | Azure App Service | Azure App Service 可讓您組建和裝載 Web 應用程式、RESTful API 應用程式,以及 Azure Functions。 全部皆以您自己選擇的程式設計語言編寫,而不必管理基礎結構。 |
Azure 虛擬網路 |
Azure 虛擬網路 (VNet) 是私人網路在 Azure 中的基本建置組塊。 VNet 可讓多個 Azure 資源類型,例如虛擬機器 (VM) ,安全地彼此通訊、網際網路和內部部署網路。 該解決方案也示範其他網路元件的使用方法: - 應用程式和閘道子網。 - 本機內部部署網路閘道。 - 虛擬網路閘道,可作為站對站 VPN 閘道連線。 - 公用 IP 位址。 - 點對站 VPN 連線。 - 用於裝載 DNS 網域並提供名稱解析的 Azure DNS。 |
|
Azure 流量管理員 | Azure 流量管理員是以 DNS 為基礎的流量負載平衡器。 其可讓您控制使用者流量,將流量分散到不同資料中心的服務端點。 | |
Azure Application Insights | 應用程式Insights是可延伸的應用程式效能管理服務,適用于在多個平臺上建置和管理應用程式的 Web 開發人員。 | |
Azure Functions | Azure Functions可讓您在無伺服器環境中執行程式碼,而不需要先建立 VM 或發佈 Web 應用程式。 | |
Azure 自動調整 | 自動調整是雲端服務、VM 和 Web 應用程式的內建功能。 此功能可讓應用程式在需求變更時執行最佳效能。 應用程式會視需要調整流量尖峰,以在計量變更和調整時通知您。 | |
Azure Stack Hub | IaaS 計算 | Azure Stack Hub 可讓您使用 Azure 所啟用的相同應用程式模型、自助式入口網站和 API。 Azure Stack Hub IaaS 允許廣泛的開放原始碼技術,以進行一致的混合式雲端部署。 例如,解決方案範例使用 Windows Server VM 到 SQL Server。 |
Azure App Service | 就像 Azure Web 應用程式一樣,解決方案會使用 Azure Stack Hub 上的 Azure App Service 來裝載 Web 應用程式。 | |
網路 | Azure Stack Hub 虛擬網路的運作方式與 Azure 虛擬網路完全相同。 它使用許多相同的網路元件,包括自訂的主機名稱。 | |
Azure DevOps Services | 註冊 | 快速設定用於建置、測試和部署的持續整合。 如需詳細資訊,請參閱註冊,登入 Azure DevOps。 |
Azure Pipelines | 使用 Azure Pipelines 以進行持續整合/持續傳遞。 Azure Pipelines 可讓您管理裝載的組建和版本代理程式及定義。 | |
程式碼存放庫 | 利用多個程式碼存放庫以簡化您的開發管線。 使用 GitHub、Bitbucket、Dropbox、OneDrive 和 Azure Repos 中現有的程式碼存放庫。 |
問題和考量
決定如何實作此解決方案時,請考慮下列幾點:
延展性
Azure 和 Azure Stack Hub 特別適合支援現今全球分散式商務的需求。
混合式雲端,一點也不麻煩
Microsoft 運用單一的解決方案,為內部部署資產與 Azure Stack Hub 和 Azure 提供絕佳的整合。 這項整合消弭了管理多點解決方案和混合雲端提供者的麻煩。 透過跨雲端調整,Azure 的強大功能只是幾下即可。 只要將 Azure Stack Hub 連線到 Azure,雲端高載,您的資料和應用程式就會在需要時在 Azure 中使用。
- 消除了建立和維護次要災害復原網站的需求。
- 在 Azure 中消除磁帶備份並儲存最多 99 年的備份資料,以節省時間和金錢。
- 輕鬆地將執行中的 Hyper-V、實體 (預覽),以及 VMware (預覽) 工作負載移轉至 Azure,以妥善運用雲端的經濟效益和彈性。
- 在 Azure 中複寫內部部署資產複本上執行計算密集型報告或分析,而不會影響生產工作負載。
- 高載至雲端,並在 Azure 中執行內部部署工作負載,並視需要使用較大的計算範本。 混合式的解決方案可在需要時為您提供所需的功能。
- 在 Azure 中建立多層式開發環境,並按幾下滑鼠,甚至將即時生產資料複寫至您的開發/測試環境,使其保持近乎即時的同步處理。
透過 Azure Stack Hub 進行跨雲端調整的經濟效益
雲端負載平衡的主要優點是經濟實惠。 只有在需要這些額外資源時,才需要支付費用。 不需要再花費不必要的額外容量,或嘗試預測需求尖峰和波動。
減少載入雲端的高度需求
跨雲端調整可用來承擔處理負擔。 將基本應用程式移至公用雲端,釋出業務關鍵應用程式的本機資源,以散發負載。 應用程式可以套用至私人雲端,然後只有在需要符合需求時才高載至公用雲端。
可用性
全域部署有自己的挑戰,例如變數連線能力,以及區域不同的政府法規。 開發人員只能開發一個應用程式,然後根據不同的原因和需求,部署該應用程式。 將您的應用程式部署至 Azure 公用雲端,然後在本機部署其他實例或元件。 您可以使用 Azure 管理所有執行個體之間的流量。
管理能力
單一、一致的開發方法
Azure 和 Azure Stack Hub 可讓您在整個組織中使用一組一致的開發工具。 這種一致性可讓您更輕鬆地執行持續整合和持續開發 (CI/CD)。 許多部署在 Azure 或 Azure Stack Hub 中的應用程式和服務都是可交換的,而且可以在任一位置順暢地執行。
混合式 CI/CD 管線有助於:
- 根據程式碼存放庫認可的程式碼起始新的組建。
- 自動將您新建置的程式碼部署至 Azure 以進行使用者驗收測試。
- 一旦您的程式碼已通過測試,便會自動部署至 Azure Stack Hub。
單一、一致的身分識別管理解決方案
Azure Stack Hub 可搭配 azure AD) 和 Active Directory 同盟服務 (ADFS) Azure Active Directory (運作。 Azure Stack Hub 可在連線的案例中使用 Azure AD。 針對沒有連線能力的環境,您可以使用 ADFS 做為中斷連線時的解決方案。 服務主體可用來授與應用程式的存取權,讓他們能夠透過 Azure Resource Manager 部署或設定資源。
安全性
確保合規性和資料主權
Azure Stack Hub 可讓您跨多個國家/地區執行相同的服務,就像使用公用雲端一樣。 在每個國家/地區的資料中心部署相同的應用程式,可符合資料主權需求。 這項功能可確保個人資料會保留在每個國家/地區的邊界內。
Azure Stack Hub - 安全性狀態
安全性狀態來自於穩定、持續的服務處理程序。 因此,Microsoft 投資一個協調流程引擎,可在整個基礎結構中順暢地套用修補程式和更新。
由於與 Azure Stack Hub OEM 合作夥伴合作,Microsoft 會將相同的安全性狀態延伸到 OEM 特定元件,例如硬體生命週期主機及其上執行的軟體。 這種合作關係可確保 Azure Stack Hub 在整個基礎結構上具有一致且穩固的安全性狀態。 接著,客戶可以建置和保護其應用程式工作負載。
透過 PowerShell、CLI 和 Azure 入口網站來使用服務主體
若要為資源提供指令碼或應用程式的存取權,請設定應用程式的身分識別,並使用應用程式本身的認證進行驗證。 此身分識別稱為服務主體,可讓您:
- 將許可權指派給與您自己的許可權不同的應用程式身分識別,並受限於應用程式的確切需求。
- 使用憑證在執行無人看管的指令碼時進行驗證。
如需服務主體建立和使用憑證進行認證的詳細資訊,請參閱 使用應用程式身分識別來存取資源。
使用此模式的時機
- 我的組織使用 DevOps 方法,或具有一個打算在不久的將來使用的方法。
- 我想要跨 Azure Stack Hub 實作和公用雲端來實作 CI/CD 做法。
- 我想要跨雲端和內部部署環境來合併 CI/CD 管線。
- 我想要能夠使用雲端或內部部署服務順暢地開發應用程式。
- 我想要跨雲端和內部部署應用程式運用一致的開發人員技能。
- 我使用的是 Azure,但我有在內部部署 Azure Stack Hub 雲端中工作的開發人員。
- 我的內部部署應用程式在季節性、迴圈或無法預測的波動期間遇到需求尖峰。
- 我有內部部署元件,而我想要使用雲端順暢地調整它們。
- 我想要雲端延展性,但希望我的應用程式盡可能在內部部署執行。
後續步驟
深入了解此文章介紹的更多相關主題:
- 觀看資料中心和公用雲端之間的動態調整應用程式,以了解如何使用此模式。
- 若要深入瞭解最佳做法,以及回答您可能有的其他問題,請參閱 混合式應用程式設計考慮 。
- 此模式會使用 Azure Stack 系列產品,包括 Azure Stack Hub。 若要深入了解產品與解決方案的完整組合,請參閱 Azure Stack 系列產品和解決方案。
當您準備好測試解決方案範例時,請繼續進行 跨雲端調整 (內部部署資料) 解決方案部署指南。 部署指南提供部署及測試其元件的逐步指示。