Инициатива была начата в июле 2010 года, когда национальное управление NASA и крупнейший хостинг-провайдер США RackSpace объявили об открытии кода проектов платформы Nebula (IaaS — NASA) и платформы Rackspace Cloud Files (Rackspace Hosting). Таким образом, Rackspace разработало свою платформу “Cloud Files” как часть объектов хранения OpenStack, а НАСА внесли свою “Nebula” как часть Compute. Эта инициатива была названа OpenStack.
В мае 2011 года Canonical объявила, что OpenStack станет основной облачной платформой Ubuntu уже с выходом версии 11.10 Ubuntu Server и Ubuntu Enterprise Cloud. До этого в дистрибутиве для этих же целей использовалась платформа Eucalyptus.
В октябре 2011 года RackSpace объявила о своем намерении передать все права на код и торговую марку OpenStack некоммерческой организации OpenStack Foundation.
По заявлению создателей OpenStack, это полностью открытый проект и никогда не будет никаких расширенных проприетарных версий и коммерческих лицензий, вся функциональность будет доступна и открыта, весь код будет доступен в репозиториях на любой стадии его интеграции в проект. Решения по развитию и архитектуре OpenStack всегда будут приниматься прозрачно и с привлечением сообщества разработчиков – для управления проектом создан независимый управляющий совет.
“Мы хотим, чтобы людям стало легче вносить свой вклад, и найти новые формы их участия в проекте помимо собственно кода” — сообщил eWeek исполнительный директор OpenStack Foundation Джонатан Брайс.
Цель на 2014 г. OpenStack Foundation заключается в том, чтобы активизировать влияние пользователей на реализацию концептуальных замыслов и разработок.
“Хотя на регулярно проводимых совещаниях OpenStack безусловно принимаются важные решения, многие идеи вносятся в повестку дня задолго до очередной встречи, — сказал Кольер (Марк Кольер, главный операционный директор OpenStack Foundation) — поэтому мы стараемся готовить новые пользовательские предложения в структурированной форме и с запасом времени до совещания, чтобы они смогли повлиять на наши дорожные карты”.
В настоящий момент к разработке OpenStack уже присоединилось более 150 компаний, среди которых такие гиганты, как Cisco, HP, Dell, AMD, Intel и NEC.
OpenStack — это комплекс проектов свободного программного обеспечения, предназначенный для развертывания и поддержания работы инфраструктуры cloud-вычислений как публичных, так и приватных (работающих только для обеспечения внутренних нужд компании). Эти проекты распространяются под лицензией Apache License.
Сейчас основные компоненты OpenStack (в действительности их намного больше, это реально работающие):
- Nova — контроллер вычислительных ресурсов.
- Swift — облачное хранилище.
- Glance — сервис хранения образов виртуальных машин.
- Keystone — сервис идентификации.
Главный компонент OpenStack — это Nova (Compute), контроллер, управляющий работой виртуальных машин. Фактически Nova отвечает за все: обрабатывает запросы на создание виртуальных машин, соединяет их с внешним миром, следит за работоспособностью и распределением нагрузки на физические машины и каналы связи, реагирует на сбои и т.д. Nova основана на коде системы NASA Nebula, написана на языке программирования Python и опирается на протокол обмена сообщениями AMQP.
Swift (OpenStack Object Storage) — безграничное хранилище это полностью распределенное, отказоустойчивое высоконадежное хранилище данных, созданное по образу и подобию Amazon S3. Swift почти полностью основан на наработках компании Rackspace.
Nova использует сервис Glance для управления образами операционных систем, которые требуются для поднятия экземпляров системы. Glance может использовать различные типы систем хранилищ, такие как файловое хранение, S3 (Simple Storage Service) и пр.