Utviklet av | OpenStack-fellesskap |
---|---|
Siste versjon | Wallaby (14. april 2021) |
Skrevet i | Python |
Operativsystem | GNU / Linux |
Miljø | Kryssplattform |
Type | cloud computing |
Tillatelse | Apache License 2.0 |
Nettsted | openstack.org |
OpenStack er et sett med åpen kildekode- programvare for distribusjon av cloud computing- infrastrukturer ( infrastruktur som en tjeneste ). Teknologien har en modulær arkitektur som består av flere sammenhengende prosjekter (Nova, Swift, Glance, etc.) som gjør det mulig å kontrollere de forskjellige ressursene til virtuelle maskiner som datakraft, lagring eller til og med nettverket som ligger i de etterspurte dataene. sentrum .
Prosjektet støttes av OpenStack Foundation, en ikke-kommersiell organisasjon som har som mål å markedsføre OpenStack-prosjektet, samt beskytte og hjelpe utviklere og hele OpenStack-samfunnet.
Mange selskaper har sluttet seg til OpenStack-stiftelsen. Blant disse er: Canonical , Red Hat , SUSE , eNovance , AT&T , Cisco , Dell , IBM , Yahoo! , Oracle , Orange , Cloudwatt , EMC , VMware , Intel , OVHcloud , NetApp .
OpenStack er gratis programvare distribuert under vilkårene i Apache-lisensen .
Etternavn | Datert | Komponenter inkludert | Versjonsmerknader |
---|---|---|---|
Austin | 21. oktober 2010 | Nova, Swift | (in) versjon av Austin Rating |
Bexar | 3. februar 2011 | Nova, Glance, Swift | (no) Versjonsinformasjon Bexar |
Kaktus | 15. april 2011 | Nova, Glance, Swift | (no) Versjonsinformasjon Kaktus |
Diablo | 22. september 2011 | Nova, Glance, Swift | (no) Versjonsinformasjon Diablo |
Essex | 5. april 2012 | Nova, Glance, Swift, Horizon, Keystone | (in) versjon Merk Essex |
Folsom | 27. september 2012 | Nova, Glance, Swift, Horizon, Keystone, Quantum, Cinder | (in) Merkversjon Folsom |
grizzly | 4. april 2013 | Nova, Glance, Swift, Horizon, Keystone, Quantum, Cinder | (in) Merkversjon Grizzly |
Havanna | 22. oktober 2013 | Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer | (no) Versjonsinformasjon Havana |
Ishus | 17. april 2014 | Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove | (in) IceHouse versjon Rangering |
Juno | 16. oktober 2014 | Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara | (no) Versjonsinformasjon Juno |
Kilo | 30. april 2015 | Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic | (in) versjon av Kilo Rating |
Frihet | 26. oktober 2015 | Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, SearchLight, Designate, Zaqar, Barbican, Manila | (no) Versjonsinformasjon Liberty |
Mitaka | 7. april 2016 | Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, SearchLight, Designate, Zaqar, Barbican, Manila | (no) Versjonsinformasjon Mitaka |
Newton | 6. oktober 2016 | Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, SearchLight, Designate, Zaqar, Barbican, Manila | (no) Newton-versjon Rangering |
Ocata | 22. februar 2017 | Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, SearchLight, Designate, Zaqar, Barbican, Manila | (no) Versjonsinformasjon Ocata |
Gjedde | 30. august 2017 | Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, SearchLight, Designate, Zaqar, Barbican, Manila | (no) Versjonsinformasjon Gjedde |
Queens | 28. februar 2018 | Aodh, Barbican, Blazar, Ceilometer, Ceilometer-powervm, Cinder, Cloudkitty, Congress, Designate, Freezer, Glance, Heat, Horizon, Ironic, Karbor, Keystone, Magnum, Manila, Mistral, Monasca-api, Monasca-log-api, Murano, Neutron, Nova, Octavia, Panko, Sahara, Searchlight, Senlin, Solum, Storlets, Swift, Tacker, Tricircle, Trove, Vitrage, Watcher, Zaqar, Zun | (no) Versjonsinformasjon Queens |
Stenete | 30. august 2018 | Aodh, Barbican, Blazar, Ceilometer, Cinder, Cloudkitty, Congress, Cyborg, Designate, EC2, Glance, Heat, Horizon, Ironic, Karbor, Keystone, Magnum, Manila, Mistral, Masakari, Monasca-api, Monasca-log-api, Murano, Neutron, Nova, Octavia, Panko, Qinling, Sahara, Senlin, Solum, Storlets, Swift, Tacker, Tricircle, Trove, Vitrage, Watcher, Zaqar, Zun | (in) Rocky versjon Rangering |
Stein | 10. april 2019 | Aodh, Barbican, Blazar, Ceilometer, Cinder, Cloudkitty, Congress, Cyborg, Designate, Ec2-api, Fryser, Blikk, Heat, Horizon, Ironisk, Karbor, Keystone, Magnum, Manila, Masakari, Mistral, Monasca-api, Monasca- events-api, Monasca-log-api, Murano, Neutron, Nova, Octavia, Panko, Plassering, Qinling, Sahara, Søkelys, Senlin, Solum, Storlets, Swift, Tacker, Tricircle, Trove, Vitrage, Watcher, Zaqar, Zun | (in) versjon Merk Stein |
Tog | 16. oktober 2019 | Aodh, Barbican, Blazar, Ceilometer, Cinder, Cloudkitty, Congress, Cyborg, Designate, Ec2-api, Fryser, Blikk, Heat, Horizon, Ironisk, Karbor, Keystone, Magnum, Manila, Masakari, Mistral, Monasca-api, Monasca- events-api, Monasca-log-api, Murano, Neutron, Nova, Octavia, Panko, Plassering, Qinling, Sahara, Søkelys, Senlin, Solum, Storlets, Swift, Tacker, Tricircle, Trove, Vitrage, Watcher, Zaqarm, Zun | (in) versjon av Train Rating |
Ussuri | 13. mai 2020 | Adjutant, Aodh, Barbican, Blazar, Ceilometer, Cinder, Cloudkitty, Congress, Cyborg, Designate, Ec2-api, Fryser, Blikk, Heat, Horizon, Ironisk, Karbor, Keystone, Magnum, Manila, Masakari, Mistral, Monasca-api, Monasca-events-api, Murano, Neutron, Nova, Octavia, Panko, Plassering, Qinling, Sahara, Søkelys, Senlin, Solum, Storlets, Swift, Tacker, Tricircle, Trove, Vitrage, Watcher, Zaqar, Zun | (in) versjon Merk Ussuri |
Victoria | 14. oktober 2020 | Adjutant, Aodh, Barbican, Blazar, Ceilometer, Cinder, Cloudkitty, Cyborg, Designate, Ec2-api, Fryser, Blikk, Heat, Horizon, Ironisk, Karbor, Keystone, Magnum, Manila, Masakari, Mistral, Monasca-api, Monasca- events-api, Murano, Neutron, Nova, Octavia, Panko, Placement, Qinling, Sahara, Searchlight, Senlin, Solum, Storlets, Swift, Tacker, Trove, Vitrage, Watcher, Zaqar, Zun | (in) Victoria versjon Rangering |
Wallaby | 14. april 2021 | Adjutant, Aodh, Barbican, Blazar, Ceilometer, Cinder, Cloudkitty, Cyborg, Designate, Ec2-api, Fryser, Blikk, Heat, Horizon, Ironisk, Keystone, Magnum, Manila, Masakari, Mistral, Monasca-api, Monasca-events- api, Murano, nøytron, Nova, Octavia, Panko, plassering, Sahara, Senlin, Solum, Storlets, Swift, Tacker, Trove, Vitrage, Watcher, Zaqar, Zun | (no) Versjonsinformasjon Wallaby |
OpenStack har en modulær arkitektur som inneholder mange komponenter:
Her er listen over såkalte komponenter integrert i OpenStack.
Nova er en av de viktigste byggesteinene i Openstack. Hensikten er å administrere databehandlingsressursene til infrastrukturene. For dette kontrollerer Nova hypervisorene gjennom libvirt eller direkte gjennom APIene til visse hypervisors . I dag er den best støttede hypervisoren fortsatt KVM , men Nova jobber også med Xen , ESX og Hyper-V selv med containeransvarlige som Docker og nylig LXD hypervisor fra Canonical .
Novas mursteinsarkitektur er designet for å utvikle seg horisontalt ved å legge til materiale. Videre jobber Nova med ikke-spesialisert utstyr som for eksempel gjør det mulig å gjenbruke eksisterende servere.
OpenStacks objektlagring heter Swift. Det er et overflødig og skalerbart datalagringssystem. Filer skrives til flere harddisker distribuert over flere servere i et datasenter . Det sikrer replikering og integritet av data i klyngen. Den Swift klynge utvikler seg horisontalt ved å legge til nye servere. Hvis en server eller harddisk mislykkes, replikerer Swift innholdet fra aktive noder i klyngen til nye steder. Siden all Swifts logikk er anvendelig, tillater den bruk av billig, ikke-spesialisert maskinvare.
I august 2009, Rackspace startet utviklingen av Swift, og erstattet deres gamle produkt kalt Cloud Files. I dag leder SwiftStack utviklingen av Swift med samfunnet.
OpenStacks blokkeringstjeneste heter Cinder. Det gir vedvarende blokkeringsenheter til OpenStack-forekomster. Den styrer oppretting, vedlegg og løsrivelse av disse enhetene på serverne. I tillegg til lokal lagring på serveren, kan Cinder bruke flere lagringsplattformer som Ceph , EMC (ScaleIO, VMAX og VNX), GlusterFS , Hitachi Data Systems , IBM Storage (Storwize-familien, SAN Volume Controller, XIV Storage System og GPFS ), NetApp , HP (StoreVirtual og 3PAR) og mange flere.
Blokklagring brukes til scenarier med høy ytelse som databaselagring, men også for å gi serveren tilgang på lavt nivå til lagringsenheten. Cinder administrerer også opprettelsen av øyeblikksbilder , veldig nyttige for sikkerhetskopiering av data som finnes i blokkenheter. Øyeblikksbilder kan gjenopprettes eller brukes til å lage nye volumer.
Neutron-tjenesten fra Openstack (tidligere Quantum) lar deg administrere og manipulere nettverk og IP-adressering i OpenStack. Med Neutron kan brukere opprette sine egne nettverk, kontrollere trafikk gjennom sikkerhetsgrupper og koble sine forekomster til ett eller flere nettverk. Neutron administrerer også IP-adressering av forekomster ved å tildele dem statiske IP-adresser eller gjennom DHCP- tjenesten . Det gir også en flytende IP-adressetjeneste som kan tilordnes forekomster for å gi tilkobling fra Internett. Disse flytende IP-adressene kan tilordnes til andre forekomster i tilfelle vedlikehold eller svikt i den opprinnelige forekomsten.
Neutron tilbyr forskjellige typer nettverksdistribusjon avhengig av målinfrastrukturen. De mest distribuerte nettverkstypene er flate nettverk , VLAN , VXLAN eller GRE- tunnelnettverk . Neutron administrerer distribusjonene ved hjelp av komplementære moduler som gjør det mulig å kommunisere med nettverksadministrasjonsutstyr eller programvare. De mest brukte plugin-modulene er OpenVswitch, ML2, LinuxBridge, men også Cisco Nexus, Juniper OpenContrail og andre.
I sin arkitektur ble Neutron bygget etter filosofien til neste generasjons nettverk kjent som SDN . Selv om den ikke klarer det selv, utnytter noen moduler SDN- funksjonaliteten til enhetene de kontrollerer. Når det brukes med OpenVswitch, bruker Neutron for eksempel en kombinasjon av Iptables og OpenFlow- regler for å håndtere trafikk til forekomster.
OpenStack gir et dashbord som heter Horizon. Det er et webapplikasjon som lar brukere og administratorer administrere skyene sine gjennom et grafisk grensesnitt. Som alle mursteinene til OpenStack, er denne applikasjonen gratis, og det er derfor ikke uvanlig å se versjoner endret av cloud computing-leverandører eller av andre kommersielle selskaper, om ikke bare for å vise navn og logo., Men også for å integrere deres metrologi eller faktureringssystemer. , for eksempel. Denne applikasjonen er skrevet på python og spesielt takket være rammer for webutvikling som Django, og den utnytter REST API- ene fra andre OpenStack-komponenter som Nova, Cinder eller Neutron.
OpenStacks identitetstjeneste heter Keystone. Den gir en sentral katalog som inneholder listen over tjenester og listen over Openstack-brukere, samt deres roller og tillatelser. Innen Openstack bruker alle tjenester og alle brukere Keystone for å autentisere seg med hverandre. Keystone kan grensesnitt med andre katalogtjenester som LDAP . Den støtter flere autentiseringsformater som passord og andre.
OpenStacks bildetjeneste heter Glance. Det gjør det mulig å oppdage, sende og distribuere diskbilder til forekomster. De lagrede bildene fungerer som en diskmal. Tjenesten blikk lar deg også lagre sikkerhetskopier av disse diskene. Blikk kan lagre disse diskbildene på flere måter: i en mappe på en server, men også gjennom OpenStack objektlagringstjeneste eller i desentralisert lagring som Ceph . Blikk lagrer ikke bare bilder, men også informasjon om dem, metadataene. Disse metadataene er for eksempel formatet til platen (for eksempel QCOW2 eller RAW) eller beholderne derav ( OVF for eksempel).
OpenStacks telemetritjeneste heter Ceilometer. Den samler forskjellige beregninger på skybruk . For eksempel lar den deg samle antall forekomster som er lansert i et prosjekt og hvor lenge. Disse beregningene kan for eksempel brukes til å gi informasjon som er nødvendig for et faktureringssystem. Disse beregningene brukes også i applikasjoner eller av andre komponenter i Openstack for å definere handlinger i henhold til visse terskler som med orkestreringskomponenten.
Varme er orkestrasjonskomponenten i Openstack. Det gjør det mulig å beskrive en infrastruktur i form av modeller. I Heat kalles disse modellene stabler . Heat bruker deretter disse modellene for å distribuere infrastrukturen som er beskrevet på Openstack. Han kan også bruke beregningene gitt av Ceilometer for å bestemme seg for å opprette flere forekomster avhengig av belastningen til et program, for eksempel.
Trove er tjenesten som gjør det enkelt å installere og administrere relasjons- og NoSQL- databaseforekomster i OpenStack. Til dags dato er de støttede databasetjenestene: MySQL , Redis , PostgreSQL , Mongodb , Cassandra , Couchbase og Percona.
Sahara tar sikte på å gi brukere med enkle måter til å klargjøre klynger av Hadoop ved å spesifisere flere parametere som den versjonen, topologi klynge eller annet. Etter å ha fylt ut disse parametrene, bruker Sahara klyngen på få minutter. Sahara gir også utviklingsmåtene til klyngen ved å legge til noder på forespørsel.
Det er også komponenter som ennå ikke er Stabile nok til å bli integrert.
OpenStack har API-er kompatible med Amazon EC2 og Amazon S3 .
Dermed kan klientapplikasjoner skrevet for Amazon Web Services gjenbrukes med OpenStack med minimal tilpasning.
I 2016 hevder OpenStack-fellesskapet mer enn 150 selskaper som deltar i prosjektet.
Siden 2017 har HPE og Mirantis valgt å ikke lenger støtte OpenStack-prosjektet for å fokusere på sine egne skyløsninger.
Blant brukerne er: