问题描述
我试图弄清楚如何使用Python将pulumi_azure.compute.LinuxVirtualMachinescaleSet
实例连接到pulumi_azure.network.ApplicationGateway
的后端池。
查看pulumi_azure.compute.LinuxVirtualMachinescaleSet
的文档
(https://www.pulumi.com/docs/reference/pkg/azure/compute/linuxvirtualmachinescaleset)
看来必要的链接链应该是:
- 步骤1-使用适当的
LinuxVirtualMachinescaleSetNetworkInterfaceIpConfiguration
集创建applicationGatewayBackendAddresspoolIds
实例 - 步骤2-使用步骤1中的网络接口ip配置创建
LinuxVirtualMachinescaleSetNetworkInterface
实例 - 第3步-使用第2步中的network_interface创建
LinuxVirtualMachinescaleSet
然而,这就是文档所说的
LinuxVirtualMachinescaleSetNetworkInterfaceIpConfiguration
和
LinuxVirtualMachinescaleSetNetworkInterface
未在pulumi_azure.compute
中定义(version 3.17.0
,在撰写本文时是最新的)。
查看文档和pulumi_azure.compute的源代码中的代码示例,将network_interfaces参数设置为LinuxVirtualMachinescaleSet
的唯一方法是为其提供字典列表,例如
network_interfaces=[{
"name": "example","primary": True,"ip_configurations": [{
"name": "internal","subnet_id": ....
}],"network_security_group_id": ...
}],
那么将缩放集与应用程序网关的后端池相关联的正确方法是什么?
解决方法
浏览pulumi_azure/compute/linux_virtual_machine_scale_set.py
的源代码后,我意识到pulumi文档中提到的LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration
等不是类,而是简单的字典。
ip_configuration
参数的 network_interface
字段接受可选的applicationGatewayBackendAddressPoolIds
关键字,该关键字可用于将规模集与应用程序网关的后端池相关联。