OpenStack и частное облако: кому это даст рычаг, а кого только утопит в сложности
Цена самостоятельности в облачной инфраструктуре - это процессы, масштаб и компетенции, а не только серверы.
В 2012 году интерес к частным облакам вырос заметно. OpenStack даёт возможность построить собственную облачную инфраструктуру: управлять виртуальными машинами, сетями, хранилищем через единый API, по образцу того, как работают публичные облака. Звучит привлекательно - особенно для компаний, которые хотят контролировать данные и не зависеть от внешних провайдеров.
Но прежде чем двигаться в эту сторону, стоит честно ответить на один вопрос: готова ли компания платить настоящую цену за эту самостоятельность? Цена здесь не в деньгах на серверы. Предварительный вопрос - имеет ли смысл собственная инфраструктура вообще - стоит решить сначала. Важно также понимать, что виртуализация - это ещё не облако: это разграничение существенно до того, как оценивать OpenStack.
Что на самом деле покупается
Частное облако - это не продукт, который разворачивается и работает. Это операционная модель. Вместе с ним покупается:
- команда, которая умеет это эксплуатировать и развивать;
- процессы автоматизации, мониторинга, резервного копирования, управления инцидентами;
- готовность тратить время инженеров не на продукт, а на инфраструктуру;
- ответственность за надёжность, которую раньше нёс провайдер.
OpenStack сам по себе - сложная система со многими компонентами. Установить его можно. Поддерживать его в работоспособном состоянии, обновлять без деградации сервиса, справляться с нетривиальными сбоями - это требует людей с конкретными навыками и опытом, которых на рынке мало.
Для кого это имеет смысл
Частное облако оправдывает сложность при нескольких условиях одновременно:
- есть масштаб: несколько сотен серверов или устойчивый рост к этому числу;
- есть компетенции: в штате или в подрядчике есть люди, которые уже работали с OpenStack в production;
- есть специфические требования: к данным, к сети, к изоляции, которые публичные облака не закрывают без значительных затрат;
- есть зрелые ИТ-процессы в целом: управление изменениями, мониторинг, SLA, дежурства.
Если хотя бы одно из этих условий не выполнено - частное облако создаст больше проблем, чем решит.
Типичная ловушка
Компания с 30 серверами решает, что частное облако даст гибкость. Разворачивают OpenStack. Первые три месяца - воодушевление. Потом начинается:
- сбои, которые инженеры не умеют быстро диагностировать;
- обновления, которые страшно делать, потому что непонятно, что сломается;
- запросы от разработчиков, которые привыкли к удобству и скорости публичных облаков;
- накапливающийся технический долг, потому что на нормальную автоматизацию не хватает ресурсов.
В итоге инфраструктура работает, но плохо. И уйти от неё тоже непросто - данные и конфигурации уже там.
Что стоит рассмотреть как альтернативу
Для компаний, которым важен контроль, но масштаб ещё не оправдывает полного стека OpenStack, есть промежуточные варианты:
- виртуализация на уровне одного дата-центра с хорошими процессами - VMware или KVM с нормальным оркестрированием;
- гибридная модель: критичные данные внутри, гибкие мощности - у провайдера;
- managed-сервис на базе OpenStack у специализированного хостера - тогда инфраструктурная компетенция остаётся у подрядчика.
Каждый из этих вариантов даёт меньше полного контроля, но и стоит меньше в эксплуатации.
Три вопроса перед решением
Перед тем как начать серьёзный разговор о частном облаке, я рекомендую ответить на три вопроса:
- Кто будет это эксплуатировать через год, и есть ли этот человек уже в компании?
- Какую конкретную проблему не решает текущий подход, которую решит OpenStack?
- Если через год выяснится, что это была ошибка - насколько легко будет из этого выйти?
Если на первый вопрос нет чёткого ответа - разговор о выборе платформы ещё не начался.