Дата последнего изменения: 17.01.2024
Amazon Virtual Private Cloud (Amazon VPC) позволяет организовать приватные изолированные сети в публичном облаке Amazon. Amazon VPC предоставляет полный контроль над сетевой средой, включая выбор собственного диапазона адресов, создание подсетей, и конфигурации таблиц маршрутизации и сетевых шлюзов.
Также Amazon VPC позволяет легко настроить сетевую конфигурацию. Например, можно создать публичную подсеть для фронтэнд веб-серверов, которая будет иметь доступ к Интернету, и разместить бэкэнд (базы данных или серверы приложений) в частной подсети без доступа в Интернет.
Система позволяет использовать несколько уровней безопасности, включая группы безопасности и списки контроля доступа к сети, для упрощения управления доступом к Amazon EC2 для каждой подсети.
Кроме того, можно создать VPN подключение (Hardware Virtual Private Network) между корпоративной сетью и вашей Amazon VPC и использовать "свое облако" как расширение корпоративной сети.
Рассмотрим небольшой схематичный пример использования Amazon VPC для организации работы веб-приложения в нем с доступом клиента из его локальной сети через VPN.
С точки зрения Amazon, выделение частного облака начинается с создания VPC (CIDR /16) и его разбиения на более мелкие подсети. Затем с подсетями работают остальные технологии частного облака: файерволы, шлюзы, балансировщики, роутеры, соединения VPN и т.д.
Облако клиента начинается с его изолированной подсети в Amazon с машинами и другими объектами инфраструктуры. Облако соединяется с локальной сетью компании клиента через VPN-шлюз. Создаем сначала один раз VPC для всех клиентов - 10.0.0.0/16.
Важно при создании VPC активировать использование DNS-сервера Amazon для внутренних и внешних IP-адресов.
Затем делим VPC на подсети /26 для каждого клиента - меньше подсеть создать нельзя, т.к. внутренний балансировщик работает только с подсетями больше /27 и в подсети должно быть не меньше свободных 20 адресов (а также резервируется 4 начальных адреса и один последний).
Подсеть создается только внутри одной AZ (датацентра), поэтому нужно для каждого клиента создать 2 подсети - по одной в каждом ДЦ. Изолировать подсети клиентов можно через ACL, которые работают на уровне подсетей.
Для того чтобы иметь возможность обновлять софт на машинах клиентов в каждой из двух подсетей, нужно организовать доступ из подсетей в интернет.
Есть 2 пути:С точки зрения повышения безопасности правильнее вариант 2 - чтобы на машины не было прямого доступа через интернет, даже с определенных адресов. Также придется поднять еще один VPN-шлюз Amazon и ходить в "облака" клиентов через него.
Чтобы клиент мог получать доступ к веб-приложению, которое находится в "частном облаке", по привычному URL без установки на свои ПК клиентской части VPN - необходимо настроить тоннель через маршрутизатор на стороне клиента и на стороне Amazon.
Для Amazon это стандартная возможность. Для клиента же придется произвести соответствующие настройки в его среде.
Для отказоустойчивости, масштабируемости при нагрузке и переключении автоматическом при аварии ДЦ - можно настроить внутренний балансировщик, обслуживающий 2 подсети "облака клиента" в двух датацентрах.
Естественно, в "облаке" уже должна быть собрана и настроена инфраструктура автоматического масштабирования и управления нагрузкой.