Мы представляем первое из серии интервью с техническими руководителями проектаOpenStack в блоге Mirantis. Наша цель — обучить более широкое сообщество технических специалистов и помочь людям понять, как они могут внести вклад в проект OpenStack и извлечь из него выгоду. Естественно, ниже изложена точка зрения интервьюируемого, а не компании Mirantis. Интервью публикуется с купюрами в связи с ограничением длины статьи.
Наше первое интервью мы взяли у Марка Макклейна, только что избранного технического руководителя проекта OpenStack Networking (ранее известного как “Quantum”).
Mirantis: Расскажите о себе и о том, как вы начали работу с OpenStack.
Марк Макклейн: Я старший разработчик облачных приложений в DreamHost и я работаю в команде разработки для облаков. DreamHost наняла меня специально для работы над OpenStack. Это произошло в середине цикла разработки Essex, и самое классное в работе над OpenStack, а особенно в сетевых проектах OpenStack, то, что этот проект сочетает две моих любимых темы: построение сетей и Python.
Q: Каковы ваши обязанности? Что вы делаете ежедневно, в рамках рутинной работы?
A: При подготовке релиза Grizzly я в основном занимался улучшением функциональности сервиса метаданных при использовании пересекающихся IP-сетей. Я также работал над миграцией данных, чтобы те, кто развертывает OpenStack, смогли без проблем перейти с Folsom на Grizzly. При подготовке релиза Grizzly я также был во главе нескольких групп, в том числе групп L3, базы данных и сортировки ошибок.
Теперь, в роли технического руководителя проекта, у меня гораздо более широкий взгляд на проект. Я отвечаю за проведение еженедельной встречи команды и организую ветку Network на совещании руководства по разработке. Ежедневно я буду поддерживать общение в сообществе разработчиков, координировать усилия с руководителями групп, просматривать обновления кода и сортировку ошибок, а также просматривать схемы проекта. Я также общаюсь с другими участниками комиссии Foundation and Technical Committee по межпроектным вопросам.
Q: Что особенного в проекте OpenStack Networking? Почему этот проект так важен?
A: С сервисами Nova вы можете создавать виртуальные машины с базовыми возможностями организации сети. Но, если вы хотите использовать более современные технологии, например, тунеллирование для изолирования пользователей сети или VXLAN – этого не получится достичь в полной мере с сетевыми возможностями Nova. Эти сервисы ограничивают вас построением сети VLAN или плоской сети. Новые технологии делают возможным извлечение максимальной выгоды из организации сети в OpenStack, обеспечивая масштабирование изоляции пользователей.
Q: Чего сейчас достигло сообщество сетевых проектов OpenStack, какие у вас планы на релиз Havana?
A: Сообщество OpenStack Networking было изначально создано на саммите Diablo. Этот проект был в зачаточной стадии во время работы над Essex и был встроен в Folsom. В период работы над Essex и Folsom сообщество тратило много времени на выравнивание функционала и встраивание возможностей L2 и L3 в OpenStack Networking.
В рамках проекта Grizzly мы смогли сместить фокус на добавление новых сервисов, а также сокращение разрыва в функционале с сетевыми сервисами Nova. В рамках цикла разработки Grizzly мы добавили перекрывающиеся сервисы метаданных, миграцию и группы безопасности. Ещё одна прорывная функциональность Grizzly — балансировка нагрузки.
На самом деле именно сотрудники Mirantis помогли реализовать сервис балансировки нагрузки. Это был большой совместный проект, в котором участвовало множество разработчиков из разных компаний. Все вместе они создали API и основу для сервиса балансировки нагрузки.
В проекте Havana мы планируем расширить сервис балансировки нагрузки и добавить ещё функций. Заглядывая вперед, в сообществе есть разработчики, которые работают над развитием OpenStack Networking, добавляя поддержку VPN, поддержку ACL коммерческого уровня и поддержку IPv6. Сейчас в наличии базовая функциональность IPv6, и разработчики хотят добавить сервисы более высокого уровня поверх неё. Также некоторые компании и участники сообщества работают над поддержкой аппаратного обеспечения, полной поддержкой распределения узлов, предоставлением высокой доступности в меньшем масштабе по сравнению с поддержкой нескольких узлов в Nova … также некоторые члены сообщества объединились для работы над другими пользовательскими функциями.
Q: Есть ли что-то уникальное в OpenStack Networking или это просто общедоступная версия уже существующей “Организации сети как услуги”?
A: Я думаю, что самое уникальное в OpenStack Networking по сравнению с другими решениями “Организации сети как услуги” — это очень живое участие сообщества компаний. Во время цикла разработки Grizzly мы добавили пять новых плагинов от различных компаний. Это одна из уникальных особенностей в OpenStack Networking. Также она демонстрирует инициативу поставщиков, ведь большинство поставщиков решили вложить свои усилия в разработку OpenStack.
Если сравнить это с другими сетевыми решениями для облаков, у них есть одна или две опции, если повезет. Таким образом, вам достается только сетевая функциональность пакета.
Q: В каких примерах использования видна особая ценность OpenStack Networking?
A: В многопользовательских средах, в которых обязательны изоляция и безопасность, вы можете быстро поднять и запустить системы и предоставить услуги пользователям, будь это публичное или частное облако, и вы можете запустить услуги в соответствующем масштабе достаточно быстро.
В случае более мелких развертываний инфраструктуру OpenStack Networking можно достаточно просто настроить на поддержку более мелких частных облаков с помощью открытых инструментов. Небольшие компании с ограниченными ресурсами могут воспользоваться многими из тех функций, которые доступны в крупных установках.
Q: Когда вы говорите “достаточно быстро”, вы можете дать точные данные?
A: Для небольшой компании при следовании руководствам OpenStack– если вы знакомы с OpenStack – это займет полдня. Если вы не знакомы с OpenStack, может быть один или два дня. Руководства проведут вас по установке и помогут вам провести установку, которая подходит для большинства случаев.
Эту задачу можно выполнить при минимальном количестве сотрудников на обычном оборудовании. Вам не нужны особые коммутаторы или серверы. Если вы пытаетесь экспериментировать, чтобы понять, подходит ли вам решение OpenStack или OpenStack Networking, вы можете использовать имеющуюся тестовую среду.
Q: Какие технологии необходимо знать, чтобы запустить OpenStack Networking?
A: Это тот же набор знаний, который был бы у вашего сетевого инженера или даже ИТ-специалиста. Вам нужно общее знакомство с принципами развертывания IP-сетей.
Таким образом, не требуется особых навыков, потому что многое из того, что реализовали авторы плагинов — как в исходниках с открытым кодом, так и в коммерческих плагинах — не требует глубоких знаний о том, как работают определенные протоколы. В результате разработчик может сфокусироваться на изучении API.
Q: Есть ли неправильные представления об OpenStack Networking?
A: Мы особо не боремся с неправильными представлениями об OpenStack Networking. Я думаю, большинство людей правильно себе представляют, как это работает. Некоторые все равно предпочтут развертывать сетевые сервисы Nova для новых установок, потому что у них есть сомнения в сложности, готовности или стабильности OpenStack Networking.
Теперь появились удачные сопроводительные материалы по установке, а в процессе развертывания сложились варианты компоновки OpenStack, поэтому эти вопросы снялись. Для новых развертываний мы рекомендуем с самого начала использовать OpenStack Networking и применять возможности сервисов, а не начинать с Nova-network с миграцией к OpenStack Networking, так как такая миграция нетривиальна.
Во время разработки Havana команды OpenStack Networking и Nova будут обсуждать, как сократить этот разрыв и как OpenStack Networking может стать поставщиком сетевой инфраструктуры для Nova по умолчанию.
Q: Как насчет масштабируемости OpenStack Networking?
A: Существует несколько крупных установок, в которых работает сетевая инфраструктура OpenStack Networking. Одни из них используют версию Folsom, а другие используют текущий код (trunk), что очень интересно, поскольку говорит о зрелости исходного кода.
Q: Есть ли у проекта OpenStack Networking до сих пор какие-нибудь “детские болезни”?
A: Мы в Grizzly потратили много времени, работая над изолированными сервисами метаданных. Среди вопросов в техподдержку и сообщений об ошибках, которые мы получили после выпуска Folsom, часто встречался вопрос: “как работает сервис метаданных?”. Поэтому мы потратили много времени, чтобы сделать сервис метаданных проще в настройке или готовым к работе для ряда развертываний. Это, наверное, самая серьезная “болезнь”, от которой мы избавились в Grizzly.
Q: Кого бы вы хотели видеть участником проекта OpenStack Network Project ?
A: Нам очень везет в этом плане. В проекте участвуют представители таких уважаемых компаний как Arista, BigSwitch, Brocade, Cisco, HP, IBM, NEC, Nicira, Juniper, Midokura, Plumgrid и VMware. Во время цикла Grizzly мы добавили ещё больше компаний и начинающих проектов, которые предлагают свои решения, тем самым привлекая инновации с сообщество.
Что касается идеального участника… это кто-то, кто увлечен вопросами организации сети и хочет участвовать в сообществе OpenStack, и готов обмениваться идеями с другими участниками, чтобы в итоге получить выгоду для сообщества в целом.
Q: Какие возможности предоставляются тем, кто хочет создать что-то выдающееся в рамках проекта OpenStack Network Project?
A: В проекте Havana будет значительное продвижение VPN-как-Услуги в нескольких режимах развертывания. Кроме того, мы будем активно работать над балансировкой нагрузки. В Grizzly мы предприняли небольшие шаги по реализации этой функции и сейчас несколько поставщиков пытаются использовать этот API. Также будет значительно развиваться поддержка IPv6. Все больше поставщиков услуг интернета предлагают услуги v6 для коммерческих установок. Также очень важно гарантировать, что проект OpenStack Network Project работает для различных режимов развертывания IPv6.
Мы также приветствуем работу с аппаратным обеспечением для OpenStack Networking и с управлением устройствами в более крупном масштабе: “если я поставщик оборудования, как я могу встроить мое оборудование в инфраструктуру сети OpenStack?” Кроме того, мы работаем над темами, интересными для развертывания: как я могу обеспечить разные уровни предоставления услуг?
Q: Что вы посоветуете людям, которые хотят присоединиться к разработчикам OpenStack Networking? Какие шаги им следует предпринять?
A: Первый шаг – это присоединиться к рассылке для разработчиков OpenStack. Из неё вы сможете понять, какие темы обсуждают разработчики OpenStack Networking.
Команда OpenStack Networking также поддерживает Wiki-страницу для ответов на популярные вопросы начинающих. На этой странице мы отслеживаем ссылки на обзоры кода для серверной и клиентской сторон OpenStack Networking. По мере появления сообщений об ошибках мы пометим самые простые из них как возможность присоединиться к проекту для новых разработчиков и других участников.
Это значит, что те, кто сортирует ошибки, может сказать так: “Вот не очень сложный вопрос и с помощью него можно ознакомиться с базой кода OpenStack Networking.” Мы также поддерживаем список проектов сообщества, с которых удобно начать. Будучи участником рассылки OpenStack Networking, вы можете привлечь других участников сообщества к совместной работе. Таким образом, увеличивается доверие между участниками сообщества, чтобы те участники, которые проверяли ваш код, теперь могли работать с вами. Это повышает взаимопонимание.
Q: Большое спасибо, Марк!
A: Пожалуйста!
Автор: Mirantis_OpenStack