Можно ли обеспечить балансировку нагрузки между виртуальными машинами, не размещая их в одном облачном сервисе?
Мы хотим использовать Ansible для настройки наших машин и установки RabbitMQ, но я не вижу, как это можно сделать без публичного IP-адреса для каждой из машин.
решение1
Azure VM, не имеющая публичного IP, может быть доступна через SSH с использованием определенного порта. В вашем файле инвентаризации ansible вы можете определить ansible_host и ansible_port для каждой из ваших виртуальных машин.
[all]
test01vm0 ansible_host=test01.europe.cloudapp.azure.com ansible_port=50000
test01vm1 ansible_host=test01.europe.cloudapp.azure.com ansible_port=50001
решение2
Вы можете использовать Traffic Manager для балансировки запросов между различными облачными сервисами на уровне DNS.http://azure.microsoft.com/en-us/services/traffic-manager/
Я не знаю, соответствует ли это потребностям RabbitMQ.