У меня проблемы с настройкой HTTPS для моего экземпляра AWS EC2. Короче говоря, я запускаю программу на экземпляре EC2, и очень важно, чтобы я мог безопасно передавать данные от клиентов в AWS.
Что я уже сделал:
В AWS:
На GoDaddy:
Вопросы:
Я хочу по возможности избегать использования Route53, и, к сожалению, я не могу найти документацию AWS по этой проблеме, которая не связана с Route53.
Я не специалист по сетям или AWS, поэтому вполне возможно, что чего-то простого не хватает. Любые предложения приветствуются!
Помимо того, что упомянул @Jakub, убедитесь, что ваши API проверки работоспособности работают нормально. Я использую AWS Fargate, и когда будет создан балансировщик нагрузки, проверка работоспособности будет иметь значение по умолчанию «/» в качестве API проверки работоспособности, а при создании службы ECS она принимает имя службы «/ ecs-service». Вы можете проверить свои API проверки работоспособности, настроенные здесь, как указано в этой ссылке. https://engineering.telia.no/blog/troubleshooting-fargate-health-check
Команда интерфейса командной строки AWS: aws elbv2 modify-target-group --target-group-arn "" \ --health-check-timeout-seconds 30 \ --health-check-interval-seconds 200
Если вы используете ECS Fargate, убедитесь, что у вас есть следующие шаги: 1) Доступен ли IP-адрес подсети в вашем контейнере 2) Правильно ли открыт порт контейнера докеров? 3) Правильно ли работает API проверки работоспособности?
У Чупакабры есть несколько хороших предложений, разве они не помогли? Я тоже потратил на это слишком много времени и резюмирую свои советы здесь: AWS Fargate: устранение проблем с ужасным "сервисом .. неработоспособным"
Лучшие советы:
См. Сообщение в блоге для получения дополнительных сведений и советов.
502 - плохой шлюз, у вас проблемы с маршрутизацией. Скорее всего, это ваша группа безопасности или таблица маршрутизации.
Экземпляр alb / elb и ec2 должен находиться в разных подсетях в одном VPC.
Ваш elb должен принимать соединения на порту 80 и перенаправлять их на порт 443, а ваш экземпляр EC2 должен принимать соединения на порту 80 из подсети, в которой находится elb.
Создайте целевую группу, которая указывает на подсеть, в которой экземпляр EC2 живет на порту 80, но вы должны убедиться, что ваш экземпляр действительно прослушивает этот порт.
Затем создайте ELB, который использует эту целевую группу.
Для вашего правила прослушивателя порта 80 убедитесь, что оно перенаправляет на https://www.ourdomain.com:443/? , код состояния http_301.
Для правила прослушивателя порта 443 перенаправьте его в целевую группу.