Назад | Перейти на главную страницу

Соединения с базой данных сохраняются после изменения группы безопасности

Мы настроили систему для отправки сообщения в очередь в SQS, когда происходит сбой в зависимости. Чтобы смоделировать сбой и протестировать систему, я заблокировал исходящий порт для базы данных в группе безопасности, но обнаружил, что экземпляру ec2 по-прежнему удавалось получать данные через соединения JDBC из базы данных. даже после того, как порт был заблокирован довольно долгое время (более 10 минут, менее двух часов).

В чем дело? Предполагается, что изменения группы безопасности вступят в силу немедленно, но я предполагаю, что это связано с тем, что живые соединения не закрываются?

Есть ли лучший способ смоделировать отключение, учитывая, что мы не хотим фактически закрыть базу данных?

Изменения правил группы безопасности вступают в силу практически сразу.

Однако правила позволяют учреждение подключений. Как только соединение установлено, сеть запоминает кортеж соединения (протокол, адрес источника / назначения, порт источника / назначения), и соединению разрешается продолжать существовать, поскольку оно уже создано.

Напротив, сетевые списки ACL не имеют состояния. Блокировка соединений с помощью сетевого ACL должна иметь желаемый эффект, хотя, возможно, не совсем такой же, потому что база данных может дать сбой разными способами, которые могут проявляться по-разному.

Когда сетевые ACL запрещают трафик (или группы безопасности запрещают новые подключения), результатом является тайм-аут, потому что отклоненные пакеты просто отбрасываются, отбрасываются, без отправки сообщения в обратном направлении, чтобы указать, что в сети есть черная дыра.

Напротив, реальные сбои могут поочередно приводить к таким сетевым ошибкам, как «целевой хост недоступен», «в соединении отказано» или «сброс соединения одноранговым узлом». Каждый из этих сбоев должен иметь тенденцию быть более быстрым, чем тайм-ауты, и нет способа смоделировать их внутри инфраструктуры VPC.

Но имитация сбоя с тайм-аутом должна быть очень полезным тестом, и сетевые ACL должны этому способствовать.

Обратите внимание, конечно, что если вы все еще можете установить новый соединения с группой безопасности, предположительно блокирующей трафик, то поведение вашей группы безопасности не такое, как вы думаете.