OpenStack

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
OpenStack
Типхмарні обчислення
Перший випуск21 жовтня, 2010; 14 років тому (2010-10-21)
Стабільний випускBobcat (2023.10.04)[1] (4 жовтня, 2023; 13 місяців тому (2023-10-04))
Операційна системаGNU/Linux[d]
Мова програмуванняPython
ЛіцензіяApache License 2.0
Репозиторійopendev.org/openstack/openstack
Вебсайтopenstack.org

OpenStack — це комплекс проєктів вільного програмного забезпечення для створення обчислювальних хмар і хмарних сховищ, як публічних, так і приватних (працюють тільки для забезпечення внутрішніх потреб компанії).[2] Серед підтримуваних систем віртуалізації: KVM, QEMU, Xen, Hyper-V, Citrix XenServer, контейнери LXC і VMWare/vSphere ESX/ESXi. OpenStack чудово масштабується і здатний обслуговувати інфраструктуру з сотень тисяч віртуальних серверів.

Історія

[ред. | ред. код]

Ініціатива була розпочата в липні 2010 року, коли Rackspace Hosting спільно з NASA оголосили про відкриття коду проєктів платформи Nebula (IaaS, NASA) і платформи Rackspace Cloud Files (Rackspace Hosting). Ця ініціатива була названа OpenStack. Згодом пов'язана з проєктом інтелектуальна власність була передана незалежній некомерційній організації OpenStack Foundation.

У травні 2011 року Canonical оголосила, що OpenStack стане основною хмарною платформою Ubuntu з виходом версії 11.10 Ubuntu Server і Ubuntu Enterprise Cloud. До цього в дистрибутиві для цих же цілей використовувалася платформа Eucalyptus.[3]

У жовтні 2011 року RackSpace оголосила про свій намір передати всі права на код і торгову марку OpenStack некомерційній організації OpenStack Foundation, відкриття якої планувалось на 2012 рік.[4] На 2013 рік до розробки OpenStack приєдналося понад 250 компаній, серед яких такі гіганти, як Cisco, Cloud.com, HP, Red Hat, VMware, Puppet Lab, Dell, AMD, Intel, NEC, Citrix, Canonical, SUSE Linux[5] і близько 9500 незалежних розробників[6].

Серед «платинових» партнерів OpenStack Foundation, внесок яких становить 500 тисяч доларів на рік: AT&T, Canonical, Hewlett Packard Enterprise, Rackspace, IBM, Nebula, Red Hat і SUSE. Серед «золотих» партнерів, розмір внеску яких становить від 50 до 200 тисяч доларів на рік, можна відзначити Cloudscaling, Dell, MorphLabs, Cisco Systems, NetApp, VMware, Intel і NEC.[7]

На відміну від платформи Eucalyptus, проєкт OpenStack не підконтрольний окремим компаніям і управляється незалежною спільнотою, без поділу на відкриту (community) і розширену (enterprise) редакції. При цьому OpenStack від початку позбавлений деяких проблем з масштабованістю, які спостерігаються в Eucalyptus. Наприклад, система здатна обслуговувати інфраструктуру віртуальних серверів великих хостинг-компаній, подібних Rackspace (100 тисяч віртуальних серверів клієнтів).[8]

Історія релізів[9]

[ред. | ред. код]
Назва Дата
Austin 21 жовтня 2010[10]
Bexar 3 лютого 2011[11]
Cactus 15 квітня 2011[12]
Diablo 22 вересня 2011[13]
Essex 5 квітня 2012[14]
Folsom 27 вересня 2012[15]
Grizzly 4 квітня 2013[16]
Havana 17 жовтня 2013[17]
Icehouse 17 квітня 2014[18]
Juno 18 жовтня 2014[19]
Kilo 30 квітня 2015[20]
Liberty 15 жовтня 2015[21]
Mitaka 7 квітня 2016[22]
Newton 6 жовтня 2016[23]
Ocata 22 лютого 2017[24]
Pike 6 жовтня 2017[25]

Компоненти

[ред. | ред. код]
OpenStack розбитий на служби, щоб можна було підключати і відтворювати компоненти залежно від наявних потреб. Карта OpenStack дає уявлення «з одного погляду» про ландшафт OpenStack, щоб побачити, де ці служби підходять і як вони можуть працювати разом.

Архітектура OpenStack є модульною з великою кількістю компонентів.[26]

  • OpenStack Compute (Nova) — це контролер для хмарних обчислень, що є основною частиною системи IaaS. Він створений для керування та автоматизації пулів комп'ютерних ресурсів і може працювати з поширеними технологіями віртуалізації, звичайними комп'ютерами (bare metal) та конфігураціями для високопродуктивних обчислень (HPC). Можна обирати між такими гіпервізорами (операторами віртуальних машин) як KVM, VMware, Xen а також Hyper-V та LXC[27][28]. Він написаний на Python і використовує багато зовнішніх бібліотек, таких як Eventlet (для багатопоточного програмування), Kombu (для AMQP повідомлень) та SQLAlchemy (для доступу до бази даних)[29]. Архітектура обчислень розроблена з врахуванням можливості горизонтального маштабування на стандартному обладнанні без будь-яких вимог до обладнання чи програмного забезпечення. Це забезпечує можливість інтеграції із застарілими системами та сторонніми технологіями. Через широкомасштабне поширення в корпоративному сегменті, моніторинг ефективності OpenStack в цілому та конкретно Nova при великих масштабах стає дедалі важливішою проблемою. Моніторинг продуктивності вимагає відстеження показників від Nova, Keystone, Neutron, Cinder, Swift та інших сервісів, додатково до моніторингу RabbitMQ, який використовується службами OpenStack для передачі повідомлень[30][31]. Всі ці служби створюють свої власні файли журналів, які також повинні контролюватися, особливо на корпоративному рівні.[32]
  • Networking (Neutron) — фреймворк для виконання завдань, пов'язаних із створенням, конфігуруванням і супроводом мереж всередині дата-центрів. Neutron підтримує динамічну конфігурацію мережі і може бути використаний для налаштування як віртуальних мереж, так і фізичних хостів. Neutron підтримує розширення функціональності через плаґіни і може вирішувати різні адміністративні завдання, від створення портів до налаштування маршрутів і VLAN.
  • OpenStack Object Storage (Swift) — розподілене, стійке до поломок і високонадійне сховище об'єктів. Об'єкти зберігаються одночасно на кілька вузлів кластера в датацентрі, при цьому забезпечується автоматичний контроль цілісності і реплікація при відключенні/додаванні вузлів. Сховище масштабується горизонтально, тобто для збільшення розміру досить просто додати нові вузли, конфігурація яких проводиться автоматично. При виході вузла з ладу, його вміст відтворюється на інших вузлах мережі для забезпечення належної надмірності. Дублювання інформації дозволяє використовувати для формування кластера типові недорогі сервери, не піклуючись про надійність кожного з них окремо.
  • OpenStack Image Service (Glance) — реєстр образів віртуальних машин, що дозволяє реєструвати нові образи віртуальних машин і забезпечувати їхню доставку на потрібні вузли перед виконанням. Забезпечує функціонування сховища образів віртуальних машин, представлених в широкому спектрі форматів: Raw, AMI, VHD (Hyper-V), VDI (VirtualBox), qcow2 (QEMU/KVM), VMDK і OVF (VMWare). Для уніфікації операцій з отримання інформації, додаванню і доставці образів віртуальних машин використовується спеціальний Glance RESTful API
  • Block Storage (Cinder) — багатофункціональне і розширюване сховище блокових пристроїв і дискових розділів, що підтримує також роботу з раніше створеними розділами, розгорнутими в процесі використання минулих випусків OpenStack. Раніше Cinder був реалізований як підпроєкт в рамках сервісу OpenStack Compute, але виділений у відособлену підсистему, що розвивається окремою командою розробників
  • OpenStack Identity (Keystone) — пакет для уніфікації засобів автентифікації і забезпечення інтеграції компонентів OpenStack з існуючими системами автентифікації, в тому числі побудованими на базі Active Directory і LDAP. Можливе використання і звичайних засобів входу з використанням логіну/пароля або AWS. На плечі Keystone винесені такі операції, як управління користувачами, проєктами і правами доступу
  • OpenStack Dashboard (Horizon) — вебінтерфейс для управління системою, побудований на основі вебфреймворку Django і застосунку django-openstack. Інтерфейс представлений як для адміністраторів, так і для користувачів. Підтримується широкий спектр засобів для управління ресурсами, створенням і запуском оточень, установкою лімітів. Можливе підключення плаґінів, наприклад, з реалізацією засобів моніторингу
  • OpenStack Database Service (Trove) — компонент, націлений на підтримку сервісу хмарних баз даних (Database as a Service), на базі як реляційних, так і не реляційних СУБД. Trove дозволяє спростити обслуговування декількох екземплярів СУБД, надаючи засоби для виконання таких операцій, як розгортання СУБД, налаштування, застосування патчів, резервне копіювання, відновлення після збоїв і моніторинг. Повноцінна підтримка забезпечена для MySQL і Percona. Експериментальна підтримка доступна для MongoDB, Redis, Cassandra і CouchDB
  • OpenStack Metering (Ceilometer) — націлений на збір даних про роботу системи і проведення моніторингу, надаючи користувачам єдине джерело даних про використання всіх сервісів OpenStack
  • OpenStack Orchestration (Heat) — забезпечує роботу сервісу для управління життєвим циклом застосунків, які працюють у хмарі, і автоматизації розподілу для застосунків обчислювальних ресурсів, мережевої пропускної здатності і місця у сховищі
  • OpenStack Data Processing (Sahara) — компонент для автоматизації супроводу і управління великими кластерами обробки даних, побудованих на базі Apache Hadoop або Apache Spark
  • Ironic (Bare Metal Provisioning Service) — компонент, що дозволяє використати наявні методи розгортання конфігурацій віртуальних машин для розгортання систем на реальному устаткуванні або для таких застосувань як контейнери Linux

Відомі користувачі

[ред. | ред. код]

У число відомих компаній, що використовують OpenStack, входять:

Примітки

[ред. | ред. код]
  1. OpenStack Releases: 2023.2 Bobcat. Wiki.openstack.org. Архів оригіналу за 04 жовтня 2023. Процитовано 04 жовтня 2023.
  2. OpenStack Open Source Cloud Computing Software. Архів оригіналу за 22 жовтня 2010. Процитовано 29 листопада 2013.
  3. Canonical будет использовать OpenStack в качестве основной cloud-платформы. Архів оригіналу за 13 жовтня 2011. Процитовано 24 березня 2012.
  4. OpenStack Foundation. Архів оригіналу за 8 жовтня 2011. Процитовано 24 березня 2012.
  5. Participating Companies. Архів оригіналу за 22 вересня 2012. Процитовано 24 березня 2012.
  6. Выход свободной облачной платформы OpenStack 2013.2 «Havana». Архів оригіналу за 19 жовтня 2013. Процитовано 18 жовтня 2013.
  7. VMware, Intel и NEC присоединились к разработке OpenStack. Архів оригіналу за 22 жовтня 2012. Процитовано 28 серпня 2012.
  8. Новая версия облачной платформы OpenStack «Diablo». Архів оригіналу за 14 травня 2012. Процитовано 24 березня 2012.
  9. Releases. Архів оригіналу за 18 червня 2015. Процитовано 16 грудня 2015.
  10. OpenStack Projects " OpenStack Open Source Cloud Computing Software. Архів оригіналу за 7 червня 2012. Процитовано 24 березня 2012.
  11. BexarReleaseSchedule — Wiki. Архів оригіналу за 2 листопада 2012. Процитовано 24 березня 2012.
  12. CactusReleaseSchedule — Wiki. Архів оригіналу за 8 лютого 2013. Процитовано 24 березня 2012.
  13. DiabloReleaseSchedule — Wiki. Архів оригіналу за 16 лютого 2013. Процитовано 24 березня 2012.
  14. OpenStack «Essex» Release Delivers Pluggable Cloud Operating System to Power Global Clouds. Архів оригіналу за 7 квітня 2012. Процитовано 7 квітня 2012.
  15. OpenStack Folsom Is Here With The Schedule Of The Summit. Архів оригіналу за 1 жовтня 2012. Процитовано 30 вересня 2012.
  16. OpenStack Grizzly. Архів оригіналу за 6 квітня 2013. Процитовано 8 квітня 2013.
  17. Voice of the User Reflected in New Features of OpenStack Icehouse Release. Архів оригіналу за 19 квітня 2014. Процитовано 17 квітня 2014.
  18. Havana Release Makes It Easier to Build and Deploy Applications with OpenStack Clouds. Архів оригіналу за 19 жовтня 2013. Процитовано 18 жовтня 2013.
  19. OpenStack® Juno Release Available Today. Архів оригіналу за 19 жовтня 2014. Процитовано 19 жовтня 2014.
  20. OpenStack® The 11th release of OpenStack delivers stable core of compute, storage and networking services to foster an ecosystem of innovation. Архів оригіналу за 7 липня 2015. Процитовано 3 травня 2015.
  21. Liberty Release Schedule. Архів оригіналу за 31 січня 2016. Процитовано 9 грудня 2015.
  22. OpenStack Docs: Mitaka. releases.openstack.org. Архів оригіналу за 15 лютого 2016. Процитовано 20 лютого 2016.
  23. OpenStack Releases: Newton. releases.openstack.org. Архів оригіналу за 9 жовтня 2016. Процитовано 8 жовтня 2016.
  24. OpenStack Releases: Ocata. releases.openstack.org (англ.). Архів оригіналу за 23 лютого 2017. Процитовано 22 лютого 2017.
  25. OpenStack Releases: Pike. releases.openstack.org (англ.). Архів оригіналу за 6 жовтня 2017. Процитовано 22 лютого 2017.
  26. OpenStack Roadmap » OpenStack Open Source Cloud Computing Software. Openstack.org. Архів оригіналу за 12 квітня 2014. Процитовано 17 квітня 2014.
  27. OpenStack Compute: An Overview (PDF). openstack.org. 2010. Архів оригіналу (PDF) за 3 вересня 2013. Процитовано 31 березня 2014.
  28. HypervisorSupportMatrix. Архів оригіналу за 3 грудня 2013. Процитовано 29 листопада 2013.
  29. OpenStack — more than just software. Архів оригіналу за 6 листопада 2013. Процитовано 29 листопада 2013.
  30. Monitoring OpenStack Nova. Архів оригіналу за 18 жовтня 2016. Процитовано 17 жовтня 2016.
  31. Monitoring OpenStack Nova: Monitoring RabbitMQ. Архів оригіналу за 18 жовтня 2016. Процитовано 17 жовтня 2016.
  32. OpenStack monitoring beyond the Elastic (ELK) Stack - Part 3: Monitoring with Dynatrace | Dynatrace blog — monitoring redefined. Dynatrace blog — monitoring redefined (амер.). 5 липня 2017. Архів оригіналу за 12 вересня 2017. Процитовано 12 вересня 2017.
  33. OpenStack Compute enters testing stage at Rackspace. Архів оригіналу за 7 листопада 2011. Процитовано 24 березня 2012.
  34. Ubuntu Powers HP Public Cloud. Архів оригіналу за 10 жовтня 2011. Процитовано 24 березня 2012.
  35. OpenStack: Enabling the Open Cloud Era на YouTube
  36. Is AT&T Building the Ultimate Walled Garden?. Архів оригіналу за 21 жовтня 2021. Процитовано 24 березня 2012.
  37. New Korean Cloud Kicks Amazon's Butt. Архів оригіналу за 2 квітня 2012. Процитовано 24 березня 2012.
  38. Marketplace Business: Telecom opens new cloud marketplace [Архівовано 14 червня 2013 у Wayback Machine.] (german)
  39. Dell OpenStack-Powered Cloud Solution. Архів оригіналу за 27 березня 2012. Процитовано 24 березня 2012.
  40. SUSE Cloud — решение на базе OpenStack для поддержания облачных инфраструктур. Архів оригіналу за 10 квітня 2012. Процитовано 24 березня 2012.

Посилання

[ред. | ред. код]

Документація

[ред. | ред. код]