Поделиться через


Обновление всех общедоступных IP-адресов, подключенных к виртуальным машинам, в группе доступности с уровня "Базовый" до "Стандартный"

Внимание

30 сентября 2025 г. общедоступные IP-адреса SKU уровня "Базовый" будут прекращены. Дополнительные сведения см. в официальном объявлении. Если вы используете общедоступные IP-адреса SKU уровня "Базовый", обязательно обновите общедоступные IP-адреса SKU уровня "Стандартный" до даты выхода на пенсию. В этой статье описано, как выполнить процесс обновления.

Дополнительные сведения об выходе общедоступных IP-адресов SKU уровня "Базовый" и преимущества общедоступных IP-адресов SKU уровня "Стандартный" см . здесь.

Общие сведения об обновлении

Этот скрипт обновляет все общедоступные IP-адреса, подключенные к Виртуальные машины (виртуальным машинам) в группе доступности с уровня "Базовый" до номера SKU уровня "Стандартный". Чтобы выполнить обновление, метод выделения общедоступных IP-адресов устанавливается статическим, прежде чем отсоединяться от каждой виртуальной машины. После отключения номер SKU общедоступного IP-адреса обновляется до уровня "Стандартный", после чего IP-адрес повторно связан с исходной виртуальной машиной, пока не будут обновлены все IP-адреса.

Так как выделение общедоступных IP-адресов имеет значение Static, прежде чем отсоединяться от виртуальных машин, IP-адреса не изменяются во время процесса обновления, даже в случае сбоя скрипта. Модуль дважды проверяет, является ли метод выделения общедоступных IP-адресов статическим, прежде чем отсоединять общедоступный IP-адрес от виртуальной машины.

Модуль регистрирует все действия обновления до файла с именем AvSetPublicIPUpgrade.log, созданного в том же расположении, где модуль был выполнен (по умолчанию).

Ограничения/ неподдерживаемые сценарии

  • Виртуальные машины с сетевыми интерфейсами, связанными с Load Balancer: поскольку подсистема балансировки нагрузки и общедоступные IP-номера SKU, связанные с виртуальной машиной, должны соответствовать, невозможно обновить общедоступные IP-адреса уровня экземпляра, связанные с виртуальной машиной, когда сетевые интерфейсы виртуальной машины также связаны с подсистемой балансировки нагрузки, либо через членство в серверном пуле или пуле NAT. Используйте скрипты для обновления SKU "Базовый балансировщик нагрузки" до номера SKU уровня "Стандартный", чтобы обновить как подсистему балансировки нагрузки, так и общедоступные IP-адреса одновременно.

  • Виртуальные машины без группы безопасности сети: виртуальные машины с IP-адресами, которые необходимо обновить, должны иметь группу безопасности сети (NSG), связанную либо с подсетью каждой конфигурации IP-адресов с общедоступным IP-адресом, либо с сетевым адаптером напрямую. Это связано с тем, что общедоступные IP-адреса SKU уровня "Стандартный" являются "безопасными по умолчанию", что означает, что любой трафик к общедоступному IP-адресу должен быть явно разрешен в NSG для доступа к виртуальной машине. Общедоступные IP-адреса SKU уровня "Базовый" разрешают любой трафик по умолчанию. Обновление номеров SKU общедоступных IP-адресов без NSG приведет к входящий интернет-трафик к общедоступному IP-адресу, который ранее разрешен с помощью номера SKU "Базовый". См. раздел: номера SKU общедоступных IP-адресов

Скачивание скрипта

Загрузите скрипт миграции из коллекции PowerShell.

Install-Module -Name AzureAvSetBasicPublicIPUpgrade -Scope CurrentUser -Repository PSGallery -Force

Использование модуля

  1. Выбор Select-AzSubscription подписки Azure, в которой существует группа доступности

    Select-AzSubscription -Subscription <SubscriptionId>
    
  2. Найдите группу доступности с подключенными общедоступными IP-адресами уровня "Базовый", которые вы хотите обновить. Запишите имя и имя группы ресурсов.

  3. Проверьте параметры модуля:

    • AvailabilitySetName [string] Обязательный параметр . Этот параметр является именем группы доступности.
    • ResourceGroupName [string] Обязательный параметр . Этот параметр является группой ресурсов для группы доступности с подключенными общедоступными IP-адресами уровня "Базовый", которые требуется обновить.
  4. Запустите обновление, используя следующие примеры или Get-Help Start-AzAvSetPublicIPUpgrade рекомендации.

Пример использования скрипта

Обновите виртуальные машины в одной группе доступности, передав имя группы доступности и имя группы ресурсов в качестве параметров.

Start-AzAvSetPublicIPUpgrade -availabilitySetName 'myAvSet' -resourceGroupName 'myRG'

Оценка виртуальных машин в одной группе доступности без внесения изменений

Start-AzAvSetPublicIPUpgrade -availabilitySetName 'myAvSet' -resourceGroupName 'myRG' -WhatIf

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

Get-AzAvailabilitySet -resourceGroupName 'myRG' | Start-AzAvSetPublicIPUpgrade -skipVMMissingNSG

Восстановление после неудачной миграции, передача имени и группы ресурсов группы доступности для восстановления вместе с файлом журнала восстановления.

Start-AzAvSetPublicIPUpgrade -RecoverFromFile ./AvSetPublicIPUpgrade_Recovery_2020-01-01-00-00.csv -AvailabilitySetName myAvSet -ResourceGroup rg-myrg

Восстановление после неудачной миграции

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

Чтобы восстановиться после сбоя обновления, передайте путь к файлу журнала восстановления скрипту с -recoverFromFile параметром и определите группу доступности для восстановления с -AvailabilitySetName помощью параметра, как показано в этом примере.

Start-VMPublicIPUpgrade -RecoverFromFile ./AvSetPublicIPUpgrade_Recovery_2020-01-01-00-00.csv -AvailabilitySetName myAvSet -ResourceGroupName rg-myrg

Часто задаваемые вопросы

Сколько времени займет миграция и сколько времени моя виртуальная машина будет недоступна в общедоступном IP-адресе?

Время обновления общедоступных IP-адресов виртуальной машины зависит от количества общедоступных IP-адресов и сетевых интерфейсов, связанных с виртуальной машиной. При тестировании виртуальная машина с одним сетевым адаптером и общедоступным IP-адресом занимает от 1 до 2 минут для обновления. Каждый сетевой адаптер на виртуальной машине добавляет около одной минуты, и каждый общедоступный IP-адрес добавляет несколько секунд каждый.

Можно ли выполнить откат к общедоступному IP-адресу SKU уровня "Базовый"?

Невозможно перейти на общедоступный IP-адрес с уровня "Стандартный" на "Базовый".

Можно ли протестировать миграцию перед выполнением?

Нет способа оценить обновление общедоступного IP-адреса без завершения действия. Однако этот скрипт содержит -WhatIf параметр, который проверяет, что виртуальные машины группы доступности будут поддерживать обновление и выполнять шаги без принятия действий.

Поддерживает ли сценарий общедоступные IP-адреса зонального SKU уровня "Базовый"?

Да, процесс обновления общедоступного IP-адреса зонального SKU уровня "Базовый" до общедоступного IP-адреса зонального номера SKU уровня "Стандартный" идентичен и работает в скрипте.

Следующие шаги