Windows Azure — безопасное взаимодействие веб-ролей и виртуальных машин

Я пытаюсь развернуть приложение в Windows Azure, и у меня возникли проблемы с выяснением того, как мне достичь оптимальной конфигурации из-за отсутствия документации и новизны инфраструктуры Azure. Мне нужно настроить две виртуальные машины (одна Linux-машина и одна Windows Server с SQL Server) для связи с одним экземпляром веб-роли. Веб-роль должна иметь единственную конечную точку, доступную из внешнего мира. Он должен иметь возможность взаимодействовать с SQL Server и машиной Linux (этим машинам не нужно взаимодействовать друг с другом). Я могу добиться этого, если открою конечные точки на виртуальной машине (например, порт 1433 на компьютере с Windows и тот же порт в брандмауэре виртуальной машины), однако я обеспокоен риском безопасности, связанным с этим, и предпочел бы, чтобы веб-роль общалась непосредственно с моей виртуальной машиной БЕЗ открытия конечной точки (используя портал Azure). Я читал несколько примеров, в которых говорится о развертывании элементов в качестве облачной службы, но ни один из них не включает веб-роль И НАСТРАИВАЕМУЮ виртуальную машину. Я видел ссылки на использование виртуальной сети, но не примеры. Я искал везде решение без успеха. Это кажется обычным сценарием, поэтому я не думаю, что это должно быть так сложно. Я что-то упускаю?


person Matt    schedule 25.08.2012    source источник


Ответы (2)


Здесь у вас есть 2 варианта: использовать Windows Azure Connect или использовать виртуальные сети. Поскольку вы действительно пытаетесь создать сеть из разных машин, я бы предложил использовать виртуальную сеть (я думаю, что это самый гибкий вариант). И подключить ваши виртуальные машины к вашим облачным службам довольно просто:

  1. Создайте виртуальную сеть, как описано здесь: Создайте виртуальную сеть в Windows Azure.
  2. Добавьте свои виртуальные машины в эту сеть, как описано здесь: Добавить виртуальную машину в виртуальную сеть
  3. Измените ServiceConfiguration.cscfg вашей облачной службы, чтобы подключиться к вашей виртуальной сети. Схема доступна в MSDN, или вы можете следить за сообщением в блоге. на блог Майкла Уошэма.
person Sandrino Di Mattia    schedule 25.08.2012
comment
Я изучил это, и вариант виртуальной сети, похоже, работает, за исключением того, что я не могу добавить виртуальную машину Linux на портал. Я не думаю, что машины с Linux можно добавить в виртуальные сети, пока они находятся в предварительной версии (не уверен). У меня остался только вариант Azure Connect? - person Matt; 25.08.2012

Я отметил ответ выше как правильный, потому что он действительно дает ответ, особенно если вы создаете виртуальную сеть только с продуктами MS. На что они не указывают в большей части своей документации, так это на то, что функциональность VN ограничена для машин Linux, в то время как виртуальные машины и виртуальные сети находятся в их текущей предварительной версии. Однако это не означает, что вы не можете добавить виртуальную машину Linux в виртуальную сеть. После поиска и сбора информации компьютеры Linux можно добавить в существующую виртуальную сеть, а просто использовать PowerShell и командлеты. Следующий универсальный сценарий можно запустить из интегрированной среды сценариев PowerShell с вашей собственной информацией, чтобы создать и добавить виртуальную машину Linux в свою виртуальную сеть.

$vm = New-AzureVMConfig -Name $vmname -InstanceSize ExtraSmall -ImageName $img  | 
Add-AzureProvisioningConfig -Linux –LinuxUser $user -Password $pass  | 
Set-AzureSubnet -SubnetNames $subnet

New-AzureVM -ServiceName $cloudSvcName -AffinityGroup $affinitygroup -VNetName $vnetname -VMs $vm

Надеюсь, это поможет кому-то вырвать волосы.

person Matt    schedule 29.08.2012