Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.


10.06.2019

Inteligentne zarządzanie...

W dniach 11, 12 i 13 czerwca – odpowiednio – w Gdańsku, w Warszawie i w Katowicach,...
27.05.2019

Rozwiązania na platformie GCP

Citrix SD-WAN i Citrix ADC
27.05.2019

Chmura hybrydowa

Dell Technologies Cloud
27.05.2019

Uproszczona komunikacja

Cisco Webex
24.05.2019

Konferencja IT Manager of...

W dniach 12–14 czerwca w Sopocie odbędzie się konferencja IT Manager of Tomorrow 2019. To...
24.05.2019

Ochrona sieci

Fortinet FortiOS 6.2
24.05.2019

Mniejsza złożoność

Rittal VX25 Ri4Power
24.05.2019

All-in-one NAS

QNAP TDS-16489U R2
24.05.2019

Układy SoC

AMD Ryzen Embedded R1000

Openstack jako narzędzie do tworzenia infrastruktury chmurowej

Data publikacji: 19-04-2018 Autor: Jarosław Sobel
RYS. 1. OPENSTACK – OGÓLNA...

OpenStack to oprogramowanie służące do budowy chmur obliczeniowych, głównie w modelu Infrastructure as a Service (IaaS). Jest ono darmowe i rozpowszechniane na otwartej licencji (Apache License 2.0). Powszechnie nazywane jest systemem operacyjnym dla chmury. Przyjrzymy się bliżej temu oprogramowaniu.

Projekt OpenStack został powołany do życia w lipcu 2010 roku z inicjatywy NASA oraz Rackspace Hosting. Główną ideą projektu było stworzenie uniwersalnego rozwiązania, dzięki któremu możliwe byłoby tworzenie oraz zarządzanie usługami chmurowymi, bazując na standardowym sprzęcie. Pierwsza oficjalna wersja o nazwie kodowej Austin została upubliczniona 21 października 2010 r. Bazowała ona na kodzie źródłowym platform Nasa – Nebula – oraz Rackspace – Cloud Files. Wersja ta składała się z dwóch komponentów: Nova – służącego do zarządzania częścią przetwarzającą, np.: wirtualizatorami oraz Swift – czyli skalowalnym storage’em obiektowym. Od 2016 roku projekt zarządzany jest przez powołaną w 2012 roku OpenStack Foundation. Jest ona odpowiedzialna za promowanie platformy oraz skupianie wokół niej społeczności. W kolejnych latach do projektu dołączały firmy jak SUSE, RedHat, Oracle czy HP. Obecnie fundacja skupia ponad 500 organizacji i firm.

 

Kolejne wersje OpenStacka publikowane są średnio co sześć miesięcy (każda kolejna nazwa wersji zaczyna się kolejną literą alfabetu). Podczas planowania kolejnych wersji społeczność zgromadzona wokół projektu spotyka się na konferencjach OpenStack Design Summit w celu omówienia wprowadzanych zmian i wyznaczenia kolejnych kierunków rozwoju. Najnowszą dostępną wersją jest Queens (opublikowana 28 lutego 2018), a w rozwoju znajduje się wersja o nazwie kodowej Rocky (patrz tabela).


> ARCHITEKTURA


OpenStack to system o budowie modularnej, składający się z wielu różnych projektów, których głównym zadaniem jest dostarczenie usług, na bazie których można zbudować kompletną usługę chmury (w model IaaS) – rys. 1.


Głównym założeniem projektu była możliwość instalacji tylko tych komponentów, które użytkownik w danym momencie potrzebuje. Dzięki takiemu podejściu istnieje możliwość stosunkowo łatwej rozbudowy oraz wymiany jednego elementu na inny. Dodatkowo architektura OpenStacka z założenia wspiera zarówno skalowanie poziome (scale-out), jak i pionowe (scale-up).


OpenStack napisany jest w Pythonie (z pewnymi małymi wyjątkami – np. interfejs użytkownika). Główną szyną komunikacji pomiędzy modułami jest system kolejkowy AMQP (Advanced Message Queuing Protocol – rys. 2), który może wykorzystywać RabbitMQ, Qpid lub ZeroMQ.


Zarządzanie komponentami projektu (administracja i użytkowanie) możliwe jest na kilka sposobów:

 

  • panel webowy – Horizon;
  • API (REStfull);
  • polecenia wsadowe (python–*client).


> KOMPONENTY


Obecnie na projekt OpenStacka składa się prawie 40 komponentów. Najważniejsze (i najbardziej dojrzałe) to:


Nova – elementy przetwarzające (tzw. computing). Jest to główny element OpenStacka odpowiedzialny za platformę IaaS. Stanowi tzw. kontroler, służący do zarządzania i automatyzacji zestawu zasobów serwerowych. Wspiera wirtualizacje (KVM, VMware, Xen, Hyper-V), klastry obliczeniowe (HPC), instalacje na sprzęcie, a także kontenery linuksowe (LXC);


Neutron – warstwa sieciowa. Jest to komponent typu SDN (Software Defined Network), dający użytkownikowi możliwość tworzenia wirtualnych sieci, które następnie może przypisywać do poszczególnych usług w projekcie (np. nova – wirtualne maszyny). Zarządza adresacją IP (zarówno statyczną, jak i dynamiczną – za pomocą DHCP). W najprostszej implementacji Neutron korzysta z mechanizmu VXLAN. Dzięki modularnej budowie oraz otwartemu API na warstwie sieciowej możliwe jest tworzenie i dostarczanie kolejnych usług (w wyższych warstwach), np.: LoadBalancing-aaS (as a Service), VPN-aaS lub IDS-aaS. Istnieją gotowe pluginy, które rozszerzają tę funkcjonalność (np.: Open vSwitch, Cisco Nexus 1000v, Linux Bridge);


[…]


Autor jest architektem zajmującym się projektowaniem i implementacją rozwiązań wirtualizacyjnych. Posiada certyfikacje firm: Citrix, VMware, Microsoft, NetApp i RedHat. Prelegent oraz autor bloga poświęconego technologii Citrix i wirtualizacji.

Artykuł pochodzi z miesięcznika: IT Professional

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"