Содержание


Использование программно определяемых сетей для оптимизации IaaS

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

Comments

Программно определяемые сети (SDN) – это подход к организации сетей, который позволяет администраторам управлять сетевыми службами, абстрагируя низкоуровневую функциональность. SDN отделяет плоскость управления – которая определяет, куда направляется трафик, – от плоскости данных – которая пересылает трафик в выбранное место.

В этой статье описано сочетание SDN с сервисами облачной инфраструктуры для оптимизации IaaS; мы сосредоточимся на следующих вопросах:

  • обеспечение взаимодействия IaaS;
  • полное использование модели облачных сервисов IaaS;
  • удовлетворение ожиданий пользователей, разработчиков, поставщиков и специалистов по эксплуатации с помощью проектов OpenStack Foundation и OpenDayLight;
  • обеспечение экономически эффективной минимизации рисков для оптимизации IaaS.

Взаимодействие IaaS

Администратор сети может достичь цели взаимодействия IaaS с помощью архитектуры SDN с виртуализацией сетевых функций (Network Functions Virtualization – NFV). Концепция архитектуры NFV требует использования технологий виртуализации для виртуализации целых классов функций узла сети в форме конструктивных блоков, которые затем можно соединять для создания коммуникационных сервисов. Одна такая виртуальная сетевая функция может состоять из одной или нескольких виртуальных машин, на которых поверх облачной инфраструктуры работают различные программы и процессы.

Архитектура SDN позволяет администратору получать с помощью центральной консоли IaaS общее представление о том, как ведет себя трафик от одного сетевого устройства до другого; при необходимости он также может получить подробные сведения о том, как оптимизировать трафик, прежде чем перенести его в совместимую IaaS.

Ядром архитектуры SDN служит контроллер, приложение с открытым исходным кодом, которое отделяет функции управления от функций передачи данных конкретных сетевых устройств. Администратор может использовать контроллер для указания сетевым устройствам, куда перенаправить или пересылать пакеты, если одно сетевое устройство начинает испытывать повышенную нагрузку. При необходимости администратор может добавлять к IaaS виртуальные машины: например, для перемещения больших объемов данных от плохо работающих сетевых устройств к тем, которые находятся в лучшем состоянии.

NFV отделяет функции сети — такие как преобразование сетевых адресов (NAT), межсетевой экран, обнаружение вторжения, служба доменных имен (DNS) и кэширование — от конкретных аппаратных устройств, так чтобы этими функциями можно было управлять программно. Она объединяет сетевые компоненты, необходимые для поддержки полностью виртуализированной сетевой инфраструктуры.

Контроллер SDN и NFV должен быть правильно настроен, чтобы администратор мог оптимизировать сетевые транспортные потоки или вносить другие изменения. Неправильная настройка может привести к простоям или уязвимости IaaS. Правильной конфигурации можно достичь с помощью таких проектов с открытым кодом, как OpenStack и OpenDayLight.

OpenDayLight провел опрос, чтобы выяснить, сколько специалистов по сетям предпочитают использовать для своих решений SDN ПО с открытым исходным кодом от коммерческих поставщиков. Были опрошены 600 ИТ-специалистов и руководителей средних и крупных организаций Северной Америки, работающих в сфере производства (300) и услуг (300). Исследование показало, что 95% специалистов по сетям хотят использовать в своих решениях SDN ПО с открытым исходным кодом, но 76% из них предпочитают ПО с открытым исходным кодом от коммерческих поставщиков. (SDN, NFV Open Source Report: The Operator's View.)

Выбирая ПО с открытым исходным кодом от коммерческих поставщиков, для оптимизации IaaS можно использовать контроллер SDN и NFV.

Модель облачных сервисов IaaS

Чтобы лучше понять, как оптимизация IaaS будет работать с SDN, нужно понимать, чем отличаются друг от друга основные участники модели облачных сервисов IaaS, контролирующие облако IaaS. В число важных участников входят:

  • пользователи облачных сервисов IaaS;
  • разработчики облачных сервисов PaaS/IaaS;
  • поставщики облачных сервисов IaaS;
  • администраторы SDN.

Пользователи облачных сервисов IaaS

Давайте посмотрим, какой степенью контроля обладают пользователи облачных сервисов IaaS. В эту группу входят пользователи IaaS и SaaS.

Пользователь IaaS (обычно специалист по сети или инфраструктуре):

  • контролирует операционные системы, сетевое оборудование и развернутые приложения на уровне виртуальной машины;
  • специалист по инфраструктуре может наращивать или сокращать виртуальные услуги или блоки системы хранения данных;
  • он также может быть администратором SDN, который использует контроллер для оптимизации трафика от одного устройства к другому.

Напротив, единственным средством управления для пользователя SaaS (будь то частное лицо, предприятие или госучреждение) является доступ к SaaS-приложению; средства управления трафиком администратора SDN для него прозрачны. Пользователь SaaS также может быть SaaS-провайдером, который учитывает ожидания пользователей в отношении управления доступом, системы, времени отклика (пропускной способности) и ответов на запросы.

Разработчики облачных сервисов PaaS/IaaS

Как много возможностей управления у разработчиков облачных сервисов IaaS и PaaS?

Разработчик PaaS контролирует и защищает все приложения на протяжении всего жизненного цикла предприятия. Допустим, что он создает, развертывает и исполняет, специальное приложение для управления складом. В процессе жизненного цикла предприятия разработчик использует электронные таблицы, текстовые процессоры, а также системы тарификации, начисления заработной платы и выставления счетов. Разработчик PaaS должен гарантировать, что приложение будет хорошо работать в сетях, которые контролирует администратор SDN.

Разработчик IaaS управляет жизненным циклом разработки общедоступного или частного облака IaaS, которое может взаимодействовать с другим облаком IaaS, размещенном у другого поставщика услуг. Разработчик IaaS гарантирует, что IaaS основывается на OpenStack. Разработчик IaaS работает с разработчиками PaaS, выполняя приложения SaaS в среде тестирования IaaS и PaaS.

Поставщики облачных сервисов IaaS

Поставщик IaaS, как минимум, управляет инфраструктурой традиционных вычислительных ресурсов, на которой работают виртуальные машины. Поставщик устанавливает пороговые уровни для количества пользователей, ресурсов, запросов данных и может договориться с разработчиками PaaS об изменении этих пороговых уровней. Поставщик также может быть администратором SDN, который контролирует трафик между сетевыми устройствами.

Администраторы SDN

В облаке IaaS администратор контролирует функции SDN, отделенные от плоскости данных, и функции NFV, отделенные от конкретных аппаратных устройств. Администратор должен сотрудничать с участниками модели облачных сервисов IaaS над оптимизацией IaaS с открытым исходным кодом.

Соответствие ожиданиям: OpenStack Foundation

Потенциальные и существующие клиенты облачных сервисов ожидают, что открытый стандарт облачных сервисов позволит одной IaaS взаимодействовать с другой IaaS, размещенной у другого поставщика. OpenStack предпринимает активные усилия для удовлетворения этих ожиданий: проект OpenStack Foundation Project позволяет разработчикам и специалистам по облачным вычислениям сотрудничать в сфере создания облачной вычислительной платформы с открытым исходным кодом для общедоступных и частных облаков IaaS.

Давайте подробнее рассмотрим, что представляет собой проект OpenStack Foundation и что он делает с OpenStack, чтобы стандартизировать IaaS. Затем мы обсудим компоненты модульной архитектуры, общие службы, а также Neuron и SDN.

Работа OpenStack Foundation

OpenStack ― это облачная операционная система IaaS, которая управляет большими пулами вычислительных, дисковых и сетевых ресурсов и общих служб в центре обработки данных. Управление всеми ресурсами осуществляется через информационную панель, которая предоставляет администраторам средства управления, в то же время обеспечивая их пользователям и разработчикам возможность запрашивать ресурсы через веб-интерфейс.

OpenStack Foundation курирует проект OpenStack, который объединяет код платформы Nebula NASA с платформой Rackspace. Редактированием кода этого проекта занимаются члены организации OpenStack Foundation, которая отделилась от Rackspace в 2011 году. Разработчики и специалисты по облачным вычислениям во всем мире сотрудничают в сфере создания облачной вычислительной платформы с открытым исходным кодом для общедоступных и частных облаков.

В апреле 2012 года IBM и Red Hat согласились присоединиться к проекту в качестве «платиновых членов», что означает, что они будут вносить по 500 000 долларов США в год в течение следующих трех лет. В число других компаний, планирующих стать платиновыми членами, входят АТ&T, Canonical, HP, Nebula, Rackspace и SUSE.

Компоненты модульной архитектуры

В рамках усилий по стандартизации IaaS OpenStack придали модульную архитектуру, которая состоит из трех компонентов. Каждому из них присвоено кодовое имя.

  • Compute (Nova): программное обеспечение с открытым исходным кодом и стандарты для крупномасштабного развертывания автоматически создаваемых экземпляров виртуальных машин.
  • Object Storage (Swift): программное обеспечение с открытым исходным кодом и стандарты для крупномасштабных, избыточных хранилищ статических объектов.
  • Networking (Neuron): «сеть как сервис» между устройствами сетевого интерфейса (vNIC), управляемыми другими сервисами OpenStack, такими как Nova.

Общие службы

В OpenStack есть несколько общих служб, которые составляют три опорных колонны: вычисления, хранение и сети. Эти следующие службы:

  • Identity – обеспечивает единую аутентификацию во всех проектах OpenStack;
  • Image – предоставляет услуги доставки образов виртуальных дисков;
  • Telemetry – предоставляет статистические данные по нагрузке и производительности сервисов, развернутых в облаке OpenStack;
  • Orchestration – предоставляет основанный на шаблонах механизм, позволяющий разработчикам приложений описывать и автоматизировать процесс развертывания инфраструктуры;
  • Dashboard – предоставляет пользовательский веб-интерфейс к сервисам OpenStack, включая Nova и Swift.

Все они интегрируют компоненты OpenStack друг с другом.

Neuron и SDN

Neuron – это кодовое название сетевых служб, которые можно использовать для оптимизации IaaS с SDN. Администраторы сетей могут использовать технологию SDN, такую как OpenFlow, для обеспечения высокого уровня мультитенатности и крупномасштабного перемещения данных из одного сетевого устройства в другое. (OpenFlow – это стандартный протокол связи с открытым исходным кодом, предоставляющий сетевой доступ к матрице маршрутизации сетевого коммутатора или маршрутизатора, так что удаленные контроллеры могут определять путь сетевых пакетов, проходящих через сетевые коммутаторы).

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

У Neuron есть среда расширения, которая позволяет развертывать и контролировать дополнительные сетевые службы, такие как системы обнаружения вторжений (IDS), балансировщики нагрузки, межсетевые экраны и виртуальные частные сети (VPN).

Соответствие ожиданиям: OpenDayLight

Службы Neuron с технологией SDN, использующей стандарт OpenFlow, недостаточно. Для оптимизации IaaS лучше подходит проект Linux Foundation OpenDayLight. Это среда с открытым исходным кодом, использующая преимущества контроллера NFV и SDN, которую администраторы могут применять с OpenStack Neuron, помогая пользователям активно оптимизировать IaaS.

Давайте рассмотрим, что такое проект OpenDayLight и что он делает для стандартизации IaaS.

Контроллер NFV и SDN находится внутри своей собственной виртуальной машины Java™ (JVM). Это означает, что OpenDayLight работает не только на Linux®; это открытая платформа, предназначенная для использования с любым оборудованием и любыми операционными системами, поддерживающими Java.

Проект OpenDayLight основан 18 компаниями, в том числе Cisco, Dell, Juniper, IBM и Intel; сегодня проект насчитывает 36 участников. В Hydrogen, первый выпуск OpenDayLight, внесли активный вклад более 150 разработчиков.

Hydrogen

Платформа Hydrogen доступна для предприятий, поставщиков услуг, поставщиков оборудования и научных учреждений. Она поставляется в трех редакциях в одном пакете:

  • Base Edition устанавливается на ноутбук для подключения к инструменту тестирования, который обеспечивает искусственную сеть;
  • Virtualization Edition добавляет технологии для виртуализации центра обработки данных. Построена на базовой редакции;
  • Service Provider Edition помогает поставщикам услуг и телекоммуникационным компаниям и разработать план перехода на SDN и NFV, а также поддерживать средства транспортировки. Поддерживает протокол SNMP и API для управления устаревшим сетевым оборудованием.

Виртуализация сетевых функций

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

Рассмотрим, как NFV работает с SDN. С точки зрения OpenDayLight SDN состоит из трех уровней.

  • Сетевые приложения и согласование: верхний уровень состоит из приложений бизнес- и сетевой логики, которые управляют поведением сети и контролируют его. В их число входят согласующие приложения, необходимые для общего управления сетевым трафиком.
  • Платформа контроллера: средний уровень расположен между северным и южным интерфейсами SDN. Северный интерфейс обеспечивает уровень приложений набором общих API. Он соединяется с южным интерфейсом, который реализует один или несколько протоколов (например, OpenFlow) для управления физическим оборудованием в сети.
  • Физические и виртуальные сетевые устройства: нижний уровень состоит из физических и виртуальных устройств, коммутаторов, маршрутизаторов и т.п., которые обеспечивают соединение между всеми конечными точками в сети.

Смягчение рисков уязвимости контроллера

SDN вносит некоторые уязвимости (например, возможность взлома контроллера SDN), которые могут использовать хакеры. Для снижения риска необходимо выполнить следующие четыре действия.

  • Определить имеющиеся ресурсы.
  • Определить уязвимости и угрозы.
  • Оценить риски.
  • Устранить их с помощью средств защиты.

Определение имеющихся ресурсов

Процесс смягчения рисков начинается с выявления ресурсов, связанных с контроллером. Определите категории, к которым должны относиться ресурсы; вот несколько примеров:

  • оборудование: сетевые устройства и коммутаторы, а также консоль администратора SDN;
  • безопасность: механизмы шифрования, средства тестирования безопасности и межсетевые экраны;
  • администрирование: руководства по OpenStack и OpenDayLight;
  • документация: точка контакта с администратором SDN, учебные пособия, сетевые стандарты, планы аварийного восстановления и Соглашение об уровне обслуживания.

Определение уязвимостей и угроз

Хакеры – не единственные носители угроз, которые могут воспользоваться уязвимостью контроллера. К их числу также относится администратор SDN, который может неправильно настроить контроллер (и межсетевые экраны).

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

Оценка рисков

Пользователям нужна уверенность в непрерывном взаимодействии и доступности IaaS, а также в том, что их спрос на дополнительный трафик может быть удовлетворены путем оптимизации IaaS. Один из методов оценки рисков недоступности IaaS – количественный. Вот некоторые примеры:

  • оценка частоты случаев недоступности IaaS;
  • оценка частоты сетевых атак из-за неправильной настройки контроллера;
  • оценка частоты случаев необеспечения гарантий эффективности, указанных в Соглашении об уровне обслуживания;
  • оценка частоты случаев неудачного переключения между сетевыми маршрутизаторами и коммутаторами.

Устранение рисков с помощью средств защиты

Один из способов смягчения рисков отказа контроллера – экономически эффективные средства защиты. Администратор SDN должен гарантировать:

  • что контроллер правильно настроен и защищен по крайней мере проверкой того, кто к нему обращался, шифрованием трафика и включенной опцией ведения журнала событий;
  • имеются сетевые службы, блокирующие атаки по сети. В их число входят системы обнаружения вторжений (IDS), средства выравнивания нагрузки и межсетевые экраны;
  • имеется механизм быстрого переключения с неисправных сетевых маршрутизаторов и коммутаторов на исправные;
  • администратор SDN/NFV имеет надлежащий опыт работы и инструкцию по управлению системой.

Заключение

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


Ресурсы для скачивания


Похожие темы


Комментарии

Войдите или зарегистрируйтесь для того чтобы оставлять комментарии или подписаться на них.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Облачные вычисления, Open source, Технология Java, Linux
ArticleID=1000479
ArticleTitle=Использование программно определяемых сетей для оптимизации IaaS
publish-date=03122015