Я использую некоторые из наших серверных служб REST с Amazon ECS (Docker), и они меняют свой общедоступный IP-адрес при каждом перезапуске.
Я использую AWS Route 53 Auto Naming (также известное как servicediscovery) для регистрации новых записей A в DNS, когда запускается новый серверный экземпляр.
Все работает нормально, за исключением того, что серверная часть использует HTTP. Я хочу защитить их с помощью HTTPS, и я искал Давайте зашифровать/Certbot и вот проблема.
Я хочу получить подстановочный сертификат для всех имен в размещенной зоне, скажем * .aws.example.com, но мне нужно добавить проверочную ТЕКСТОВУЮ запись в размещенную зону, а это невозможно.
Я получаю следующее сообщение об ошибке:
Ресурсом hostedzone / Z1R8P3NTRAIWDS можно управлять только через servicediscovery.amazonaws.com (arn: aws: servicediscovery: eu-west-1: 263810592360: namespace / ns-cuqs46hqusim4jih)
Как я могу добавить статические записи в мою размещенную зону, управляемую обнаружением служб?
Мне, наконец, удалось решить мою проблему, используя процедуру, описанную в разделе «Использование обнаружения служб в существующей размещенной зоне» на странице документации: https://docs.aws.amazon.com/Route53/latest/APIReference/overview-service-discovery.html
В принципе:
aws route53 change-resource-record-sets --hosted-zone-id existing-hosted-zone-id --change-batch file://path-to-text-file
Текстовый файл составлен так:
{
"Changes": [
{
"Action": "UPSERT",
"ResourceRecordSet": {
"Type":"A",
"Name":"record-name-in-existing-hosted-zone",
"AliasTarget": {
"DNSName":"record-name-in-new-hosted-zone",
"HostedZoneId":"service-discovery-hosted-zone-id",
"EvaluateTargetHealth":true
}
}
}
]
}
Вы можете посмотреть на использование Elastic Load Balancer перед собой и на процесс сертификации Amazon. Вы заплатите немного больше за ELB, но с этого момента вы можете использовать конечную точку ELB в Route53 и не беспокоиться об IP-адресе ECS.
В противном случае вам может потребоваться отключить автоматическое обнаружение или сгенерировать сертификат от поставщика, который утвердит на основе электронного письма администратору в файле.