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

Azure Chaos Studio 中的虚拟网络注入

Azure 虚拟网络是 Azure 中专用网络的基本构建基块。 虚拟网络使许多类型的 Azure 资源能够安全地相互通信、Internet 和本地网络。 虚拟网络类似于在自己的数据中心运行的传统网络。 它带来了 Azure 基础结构的其他优势,例如缩放、可用性和隔离。

虚拟网络注入允许 Azure Chaos Studio 资源提供程序将容器化工作负荷注入虚拟网络,以便可以通过虚拟网络上的专用 IP 地址访问没有公共终结点的资源。 为虚拟网络中的资源配置虚拟网络注入并将其作为目标启用后,可以在多个试验中使用它。 如果根据本文中的说明配置专用资源,试验可以针对专用资源和非专用资源的组合。

我们现在也很高兴地分享 Chaos Studio 支持使用专用终结点运行 基于代理的试验 ! Chaos Studio 现在支持对基于服务直接和基于代理的试验专用链接。 若要对基于代理的试验使用专用链接,请联系 CSA,或访问 “如何:为基于代理的试验设置专用链接”。 有关服务直接故障的专用链接,请阅读以下部分,了解有关如何使用它们的说明。

资源类型支持

目前,只能为 Chaos Studio 虚拟网络注入启用某些资源类型:

  • 可以通过 Azure 门户 和 Azure CLI 通过虚拟网络注入来启用Azure Kubernetes 服务 (AKS) 目标。 可以使用所有 AKS 混沌网格故障。
  • 可以通过 Azure CLI 通过虚拟网络注入启用 Azure 密钥库目标。 可用于虚拟网络注入的故障包括禁用证书、递增证书版本和更新证书策略。

启用虚拟网络注入

若要将 Chaos Studio 与虚拟网络注入配合使用,必须满足以下要求。

  1. Microsoft.Relay必须Microsoft.ContainerInstance向订阅注册资源提供程序。
  2. 将注入 Chaos Studio 资源的虚拟网络必须有两个子网:容器子网和中继子网。 容器子网用于将注入专用网络的 Chaos Studio 容器。 中继子网用于将来自 Chaos Studio 的通信转发到专用网络内的容器。
    1. 这两个子网至少 /28 需要地址空间的大小(在本例 /27 中大于 /28,例如)。 例如地址前缀 10.0.0.0/2810.0.0.0/24.
    2. 必须将容器子网委托给 Microsoft.ContainerInstance/containerGroups
    3. 子网可以任意命名,但我们建议 ChaosStudioContainerSubnetChaosStudioRelaySubnet
  3. 将所需资源作为目标启用以便可以在 Chaos Studio 试验中使用它时,必须设置以下属性:
    1. 设置为 properties.subnets.containerSubnetId 容器子网的 ID。
    2. 设置为 properties.subnets.relaySubnetId 中继子网的 ID。

如果使用Azure 门户将专用资源作为 Chaos Studio 目标启用,则 Chaos Studio 当前仅识别命名和ChaosStudioRelaySubnet命名ChaosStudioContainerSubnet的子网。 如果这些子网不存在,门户工作流可以自动创建它们。

如果使用 CLI,容器和中继子网可以具有任何名称(受资源命名准则的约束)。 将资源作为目标启用时,请指定相应的 ID。

示例:将 Chaos Studio 与专用 AKS 群集配合使用

此示例演示如何将专用 AKS 群集配置为与 Chaos Studio 配合使用。 它假定已在 Azure 订阅中拥有专用 AKS 群集。 若要创建群集,请参阅创建专用Azure Kubernetes 服务群集

  1. 在Azure 门户中,转到订阅中的订阅>资源提供程序。

  2. Microsoft.ContainerInstance注册和资源Microsoft.Relay提供程序(如果尚未注册),方法是选择提供程序,然后选择“注册”。 重新注册 Microsoft.Chaos 资源提供程序。

    Screenshot that shows how to register a resource provider.

  3. 转到 Chaos Studio 并选择“ 目标”。 找到所需的 AKS 群集,并选择“启用目标>启用服务直接目标”。

    Screenshot that shows how to enable targets in Chaos Studio.

  4. 选择群集的虚拟网络。 如果虚拟网络已包含命名 ChaosStudioContainerSubnet 的子网,请选择 ChaosStudioRelaySubnet它们。 如果它们尚不存在,则会自动为你创建它们。

    Screenshot that shows how to select the virtual network and subnets.

  5. 选择“审阅 + 启用”。>

    Screenshot that shows how to review the target enablement.

现在,可以将专用 AKS 群集与 Chaos Studio 配合使用。 若要了解如何安装混沌网格并运行试验,请参阅创建一个混沌试验,该实验使用混沌网格故障和Azure 门户

限制

  • 虚拟网络注入目前仅在Azure 容器实例和 Azure 中继可用的订阅/区域中可用。
  • 创建使用虚拟网络注入启用的目标资源时,需要 Microsoft.Network/virtualNetworks/subnets/write 访问虚拟网络。 例如,如果将 AKS 群集部署到虚拟network_A,则必须有权在虚拟network_A中创建子网,以便为 AKS 群集启用虚拟网络注入。

后续步骤

现在,你已了解如何为 Chaos Studio 实现虚拟网络注入,接下来可以: