我是Azure架构的新手,正在尝试理解为什么Azure资源组(Azure资源组是构建在Azure上的应用程序的逻辑部署桶)在定义时与区域相关联。一开始我以为是为了提供灾难恢复或地理冗余的全球分布,但后来我意识到单个资源组可以包含不同地区的Web应用程序,这些应用程序可以通过Traffic Manager提供那些功能,我猜想使用单独的资源组有助于更好地识别哪些资源在哪个地区,但除了出于组织目的外,我不明白资源组的区域定义意味着什么。(edit:删除了一般建议查询,以便更加集中)
hmmo2u0o1#
指定资源组位置的主要原因是为部署的数据/元数据指定一个存储位置...它还使API保持一致(想想REST API调用中的路径),但主要原因是部署期间的存储。资源在组中的位置与组本身的位置无关/不相关。
pvabu6sv2#
创建资源组时,需要为该资源组提供位置。您可能想知道,“为什么资源组需要位置?而且,如果资源可以具有与资源组不同的位置,那么资源组位置又有什么关系呢?”资源组存储有关资源的元数据。因此,为资源组指定位置时,您正在指定元数据的存储位置。出于合规性原因,您可能需要确保数据存储在特定区域中。https://learn.microsoft.com/en-us/azure/azure-resource-manager/resource-group-overview
ax6ht2ek3#
所述 meta数据Azure资源组的虚拟机(定义)需要存储在某个位置。因此需要位置。但是,资源组内的资源与位置无关,可以放置在不同的区域\位置。请注意,资源之间可能存在依赖关系。西欧的虚拟机显然也需要西欧的存储帐户,但是同一资源组中的SQL数据库可以存在于美国西部。
4ktjp1zp4#
资源组基本上是让你决定你想一起管理应用程序中的哪些资源,管理的意思是你想把它们作为一个组来部署、管理和监视,这样在高层次上你就不会把它们看作是单独的组件。通常,在大型生态系统中,Azure资源组是指您不会将其中的组件(资源)视为单独实体的资源组,而是将它们视为单个实体的相关和相互依赖的部分,因此您将它们放在一个资源组中,以便使用Azure资源组管理器工具可以在单个协调操作中部署,更新或删除应用程序的所有资源。您可以使用模板进行部署,该模板可用于不同的环境,如测试、试运行和生产。您可以通过查看整个组的累计成本来澄清组织的开单。你可以在这里找到有关Azure资源管理器的更多详细信息,我相信这将帮助你更好地理解Azure资源组背后的想法:https://azure.microsoft.com/en-us/documentation/articles/resource-group-overview/
ldioqlga5#
其他答案都没有提到如果资源组所在的位置不可用,则无法更新该资源组中的资源。这是因为这些资源的元数据存储在资源组的位置,因此即使资源可用,如果资源组不可用,则无法更新资源的配置。以下是MS Resource Group文档的完整引用:创建资源组时,需要为该资源组提供位置。您可能想知道,“为什么资源组需要位置?而且,如果资源可以具有与资源组不同的位置,那么资源组位置又有什么关系呢?”资源组存储有关资源的元数据。为资源组指定位置时,即指定了元数据的存储位置。出于合规性原因,您可能需要确保数据存储在特定区域中。为确保资源组的状态一致性,所有控制平面操作都将通过资源组的位置进行路由。选择资源组位置时,我们建议您选择一个靠近您的控制操作发起位置的位置。通常,此位置是最接近您当前位置的位置。此路由要求仅适用于资源组的控制平面操作。它不不会影响发送到应用程序的请求。如果资源组的区域暂时不可用,则无法更新资源组中的资源,因为元数据不可用。其他区域中的资源仍将按预期运行,但无法更新它们。此条件不适用于Azure内容交付网络、Azure DNS、Azure DNS专用区域、Azure流量管理器和Azure Front Door等全局资源。有关构建可靠应用程序的更多信息,请参见Designing reliable Azure applications。为了最大限度地减少可能影响您的服务和管理它们的能力的区域故障的数量,我建议您的资源组与其所有资源位于同一区域。考虑使用与资源使用区域不同的资源组区域的原因:
lndjwyie6#
Azure中的一切都与物理位置/数据中心相关,ARM也不例外。不久前,并非每个数据中心都支持ARM,因此选择ARM的理由更有意义。现在,与任何其他Azure资源一样,用户通常根据其与最终用户的要求接近程度和/或法律的地理要求来做出决定。
wdebmtf27#
似乎没有明显的方法来确定资源组在创建后位于哪个区域。当我遇到CDN元数据冲突的问题时,这让我在这里的讨论中感到悲伤。我不得不重新开始。现在我用区域来命名我的资源组。例如:公司简介
7条答案
按热度按时间hmmo2u0o1#
指定资源组位置的主要原因是为部署的数据/元数据指定一个存储位置...它还使API保持一致(想想REST API调用中的路径),但主要原因是部署期间的存储。
资源在组中的位置与组本身的位置无关/不相关。
pvabu6sv2#
创建资源组时,需要为该资源组提供位置。您可能想知道,“为什么资源组需要位置?而且,如果资源可以具有与资源组不同的位置,那么资源组位置又有什么关系呢?”资源组存储有关资源的元数据。因此,为资源组指定位置时,您正在指定元数据的存储位置。出于合规性原因,您可能需要确保数据存储在特定区域中。
https://learn.microsoft.com/en-us/azure/azure-resource-manager/resource-group-overview
ax6ht2ek3#
所述 meta数据Azure资源组的虚拟机(定义)需要存储在某个位置。因此需要位置。但是,资源组内的资源与位置无关,可以放置在不同的区域\位置。请注意,资源之间可能存在依赖关系。西欧的虚拟机显然也需要西欧的存储帐户,但是同一资源组中的SQL数据库可以存在于美国西部。
4ktjp1zp4#
资源组基本上是让你决定你想一起管理应用程序中的哪些资源,管理的意思是你想把它们作为一个组来部署、管理和监视,这样在高层次上你就不会把它们看作是单独的组件。
通常,在大型生态系统中,Azure资源组是指您不会将其中的组件(资源)视为单独实体的资源组,而是将它们视为单个实体的相关和相互依赖的部分,因此您将它们放在一个资源组中,以便使用Azure资源组管理器工具可以在单个协调操作中部署,更新或删除应用程序的所有资源。
您可以使用模板进行部署,该模板可用于不同的环境,如测试、试运行和生产。您可以通过查看整个组的累计成本来澄清组织的开单。
你可以在这里找到有关Azure资源管理器的更多详细信息,我相信这将帮助你更好地理解Azure资源组背后的想法:
https://azure.microsoft.com/en-us/documentation/articles/resource-group-overview/
ldioqlga5#
其他答案都没有提到如果资源组所在的位置不可用,则无法更新该资源组中的资源。这是因为这些资源的元数据存储在资源组的位置,因此即使资源可用,如果资源组不可用,则无法更新资源的配置。
以下是MS Resource Group文档的完整引用:
创建资源组时,需要为该资源组提供位置。
您可能想知道,“为什么资源组需要位置?而且,如果资源可以具有与资源组不同的位置,那么资源组位置又有什么关系呢?”
资源组存储有关资源的元数据。为资源组指定位置时,即指定了元数据的存储位置。出于合规性原因,您可能需要确保数据存储在特定区域中。
为确保资源组的状态一致性,所有控制平面操作都将通过资源组的位置进行路由。选择资源组位置时,我们建议您选择一个靠近您的控制操作发起位置的位置。通常,此位置是最接近您当前位置的位置。此路由要求仅适用于资源组的控制平面操作。它不不会影响发送到应用程序的请求。
如果资源组的区域暂时不可用,则无法更新资源组中的资源,因为元数据不可用。其他区域中的资源仍将按预期运行,但无法更新它们。此条件不适用于Azure内容交付网络、Azure DNS、Azure DNS专用区域、Azure流量管理器和Azure Front Door等全局资源。
有关构建可靠应用程序的更多信息,请参见Designing reliable Azure applications。
为了最大限度地减少可能影响您的服务和管理它们的能力的区域故障的数量,我建议您的资源组与其所有资源位于同一区域。
考虑使用与资源使用区域不同的资源组区域的原因:
lndjwyie6#
Azure中的一切都与物理位置/数据中心相关,ARM也不例外。不久前,并非每个数据中心都支持ARM,因此选择ARM的理由更有意义。现在,与任何其他Azure资源一样,用户通常根据其与最终用户的要求接近程度和/或法律的地理要求来做出决定。
wdebmtf27#
似乎没有明显的方法来确定资源组在创建后位于哪个区域。当我遇到CDN元数据冲突的问题时,这让我在这里的讨论中感到悲伤。我不得不重新开始。现在我用区域来命名我的资源组。例如:公司简介