OpenStack je open-sourcová platforma pro cloudové řešení, která je obvykle nasazena ve formě IaaS (tedy infrastructure as a service nebo infrastruktura jako služba), kdy jsou zákazníkům zprostředkovávány virtuální servery a další zdroje.

Softwarová platforma obsahuje vzájemně propojené komponenty, které kontrolují rozličné hardwarové zdroje od různých dodavatelů pro zpracování, ukládání a síťové zdroje skrze datové centrum. Uživatelé mohou platformu ovládat skrze webový dashboard, nástroj příkazové řádky nebo za pomoci RESTful služeb.

OpenStack původně začal v roce 2010 jako společný projekt Rackspace Hosting a NASA. V současnosti je spravován Open Stack Foundation, což je nezisková organizace, která byla založená za účelem propagace tohoto software a jeho komunity. Do projektu se zapojilo více než 500 firem.

Vývoj OpenStack

OpenStack komunita spolupracuje v rámci šestiměsíčního release cyklu s častými vývojářskými milníky.

Během plánování každého release se komunita setkává v rámci summitu OpenStack Design, tak aby se usnadnila spolupráce vývojářů a shromáždily plány. Tyto summity jsou součástí OpenStack konference.

Komponenty

OpenStack je založený na modulární architektuře.

Nova

Nova je hlavní součástí IaaS systému. Je navržena tak, aby spravovala a automatizovala skupiny počítačových zdrojů a může fungovat s dostupnými virtualizačními technologiemi nebo například s konfigurací HPC. Nova je psaná v Pythonu a používá širokou škálu externích knihoven, jako je například Eventlet, Kombu nebo SQLAlchemy. Architektura je navržena tak, aby byla horizontálně škálovatelná.

Vzhledem k široce rozšířené integraci do podnikových infrastruktur je čím dál důležitější monitorovat výkon Novy.

Neutron

Neutron je systém pro správu sítí a IP adres. Zajišťuje, aby síť nebyla úzkým místem, a dává uživatelům možnost si síť nastavit i přes konfiguraci.

Neutron nabízí síťové modely pro různé aplikace nebo skupiny uživatelů. Standardní modely obsahují ploché modely nebo VLANy, které oddělují server od trafficu. Neutron spravuje IP adresy, což umožňuje použít dedikovanou statickou adresu nebo DHCP. Plovoucí IP adresy umožňují dynamický přesun trafficu na libovolný zdroj IT infrastruktury, takže mohou být v případě údržby nebo selhání uživatelé přesměrováni.

Cinder

Cinder zajišťuje blokové úložné systémy. Spravuje jejich tvorbu, přiřazení i odpojení od serverů.

Keystone

Keystone je centrální úložiště uživatelů, které je namapované na služby, ke kterým mohou přistupovat.

Další komponenty

Mezi další komponenty OpenStack patří Ceilometer (pro telemetrii), Trove (pro databáze), Sahara, Ironic, Zaqar (pro posílání zpráv), Manila (systém sdílených souborů), Designate (DNS), Searchlight (pro vyhledávání), Barbican (správa klíčů), Magnum (orchestrace kontejnerů), Vitrage a Aodh.

Výhody použití OpenStack

  • Rychlé inovace. Orchestrace a samoobslužné možnosti obsažené v OpenStack umožňují vývojářům rychlejší a lepší přístup ke zdrojům. Tím se zkracuje doba vývoje a testování a je více prostoru k experimentům.
  • Rychlejší vstup na trh. Díky rychlému nasazení IT zdrojů nemusejí koncový uživatelé čekat dny nebo týdny na použití síťových služeb a aplikací.
  • Maximální škálovatelnost a využití zdrojů. Přestože není OpenStack tak škálovatelný jako veřejné cloudy, nabízí vysokou míru škálovatelnosti.
  • Jednoduché naplnění regulatorních požadavků. Vzhledem k tomu, že se jedná o soukromý cloudový systém, je jednoduché s ním dodržet regulatorní požadavky.

Nevýhody použití OpenStack

  • Delší doba implementace. Je relativně těžké se OpenStack naučit používat. Zavedení do firmy může trvat delší dobu, protože implementace je komplexní.
  • Chybějící dokumentace. OpenStack nemá přesnou a obsáhlou dokumentaci.