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


Зарезервированные IP-адреса (классическое развертывание)

IP-адреса в Azure делятся на две категории: динамические и зарезервированные. Общедоступные IP-адреса, управляемые Azure, по умолчанию являются динамическими. Это означает, что IP-адрес, используемый для данной облачной службы (VIP) или для доступа к виртуальной машине или экземпляру роли напрямую (ILPIP), может изменяться время от времени, когда ресурсы завершены или остановлены (освобождены).

Чтобы предотвратить изменение IP-адресов, можно зарезервировать IP-адрес. Зарезервированные IP-адреса можно использовать только как VIP, гарантируя, что IP-адрес облачной службы остается неизменным, даже если ресурсы отключены или освобождены. Кроме того, можно преобразовать существующие динамические IP-адреса, используемые в качестве виртуального IP-адреса, в зарезервированный IP-адрес.

Это важно

В Azure предлагаются две модели развертывания для создания ресурсов и работы с ними: модель Resource Manager и классическая модель. В этой статье рассматривается использование классической модели развертывания. Корпорация Майкрософт рекомендует использовать модель Resource Manager для большинства новых развертываний. Узнайте, как зарезервировать статический публичный IP-адрес с помощью модели развертывания Resource Manager .

Дополнительные сведения об IP-адресах в Azure см. в статье об IP-адресах.

Когда требуется зарезервированный IP-адрес?

  • Вы хотите убедиться, что IP-адрес зарезервирован в вашей подписке. Если вы хотите зарезервировать IP-адрес, который не освобождается из подписки в любом случае, следует использовать зарезервированный общедоступный IP-адрес.
  • Вы хотите, чтобы IP-адрес оставался в облачной службе даже востановленного или освобожденного состояния (виртуальных машин). Если требуется доступ к службе с помощью IP-адреса, который не изменяется, даже если виртуальные машины в облачной службе завершаются или останавливаются (освобождены).
  • Вы хотите убедиться, что исходящий трафик из Azure использует прогнозируемый IP-адрес. Возможно, вы настроили локальный брандмауэр, чтобы разрешить только трафик с определенных IP-адресов. Зарезервировав IP-адрес, вы знаете исходный IP-адрес и не должны обновлять правила брандмауэра из-за изменения IP-адреса.

Вопросы и ответы

  • Можно ли использовать зарезервированный IP-адрес для всех служб Azure? Нет. Зарезервированные IP-адреса можно использовать только для виртуальных машин и ролей экземпляра облачной службы, доступных через виртуальный IP-адрес.
  • Сколько зарезервированных IP-адресов можно использовать? Дополнительные сведения см. в статье о лимитах Azure.
  • Взимается ли плата за зарезервированные IP-адреса? Иногда. Сведения о ценах см. на странице "Сведения о ценах на зарезервированные IP-адреса".
  • Как зарезервировать IP-адрес? Вы можете использовать PowerShell, REST API управления Azure или портал Azure , чтобы зарезервировать IP-адрес в регионе Azure. Зарезервированный IP-адрес связан с подпиской.
  • Можно ли использовать зарезервированный IP-адрес с виртуальными сетями (VNets) на основе групп доступности? Нет. Зарезервированные IP-адреса поддерживаются только в региональных виртуальных сетям. Зарезервированные IP-адреса не поддерживаются для виртуальных сетей, связанных с группами сходства. Дополнительные сведения о связывании виртуальной сети с регионом или группой типов см. в статье о региональных виртуальных сетях и группах типов.

Управление зарезервированными VIP-персонами

Использование Azure PowerShell (классическая модель)

Прежде чем использовать зарезервированные IP-адреса, необходимо добавить его в подписку. Создайте зарезервированный IP-адрес из пула общедоступных IP-адресов, доступных в регионе Центрального США следующим образом:

Примечание.

Для классической модели развертывания необходимо установить версию Управления службами Azure PowerShell. Дополнительные сведения см. в статье Установка модуля управления службами Azure PowerShell.

  New-AzureReservedIP –ReservedIPName MyReservedIP –Location "Central US"

Обратите внимание, что вы не можете указать, какой IP-адрес зарезервирован. Чтобы просмотреть, какие IP-адреса зарезервированы в подписке, выполните следующую команду PowerShell и обратите внимание на значения ReservedIPName и адрес :

Get-AzureReservedIP

Ожидаемые выходные данные:

ReservedIPName       : MyReservedIP
Address              : 23.101.114.211
Id                   : d73be9dd-db12-4b5e-98c8-bc62e7c42041
Label                :
Location             : Central US
State                : Created
InUse                : False
ServiceName          :
DeploymentName       :
OperationDescription : Get-AzureReservedIP
OperationId          : 55e4f245-82e4-9c66-9bd8-273e815ce30a
OperationStatus      : Succeeded

Примечание.

При создании зарезервированного IP-адреса с помощью PowerShell невозможно указать группу ресурсов для создания зарезервированного IP-адреса. Azure автоматически помещает его в группу ресурсов под именем Default-Networking. Если вы создаете зарезервированный IP с помощью портал Azure, можно указать любую группу ресурсов по вашему выбору. Если вы создаете зарезервированный IP-адрес в другой группе ресурсов, а не в группе ресурсов Default-Networking, то каждый раз, когда вы ссылаетесь на зарезервированный IP-адрес с помощью таких команд, как Get-AzureReservedIP и Remove-AzureReservedIP, необходимо ссылаться на имя Group resource-group-name reserved-ip-name. Например, если вы создаете зарезервированный IP-адрес с именем myReservedIP в группе ресурсов с именем myResourceGroup, необходимо ссылаться на имя зарезервированного IP-адреса как Group myResourceGroup myReservedIP.  

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

Remove-AzureReservedIP -ReservedIPName "MyReservedIP"

Использование Azure CLI (классическая модель)

Создайте зарезервированный IP-адрес из пула общедоступных IP-адресов, доступных в регионе Центральный США, используя классическую командную строку Azure.

Примечание.

Для классического развертывания необходимо использовать классический интерфейс командной строки Azure. Сведения об установке классического интерфейса командной строки Azure см. в статье Установка классического интерфейса командной строки Azure

Команда:

azure network reserved-ip create <name> <location>

Пример:

azure network reserved-ip create MyReservedIP centralus

Вы можете просмотреть, какие IP-адреса зарезервированы в подписке с помощью Azure CLI следующим образом:

Команда:

azure network reserved-ip list

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

Команда:

azure network reserved-ip delete <name>

Пример:

azure network reserved-ip delete MyReservedIP

Резервировать IP-адрес существующей облачной службы

Вы можете зарезервировать IP-адрес существующей облачной службы, добавив параметр -ServiceName. Зарезервируйте IP-адрес облачной службы TestService в расположении Центральные США следующим образом:

  • Использование Azure PowerShell (классическая модель):

    New-AzureReservedIP –ReservedIPName MyReservedIP –Location "Central US" -ServiceName TestService
    
  • Использование Azure CLI (классическая модель):

    Команда:

     azure network reserved-ip create <name> <location> -r <service-name> -d <deployment-name>
    

    Пример:

      azure network reserved-ip create MyReservedIP centralus -r TestService -d asmtest8942
    

Связывание зарезервированного IP-адреса с новой облачной службой

Следующий скрипт создает зарезервированный IP-адрес, а затем связывает его с новой облачной службой с именем TestService.

Использование Azure PowerShell (классическая модель)

New-AzureReservedIP –ReservedIPName MyReservedIP –Location "Central US"

$image = Get-AzureVMImage|?{$_.ImageName -like "*RightImage-Windows-2012R2-x64*"}

New-AzureVMConfig -Name TestVM -InstanceSize Small -ImageName $image.ImageName `
| Add-AzureProvisioningConfig -Windows -AdminUsername adminuser -Password MyP@ssw0rd!! `
| New-AzureVM -ServiceName TestService -ReservedIPName MyReservedIP -Location "Central US"

Примечание.

При создании зарезервированного IP-адреса для использования с облачной службой вы по-прежнему ссылаетесь на виртуальную машину с помощью VIP: номер порта<> для входящего трафика. Резервирование IP-адреса не означает, что вы можете подключиться к виртуальной машине напрямую. Зарезервированный IP-адрес назначается облачной службе, в которую развернута виртуальная машина. Если вы хотите подключиться к виртуальной машине напрямую по IP-адресу, необходимо настроить общедоступный IP-адрес уровня экземпляра. Общедоступный IP-адрес уровня экземпляра — это тип общедоступного IP-адреса (который называется ILPIP), который назначается непосредственно виртуальной машине. Его нельзя зарезервировать. Для получения дополнительной информации прочитайте статью об IP-адресах общего назначения на уровне экземпляра (ILPIP).

Удаление зарезервированного IP-адреса из запущенного развертывания

Удалите зарезервированный IP-адрес, добавленный в новую облачную службу, следующим образом:

Использование Azure PowerShell (классическая модель)

Remove-AzureReservedIPAssociation -ReservedIPName MyReservedIP -ServiceName TestService

Использование Azure CLI (классическая модель)

Команда:

azure network reserved-ip disassociate <name> <service-name> <deployment-name>

Пример:

azure network reserved-ip disassociate MyReservedIP TestService asmtest8942

Примечание.

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

Чтобы полностью удалить зарезервированный IP-адрес из подписки, выполните следующую команду:

Команда:

azure network reserved-ip delete <name>

Пример:

azure network reserved-ip delete MyReservedIP

Связывание зарезервированного IP-адреса с запущенным развертыванием

Использование Azure PowerShell (классическая модель)

Следующие команды создают облачную службу TestService2 с новой виртуальной машиной с именем TestVM2. Существующий зарезервированный IP-адрес с именем MyReservedIP затем связан с облачной службой.

$image = Get-AzureVMImage|?{$_.ImageName -like "*RightImage-Windows-2012R2-x64*"}

New-AzureVMConfig -Name TestVM2 -InstanceSize Small -ImageName $image.ImageName `
| Add-AzureProvisioningConfig -Windows -AdminUsername adminuser -Password MyP@ssw0rd!! `
| New-AzureVM -ServiceName TestService2 -Location "Central US"

Set-AzureReservedIPAssociation -ReservedIPName MyReservedIP -ServiceName TestService2

Использование Azure CLI (классическая модель)

Вы можете связать новый зарезервированный IP-адрес с запущенным развертыванием облачной службы с помощью Azure CLI следующим образом:

Команда:

azure network reserved-ip associate <name> <service-name> <deployment-name>

Пример:

azure network reserved-ip associate MyReservedIP TestService asmtest8942

Связывание зарезервированного IP-адреса с облачной службой с помощью файла конфигурации службы

Вы также можете связать зарезервированный IP-адрес с облачной службой с помощью файла конфигурации службы (CSCFG). В следующем примере XML показано, как настроить облачную службу для использования зарезервированного IP-адреса с именем MyReservedIP:

   <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="ReservedIPSample" xmlns="https://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="4" osVersion="*" schemaVersion="2014-01.2.3">
      <Role name="WebRole1">
        <Instances count="1" />
        <ConfigurationSettings>
          <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
        </ConfigurationSettings>
      </Role>
      <NetworkConfiguration>
        <AddressAssignments>
          <ReservedIPs>
           <ReservedIP name="MyReservedIP"/>
          </ReservedIPs>
        </AddressAssignments>
      </NetworkConfiguration>
    </ServiceConfiguration>

Дальнейшие действия