#python #pulumi
#python #пулуми
Вопрос:
Я пытаюсь выяснить, как подключить pulumi_azure.compute.LinuxVirtualMachineScaleSet
экземпляр к серверному пулу pulumi_azure.network.ApplicationGateway
с помощью Python.
Просмотр документации pulumi_azure.compute.LinuxVirtualMachineScaleSet
( https://www.pulumi.com/docs/reference/pkg/azure/compute/linuxvirtualmachinescaleset ) кажется, что цепочка необходимых ссылок была бы:
- шаг 1 — создайте
LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration
экземпляр с соответствующимapplicationGatewayBackendAddressPoolIds
набором - шаг 2 — создайте
LinuxVirtualMachineScaleSetNetworkInterface
экземпляр с настройкой ip сетевого интерфейса из шага 1 - шаг 3 — создайте
LinuxVirtualMachineScaleSet
с помощью network_interface с шага 2
Однако, хотя это то, что говорится в документации, 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",
"primary": True,
"subnet_id": ....
}],
"network_security_group_id": ...
}],
Итак, каков был бы правильный способ связать набор масштабирования с внутренним пулом application gateway?
Ответ №1:
После просмотра исходного кода pulumi_azure/compute/linux_virtual_machine_scale_set.py
я понял, что LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration
etc, упомянутые в документации pulumi, являются не классами, а обычными словарями.
ip_configuration
поле network_interface
аргумента конструктора набора масштабов принимает необязательное applicationGatewayBackendAddressPoolIds
ключевое слово, которое может быть использовано для связывания набора масштабов с внутренним пулом шлюза приложений.