Кристофер Тоцци, технический аналитик Fixate.io, рассматривает на портале ITPro Today преимущества и недостатки использования виртуального частного облака (VPC) и дает инструкции по его настройке.

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

Тем не менее, несмотря на эти преимущества, VPC не всегда являются лучшим решением для размещения рабочих нагрузок в облаке. У них есть ряд явных недостатков, и в некоторых случаях от них больше проблем, чем пользы.

Поэтому стоит как следует подумать, прежде чем включать VPC в свою облачную стратегию.

Что такое VPC?

Виртуальное частное облако — это среда в рамках платформы публичного облака, которая на сетевом уровне отделена от других его частей. Это означает, что рабочие нагрузки, размещенные внутри VPC, доступны извне только в том случае, если вы явно открыли их для доступа.

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

VPC vs. частное облако

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

В отличие от частного облака, VPC только изолирует или сегментирует рабочие нагрузки на сетевом уровне в рамках многопользовательского облака. Оно не предоставляет вам выделенную облачную инфраструктуру для использования в одиночку. Таким образом, хотя VPC и предлагает некоторые преимущества традиционного частного облака, оно и близко не подходит к обеспечению эквивалентного уровня контроля или конфиденциальности.

Как настроить VPC

Процесс настройки и использования VPC немного отличается в зависимости от облачной платформы. Но в целом шаги сводятся к следующему:

  1. Создайте новое VPC в облачной консоли (или используйте инструмент CLI облачного провайдера, если вы предпочитаете работать таким образом).
  2. Настройте сетевые правила, чтобы контролировать, когда и как рабочие нагрузки, размещенные внутри VPC, могут взаимодействовать с внешними ресурсами.
  3. Разверните рабочие нагрузки внутри VPC. Процесс здесь зависит от того, какой тип рабочей нагрузки вы развертываете (например, запуск облачного сервера немного отличается от настройки объектного хранилища), но в большинстве случаев вам придется выполнить несколько шагов в облачной консоли, чтобы настроить желаемую конфигурацию.

Преимущества VPC

Для развертывания большинства рабочих нагрузок в облаке необязательно настраивать VPC (хотя VPC может потребоваться для некоторых типов облачных сервисов). Но выбор в пользу VPC дает ряд преимуществ:

  • Безопасность и конфиденциальность. Наиболее очевидным преимуществом VPC является то, что оно повышает безопасность и конфиденциальность. Сегментируя рабочие нагрузки от остальной части Интернета, VPC снижает риск несанкционированного доступа или утечки данных.
  • Бóльшая видимость. В некоторых случаях VPC могут помочь в мониторинге и наблюдаемости, поскольку они упрощают отслеживание сетевого трафика, поступающего в рабочие нагрузки и исходящего из них.
  • Простота по сравнению с частным облаком. По сравнению с традиционными частными облаками, VPC намного проще в настройке и управлении. Вам не нужно приобретать или поддерживать собственную облачную инфраструктуру; вы можете использовать инфраструктуру, предоставляемую публичным облаком.
  • Доступ к нескольким облачным сервисам. Большинство VPC предоставляют доступ к тому же набору облачных сервисов, таких как облачные серверы, базы данных и объектные хранилища, которые предлагают облачные провайдеры. Это означает, что в них можно размещать те же типы рабочих нагрузок, что и в стандартной публичной облачной среде, но они обеспечивают вам бóльшую конфиденциальность и безопасность, чем можно было получить без использования VPC.

Ограничения и недостатки VPC

С другой стороны, VPC подвержены ряду явных проблем и недостатков.

Пожалуй, самой большой проблемой является дополнительная сложность, связанная с использованием VPC. Облачные провайдеры проделали хорошую работу, упростив настройку VPC, но добавление VPC (или нескольких VPC) в вашу облачную среду по-прежнему увеличивает количество точек отказа, которые вам придется отслеживать и контролировать.

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

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

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

Когда использовать VPC, а когда нет

В конечном счете, вопрос о том, стоит ли использовать VPC, сводится к следующим аспектам:

  • Требуется ли именно VPC для вашей облачной службы или рабочей нагрузки? Как правило, ответ отрицательный, но для некоторых типов рабочих нагрузок, таких как большинство современных облачных серверов, работающих на Amazon EC2, требуются VPC.
  • Нужна ли вам сетевая изоляция для вашей рабочей нагрузки? Если вы размещаете общедоступный веб-сайт или приложение, вероятно, нет необходимости запускать их внутри VPC, к тому же это неоправданно усложнит настройку.
  • Нужен ли вам полный контроль над вашим облаком? Если вам нужен полный контроль, подумайте о развертывании традиционного частного облака, а не VPC.
  • Сможете ли вы эффективно отслеживать и устранять неполадки в вашем VPC? Как отмечалось выше, VPC усложняют управление сетью, мониторинг и устранение неполадок, поэтому будьте готовы к дополнительным сложностям.
  • Оправдают ли получаемые преимущества дополнительные затраты на VPC? Если ваше VPC увеличит ваш облачный счет, убедитесь, что дополнительные затрты оправдывают все преимущества, которые они вам приносят.

Если вы сможете однозначно ответить на эти вопросы, то поймете, подходит ли VPC для ваших задач. И последнее замечание: нет причин, по которым вы не могли бы размещать некоторые рабочие нагрузки в VPC, а другие запускать за его пределами, даже на той же публичной облачной платформе. Во многих случаях вы можете обнаружить, что в одних ситуациях имеет смысл использовать VPC, а в других — нет, и это вполне приемлемо.