Azure Resource Manager 是 Azure 的部署和管理服務。 其提供管理層,協助您建立、更新和刪除您 Azure 帳戶中的資源。 您可以使用存取控制、鎖定和標籤等管理功能,以在部署之後保護和組織您的資源。
下列影片涵蓋基本 Resource Manager 概念:
一致的管理層
當您透過任何 Azure API、工具或 SDK 傳送要求時,Resource Manager 就會收到要求。 會先驗證並授權要求,再將其轉送至適當的 Azure 服務。 因為所有要求都是透過相同的 API 來處理,所以您會在所有不同工具中看到一致的結果和功能。
下圖顯示 Resource Manager 在 Azure 要求期間扮演的角色:
透過 PowerShell、Azure CLI、REST API 和用戶端 SDK 也可以使用 Azure 入口網站中的所有可用功能。 當 API 引進新功能時,這會在初始發行後的 180 天內反映在入口網站中。
重要事項
Resource Manager 將於 2025 年 3 月 1 日停止支援 TLS 1.2 之前的通訊協定。 如需詳細資訊,請參閱移轉至適用於 Azure Resource Manager 的 TLS 1.2。
詞彙
如果您剛接觸 Resource Manager,則可能不熟悉下列術語:
資源 - 透過 Azure 提供的可管理項目。 資源範例包括虛擬機器、儲存體帳戶、Web 應用程式、資料庫和虛擬網路。 資源群組、訂用帳戶、管理群組和標籤也是資源。
資源群組 - 保留 Azure 解決方案的相關資源的容器。 資源群組包含您要以群組的形式管理的資源。 您可根據對組織最有利的方式,決定哪些資源要放置到資源群組。 請參閱什麼是資源群組?。
資源提供者 - 提供 Azure 資源的服務。 例如,
Microsoft.Compute是常見的資源提供者,可提供虛擬機器資源。Microsoft.Storage是另一個常見的資源提供者。 請參閱 Azure 資源提供者和類型。宣告式語法–可讓您陳述「以下是我想要建立的項目」的語法,而不需要寫入一連串程式設計命令來建立該項目。 ARM 範本和 Bicep 檔案是宣告式語法的範例。 在這些檔案中,您可以定義要部署至 Azure 的基礎結構的屬性。
ARM 範本–JavaScript 物件標記法 (JSON) 檔案,可定義一或多個要部署至資源群組、訂用帳戶、管理群組或租用戶的資源。 使用範本以一致且重複的方式部署資源。 如需如何部署範本的概觀,請參閱什麼是 ARM 範本?。
Bicep 檔案–用來以宣告方式部署 Azure 資源的檔案。 Bicep 是設計用來為 Azure 中的基礎結構即程式碼解決方案提供最佳製作體驗的語言。 請參閱什麼是 Bicep?以深入了解 Bicep。
擴充資源 - 會新增至另一個資源功能中的資源。 例如,角色指派就是擴充資源。 您可以將角色指派套用至任何其他資源以指定存取權。 請參閱擴充資源。
如需更多 Azure 術語定義,請參閱 Azure 基本概念。
使用 Resource Manager 的優點
搭配 Resource Manager,您可以:
透過宣告式範本而非指令碼來管理基礎結構。
以群組形式部署、管理及監視方案的所有資源,而不是個別處理這些資源。
在整個開發週期上重新部署方案,並確信您的資源會部署在一致的狀態中。
定義之間的相依性,使得以正確的順序部署資源。
因為 Azure 角色型存取控制 (Azure RBAC) 會原生整合至管理平台,請將存取控制套用至所有服務。
將標籤套用至資源,以便以邏輯方式組織訂用帳戶中的所有資源。
透過檢視共用相同標籤的資源群組成本,以釐清您組織的計費。
了解範圍
Azure 提供四個管理範圍層級:管理群組、訂用帳戶、資源群組和資源。 下圖將這些圖層視覺化:
您可以在任何範圍層級套用管理設定。 您選取的層級會決定套用設定的範圍。 較低層級會從較高層級繼承設定。 例如,當您將原則套用到訂用帳戶時,訂用帳戶中的所有資源群組和資源都會套用該原則。 當您在資源群組上套用原則時,資源群組及其所有資源都會套用該原則。 但是,另一個資源群組就不會套用該原則。
若要深入了解如何在 Azure 中管理身分識別和存取,請參閱什麼是 Microsoft Entra ID?。
您可以將範本部署至租用戶、管理群組、訂用帳戶或資源群組。
什麼是資源群組?
資源群組是一種容器,您用來管理 Azure 解決方案的相關資源。 使用資源群組可協助您協調相關資源之間的變更。 例如,您可以將更新部署至資源群組,並確信資源會透過協調作業進行更新。 或者,在您完成解決方案時,可以刪除資源群組,並知道所有資源都已刪除。
定義資源群組時,有一些重要考量:
資源群組中的所有資源應該共用相同的生命週期。 您可一起部署、更新和刪除它們。 例如,伺服器是一種資源。 如果其需要存在於不同的部署週期,應該位於另一個資源群組中。
每個資源只能存在於一個資源群組中。
您可以隨時在資源群組中新增或移除資源。
您可以將資源從一個資源群組移動到另一個群組。 如需詳細資訊,請參閱將 Azure 資源移至新的資源群組或訂用帳戶。
資源群組中的資源可以位於與資源群組不同的區域中,但建議您使用相同的位置。 請參閱我應該針對資源群組使用哪個位置?。
您可以將標記套用至資源群組。 資源群組中的資源不會繼承這些標記。
資源可以連線至其他資源群組中的資源。 當這兩個資源相關,但不共用相同的生命週期時,此案例很常見。 例如,您可以有一個 Web 應用程式連線到不同資源群組中的資料庫。
當您刪除資源群組時,也會一併刪除資源群組中的所有資源。 如需 Resource Manager 如何協調這些刪除的相關資訊,請參閱 Azure Resource Manager 資源群組和資源刪除。
您可以在每個資源群組中最多部署某個資源類型的 800 個執行個體。 有些資源類型免除 800 個執行個體的限制。 如需詳細資訊,請參閱資源群組限制。
若要建立資源群組,請使用 Azure 入口網站、PowerShell、Azure CLI 或 ARM 範本。
我應該針對資源群組使用哪個位置?
建立資源群組時,您需要提供該資源群組的位置。
您可能會想知道資源群組為何需要一個位置,以及如果資源群組可以在資源群組外具有位置,則資源群組位置為何很重要。
資源群組會儲存資源相關中繼資料。 當您指定資源群組的位置時,也會指定中繼資料的儲存位置。 基於相容性理由,您可能需要確保您的資料存放在特定區域中。
透過資源群組的位置路由傳送所有控制平面作業,可協助資源群組保持一致狀態。 選取資源群組位置時,建議您選取靠近控制作業來源的位置。 一般而言,這個位置是最接近您的位置。 此路由需求僅適用於資源群組的控制平面作業。 並不會影響傳送至應用程式的要求。
如果資源群組的區域暫時無法使用,您的資源要求將會容錯移轉至次要區域。 不過,如果多個區域發生中斷,或資源的位置也無法使用,您可能仍會受到影響。 若要降低區域中斷的影響,建議您在相同的區域中找出您的資源和資源群組。 請參閱 Azure Resource Graph 資料表和資源類型參考清單,以檢視 Resource Manager 所管理的資源和中繼資料。
Azure Resource Manager 可增強區域中斷期間的可靠性,確保讀取和寫入的高可用性,同時將對客戶的干擾降到最低。 只有在資源群組的主要區域和備份區域都受到影響的罕見情況下,才會發生服務中斷。
如需建置可靠應用程式的詳細資訊,請參閱特定 Azure 服務的復原檢查清單。
Resource Manager 的復原
Resource Manager 專門設計來提供復原和持續可用性。 REST API 中的 Resource Manager 和控制平面作業 (傳送至 management.azure.com 的要求):
跨區域散發。 Resource Manager 在每個 Azure 區域中都有個別的執行個體,這表示如果 Resource Manager 執行個體在某個區域中失敗,這不會影響服務在另一個區域中的可用性;同樣適用於其他 Azure 服務。 雖然 Resource Manager 會跨區域散發,但有些服務是區域性的。 這項區分表示,雖然控制平面作業的初始處理具有復原性,但當要求轉送至服務時,可能會受到區域性中斷的影響。
在有多個可用性區域的位置中跨可用性區域 (及區域) 散發。 此散發可確保當區域遺失一或多個區域時,Resource Manager 可以容錯移轉至另一個區域。 其會繼續為資源提供控制平面功能。
不要依賴一個邏輯資料中心。
不會由於維護活動而關閉。
這項復原能力適用於透過 Resource Manager 接收要求的服務。 Azure Key Vault 是一項受益於此一致性的服務。
建議針對 Azure Resource Manager 路由使用全域端點 management.azure.com,因為其會啟用 DNS 型流量散發、自動容錯移轉,以及最接近或狀況最好區域的最佳路由,這會改善全球使用者的延遲和可靠性。
全球端點通常會導致更快的回應時間,因為使用者被引導至最近的可用區域,從而減少網路躍點和延遲。
解析並行作業
並行資源更新可能會導致非預期的結果。 兩個以上的作業同時嘗試更新相同的資源時,Resource Manager 會偵測到衝突,並且只允許一個作業順利完成、封鎖其他作業,並傳回一個錯誤。 此解決方案可確保您的更新具有決定性且可靠;您知道資源的狀態,並避免任何不一致或資料遺失。
例如,如果您有兩個要求 (A 和 B) 同時嘗試更新相同的資源,且要求 A 在要求 B 之前完成,則要求 A 成功,而要求 B 失敗。 要求 B 會傳回 409 錯誤。 在取得該錯誤碼之後,您可以取得資源的更新狀態,並判斷是否要重新傳送要求 B。
後續步驟
- 若要了解應用在各 Azure 服務的限制,請參閱 Azure 訂用帳戶和服務限制、配額與約束。
- 若要了解如何移動資源,請參閱將資源移動到新的資源群組或訂用帳戶。
- 若要了解如何標記資源,請參閱使用標籤來組織 Azure 資源和管理階層。
- 若要了解如何鎖定資源,請參閱鎖定您的 Azure 資源以保護基礎結構。