Руководство. Создание входящего правила NAT для нескольких виртуальных машин с помощью портал Azure

Правила NAT для входящего трафика позволяют подключаться к виртуальным машинам в виртуальной сети Azure с помощью общедоступного IP-адреса Azure Load Balancer и номера порта.

Дополнительные сведения о правилах Azure Load Balancer см. в статье Управление правилами для Azure Load Balancer с помощью портала Azure.

В этом руководстве описано следующее:

  • создать виртуальную сеть и виртуальные машины;
  • создать общедоступную подсистему балансировки нагрузки с SKU "Стандартный" с внешним IP-адресом, пробой работоспособности, конфигурацией серверной части и правилом балансировки нагрузки;
  • Создание правила NAT для входящего трафика для нескольких виртуальных машин
  • создать шлюз NAT для исходящего доступа к Интернету из внутреннего пула;
  • установить и настроить веб-сервер на виртуальных машинах, чтобы продемонстрировать правила перенаправления портов и балансировки нагрузки.

Необходимые компоненты

Создание виртуальной сети и виртуальных машин

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

  1. Войдите на портал Azure.

  2. В поле поиска в верхней части портала введите Виртуальная машина. В результатах поиска выберите Виртуальные машины.

  3. На странице Виртуальные машины выберите + Создать>+ Виртуальная машина.

  4. В окне Создание виртуальной машины введите или выберите следующие значения на вкладке Основные сведения:

    Параметр Значение
    Сведения о проекте
    Подписка Выберите свою подписку.
    Группа ресурсов Выберите Создать.
    Введите TutorialLBPF-rg.
    Нажмите кнопку ОК.
    Сведения об экземпляре
    Virtual machine name Введите myVM1.
    Регион Введите (США) западная часть США 2.
    Параметры доступности Выберите Зона доступности.
    Availability zone Введите 1.
    Тип безопасности Выберите Стандартное.
    Image Выберите Ubuntu Server 20.04 LTS — Gen2.
    Точечный экземпляр Azure Оставьте значение по умолчанию (флажок снят).
    Size Выберите размер виртуальной машины.
    Учетная запись администратора
    Тип аутентификации Выберите Открытый ключ SSH.
    Имя пользователя Введите azureuser.
    SSH public key source (Источник открытого ключа SSH) Выберите Создать новую пару ключей.
    Key pair name (Имя пары ключей) Введите myKey.
    Правила входящего порта
    Общедоступные входящие порты Выберите Отсутствует.
  5. Выберите вкладку Сети или Next: Disks (Далее: диски), а затем Next: Networking (Далее: сеть).

  6. На вкладке Сеть введите или выберите следующие значения параметров.

    Параметр Значение
    Сетевой интерфейс
    Виртуальная сеть Выберите Создать.
    Введите myVNet в поле Имя.
    В разделе Адресное пространство в поле Диапазон адресов введите 10.1.0.0/16.
    В разделе Подсети в поле Имя подсети введите myBackendSubnet.
    В поле Диапазон адресов введите 10.1.0.0/24.
    Нажмите кнопку ОК.
    Подсеть Выберите myBackendSubnet.
    Общедоступный IP-адрес Выберите Отсутствует.
    Группа безопасности сети сетевого адаптера Выберите Дополнительно.
    Настройка группы безопасности сети Выберите Создать.
    В поле Имя введите myNSG.
    В разделе Правила для входящего трафика выберите + Добавить правило для входящих подключений.
    В поле Служба выберите HTTP.
    В поле Приоритет введите значение 100.
    В поле Имя введите myNSGrule.
    Выберите Добавить.
    Нажмите кнопку ОК.
  7. Перейдите на вкладку Просмотр и создание или нажмите кнопку Просмотр и создание внизу страницы.

  8. Выберите Создать.

  9. Когда появится запрос Создать новую пару ключей, выберите Скачать закрытый ключ и создать ресурс. Файл ключа скачан как myKey.pem. Убедитесь, что вы знаете, где был скачан PEM-файл, вам потребуется путь к файлу ключа в последующих шагах.

  10. Выполните шаги 1–8, чтобы создать еще одну виртуальную машину со следующими значениями (все остальные параметры совпадают с параметрами виртуальной машины myVM1).

    Параметр Виртуальная машина 2
    Основы
    Сведения об экземпляре
    Virtual machine name myVM2
    Availability zone 2
    Учетная запись администратора
    Тип аутентификации Открытый ключ SSH
    SSH public key source (Источник открытого ключа SSH) Выберите Использовать существующий ключ, хранимый в Azure.
    Хранимые ключи Выберите myKey.
    Правила входящего порта
    Общедоступные входящие порты Выберите Отсутствует.
    Сеть
    Сетевой интерфейс
    Общедоступный IP-адрес Выберите Отсутствует.
    Группа безопасности сети сетевого адаптера Выберите Дополнительно.
    Настройка группы безопасности сети Выберите существующий вариант myNSG.

Создание подсистемы балансировки нагрузки

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

  1. В поле поиска в верхней части портала введите Подсистема балансировки нагрузки. В результатах поиска выберите Подсистема балансировки нагрузки.

  2. На странице Подсистема балансировки нагрузки щелкните Создать.

  3. На странице Создание подсистемы балансировки нагрузки на вкладке Основные сведения укажите следующее.

    Параметр Значение
    Сведения о проекте
    Подписка Выберите свою подписку.
    Группа ресурсов Выберите TutorialLBPF-rg.
    Сведения об экземпляре
    Имя Введите myLoadBalancer.
    Регион Выберите Западная часть США 2.
    номер SKU Оставьте значение по умолчанию Стандартная.
    Тип Щелкните Общедоступный.
    Уровень Оставьте значение по умолчанию Региональная.
  4. В нижней части страницы выберите Далее: интерфейсная IP-конфигурация.

  5. В разделе IP-конфигурация внешнего интерфейса нажмите кнопку + Добавить IP-адрес внешнего интерфейса.

  6. Введите myFrontend в поле Имя.

  7. Выберите IPv4 или IPv6 в качестве версии протокола IP.

    Примечание.

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

  8. Выберите значение IP-адрес для параметра Тип IP-адреса.

    Примечание.

    Дополнительные сведения о префиксах IP-адресов см. в статье Префикс общедоступного IP-адреса Azure.

  9. Выберите вариант Создать новый в разделе Общедоступный IP-адрес.

  10. В окне Добавление общедоступного IP-адреса в поле Имя введите myPublicIP.

  11. Выберите Избыточный между зонами в поле Зона доступности.

    Примечание.

    В регионах с зонами доступности можно выбрать вариант без зоны (параметр по умолчанию), конкретную зону или избыточность между зонами. Выбранный вариант будет зависеть от конкретных требований к сбою домена. Для регионов без зон доступности это поле не отображается.
    Дополнительные сведения о зонах доступности см. здесь.

  12. Для параметра Предпочтение маршрутизации оставьте значение по умолчанию Сеть Майкрософт.

  13. Нажмите ОК.

  14. Выберите Добавить.

  15. Внизу страницы выберите элемент Далее. Серверные пулы.

  16. На вкладке Серверные пулы нажмите кнопку + Добавить серверный пул.

  17. В разделе Добавление серверного пула введите или выберите указанные ниже сведения.

    Параметр Значение
    Имя Введите MyBackendPool.
    Виртуальная сеть Выберите myVNet (TutorialLBPF-rg).
    Конфигурация серверного пула Выберите Сетевой адаптер.
    Версия протокола IP-адресов Выберите IPv4.
  18. В разделе Виртуальные машины выберите + Добавить.

  19. В разделе Добавление виртуальных машин во внутренний пул установите флажки рядом с myVM1 и myVM2.

  20. Выберите Добавить.

  21. Выберите Добавить.

  22. Внизу страницы выберите Далее: правила для входящего трафика.

  23. На вкладке Правила для входящего трафика в разделе Правило балансировки нагрузки нажмите кнопку + Добавить правило балансировки нагрузки.

  24. В разделе Добавление правила балансировки нагрузки введите следующую информацию или выберите указанные ниже варианты.

    Параметр Значение
    Имя Введите myHTTPRule.
    Версия IP-адреса Выберите IPv4 или IPv6 в зависимости от своих требований.
    Интерфейсный IP-адрес Выберите myFrontend.
    Внутренний пул Выберите myBackendPool.
    Протокол Выберите TCP.
    Порт Введите 80.
    Серверный порт Введите 80.
    Проба работоспособности Выберите Создать.
    В поле Имя введите myHealthProbe.
    Выберите TCP в поле Протокол.
    Сохраните остальные значения по умолчанию и щелкните ОК.
    Сохранение сеанса Выберите Отсутствует.
    Время ожидания простоя (в минутах) Введите или выберите 15.
    Сброс TCP Щелкните Включено.
    Плавающий IP-адрес Выберите Отключено.
    Преобразование исходных сетевых адресов (SNAT) для исходящего трафика Оставьте значение по умолчанию (Рекомендуется) Используйте правила для исходящего трафика, чтобы предоставить участникам внутреннего пула доступ в Интернет.

    Дополнительные сведения о правилах балансировки нагрузки см. в разделе Правила балансировки нагрузки.

  25. Выберите Добавить.

  26. В нижней части страницы нажмите синюю кнопку Просмотр + создание.

  27. Выберите Создать.

Создание правила NAT для входящего трафика для нескольких виртуальных машин

В этом разделе описано, как создать правило NAT для входящего экземпляра в серверный пул подсистемы балансировки нагрузки.

  1. В поле поиска в верхней части портала введите Подсистема балансировки нагрузки. В результатах поиска выберите Подсистема балансировки нагрузки.

  2. Выберите myLoadBalancer.

  3. В поле myLoadBalancer выберите Правила NAT для входящего трафика в параметрах.

  4. Выберите + Добавить в разделе Правила NAT для входящего трафика.

  5. В разделе Добавление правила NAT для входящего трафика введите или выберите указанные ниже сведения.

    Параметр Значение
    Имя Введите myNATRule-SSH.
    Тип Выберите Внутренний пул.
    Целевой серверный пул Выберите myBackendPool.
    Интерфейсный IP-адрес Выберите myFrontend.
    Начало диапазона интерфейсных портов Введите 221.
    Максимальное число компьютеров во внутреннем пуле Введите 500.
    Серверный порт Введите 22.
    Протокол Выберите TCP.
  6. Оставьте остальные параметры без изменений и нажмите кнопку Добавить.

Примечание.

Сведения о сопоставлении портов с виртуальными машинами внутреннего пула см. в разделе Просмотр сопоставлений портов.

Создание шлюза NAT.

В этом разделе описано, как создать шлюз NAT для исходящего доступа к Интернету для ресурсов в виртуальной сети.

Дополнительные сведения об исходящих подключениях и NAT виртуальных сетей Azure см. в статьях Преобразование исходных сетевых адресов (SNAT) для исходящих подключений и Что такое NAT виртуальных сетей?.

  1. В поле поиска в верхней части портала введите сетевой шлюз NAT. В результатах поиска выберите NAT-шлюзы.

  2. На странице Шлюзы NAT выберите + Создать.

  3. В разделе Создание шлюза NAT введите или выберите следующие значения.

    Параметр Значение
    Сведения о проекте
    Подписка Выберите свою подписку.
    Группа ресурсов Выберите TutorialLBPF-rg.
    Сведения об экземпляре
    Имя шлюза NAT Введите myNATGateway.
    Регион Выберите Западная часть США 2.
    Availability zone Выберите Отсутствует.
    Время ожидания простоя (в минутах) Введите 15.
  4. Откройте вкладку Исходящий IP-адрес или нажмите кнопку Далее: исходящий IP-адрес внизу страницы.

  5. На вкладке Исходящий IP-адрес выберите Создание общедоступного IP-адреса рядом с пунктом Общедоступные IP-адреса.

  6. В окне Добавление общедоступного IP-адреса в поле Имя введите myNATGatewayIP.

  7. Нажмите ОК.

  8. Откройте вкладку Подсеть или нажмите кнопку Далее: подсеть внизу страницы.

  9. На странице Виртуальная сеть на вкладке Подсеть выберите myVNet.

  10. В поле Имя подсети выберите myBackendSubnet.

  11. Нажмите синюю кнопку Просмотр и создание внизу страницы или перейдите на вкладку Просмотр и создание.

  12. Выберите Создать.

Установка веб-сервера

В этом разделе вы подключитесь по протоколу SSH к виртуальным машинам посредством правил NAT для входящего трафика и установите веб-сервер.

  1. В поле поиска в верхней части портала введите Подсистема балансировки нагрузки. В результатах поиска выберите Подсистема балансировки нагрузки.

  2. Выберите myLoadBalancer.

  3. Выберите Конфигурация интерфейсного IP-адреса в разделе Параметры.

  4. В разделе Конфигурация интерфейсного IP-адреса запишите IP-адрес для объекта myFrontend. В нашем примере это 20.99.165.176.

    Screenshot of public IP in Azure portal.

  5. Если вы используете компьютер Mac или Linux, откройте командную строку Bash. Если вы используете компьютер Windows, откройте командную строку PowerShell.

  6. В командной строке установите SSH-подключение к myVM1. Замените IP-адрес адресом, полученным на предыдущем шаге, и портом 221, который использовался в правиле NAT для входящего трафика myVM1. Замените путь к PEM-файлу на путь, куда был скачан файл ключа.

    ssh -i .\Downloads\myKey.pem azureuser@20.99.165.176 -p 221
    

    Совет

    Созданный вами ключ SSH можно использовать при следующем создании виртуальной машины в Azure. Только при этом выберите для параметра Источник открытого ключа SSH значение Use a key stored in Azure (Использовать ключ, сохраненный в Azure). У вас уже есть закрытый ключ на компьютере, поэтому вам не нужно ничего скачивать.

  7. Из сеанса SSH обновите источники пакетов, а затем установите последнюю версию пакета NGINX.

    sudo apt-get -y update
    sudo apt-get -y install nginx
    
  8. Введите Exit, чтобы выйти из сеанса SSH.

  9. В командной строке установите SSH-подключение к myVM2. Замените IP-адрес адресом, полученным на предыдущем шаге, и портом 222, который использовался в правиле NAT для входящего трафика myVM2. Замените путь к PEM-файлу на путь, куда был скачан файл ключа.

    ssh -i .\Downloads\myKey.pem azureuser@20.99.165.176 -p 222
    
  10. Из сеанса SSH обновите источники пакетов, а затем установите последнюю версию пакета NGINX.

    sudo apt-get -y update
    sudo apt-get -y install nginx
    
  11. Введите Exit, чтобы выйти из сеанса SSH.

Тестирование веб-сервера

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

  1. Откройте браузер.

  2. В адресной строке введите IP-адрес подсистемы балансировки нагрузки. В нашем примере это 20.99.165.176.

  3. Отобразится веб-сайт NGINX по умолчанию.

    Screenshot of testing the NGINX web server.

Очистка ресурсов

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

  1. В поле поиска в верхней части портала введите ResourceGroup. Выберите Группы ресурсов в результатах поиска.

  2. В списке Группы ресурсов выберите TutorialLBPF-rg.

  3. Выберите команду Удалить группу ресурсов.

  4. В поле ВВЕДИТЕ ИМЯ ГРУППЫ РЕСУРСОВ введите TutorialLBPF-rg. Выберите команду Удалить.

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

Перейдите к следующей статье, чтобы узнать, как создавать подсистему балансировки нагрузки в нескольких регионах: