[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系-LMLPHP

本文主要对如下内容进行讲解:Azure云计算的核心体系结构组件中的:资源、订阅和资源组,以及了解 Azure 资源管理器 (ARM) 如何部署资源。

本系列已经更新文章列表:

[ 云计算 | Azure ] Chapter 03 | 描述云计算运营中的 CapEx 与 OpEx,如何区分 CapEx 与 OpEx
[ 云计算 | Azure ] Chapter 04 | Azure核心体系结构组件之数据中心、区域与区域对、可用区和地理区域
[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系

一、什么是 Azure 资源(Resources)

Azure 中的 “资源”(Resource)是指一种由 Azure 管理的计算资源、存储资源或服务。Azure 资源可以是虚拟机、数据库、存储帐户、应用服务、虚拟网络等等。每个资源都有一个唯一的标识符,并由 Azure 资源管理器 (Azure Resource Manager) 管理。

[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系-LMLPHP

当用户使用 Azure 时,你会购买的服务,比如数据库,或者web托管,或者VM等,这些所有的服务都表示为资源,资源可以认为是一个对象(Object),用来代表你的 Azure 的某个服务。基本上你的合同也代表一个服务的生命周期,因此,一旦你在 Azure 中购买了一个服务,会创建一个资源,一旦你结束了服务,这个资源就会被删除,Azure 使用资源来保存所有的配置,几乎所有的配置选项都表示为该资源上的属性。Azure 的所有资源都可以表示为 json 模板,这种模板表示法是当下最常用的标准之一,它描述了对象,对于这种 json 格式的细节,我们需要知道所有的资源都有四个通用属性(类型、API版本信息、名称、位置)和其他一些不同的非公共属性。

[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系-LMLPHP

json 中的数据格式类似于:

{
"TYPE" : "MICROSOFT.VIRTUAL MACHINE",
"APIVERSION" : "2022-08-08",
"NAME" : "VIRTUAL MACHINE",
"LOCATION" : "HONG KONG",
... OTHER ...
}

二、什么是 Azure 资源组(Resource Group)

Azure resource group(Azure 资源组)是 Azure 中用于逻辑分组和管理资源的容器。资源组可以包含一个或多个 Azure 资源(例如虚拟机、存储帐户、网络接口等)。它们可以被创建、更新、删除,并且可以与其他 Azure 服务和功能(例如 Azure Policy、Azure Role-Based Access Control 和 Azure Resource Manager)进行交互。

[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系-LMLPHP

2.1 创建资源组的策略(了解)

通过将资源组中的所有资源作为一个单独的逻辑单元进行管理,可以轻松地跟踪、部署、监视和管理这些资源。另外,资源组还提供了一种方便的方式来应用一组 Azure 策略、定义角色访问控制以及跟踪资源使用情况和成本。那么如何进行将资源进行划分到资源组呢?

  • 按类型(网络,虚拟机,数据库等)
  • 按环境(dev,prod,qa)
  • 按部门(市场,金融,HR)
  • 组合策略,例如环境与部门
  • 按照权限
    • 由谁需要管理它们
    • RBAC控制
    • 例如数据库管理员可以在数据库管理组中访问数据库。
  • 按照生命周期
    • 允许使用但实验后删除。
  • 按照账单
    • 一种过滤和排序数据以更好地了解成本分配位置的方法。

[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系-LMLPHP

TBD: 以后会写一个文章来专门说明 Azure 中的最佳实践,包括各资源的命名规范,此处不是本文重点(挖坑001 03/19/2023 2:04)

2.2 Azure 资源组知识点汇总(重要

  • Azure资源组本身也是Azure资源,因此可以具有锁定,标签,RBAC 权限等。
    • Azure 资源组是免费的。
  • Azure 资源组是逻辑容器,用于在 Azure 上部署资源。
  • Azure 资源组与区域和订阅本身绑定。
    • 但可以包含不同区域的资源。
      • 如果 Azure 资源组所在的区域停止运行, Azure 资源组的管理将无法正常工作
  • Azure 资源组主要作用是帮助你组织资源。
    • 你可以将类似的使用、类型或位置的资源放在同一组中。
  • 如果你删除 Azure 资源组,则其中包含的所有资源也将被删除。
  • 关于 Azure 资源组授权。
    • 应用基于角色的访问控制(RBAC)权限的范围。
    • Azure 资源组中的所有资源都继承了权限。
  • 所有资源必须在资源组中,资源只能是单个资源组的成员
    • 在部署任何资源之前,你需要一个资源组
  • 有些服务有特定的限制或要求从一个资源组移动到另一个资源组
  • Azure 资源组不能嵌套
  • 可以查看部署到资源组的历史记录。

三、什么是 Azure 订阅?

Azure 订阅是使用 Azure 云服务的一种方式,Azure 订阅类似于资源组,它是一个逻辑容器,用于管理和跟踪在 Azure中使用的资源。当你注册 Azure 时,你需要创建一个订阅,以便可以开始使用 Azure 服务。

Azure 订阅允许你选择你需要的服务,如虚拟机、存储、数据库和其他服务,并控制使用这些服务的费用和带宽。你可以拥有多个 Azure 订阅,并将其用于不同的团队或项目,或者以不同的方式组织你的资源。订阅可以根据所需功能的不同进行分类,以及根据消费模型(例如预付费或后付费)和区域(例如全球、国家或地理区域)进行管理。

[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系-LMLPHP

3.1 多订阅架构

Multiple Azure Subscriptions 指的是一个 Azure 用户可以创建并拥有多个 Azure 订阅。每个订阅可以与不同的 Azure 租户相关联,这使得用户可以在不同的租户中创建独立的资源,而不会对其他租户或订阅产生影响。这种方式可以提供更大的灵活性,使用户能够更好地组织和管理其 Azure 资源,同时也可以帮助用户更好地控制成本和安全性

[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系-LMLPHP

什么情况下会创建多订阅:

  1. 隔离环境
    • 例如测试、安全性,或为了遵守合规性要求而隔离数据。
    • 这非常有用,因为资源访问控制发生在订阅级别。
  2. 隔离组织结构
    • 例如,限制团队使用低成本资源,同时允许IT部门使用全套资源。
    • 允许你管理和控制用户在每个订阅中提供的资源的访问。
  3. 隔离计费
    • 成本首先在订阅级别聚合。
      • 根据你的需求管理和跟踪成本。例如针对生产、开发、测试或由于订阅限制而产生的成本。
  4. 为了订阅限制
    • 订阅受到一些硬性限制的约束。
      • 例如,每个订阅的 Express Route 电路最大数量为10。

3.2 Azure 订阅知识点汇总

  • Azure 订阅用于创建和使用Azure服务。
  • Azure 订阅在你注册时候创建。
  • Azure 订阅是逻辑容器,用于在Azure中配置资源,如虚拟机、数据库等。
  • 一个帐户可以有多个订阅。
  • 当你创建Azure资源(如虚拟机)时,你需要指定它所属的订阅。
  • 随着你使用虚拟机,虚拟机的使用量将被汇总并按月计费。
  • 每个订阅都是一个独立的实体,无法合并。
  • 可以使用 Azure 订阅来定义 Azure 产品、服务和资源的边界。订阅边界有两种:
    • 计费边界:此订阅类型确定如何对使用 Azure 的 Azure 帐户计费。 可以为不同类型的计费要求创建多个订阅。
    • 访问控制边界:Azure 会在订阅级别应用访问管理策略,你可以创建单独的订阅来反映不同的组织结构。

四、什么是 Azure 管理组(Management Groups)

Azure 管理组是一种管理 Azure 订阅和资源的层级结构,可以帮助组织更好地组织和管理其 Azure 环境。Azure 管理组可以将多个 Azure 订阅和资源组织在一起,并提供一致的访问控制、策略和合规性管理。管理组可以帮助组织实现以下目标:

  1. 简化管理:通过将多个 Azure 订阅和资源组织在一起,可以更轻松地管理这些资源。例如,你可以在管理组中定义共享的策略,然后将其应用到管理组中的所有订阅和资源(可以对订阅进行分组)。

  2. 控制访问:管理组提供了一种将访问控制策略应用于多个 Azure 订阅和资源的方法。通过定义角色分配和权限,你可以控制谁可以对管理组中的资源进行操作(可以有 RBAC 分配和策略)。

  3. 管理合规性:管理组可以帮助组织实现合规性目标,例如确保符合特定的安全标准或数据保护法规。通过定义一致的策略和标准,可以更轻松地确保所有资源符合这些要求。

总之,Azure 管理组是一种强大的工具,可以帮助组织更好地管理其 Azure 环境,并实现更高的安全性、合规性和效率。

[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系-LMLPHP

五、参考文献

https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/get-started/how-azure-resource-manager-works#what-is-an-azure-subscription
https://learn.microsoft.com/zh-cn/training/modules/describe-core-architectural-components-of-azure/6-describe-azure-management-infrastructure
https://www.pragimtech.com/blog/azure/azure-resource-groups/

03-30 20:09