DevOps, DNS и публичный IP
У меня есть среда автоматизации Devops. Каждая успешная сборка (веб-приложение) в Jenkins запускает создание экземпляра EC2 (Linux) в AWS, который настроен на получение общедоступного IP-адреса, и приложение развертывается на этом экземпляре. Я вызываю веб-приложение, используя публичный IP-адрес экземпляра. Мне нужно замаскировать IP-адрес и вызвать приложение по произвольному имени. Я создал поддомен на маршруте 53 subdomain.abc.com. У меня есть три набора веб-приложений, и я хочу называть их как one.subdomain.abc.com, two.subdomain.abc.com и т. Д.
Поскольку каждый раз у нас разные виртуальные машины, я не уверен, является ли EIP вариантом. Может кто-нибудь предложить решение?
Спасибо заранее.
1 ответ
Если вы используете только один экземпляр Amazon EC2 для каждого приложения, то для каждого приложения вы можете:
- Создайте эластичный IP-адрес, который будет постоянно использоваться с приложением
- Создать
A
запись в Amazon Route 53, чтобы указать этот эластичный IP-адрес (например,app1.example.com
) - Когда запускается новый экземпляр приложения, заново связать Elastic IP-адрес с новым экземпляром (при условии, что ваш старый экземпляр будет прерван)
Если вы хотите обслуживать трафик от app1.example.com
до нескольких экземпляров Amazon EC2, затем создайте ALIAS
запишите на маршруте 53 указатель на Elastic Load Balancer и зарегистрируйте экземпляры EC2 с помощью балансировщика нагрузки.