你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

定义命名约定

资源的好名称有助于快速识别其类型、其关联的工作负荷、其环境和运行位置的 Azure 区域。 为此,名称应遵循一致的格式(命名约定),该约定由有关每个资源的重要信息组成。 名称中的信息理想情况下包括标识特定资源实例所需的任何内容。 例如,在美国西部地区,一个用于生产环境的 SharePoint 工作负载的公共 IP 地址 (PIP) 可能是 pip-sharepoint-prod-westus-001

此图显示 Azure 资源名称的组件。

图 1:Azure 资源名称中的组件示例。

注意

请考虑并非所有 Azure 资源都可以遵循相同的模式。 请确保了解正在使用的资源类型的限制。

若要了解详细信息,请参阅 Azure 资源的命名规则和限制

在构建命名约定时,请标识要在资源名称中捕获的关键信息。 不同的信息与不同的资源类型相关,并非所有已建立的命名组件都可用于每种资源类型。 为环境建立一个标准命名约定,该约定易于遵循、简洁且可用于识别与部署的资源相关的信息。

以下列表提供了在构造资源名称时有用的命名组件的示例:

命名组成部分 描述
组织 组织的顶级名称通常用于代表最高管理阶层,或在较小的组织中作为命名惯例的一部分。 示例:contoso
业务单元或部门 拥有资源所属的订阅或工作负载的公司的最高层部门。 在较小的组织中,此组件可能代表单个企业顶级组织元素。 示例:finmktgproductitcorp
资源类型 表示 Azure 资源或资产类型的缩写。 此组件通常是名称中的前缀或后缀。 有关详细信息,请参阅 Azure 资源类型的建议缩写。 示例:rgvm
工作负荷、应用程序或项目 资源所属的工作负荷、应用程序或项目的名称。 示例:navigatoremissionssharepointhadoop
环境 资源支持的工作负载所处的开发生命周期阶段。 示例:proddevqastagetest
区域 部署资源的区域或云提供商。 示例:westuseastus2westeuusvaustx
实例 特定资源的实例计数,以将其与具有相同命名约定和命名组件的其他资源区分开来。 示例、01001

命名注意事项

除了定义命名组件之外,还必须考虑列出命名组件的顺序以及应在组件之间显示哪种类型的分隔符(如果有)。 还要考虑与资源类型关联的不同命名规则。

范围

所有 Azure 资源类型都有一个范围,用于定义该资源的级别。 此外,资源必须在其范围内具有唯一的名称。

Azure 资源名称的范围级别:

  • 全局:在全 Azure 中唯一。

    示例:所有 Azure 中具有公共 IP 终结点的 PaaS 资源的名称,因为该名称是初始的默认公共 DNS 名称。

  • 资源组:资源组中唯一。

    示例:资源组中的所有虚拟网络都必须具有唯一的名称才能在该资源组中进行路由。

  • 资源:父资源中唯一。

    示例:虚拟网络中的所有子网必须具有唯一名称,以避免段重叠。

展示 Azure 资源名称范围级别的图示。

图 2:Azure 资源名称的范围级别

例如,虚拟网络具有资源组的范围,这意味着特定资源组中只能有一个名为 vnet-prod-westus-001 的网络。 其他资源组也可以具有名为 vnet-prod-westus-001的虚拟网络,但每个资源组只能有一个具有该名称的虚拟网络。 子网的范围限定为虚拟网络,因此虚拟网络中的每个子网必须具有不同的名称。

某些资源名称具有全局范围,例如具有公共终结点或虚拟机 DNS 标签的平台即服务(PaaS)的名称。 全局范围内的资源必须具有在整个 Azure 平台中唯一的名称。

Azure 命名规则

Azure 命名规则因资源类型而异。 请务必了解每种资源类型的命名规则,以避免混淆和延迟。

例如,不同资源类型的资源名称可能具有不同的长度限制。 我们建议保持命名组件的长度较短或缩写名称,以防止超出资源名称长度限制。

在构建命名规范时,请确定想要在资源名称中反映的关键信息内容。 不同的信息与不同的资源类型相关。

建议:

  • 了解命名规则和限制:在开发命名约定时,平衡名称的上下文及其范围和长度限制非常重要。 有关详细信息,请参阅 Azure 资源的命名规则和限制
  • 使用建议的资源缩写:缩写有助于将资源名称保持在长度限制范围内,并使其更易于阅读。 有关详细信息,请参阅 Azure 资源类型的建议缩写
  • 考虑为 VM 命名一致性:如果使用 Azure 中的 VM,我们建议保持名称一致,即使 Azure 中的 VM 名称可能比 VM 允许的 NetBIOS 名称长。 有关详细信息和其他限制,请参阅 Active Directory 中计算机、域、站点和 OU 的 命名约定 - 计算机名称
  • 使用 Azure 命名工具:Azure 命名工具是一种工具,可帮助你根据命名约定生成 Azure 资源的名称。 有关详细信息,请参阅 Azure 命名工具

示例名称

定义命名约定时,请考虑这些示例。 这些示例基于本文中所述的命名组件和注意事项。

以下示例旨在提供命名约定的可视化效果,但实际约定因组织而异。 有关更多示例,请参阅 Azure 命名工具

示例名称:通用

资产类型 范围 格式和示例
管理组 业务部门和/或
环境
mg-<业务部门>[-<环境>]

  • mg-mktg
  • mg-hr
  • mg-corp-prod
  • mg-fin-client
  • 订阅 帐户/企业协议 <业务部门>-<订阅用途>-<###>

  • mktg-prod-001
  • corp-shared-001
  • fin-client-001
  • 资源组 订阅 rg-<应用或服务名称>-<订阅用途>-<###>

  • rg-mktgsharepoint-prod-001
  • rg-acctlookupsvc-shared-001
  • rg-ad-dir-services-shared-001
  • API 管理服务实例 全局 apim-<应用或服务名称>

    apim-navigator-prod
    托管的标识 资源组 id-<应用或服务名称>-<环境>-<区域名称>-<###>

  • id-appcn-keda-prod-eastus2-001
  • 示例名称:网络

    资产类型 范围 格式和示例
    虚拟网络 资源组 vnet-<订阅用途>-<区域>-<###>

  • vnet-shared-eastus2-001
  • vnet-prod-westus-001
  • vnet-client-eastus2-001
  • 子网 虚拟网络 snet-<订阅用途>-<区域>-<###>

  • snet-shared-eastus2-001
  • snet-prod-westus-001
  • snet-client-eastus2-001
  • 网络接口 (NIC) 资源组 nic-<##>-<虚拟机名称>-<订阅目的>-<###>

  • nic-01-dc1-shared-001
  • nic-02-vmhadoop1-prod-001
  • nic-02-vmtest1-client-001
  • 公共 IP 地址 资源组 pip-<vm 名称或应用名称>-<环境>-<区域>-<###>

  • pip-dc1-shared-eastus2-001
  • pip-hadoop-prod-westus-001
  • 负载均衡器(外部) 资源组 lbe-<应用名称或角色>-<环境>-<###>

  • lbe-navigator-prod-001
  • lbe-sharepoint-dev-001
  • 网络安全组 (NSG) 子网或 NIC nsg-<策略名称或应用名称>-<###>

  • nsg-weballow-001
  • nsg-rdpallow-001
  • nsg-sqlallow-001
  • nsg-dnsblocked-001
  • 本地网络网关 虚拟网关 lgw-<订阅用途>-<区域>-<###>

  • lgw-shared-eastus2-001
  • lgw-prod-westus-001
  • lgw-client-eastus2-001
  • 虚拟网络网关 虚拟网络 vgw-<订阅用途>-<区域>-<###>

  • vgw-shared-eastus2-001
  • vgw-prod-westus-001
  • vgw-client-eastus2-001
  • VPN 连接 资源组 vcn-<订阅1 用途>>-<区域1>-<订阅2 用途>>-<区域2>-

  • vcn-shared-eastus2-to-shared-westus
  • vcn-prod-eastus2-to-prod-westus
  • 路由表 资源组 rt-<路由表名称>

  • rt-navigator
  • rt-sharepoint
  • DNS 标签 全局 <DNS A record for VM>.<region>.cloudapp.azure.com

  • dc1.westus.cloudapp.azure.com
  • web1.eastus2.cloudapp.azure.com
  • 示例名称:计算和 Web

    资产类型 范围 格式和示例
    虚拟机 资源组 vm-<工作负荷、应用程序或项目>-<环境>-<###>

  • vm-sql-test-001
  • vm-hadoop-prod-001
  • vm-sharepoint-dev-001
  • Web 应用 全局 应用<工作负荷、应用程序或项目>-<环境>-<###>.azurewebsites.net

  • app-navigator-prod-001.azurewebsites.net
  • app-accountlookup-dev-001.azurewebsites.net
  • 函数应用 全局 func-<工作负荷、应用程序或项目>-<环境>-<###>.azurewebsites.net

  • func-navigator-prod-001.azurewebsites.net
  • func-accountlookup-dev-001.azurewebsites.net
  • 示例名称:数据库

    资产类型 范围 格式和示例
    Azure SQL 数据库 Azure SQL Server sqldb-<工作负荷、应用程序或项目>-<环境>

  • sqldb-users-prod
  • sqldb-users-dev
  • Azure Cosmos DB 数据库 全局 cosmos-<工作负载、应用程序或项目>-<环境>

  • cosmos-navigator-prod
  • cosmos-emissions-dev
  • Azure Cache for Redis 实例 全局 redis-<工作负载、应用程序或项目>-<环境>

  • redis-navigator-prod
  • redis-emissions-dev
  • 示例名称:存储

    资产类型 范围 格式和示例
    存储帐户(常规用途) 全局 st<工作负荷、应用程序或项目><###>

  • stnavigatordata001
  • stemissionsoutput001
  • Azure StorSimple 全局 ssimp<工作负载、应用程序或项目><环境>

  • ssimpnavigatorprod
  • ssimpemissionsdev
  • Azure 容器注册表 全局 cr<工作负荷、应用程序或项目><环境><###>

  • crnavigatorprod001
  • 示例名称:AI 和机器学习

    资产类型 范围 格式和示例
    Azure AI 搜索 全局 srch-<工作负荷、应用程序或项目>-<环境>

  • srch-navigator-prod
  • srch-emissions-dev
  • Azure OpenAI 服务 资源组 oai-<工作负载、应用程序或项目>-<环境>

  • oai-navigator-prod
  • oai-emissions-dev
  • Azure 机器学习工作区 资源组 mlw-<工作负载、应用程序或项目>-<环境>

  • mlw-navigator-prod
  • mlw-emissions-dev
  • 示例名称:分析和物联网

    资产类型 范围 格式和示例
    Azure Analysis Services 全局 as<应用名称><环境>

  • asnavigatorprod
  • asemissionsdev
  • Azure 数据工厂 全局 adf-<工作负荷、应用程序或项目>-<环境>

  • adf-navigator-prod
  • adf-emissions-dev
  • Azure Synapse Analytics 工作区 资源组 synw-<工作负载、应用程序或项目>-<环境>

  • synw-navigator-prod
  • synw-emissions-dev
  • Data Lake Storage 帐户 全局 dls<工作负载、应用程序或项目><环境>

  • dlsnavigatorprod
  • dlsemissionsdev
  • 物联网 (IoT) 中心 全局 iot-<工作负载、应用程序或项目>-<环境>

  • iot-navigator-prod
  • iot-emissions-dev
  • 示例名称:集成

    资产类型 范围 格式和示例
    服务总线命名空间 全局 sbns-<工作负载、应用程序或项目>-<环境>.servicebus.windows.net

  • sbns-navigator-prod.servicebus.windows.net
  • sbns-emissions-dev.servicebus.windows.net
  • 服务总线队列 服务总线 sbq-<工作负荷、应用程序或项目>

  • sbq-navigator
  • 服务总线主题 服务总线 sbt-<工作负荷、应用程序或项目>

  • sbt-navigator
  • 下一步

    一个好的下一步是查看 Azure 资源的建议缩写。 缩写有助于将资源名称保持在长度限制范围内,并使其更易于阅读。

    资源类别缩写