Как в Azure PowerShell создать новую сеть без использования Set-AzureVNetConfig?

Мне нужно настроить автоматическое создание сетей по запросу. Set-AzureVNetConfig бесполезен, поскольку требует, чтобы я получил все сети, отредактировал и передал новую конфигурацию обратно в Azure с помощью этого метода (так что это обновление)

Я вижу скрытую опцию для создания сетевой работы на портале и хочу знать, что это за опция в PowerShell? Мне нужно что-то подобное (см. Изображение ниже), как описано в azure.microsoft.com/en-us/documentation/articles/create-virtual-network/

Который использует REST API в серверной части для manage.windowsazure.com/Network/CreateVirtualNetwork, который принимает только запрос JSON, содержащий новые сетевые данные, которые должны быть созданы. Создание сети на портале Azure Скрытый вызов REST API


person am5    schedule 13.02.2015    source источник
comment
Вот фрагмент вызова браузера при использовании портала Azure для создания сетевого URL-адреса: manage.windowsazure.com/Network / CreateVirtualNetwork POST: {"subscriptionId":"88349849384932809","location":"East US","virtualNetwork":{"name":"customer-10-network","AddressSpace":["10.0.0.0/24"],"Subnets":[{"name":"Subnet-1","AddressPrefix":"10.0.0.0/24"}],"DnsServersRef":[],"Gateway":null},"isWideVNetEnabled":true}   -  person am5    schedule 13.02.2015
comment
Ради других: любой, кто автоматизирует создание виртуальной сети - вы не можете запускать ее параллельно, и все изменения должны быть последовательными. Вам необходимо изменить существующую конфигурацию сети, чтобы добавить еще одну, нет возможности просто добавить виртуальную сеть без изменения существующей. файл конфигурации сети.   -  person am5    schedule 14.02.2015


Ответы (1)


Динамическое создание виртуальных сетей и общее управление ими - дело хакерское.

Во-первых, то, что вы видите, не является «скрытым REST-вызовом». Вы видите вызов портала управления его серверной части. Портал управления основан на HTML5 / jQuery / knockout. Он не вызывает напрямую API управления Azure < / а>.

Теперь теория - то, что мы называем в портале Virtual Network, на самом деле Virtual Network Site для API. Проверьте схему конфигурации виртуальной сети Azure. Итак, чтобы «создать новую виртуальную сеть», мы фактически создаем «новый сайт виртуальной сети» в нашей виртуальной сети.

Обратите внимание, что конфигурация виртуальной сети только одна на подписку! Все, что мы делаем, это меняем эту конфигурацию.

Сказав вышесказанное, динамическое изменение этой конфигурации выполнимо, но со следующими ограничениями:

  • Вы можете выполнять только одно изменение за раз
  • Вам нужно дождаться завершения текущей операции, чтобы внести следующее изменение.

Затем, чтобы сделать вещи, вы должны напрямую работать с конфигурацией сети XML. Самый простой - с PowerShell. У меня есть несколько скриптов на полке, обновлю ответ позже, когда найду их. Короче говоря, вам придется работать со следующими командлетами:

Обновить

Да, два разных человека, администратор и соадминистратор одной подписки не могут создать две разные виртуальные сети на портале одновременно время для той же подписки. Поскольку для изменения конфигурации виртуальной сети требуется монопольный доступ - все операции в виртуальной сети блокируются до завершения первой операции.

Во-вторых, о обратном проектировании портала и вызове настраиваемого, неофициального, неподдерживаемого API. Вы не хотите основывать свои производственные развертывания на недокументированный, неподдерживаемый API. Должен ли я указывать причины? Возьмите немного из:

  • Этот API не документирован, вы не получите никакой поддержки и можете изменить в любой момент.
  • Что касается изменений, существует портал предварительного просмотра: http://portal.azure.com, который заменит текущий портал. Который, вероятно, использует другой API
  • неясно, как API портала аутентифицирует запросы
  • вы не знаете, когда это изменится
  • у вас нет документации и вы основываете свой код на предположениях

Ваш вопрос выглядит примерно так:

Когда я просматриваю свой почтовый ящик на outlook.com, я вижу несколько скрытых запросов REST к https://xxx.mail.live.com/ol/mail.fpp?cnmn=Microsoft.Msn.Hotmail.xx=0&a=yyy%3d%3d&au=1872538104324017787 Могу ли я использовать этот API для создания своего приложения надстройки Office365.

person astaykov    schedule 13.02.2015
comment
Я уже использую сценарий для создания сети LINK: gallery.technet.microsoft. ru / scriptcenter / - person am5; 13.02.2015
comment
Надеялся, что в Power Shell / REST есть API Create Network Site. Как вы думаете, будет ли рискованно вызывать manage.windowsazure.com/Network/CreateVirtualNetwork напрямую с запросом JSON? - person am5; 13.02.2015
comment
Когда вы говорите, что он однопоточный - значит ли это, что два человека не могут одновременно создавать две разные виртуальные сети на портале? - person am5; 13.02.2015
comment
Да, два разных человека, администратор и соадминистратор одной подписки не могут одновременно создавать две разные виртуальные сети на портале. Поскольку для изменения конфигурации виртуальной сети требуется монопольный доступ - все операции в виртуальной сети блокируются до завершения первой операции. - person astaykov; 14.02.2015
comment
Конфигурация сети XML для управления несколькими виртуальными сетями для меня не имеет смысла, особенно. когда ваши сети не собираются разговаривать друг с другом. Было бы проще рассматривать их как разные объекты вместе - как в OpenStack. Из вашего ответа я вижу, что нет другого выхода, кроме как использовать Set-AzureVNetConfig. - person am5; 14.02.2015