Интервью со старшим вице-президентом компании Parallels Стасом Протасовым
Общее
Каковы основные направления деятельности компании Parallels?
У нас два направления деятельности: программы виртуализации для настольных ПК и Mac, а также решения автоматизации предоставления облачных услуг и хостинга. В первом направлении ключевым продуктом является Parallels Desktop для Мас — решение, позволяющее параллельно работать с программами Windows и Мас без перезагрузки компьютера. Аудитория — более трех миллионов человек по всему миру. Доля этого софта на рынке настольной виртуализации составляет 78% (данные NPD Techworld (01.07.2010—30.09.2010). В этой же линейки виртуализации присутствует Parallels Workstation Extreme и Parallels Server for Mac.
Направление автоматизации (решения Parallels Automation, Parallels Plesk Panel, Parallels Virtuozzo Containers) — это решения, призванные помочь сервис-провайдерам любого размера быстро и недорого организовать предоставление всего спектра хостинговых и облачных услуг компаниям малого и среднего бизнеса. Свыше 5000 сервис-провайдеров используют решения Parallels для предоставления облачных услуг более 100 млн. малых предприятий в 125 странах мира. В число клиентов и партнеров Parallels входят хостинг-провайдеры, операторы связи, VAR- партнеры, дистрибьюторы и веб-дизайнеры. Parallels специализируется на разработке решений для предоставления хостинга веб-сайтов и приложений, общения и совместной работы, инфраструктурных услуг и бизнес-приложений на основе модели SaaS. В качестве ключевого механизма интеграции SaaS-приложений независимых разработчиков в инфраструктуру сервис-провайдеров компания Parallels использует APS — бесплатный и открытый стандарт упаковки приложений, обеспечивающий облачным провайдерам простой и быстрый способ запуска новых, в том числе сторонних, услуг.
Изначально SWsoft — компания с российским капиталом или иностранным? Каковы впечатления от работы на отечественном рынке?
Изначально компания создавалась выходцами из России, которые заработали свои капиталы на территории России и за рубежом. Мы — международная компания. Не зарубежная, не российская, а международная. Штаб-квартира Parallels располагается за рубежом, большинство офисов — за рубежом. R&D, который находится в России, составляет около половины всего количества сотрудников компании. Больше 95% выручки — вне России. Дело не в том, где компания зарегистрирована, а в том, где получает выручку от продажи сервисов. Если только в России, значит российская. В нашем случае распределение оборота такое же, как для других международных софтверных компаний: примерно 40% — Америка, 30% — Европа, Ближний Восток и Африка, 25% — страны Юго-Восточной Азии, остальное — Россия, СНГ и Балтия.
Нормальные впечатления от работы на российском рынке. Свои особенности, не хуже и не лучше, чем в других странах. Просто разные условия ведения бизнеса, вот и все.
Как вы относитесь к высшему образованию в России?
Относимся хорошо, любому человеку желательно получить высшее образование.
Какое место в компании занимает математическая подготовка сотрудников и какое место, на ваш взгляд, она должна занимать в современном программировании?
Мы считаем, что человек, который пришел в Parallels, какую-то базовую физико-математическую подготовку в рамках технического вуза получил. Однако на курсы матана мы своих специалистов не отправляем. Ни одна частная компания не в состоянии компенсировать своим сотрудникам пробелы в системе образования.
Удручает другое: количество тех людей из нашей специальности — программирование — кто не то, чтобы не читал, а даже не слышал о существовании книг Дональда Кнута.
Джеймс Боттомли
Как сложно было «уломать» Джеймса перейти работать в вашу компанию? Чем вы его соблазнили?
Наверное, наш самый важный аргумент, в том числе и при найме очень продвинутых людей, — в перспективах Parallels и темпах ее роста. Компания Red Hat или Novell может вырасти в 2 или даже 4 раза, но вырасти в 10 раз ей нереально. А нам реально. Этот аргумент легко переносится на все другие аспекты профессиональной карьеры в компании. Допустим, человека соблазняют опционами. Например, у Microsoft темпы роста стоимости их акций прогнозируемы — они не очень прибавили в стоимости за последние пару лет. А акции быстрорастущих компаний могут вырасти в десятки раз. Соответственно, люди могут заработать в десятки раз больше. Другой пример: человек, который вчера закончил вуз и пришел в быстрорастущую компанию, получает шанс дойти до верха компании за 8-10 лет упорной работы. То же самое в Microsoft просто невозможно. Эти аргументы понятны Джеймсу.
Где географически работает Джеймс? В Москве? Можно ли пристать к нему с вопросами, находясь в том же здании?
Джеймс бывает в Москве регулярно. В это время к нему можно пристать. Вообще он работает удаленно из Чикаго.
Приглашен ли Джеймс на грядущий корпоратив Parallels в Новосибирске?
К сожалению, его график не позволил ему приехать на Балуш в этот раз.
Продукты
Чем ваши решения для рабочих станций лучше аналогичных: VirtualBox, VMware Workstation, KVM (с технической точки зрения)?
Разница между указанными вами продуктами сейчас уже незначительна. Сравнение всех этих продуктов мы проводим как минимум внутреннее, но ответить вкратце на ваш вопрос я не берусь. Не хочу разводить флейм, где каждый будет упоминать важную и нужную только ему лично функциональность. Это примерно то же самое как ответить на вопрос, чем Coca-Сola лучше Колокольчика? Возможно, для вас VirtualBox лучше всем. Есть куча открытых тестов и бенчмарков по нашим продуктам, из которых можно понять, где мы лучше или хуже. Делать выводы — ваша прерогатива. Нескольким миллионам пользователей в мире наши продукты зачем-то нужны.
Почему клиентам (опять же, с технической точки зрения) следует выбирать для серверов продукты вашей компании, а не Xen, KVM, OpenVZ, решения от VMware?
Для начала стоит знать, что OpenVZ — проект компании Parallels. Как уже сказал выше, флейм разводить не буду. Например, посмотрите сравнение OpenVZ, Xen, VMware и Hyper-V.
Почему в секторе рабочих станций компания Parallels делает основной упор на Mac?
Причин несколько: потому что мы первые в мире предложили решение для запуска Windows (и др. ОС) на Mac, проблема до сих пор не потеряла актуальности для многих пользователей «железа» Apple, как следствие, мы вложили много сил в его развитие и будем продолжать это. Результатом успешности наших действий лучше считать цифры продаж и бенчмарки производительности Parallels Desktop для Mac.
Планируется ли открытие каких-либо ваших продуктов?
Одна из задач Джеймса Боттомли — выстроить политику компании в отношении open source. Задача, которую он для нас уже сделал, — организовал open source review board, где будут приниматься решения, какие части проектов и под какой лицензией будут становиться открытыми.
Будут ли бесплатные приложения виртуализации для рабочих станций по типу VirtualBox? Чем обусловлена политика отсутствия таких предложений в ассортименте компании?
Я не могу ответить на этот вопрос. В отличие от VitualBox, у нас нет в качестве союза финансовой взаимопомощи компаний типа Sun и Oracle. Если наши продукты для рабочих станций и станут бесплатными, то непонятно когда.
Будет ли у ваших продуктов специальная лицензия (желательно бесплатная) для образовательных учреждений? Если есть, то как её можно заполучить?
У нас есть скидка на Parallels Desktop для Mac для студентов и преподавателей. Обратиться можно в allsoft, где от вас потребуется документ, подтверждающий факт студенчества или преподавания.
Графические консоли для управления серверными продуктами обычно делают для Windows и/или на Java. Насколько целесообразным видится разработка «родного» интерфейса для свободных ОС?
Если вы думаете написать тулзу с таким расчетом, чтоб ее разработка окупилась, то это маловероятно. Но если конечная цель вашего open source проекта — не заработок, думаю, что он будет популярен.
Имеются ли планы по созданию систем т.н. «десктопной виртуализации» — для централизованного размещения удалённых рабочих мест на сервере (по типу KVM+SPICE от Red Hat)?
Если речь идет о VDI решениях, то они рассчитаны на корпоративный рынок. Это не наш фокус, мы концентрируемся на хостерах и сервис-провайдерах, хотя наработки имеются.
Какой продукт компании Parallels является самым трудоёмким, какой — самым популярным и какой — самым прибыльным?
Самый трудоемкий — контейнеры для Windows, самый популярный — наверное, Parallels Desktop для Mac, самый прибыльный — вопрос достаточно сложный для подсчетов и, в общем, не такой важный. Для нас важнее, какой самый быстрорастущий с точки зрения выручки — это Parallels Automation.
Техническое
Может ли операционная система, запущенная в вашей виртуальной машине, определить, что она выполняется не на реальном железе? Планируете ли вы создание средств противодействия этому?
Да, может. И конечно же, мы можем создать средства противодействия этому, но не очень понимаем зачем это делать.
Есть ли планы по виртуализации архитектуры OpenRISC? Реализуемо и востребовано ли это?
В отличие от решений на базе гипервизора, контейнерная виртуализация не зависит от архитектуры. В частности, OpenVZ была портирована на ARM, Sparc, PowerPC и, недавно, Tilera.
Над какими подсистемами ядра работают ваши разработчики? Какая от этого выгода именно для вашей компании?
В основном, конечно, это подсистемы, так или иначе относящиеся к функциональности контейнеров — namespaces, управление ресурсами, живая миграция. Хотя есть и просто багфиксы (по всему ядру).
Выгода простая — мы искренне надеемся, что в результате в ядре появится хорошо работающая и хорошо поддерживаемая подсистема контейнерной виртуализации. Непосредственно нашим инженерам это позволит заниматься более интересными вещами, новой функциональностью.
Что вы думаете о смене нумерации версий ядра? Поломалось ли у вас что-то из-за этого?
Мы решили немного подождать и пока не переходить на новую версию.
Будут ли продукты компании Parallels работать на FreeBSD?
Не планировали.
Что такое «performance team»? Чем она занимается? Какие тесты ею проводятся, какова методика тестирования производительности, приходилось ли умалчивать о результатах тестов в случае проигрыша конкурентам?
У нее разные направления, начиная от самописных микробенчмарков (как, например, скорость system call'а или process/thread context switch) и не очень микро (компиляция проекта, скорость работы с большим набором файлов/данных), заканчивая 3rd party тестами такими как SPECjbb, SPECweb, TPC…
Ну и, конечно, тесты для виртуализации, т.е. множества одновременно нагружаемых приложений, исполняющихся в разных VM/контейнерах. Например, Intel vConsolidate, SPECvirt, Dell LAMP (DVD store) test etc.
А вообще, performance team занимается разработкой тестов, сравнениями различных продуктов, анализом и улучшением производительности, а так же разного рода research'ами — например, файловыми системами.
Про методику тестирования можно писать отдельную книгу. Помимо статистического анализа результатов приходится еще много времени уделять вопросам подготовки среды для тестирования. Так, например, дисковая производительность существенно (в 1,5-2 раза) отличается в зависимости от того, куда файловая система разместит реальные блоки данных. И т. д. Если вам это интересно, лучше встретиться лично и пообщаться на эти темы, устроить обмен опытом.
Конечно же, приходилось замалчивать, поскольку заниматься пиаром собственных неудач — неразумно. Хорошая сторона этого в том, что как только мы находили то место, где мы сливали конкурентам, мы начинали фокусироваться, и в конечном итоге, переставали им сливать.
На каком «железе» производится тестирование ваших продуктов? Каковы параметры build-ферм? Какие используются архитектуры и дистрибутивы?
В основном, мы используем обычное commodity железо, хотя есть и более интересные штуки, например, Intel и AMD регулярно присылают нам образцы своих будущих серверных решений (у Intel эта программа называется EARLY ACCESS). Архитектуры сейчас, конечно, в основном x86_64 и x86, хотя раньше мы поддерживали и Itanium. Дистрибутивы Linux — все подряд, хотя упор делается на Red Hat (RHEL и Fedora) и SUSE (SLES и openSUSE). Для десктопа — Ubuntu. Хостов — полторы-две тысячи, подавляющее большинство используется для QA.
За какими открытыми проектами кроме ядра следит компания Parallels? В каких принимает участие?
Следим за большим количеством проектов, с которыми нам приходится иметь дело, начиная от web-серверов и заканчивая базами данных, но активное участие, которое всячески поощряется компанией, действительно только в ядре. И наше 9 место в списке компаний-контрибуторов в соседстве с гигантами — заметное достижение для Parallels, особенно при условии, что наш бюджет на эти работы по Linux kernel на порядки ниже, чем у ребят из этого списка.
Каково ваше участие в разработке OpenVZ? Много ли было возвращено кода? Много ли ещё не возвращено и почему? Каковы планы по улучшению OpenVZ?
OpenVZ — проект нашей компании, участие, как вы понимаете, самое непосредственное. Если вопрос о нашем вкладе, то на настоящий момент в основном ядре (начиная с 2.6.11 и до 3.1-rc2) примерно 1700 патчей. Это PID и network namespaces, куски cgroups resource controllers, NFS virtualization, ну и масса разнообразных фиксов. В идеале мы хотели бы весь код (всю функциональность), которая у нас есть, интегрировать в основное ядро. Задача трудная, но достижимая.
OpenVZ мы постоянно усовершенствуем, портируем на новые ядра, добавляем функциональность, улучшаем производительность и так далее. В данный момент мы сосредоточены на стабилизации ядра на базе RHEL6, которое недавно (в середине июня) сменило свой статус с testing на beta, и скоро мы объявим его стабильным.
Будет ли сделана попытка включения OpenVZ в ядро?
Как раз этого мы и хотели бы добиться в конечном итоге. Начну с того, чем это может быть полезно для комьюнити. С участием Parallels или без, контейнеры рано или поздно будут в ядре. Это очередной этап эволюционного развития — многозадачные, многопользовательские, а теперь и многоконтейнерные системы. Так как у нас есть и код, и огромный опыт в области контейнерной виртуализации, было бы обидно, если бы он пропал втуне, а в ядре появилось бы что-то работающее кое-как. Поэтому наши инженеры активно (и успешно) участвуют в развитии контейнеров в мейнстримном ядре. В некотором смысле это социальная задача. К тому же, это позволяет нашим людям работать с лучшими инженерами мира. «Стать умнее можно только играя с более умным соперником».
Вносимые нами изменения затрагивают почти все подсистемы ядра (кроме, пожалуй, драйверов), и переезд наших патчей на новую версию ядра — это довольно длительный и сложный процесс. Перенеся часть патчей в основное ядро, мы этот процесс в перспективе упрощаем. Например, такие важные «кирпичики», как PID namespace и network namespace, влитые нами пару лет назад, уже работают в RHEL6 и используются нами.
Когда будет OpenVZ для Linux 3.0?
Мы не портируем OpenVZ под все подряд ядра, это не нужно. Наши основные цели:
- стабильность;
- функциональность;
- вливание в основное ядро.
Портирование под все ядра не помогает достичь ни одной из этих целей.
Почему вами не используются LXC, которые уже включены в ядро?
Сначала надо понять, что такое LXC. Существует несколько разных людей и команд, которые заинтересованы в том, чтобы в Linux, в основном ядре, появились контейнеры и вся сопутствующая функциональность. Одна из таких команд — Parallels. Другая команда — это ребята из IBM (Франция, Индия, США). Их много и они упорные, и кроме некоторых патчей в ядро, они пишут свои утилиты. Вот LXC — это то, что есть в мейнстримном ядре (включая патчи от OpenVZ, IBM и других людей типа Эрика Бидермана), плюс эти самые lxc утилиты. В противоположность, OpenVZ — это то, что в мейнстримном ядре, плюс наши патчи, плюс наши утилиты.
То есть, из этого следует, что не надо противопоставлять LXC и OpenVZ. По сути, это взаимопроникающие вещи, просто LXC более work in progress, а OpenVZ — готовое решение, надстройка над LXC. Parallels — фактически один из авторов LXC. Наверное, будет не очень большим преувеличением заявить, что примерно половина ядерной части LXC — наших рук дело. Вся функциональность lxc, которая есть в основном ядре, нами используется.
Известно ли вам о других компаниях в России и СНГ, которые занимаются разработкой ядра?
Мы встречали людей из Samsung, Altlinux, MontaVista, многочисленных научно-исследовательских организаций. Кто-то выступает на добровольных началах, для кого-то из них это поддерживаемая компанией и целенаправленная активность.
О компании и сообществе
Держите ли вы отряд head-hunter'ов? Где они охотятся?
Конечно, держим в Москве, Новосибирске, Сиэтле, Мюнхене.
Известно ли вам о причинах прекращения разработки ASP Linux?
Возможно, мы делали его слишком рано. Чтоб дистрибутив Линукса взлетел по продажам, нужна какая-то фишка. Она у всех разная. У Red Hat это энтерпрайз Линукс, EL номер один, целая куча производителей сертифицируются под эту платформу. Другие дистрибутивы делают другие вещи, которые кажутся правильными большому количеству людей. Gentoo пересобирается из исходников. Ubuntu — юзер-френдли, это их фишка. Чтобы создать такого рода дистрибутив и продавать его в России, надо найти много людей, которые будут его покупать. Продажа дистрибутива должна окупать работу команды. Эта задача в те времена и в российских реалиях была трудно достижима. Для нас теперешних опыт и люди, которые начинали еще в ASPLinux, оказались достаточно ценными.
Сотрудничаете ли вы с компанией Embarcadero?
Насколько я знаю, нет. Но могу ошибаться.
Есть ли у вас желание помочь такому проекту как Reiser4? Можно ли из него извлечь выгоду для компании?
Не очень понятно, как мы можем им помочь. Файловые системы на сегодняшний день — набор достаточно сложных алгоритмов. ReiserFS — результат двадцатилетней работы группы талантливых инженеров. Они намного больше нас понимают, что это такое. Каким образом наладить сотрудничество нашей компании и этих людей, чтоб имело смыл и для коммьюнити, и для нас, совсем неясно.
Как вы можете прокомментировать негативные высказывания и последующие извинения Сергея Белоусова о свободном программном обеспечении? Как, на ваш взгляд, это повлияло на привлекательность компании в сообществе СПО?
То интервью немецкому журналу — хороший урок для нас, поскольку высказывая мысль по таким вопросам, нужно очень аккуратно подбирать слова. В современном обществе локомотивом являются деньги. Linux и вообще open source коммьюнити не являются исключением. Их развитие обусловлено теми средствами, которые инвестируют в него компании типа Intel и IBM. В интервью Сергей говорил о нереальности существования идеализированной картины людей, которые за абстрактное благо человечества сидят и программируют. Все люди руководствуются какими-то своими интересами: развить умения, сделать себе имя, получить предложение от какой-то компании на хорошо оплачиваемую работу.
К сожалению, форма, в которой эта мысль была высказана, привела к практически неминуемой вырванности из контекста его цитаты. Получилось, так как получилось, о чем ему пришлось извиняться.
Известно, что вы не в ладах с сообществом СПО, которое оказывает большое влияние на развитие продуктов, на которых вы намереваетесь зарабатывать деньги. Планируются ли мероприятия для налаживания контакта с сообществом помимо данного интервью?
О существовании этой проблемы я узнал от вас. Но, отвечая на ваш вопрос: да, планируем. Думаем, каким образом общение с нами может быть полезно как нам, так и коммьюнити. Если есть идеи, присылайте на kir@parallels.com.
Почему вы не обращаете внимание на работу с физическими лицами, малым бизнесом? К примеру, покупка «Parallels Virtuozzo Containers» происходит только через контакт с отделом продаж, которые при незначительной покупке благополучно про вас забывают. Покупка через партнёров хаотична.
Комментарий мы донесем до людей, которые у нас отвечают за продажи в России и Восточной Европе. Надеюсь, что ситуация исправится.
Проводится ли в компании политика сокрытия информации об ошибках в продуктах, приводящих к невосстановимым потерям данных?
Нет, конечно. Лучше пусть эти данные пропадают у нас, чем у наших клиентов. Для нас любое подозрение на то, что наша система может иметь баги такого рода — высочайший приоритет. Мы, естественно, откладываем релиз продукта, если есть подозрения на наличие таких багов.
Пользуются ли в Parallels дистрибутивами с коммерческой поддержкой?
Конечно же, платными дистрибутивами мы пользуемся, как минимум для тестирования. Хотя наши инженеры предпочитают свободные клоны.
Используют ли в компании виртуальные машины Parallels при разработке (и для ядра в том числе)?
Да, конечно. Разработчики часто используют VM — так удобнее. Тестирование мы производим как на реальном железе, так и в виртуальных машинах, потому что VM-ки добавляют ситуации, которые не могут случиться на реальном железе.
Какой дистрибутив и редактор кода (или IDE) преимущественно используется разработчиками вашей компании?
Мы не заставляем людей использовать какой-то определённый дистрибутив, кому что нравится, то и ставит. Поэтому дистрибутивы у всех разные. То же самое и с DE. Редактор у тех, кто работает в системной области, у большинства vim, у остальных emacs, примерно так. У людей, которые занимаются прикладной частью, наиболее распространён, скорее всего, Eclipse.
На каком языке вы разговариваете с работниками Parallels: со всеми на английском, или с русскоязычными на русском, с остальными на английском?
Естественно, когда общаемся лицом к лицу, если все участвующие русскоязычные, то на русском. Но в переписке и когда во встречах участвуют западные коллеги, язык общения английский.
Читаете ли лично вы linux.org.ru?
Да, примерно раз в две недели. С уходом Луговского ресурс потерял в градусе эмоциональности.
Каковы планы компании на будущее как в общем продвижении на рынке, так и в техническом развитии ваших решений?
Наши планы — развивать те два направления, которые у нас есть. Хорошо концентрироваться именно на этих вещах и совершенствовать существующие продукты. Хотя наш оборот и насчитывает сотню миллионов долларов в год, но по меркам международных софтверных компаний мы не являемся большим разработчиком. Поэтому роскошь в виде разработки всего, что нам нравится и интересно, позволить себе не можем.
Если говорить о продвижении на рынке, то крайне важной считаем задачу тесной интеграции наших продуктов между собой, где, например, продажи Parallels Plesk Panel могли ли бы повлечь, допустим, продажу Parallels Automation.
Заключение
Интервью подготовил Александр Наталенкоpost-factum при содействии коллектива модераторов ЛОРа.
30.08.2011