Как поместить HTTP-шлюз поверх экземпляров контейнера Azure?

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

Нечто похожее на это.

Есть что-то подобное в Azure? (как API-шлюз в AWS)

Лучший

1 ответ

Здесь есть шаблон Azure, который интегрирует шлюз приложений с экземплярами контейнера. В этом примере ACI развернуты в VNET, а шлюз приложений служит точкой входа в API.

Вы, вероятно, можете разместить эти шаблоны в соответствии с вашими требованиями.

Шаг за шагом:

  1. Загрузите свои изображения в Реестр контейнеров
  2. Создайте два отдельных экземпляра контейнера.
    • Тип изображения: Частный
    • Заполните все обязательные поля, обязательно укажите имя хоста реестра контейнеров в имени образа (имя контейнера может быть любым)
    • Выставьте свои порты на вкладке сети
    • Добавьте метку имени DNS. Почему? IP можно изменить, см. Эту документацию.
    • Добавьте свои переменные env, если есть
    • Он должен создать их без проблем. Попробуйте получить доступ к предоставленным DNS и проверьте, правильно ли работают сайты.
  3. Создать новый шлюз приложений
    • Заполните все обязательные поля (имя, уровень, что угодно...). Используйте Tier Standard V2.
    • Общедоступный интерфейс, при необходимости создайте новый IP-адрес.
    • Добавьте два пула bakend, используйте IP или имя хоста и укажите DNS, созданные на шаге 2, для каждого ACI.
    • Добавить маршрут: Тип слушателя: Базовый. В Backend целей наполняются целевым типом = бэкэнд бассейном, выберите один из пулов серверных и создать новый параметр HTTP. Литерально заполните его любыми значениями, которые вы хотите, я никогда не смогу заставить это работать на первой странице, поэтому я всегда редактирую его позже.
    • Добавить теги yout
    • Хит создать
    • Когда он закончится, перейдите в только что созданный appGateway и найдите настройки HTTP.
    • Это параметры подключения, которые appGW использует для подключения к вашему бэкэнду, если ваш бэкэнд слушает тот же порт, тот же путь и так далее, вы можете повторно использовать настройку HTTP, если он не создает 2.
    • Перейдите к правилам и создайте правило на основе пути.
    • Проверьте свой единственный слушатель, бэкэнд по умолчанию и связанные с ним настройки.
    • Добавьте путь к своему второму бэкэнду name=endpoint2;paths=_ / endpoint2 / *_BackendPool=backend2;HTTPSetting=backend2HTTPSetting

И это все!

Я вижу два непосредственных варианта:

Другие вопросы по тегам