univerza v mariboru - connecting repositories · components. openstack the platform can be expanded...

91
UNIVERZA V MARIBORU FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Gregor Kocmut Izgradnja projekta Sahara v okolju Mirantis 8.0 Diplomsko delo Maribor, Avgust 2016

Upload: others

Post on 26-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

UNIVERZA V MARIBORU

FAKULTETA ZA ELEKTROTEHNIKO,

RAČUNALNIŠTVO IN INFORMATIKO

Gregor Kocmut

Izgradnja projekta Sahara v okolju Mirantis 8.0

Diplomsko delo

Maribor, Avgust 2016

Page 2: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides
Page 3: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

i

Izgradnja projekta Sahara v okolju Mirantis 8.0

Diplomsko delo

Študent: Gregor Kocmut

Študijski program: INFORMATIKA IN TEHNOLOGIJE KOMUNICIRANJA

Smer: SISTEMSKA PODPORA INFORMATIKI IN TEHNOLOGIJAM

KOMUNICIRANJA

Mentor: viš. pred. dr. Bojan Novak, univ. dipl. inž. el

Page 4: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

ii

Page 5: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

iii

Izgradnja projekta Sahara v okolju Mirantis

8.0

Ključne besede: računalništvo v oblaku, OpenStack, Mirantis, Sahara

UDK 004.2:004.4'22(043.2)

Povzetek:

Distribucija Mirantis OpenStack ponuja nabor orodij in komponent za delo z arhitekturo

oblačnega sistema. Distribucija ponuja implementacijo orodij in vtičnikov na platformi

OpenStack. Oblak, sestavljen je iz več samostojnih komponent. Sahara ponuja uporabniku

preprost način za obdelavo podatkov v OpenStack okolju, zaradi enostavnega razširjanja,

dodajanja in upravljanja najdemo veliko število samostojnih komponent. OpenStack

platformo lahko razširimo s komponentami, ki so opcijsko na voljo. Fuelov uporabniški

vmesnik, nam nudi podporo pri upravljanju z OpenStack platformo, vgrajen REST API ter

vtičniki izboljšujejo kakovost distribucije. OpenStack ponuja ogromno možnosti za različne

nastavitve, Mirantis OpenStack pa doda elastičnost komponent, ki zaradi medsebojnega

povezovanja pomagajo končnemu uporabniku pri upravljanju.

Page 6: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

iv

Izgradnja projekta Sahara v okolju Mirantis

8.0

Key words: Cloud Computing, OpenStack, Mirantis, Sahara

UDK 004.2:004.4'22(043.2)

Abstract:

Distribution, Mirantis OpenStack offers a set of tools and components for working with the

architecture of the cloud system. Distribution offers implementation tools and plug-ins on

the platform of OpenStack. Cloud, it consists of several independent components. Sahara

offers the user a simple method for data processing in OpenStack environment, due to its

easy dissemination, adding and managing are found a large number of independent

components. OpenStack the platform can be expanded with components that are

optionally available. Fuel user interface, us provides support in the management of the

OpenStack platform, built-in REST API and plug-ins improve the quality of distribution.

OpenStack offers tremendous options for a variety of settings, Mirantis OpenStack,

however, added to the elasticity of the components, which, due to the mutual integration

to help the end user in the management.

Page 7: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

v

Zahvaljujem se mentorju dr. Bojanu Novaku za

pomoč in vodenje pri opravljanju diplomskega dela.

Posebna zahvala gre staršem, ki so mi omogočili

študij, ter me podpirali tekom študija kakor tudi za

njihovo potrpežljivost ter podporo med izdelavo

diplomske naloge.

Page 8: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

vi

Kazalo vsebine

1 UVOD ........................................................................................................................................ 1

2 RAČUNALNIŠTVO V OBLAKU ........................................................................................... 2

2.1 Definicija ........................................................................................................................................ 2

2.1.1 Javni oblak ........................................................................................................................................ 3

2.1.2 Zasebni oblak ................................................................................................................................... 3

2.1.3 Hibridni oblak ................................................................................................................................... 3

2.1.4 Skupinski oblak ali oblak skupnosti .................................................................................................. 4

2.2 5 Temeljnih značilnosti računalništva v oblaku ............................................................................... 4

2.2.1 »Samopostrežba na zahtevo« .......................................................................................................... 4

2.2.2 Širok mrežni dostop ......................................................................................................................... 4

2.2.3 Združevanje sredstev ....................................................................................................................... 4

2.2.4 Visoka elastičnost ............................................................................................................................. 5

2.2.5 Plačilo na osnovi uporabe ................................................................................................................ 5

2.3 Ponudniki ....................................................................................................................................... 5

2.4 Predstavitveni modeli oblačnih storitev ......................................................................................... 6

2.4.1 Infrastruktura kot storitev (IaaS)...................................................................................................... 6

2.4.2 Platforma kot storitev (PaaS) ........................................................................................................... 7

2.4.3 Programska oprema kot storitev (SaaS) .......................................................................................... 8

2.4.4 Primerjava predstavitvenih modelov ............................................................................................... 9

3 OPENSTACK ........................................................................................................................ 11

3.1 Zgodovina .................................................................................................................................... 11

3.2 Arhitektura ................................................................................................................................... 13

3.3 Fuel .............................................................................................................................................. 13

3.4 Glavne komponente ..................................................................................................................... 16

Page 9: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

vii

3.4.1 OpenStack Compute (Nova) ........................................................................................................... 16

3.4.2 Block Storage (Cinder).................................................................................................................... 17

3.4.3 OpenStack Networking (Neutron) ................................................................................................. 17

3.4.4 Identity Storitev (Keystone) ........................................................................................................... 18

3.4.5 Image storitev (Glance) .................................................................................................................. 19

3.4.6 Object Storage (Swift) .................................................................................................................... 20

3.4.7 HORIZON –Dashboard .................................................................................................................... 21

3.4.8 CEILOMETER –Telemetry ............................................................................................................... 21

3.5 Izbirne storitve ............................................................................................................................. 22

3.5.1 HEAT-Orchestration ....................................................................................................................... 23

3.5.2 TROVE-Database ............................................................................................................................ 24

3.5.3 SAHARA -Elastic Map Reduce ........................................................................................................ 24

3.5.4 IRONIC-Bare-Metal Provisioning .................................................................................................... 24

3.5.5 ZAQAR – Storitev sporočanja ......................................................................................................... 25

3.5.6 MANILA -Shared Filesystems ......................................................................................................... 26

.................................................................................................................................................................... 27

3.5.7 DESIGNATE -DNS Storitev .............................................................................................................. 27

3.5.8 BARBICAN -Key Management ........................................................................................................ 28

3.5.9 MAGNUM –Containers .................................................................................................................. 28

3.5.10 MURANO -Application Catalog .................................................................................................. 29

3.5.11 CONGRESS –Governance ........................................................................................................... 29

4 SAHARA ................................................................................................................................ 30

4.1 Definicija ...................................................................................................................................... 30

4.2 Zgradba Sahare po komponentah: ............................................................................................... 31

4.3 Delovanje ..................................................................................................................................... 32

4.3.1 Delovni tok Sahara ogrodja (Slika 4.2) ........................................................................................... 32

4.4 Glavne značilnosti: ....................................................................................................................... 33

4.5 Predloge ....................................................................................................................................... 33

4.5.1 Urejanje predloga skupine vozlišč.................................................................................................. 34

4.5.2 Urejanje predloge gruče ................................................................................................................ 35

4.6 Podpora z drugimi OpenStack storitvam: ..................................................................................... 36

Page 10: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

viii

4.7 Funkcije projekta Sahara .............................................................................................................. 37

4.7.1 Blokovna hramba ........................................................................................................................... 37

4.7.2 Prilagoditev gruče .......................................................................................................................... 37

4.7.3 Lokalnost podatkov ........................................................................................................................ 37

4.7.4 Porazdeljen način ........................................................................................................................... 38

4.7.5 Hadoop HDFS razpoložljivost ......................................................................................................... 38

4.7.6 Omrežna podpora .......................................................................................................................... 38

4.7.7 Sistem za skupno rabo datotek ...................................................................................................... 39

4.7.8 Orkestracijska podpora – Heat ...................................................................................................... 39

4.7.9 Možnost vključitve vtičnikov .......................................................................................................... 40

4.7.10 Upravljanje varnostnih skupin ................................................................................................... 40

4.7.11 Pomoč pri deljenju in zaščiti virov ............................................................................................. 41

4.8 Integracija z Swift ......................................................................................................................... 41

4.9 Vtičniki ......................................................................................................................................... 41

4.9.1 Vanilla vtičnik ................................................................................................................................. 41

4.9.2 Ambari vtičnik ................................................................................................................................ 42

4.9.3 Spark vtičnik ................................................................................................................................... 42

4.9.4 MapR Distribution vtičnik .............................................................................................................. 42

4.9.5 Cloudera vtičnik ............................................................................................................................. 42

4.10 Elastic Data Processing (EDP)........................................................................................................ 43

4.11 Sahara REST API ........................................................................................................................... 44

4.12 Kreiranja nove gruče .................................................................................................................... 45

5 MIRANTIS ............................................................................................................................ 46

5.1 Definicija ...................................................................................................................................... 46

5.2 Zgradba ........................................................................................................................................ 47

5.2.1 Compute – Nova ............................................................................................................................ 47

5.2.2 Storage –Cinder ............................................................................................................................. 47

5.2.3 Networking - Neutron .................................................................................................................... 48

5.3 Izvedba testov .............................................................................................................................. 48

5.3.1 Testi funkcionalnosti ...................................................................................................................... 49

Page 11: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

ix

6 NAMESTITEV MIRANTIS SAHARA PROJEKTA V OKOLJE OPENSTACK .......... 51

7 SKLEP .................................................................................................................................... 72

8 VIRI ........................................................................................................................................ 73

Kazalo slik

Slika 2.1 Diagram oblačnega računalništva ...................................................................................................... 2

Slika 2.2 Modeli oblačnih storitev ...................................................................................................................... 6

Slika 2.3 Primerjava abstrakcije in upravljanje z viri ....................................................................................... 10

Slika 3.1 OpenStack programska infrastruktura .............................................................................................. 13

Slika 3.2 Fuel arhitektura ................................................................................................................................ 14

Slika 3.3 OpenStack glavne komponente......................................................................................................... 16

Slika 3.4 Nova arhitektura ............................................................................................................................... 16

Slika 3.5 Cinder arhitekturna zgradba ............................................................................................................. 17

Slika 3.6 Neutron omrežna arhitektura ........................................................................................................... 18

Slika 3.7 OpenStack Keystone arhitektura ....................................................................................................... 19

Slika 3.8 Glance arhitektura ............................................................................................................................ 20

Slika 3.9 Swift nivojska arhitektura ................................................................................................................. 21

Slika 3.10 OpenStack izbirne storitve .............................................................................................................. 22

Slika 3.11 Heat arhitektura .............................................................................................................................. 23

Slika 3.12 Throve arhitektura .......................................................................................................................... 24

Slika 3.13 Ironic arhitektura ............................................................................................................................ 25

Slika 3.14 Zaqar arhitektura ............................................................................................................................ 26

Slika 3.15 Manila arhitektura .......................................................................................................................... 27

Slika 3.16 Designate arhitektura ..................................................................................................................... 27

Slika 3.17 Barbican komponenta ..................................................................................................................... 28

Slika 3.18 Magnum delovni tok ....................................................................................................................... 29

Slika 4.1 Sahara komponente .......................................................................................................................... 31

Slika 4.2 Delovni tok Sahara ............................................................................................................................ 33

Slika 4.3 Tok uporabe predlog ......................................................................................................................... 34

Slika 4.4 Delovni tok predloge vozlišč .............................................................................................................. 35

Slika 4.5 Delovni tok predloge gruče ............................................................................................................... 35

Slika 4.6 sodelovanje z drugimi komponentami .............................................................................................. 36

Slika 4.7 Cloudera tok delovnega procesa ....................................................................................................... 43

Slika 4.8 EDP delovni tok ................................................................................................................................. 44

Page 12: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

x

Slika 4.9 koraki kreiranje nove gruče ............................................................................................................... 45

Slika 5.1 Mirantis arhitektura .......................................................................................................................... 47

Slika 5.2 Cinder arhitektura ............................................................................................................................. 48

Slika 5.3 testiranje funkcionalnosti okolja 1.del .............................................................................................. 49

Slika 5.4 testiranje funkcionalnosti okolja 2.dels ............................................................................................. 50

Slika 6.1 Fuel prijava ........................................................................................................................................ 51

Slika 6.2 vnos imena ter izbira OpenStack različice ......................................................................................... 52

Slika 6.3 izbira nastavitev Compute ................................................................................................................. 52

Slika 6.4 izbera omrežnih nastavitev ............................................................................................................... 53

Slika 6.5 nastavitev hrambe objektov .............................................................................................................. 53

Slika 6.6 Izbira dodatnih storitev ..................................................................................................................... 54

Slika 6.7 Prijava v nadzorno ploščo Horizon .................................................................................................... 55

Slika 6.8 Horizon nadzorna plošča ................................................................................................................... 56

Slika 6.9 Kreiranje slike .................................................................................................................................... 57

Slika 6.10 Omrežna struktura .......................................................................................................................... 58

Slika 6.11 Registracija slike .............................................................................................................................. 59

Slika 6.12 Ustvarjanje predloge glavnega vozlišča 1. korak ............................................................................ 60

Slika 6.13 Ustvarjanje predloge glavnega vozlišča 2. korak ........................................................................... 60

Slika 6.14 Ustvarjanje predloge glavnega vozlišča 3. korak ............................................................................ 61

Slika 6.15 Ustvarjanje predloge glavnega vozlišča 4. korak ............................................................................ 61

Slika 6.16 Ustvarjanje predloge podrejenega vozlišča 1. korak ....................................................................... 62

Slika 6.17 Ustvarjanje predloge podrejenega vozlišča 2. korak ....................................................................... 63

Slika 6.18 Ustvarjanje predloge podrejenega vozlišča 3. korak ....................................................................... 64

Slika 6.19 Ustvarjanje predloge podrejenega vozlišča 4. korak ....................................................................... 64

Slika 6.20 Kreiranje predloge gruče 1. korak ................................................................................................... 65

Slika 6.21 Kreiranje predloge gruče 2. korak ................................................................................................... 66

Slika 6.22 Kreiranje predloge gruče 3.korak .................................................................................................... 67

Slika 6.23 Kreiranje predloge gruče 4. korak ................................................................................................... 68

Slika 6.24 Kreiranje predloge gruče 5. korak ................................................................................................... 68

Slika 6.25 Kreiranje predloge gruče 6. korak ................................................................................................... 69

Slika 6.26 Zagon gruče 1. korak ....................................................................................................................... 69

Slika 6.27 Zagon gruče 2. korak ....................................................................................................................... 70

Slika 6.28 Seznam ustvarjenih (zagnanih) primerkov ...................................................................................... 71

Slika 6.29 Možnosti izgrajenih primerkov ........................................................................................................ 71

Page 13: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

xi

Kazalo tabel

Tabela 3.1 Verzije in izdaje OpenStack ............................................................................................................ 12

Tabela 4.1 Kompatibilnost komponent z vtičniki ............................................................................................. 40

Page 14: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

xii

Seznam uporabljenih kratic:

IaaS – Infrastruktura kot storitev,

PaaS – Platforma kot storitev,

SaaS – Programska oprema kot storitev,

AMD - Advanced Micro Devices

IBM - International Business Machines Corporation

IT – Informacijske tehnologije

NASA - National Aeronautics and Space Administration

HA – visoka razpoložljivost

I/O – Vhodno-e / izhodo-e

DaaS – Shramba kot storitev

VLAN - logična razpršitvena domena

IP - Internet Protocol – Internetni protokol

SSH - Secure Shell

EDP – prilagodljivo procesiranje pdoatkov

REST - representational state transfer

API- apliaktivni programski vmesnik

HDSF- Hadoop Swift filesystem

SQL- strukturirani povpraševalni jezik

DNS- Domain Name System

Page 15: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

1

1 UVOD

Računalništvo v oblaku je storitev, ki v zadnjem času beleži visoko rast uporabe v javne in

zasebne namene. Je evolucija tehnologij virtualizacije in storitveno naravnane arhitekture

ter računalništva na zahtevo, kar je sprožilo gradnjo javnih in zasebnih oblakov na različnih

platformah.

Računalništva v oblaku ne moremo opisati kot le eno tehnologijo, saj je sestavljena iz

skupka tehnologij, principov ter storitev. V grobem ga lahko delimo na tri poslovne modele:

IaaS (Infrastructureas a Service), PaaS (Platform as a Service), Saa (Softwareas a Service)

ter na tri modele nameščanja: oblak skupnosti, javni oblak in hibridni oblak.

Osnovne značilnosti oblaka so: merljivost storitve, deljenje virov, samopostrežnost na

daljavo, širokopasovni dostop do interneta ter visoka prilagodljivost (na programskem in

strojnem nivoju). Temelji na deljenih virih, programski opremi – shemi ter podatkih. Med

največjimi ponudniki storitev v oblaku najdemo Google, Microsoft, Amazon, IBM, HP, …

OpenStack je programska shema za oblikovanje javnih in zasebnih oblakov, ki je obenem

še odprtokodna in jo podpira vedno več podjetij širom sveta, med njimi pa je tudi nekaj

vodilnih, kot so: Intel, AMD, VMware, HP, IBM. Mirantis verzije 8.0 (kot ponudnik integracije

OpenStack okolja) je s projektom Sahara omogočil delo z Hadoop distribucijo in

prilagodljivo delo s podatki (podobno kot Amazon Elastic MapReduce za upravljanje

predlog, ki se pojavijo ob postavitvi vozlišč oziroma instanc

Page 16: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

2

2 RAČUNALNIŠTVO V OBLAKU

2.1 Definicija

Enotne definicije računalništva v oblaku ni mogoče najti. Izraz »oblak« se večinoma

uporablja kot metafora za internet, medmrežje.

»Računalništvo« je tako rekoč veda o računalnikih in o njihovi uporabi (slovar, b.l.). Na

spletu lahko najdemo različne definicije oziroma opredelitve računalništva v oblaku.

Računalništvo v oblaku (Slika 2.1) »slog, pri katerem so dinamično razširljiva in pogosto

virtualizirana računalniška sredstva na voljo kot storitev preko interneta« in kjer so masovno

razširljive IT zmogljivosti dostavljene zunanjim odjemalcem kot storitev, z uporabo

internetnih tehnologij. Združuje nabor disciplin, tehnologij in poslovnih modelov za prikaz IT

virov z pristopom deljenja bazena nastavljivih deljivih virov (npr. omrežij, strežnikov,

podatkovne hrambe, aplikacij ali storitev), ki so lahko hitro dodeljeni in dani na uporabo z

minimalnim potrebnim posegom s strani ponudnika storitev. [28]

(Vir:https://upload.wikimedia.org/wikipedia/commons/thumb/b/b5/Cloud_computing.svg/35

0px-Cloud_computing.svg.png, dostopno 17.8.2016)Vrste namestitve oblaka

Slika 2.1 Diagram oblačnega računalništva

Page 17: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

3

2.1.1 Javni oblak

Predstavlja najbolj standarden model računalništva v oblaku. Razne internetne storitve, ki

so na voljo vsem uporabnikom, so postale sestavni del poslovanja določenih ponudnikov,

uporabniki pa se pri tem ne zavedajo, da uporabljajo storitve v računalniškem oblaku.

Javni oblak uporabniku zaradi varnosti zaupnih podatkov ne nudi nadzora nad viri v oblaku,

zmogljivostjo omrežja in nad interoperabilnostjo. Javni oblak, ki se sicer nahaja na lokaciji

ponudnika, je tako lahko v lasti administratorja, s katerim upravlja podjetje, lahko pa je v

akademski lasti ali v lasti vladne organizacije. [28]

2.1.2 Zasebni oblak

Zmanjšuje tveganja, ki se pojavijo pri javnem oblaku. Uporabnik si lasti vso opremo oblaka,

ima nadzor nad informacijami in je odgovoren za varnost vseh podatkov. Informacijski viri

se zbirajo in združujejo, da so uporabniku na voljo podobne zmogljivosti, kot so v javnem

oblaku.

Upravljanje zasebnega oblaka in vzpostavitev pa zahteva določeno znanje o strojni in

programski opremi, virtualizaciji in omrežjih. Zasebni oblak pa lahko upravlja tako

organizacija kot tudi neka tretja oseba ali pa gre za kombinacijo naštetega, zaradi česar je

tudi njegova fizična lokacija enaka lokaciji organizacije ali kateri drugi lokaciji. [28]

2.1.3 Hibridni oblak

Ta oblak je kombinacija javnega in zasebnega oblaka. Zunanje vire priskrbi tisti, ki je

ponudnik določene storitve v oblaku, notranji viri pa ostanejo pod nadzorom uporabnika.

Na takšen način lahko podjetja rešujejo zadeve, ki zadevajo predvsem varnost, hkrati pa

izkoriščajo nekatere prednosti javnega oblaka. [28]

Page 18: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

4

2.1.4 Skupinski oblak ali oblak skupnosti

Je dan v uporabo posebni skupini uporabnikov iz določene organizacije, ki imajo nek skupni

interes, torej skupne cilje, probleme ali naloge (npr. varnostne zahteve, politika, itd.). Ta

oblak se lahko nahaja na lokaciji ene ali več organizacij ali pa na neki oddaljeni lokaciji (npr.

upravne enote celotne Slovenije). [28]

2.2 5 Temeljnih značilnosti računalništva v oblaku

2.2.1 »Samopostrežba na zahtevo«

Kadar uporabnik sklene pogodbo s ponudnikom ter dobi v zakup in v uporabo del njihove

arhitekture, to pomeni, da uporablja strojno opremo gostitelja ter njihovo ali lastno

aplikativno opremo za izvajanje aktivnosti v oblaku. Uporabnik si deli procesorski čas,

omrežno arhitekturo in hitrost ter pomnilnik, ki jih lahko kadarkoli razširi, tj. najame več

strojne moči. [3]

2.2.2 Širok mrežni dostop

Delo na oblaku si je nemogoče predstavljati brez omrežnega dostopa, ki pa mora biti hiter

in širok, saj vsa komunikacija in delo potekata preko nadzorovane mreže, z odjemalci in

aplikacijami preko spleta ter preko različnih vtičnikov. Odjemalcev je lahko več in več tipov

(odvisno od našega namena in arhitekture). [3]

2.2.3 Združevanje sredstev

V oblaku si več različnih uporabnikov lahko deli delovno moč in vire. Do pred kratkim je to

veljalo za ločeno, saj je imel vsak svoj ločen del opreme. S tem je ponudnik storitev pridobil

večji nadzor nad sistemom in njegovim delovanjem (lažje posodabljanje, odkrivanje napak

ter njihovo odpravljanje na enem mestu). [3]

Page 19: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

5

2.2.4 Visoka elastičnost

Storitev se lahko uporabniku prilagaja bodisi z zakupom dela opreme bodisi z zmanjšanjem

trenutne kapacitete glede na potrebe delovanja. Prej je veljalo, da si moral dokupiti strojne

kapacitete, postaviti platformo ter nato nadaljevati z delom, zdaj pa se to uredi z nekaj kliki

in v bistveno krajšem času. Pri vsem tem so najbolj pomembni manjši stroški nakupa, saj

arhitekturo ter aplikacije najamemo za čas uporabe in arhitekturo omejimo/reduciramo ali

odjavimo, ko je več ne potrebujemo. [3]

2.2.5 Plačilo na osnovi uporabe

Vrednotenje porabe in obračunavanje se v oblačnem sistemu meri avtomatično s pomočjo

telemetrije in avtomatičnih sistemov za nadzor in optimizacijo virov, ki jih uporabljamo.

Porabo in delovanje lahko spremljamo v realnem času, pri čemer sledimo morebitnim

potrebam po večjih kapacitetah, zmogljivosti ali nadgradnji virov in slednje glede na te

potrebe tudi razporejamo. [3]

2.3 Ponudniki

Trenutno se na trgu nahaja veliko število ponudnikov (Slika 2.2) oblačnih storitev in še

večji je boj za njihovo prevlado na trgu najbolj prepoznavni trenutno so:

Amazon,

Google,

Microsoft,

IBM,

HP,

AWS,

Azure,

CloudSigma,

Page 20: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

6

2.4 Predstavitveni modeli oblačnih storitev

Poznamo 3 predstavitvene modele (Slika 2.2) storitev v oblaku, in sicer IaaS, PaaS, ter

SaaS.

(Vir:http://pbxl.co.jp/en/saas-paas-iaas, 17.8.2016)

2.4.1 Infrastruktura kot storitev (IaaS)

Uporabnik dobi dostop do temeljnih računalniških zmogljivosti, kot so procesor, pomnilnik,

prenos podatkov, prostora na disku, itd. S pomočjo slednjih uporabnik na infrastrukturo

samodejno postavlja programsko opremo, ki jo potrebuje. V to lahko vključi tako operacijski

sistem kot tudi različne aplikacije. Kljub vsemu uporabnik še nima popolnega nadzora nad

zaledno infrastrukturo, ima pa popoln nadzor nad operacijskim sistemom, aplikacijami, ki

jih je namestil, in nad razporejanjem podatkovne hrambe. Nad mrežnimi kapacitetami ima

uporabnik le delni nadzor (npr. Amazon Web Services).[29]

Slika 2.2 Modeli oblačnih storitev

Page 21: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

7

Najbolj razširjene IaaS platforme so:

Amazon AWS

OpenStack

OpenNebula

Eucalyptus

VMware vCloud

Microsoft Hypre-V Cloud

Apache VCL

Nimbus

Xen Cloud Platform

OpenQRM

RedHat CloudForms

IBM SmartCloud

Oracle IaaS

2.4.2 Platforma kot storitev (PaaS)

Uporabniku omogoča, da so zmogljivosti na voljo tako, da lahko na ponujeni platformi

omogoči uporabljanje svojih lastnih storitev v oblaku. Uporabnik ustvari lastno rešitev z

uporabo programskih jezikov, orodij, itd., ki jih podpira ponudnik, in jih nato da v uporabo v

oblak. Tudi tu uporabnik ne upravlja z zaledno infrastrukturo, ima pa nadzor nad aplikacijami

in delni nadzor nad omrežno infrastrukturo (npr. požarni zid). Primer take plarforme je

Google App Engine. [29]

Page 22: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

8

Najbolj razširjeni ponudniki PaaS platform:

Amazon Elastic Beanstalk

RedHat OpenShift

Google App Engine

Windows Azure

IBM SmartCloud

Oracle PaaS

Vmware vFabric / Cloud Foundry

Force.com

CloudBees

AppScale

2.4.3 Programska oprema kot storitev (SaaS)

Programska storitev uporabniku ponuja vire, ki tečejo na oblačni infrastrukturi. Preko

različnih odjemalskih naprav, kot so npr. odjemalci (internetni brskalniki) ali namenski

programski vmesniki, lahko dostopamo do aplikacij. Uporabnik ne upravlja z zaledno

oblačno infrastrukturo kot tudi ne z aplikacijami. Obstajajo sicer izjeme, kjer uporabnik s

posebnimi uporabniškimi nastavitvami dostopa do možnosti, ki so mu dovoljena oziroma,

ki mu jih ponuja programska storitev. Prednosti te platforme so bogati vmesniki, brezplačna

uporaba ali uporaba z plačilom in dostop preko medmrežja. Slabost je v nezmožnosti

prilagajanja po meri in malo funkcij. Ena od takih programskih oprem je denimo Gmail

(Google). [29]

Page 23: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

9

Najbolj razširjene SaaS storitve so:

Google Gmail,

Yahoo! Mail,

Hotmail,

Facebook,

Twitter,

LinkedIn ,

Salesforce CRM,

Oracle CRM on Demand ,

IBM WebSphere Online,

Oracle Fusion Application Storitevs ,

Google Documents,

Microsoft Office 365,

SpringCM,

Microsoft SharePoint Online

2.4.4 Primerjava predstavitvenih modelov

Vsak namestitveni model (Slika 2.4) ima svoj nivo abstrakcije, ki je prepuščena končnemu

uporabniku. Pri namestitvenih modelih ima uporabnik največjo izbiro in možnost

prilagoditve, če najame le infrastrukturo, saj platformo kakor tudi programsko opremo

določa sam. Pri najeti platformi ponudnik storitve zagotavlja in vzdržuje tako infrastrukturo

kot tudi platformo. Kadar govorimo o programski opremi kot storitvi, pa je zakupljena

arhitektura pripravljena na uporabo z že nameščenimi aplikacijami, saj za vse poskrbi

ponudnik storitve s svojimi komponentami ter infrastrukturo.

Page 24: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

10

Slika 2.3 Primerjava abstrakcije in upravljanje z viri

(Vir: https://blogs.technet.microsoft.com/kevinremde/2011/04/03/saas-paas-and-iaas-oh-

my-cloudy-april-part-3/, dostopno 16.8.2016)

Page 25: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

11

3 OPENSTACK

3.1 Zgodovina

Začetki OpenStacka so se pričeli Julija 2010, ko sta NASA in RockSpace Hosting najavila

idejo o sistemu za pomoč organizacijam pri ponujanju njihovih oblačnih storitvenih

produktov na strojni opremi.

Prva verzija (Tabela 3.1) OpenStack se je skrivala pod kodnim imenom Austin, ki so jo izdali

oktobra leta 2010. Septembra 2011 so izdelali uporabi namenjen model pod kodnim

imenom "Diablo", ki je vseboval naslednje komponente: Nova, Glance in Swift v takratni

verziji. Septembra 2012 so ustanovili OpenStack fundacijo, aprila 2013 pa sta se pojavili

dve veliki novosti, in sicer Ceilometer ter Heat.

Procesiranje podatkov s Saharo se je pričelo oktobra 2014 z različico Juno. Trenutno zadnja

verzija se imenuje »Mitaka«. Prišlo je do nekaj sprememb poimenovanja komponent.

Projekt Quantum se sedaj imenuje Neutron, medtem ko je Sahara bila včasih poimenovana

Savanna, Designate je bil prej Moniker, Zaqar pa Marconi.[30]

Page 26: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

12

Tabela 3.1 Verzije in izdaje OpenStack

Verzija Datum izdaje

Ocata TBD

Newton 2016-10-06

Mitaka 7.04.2016

Liberty 15.10.2015

Kilo 30.04.2015

Juno 16.10.2014

Icehouse 17.04.2014

Havana 17.10.2013

Grizzly 4.04.2013

Folsom 27.09.2012

Essex 5.04.2012

Diablo 22.09.2011

Cactus 15.04.2011

Bexar 3.02.2011

Austin 21.10.2010

Med večje in razširjene OpenStack distribucije štejemo:

Bright Computing

Canonical

HP

IBM

Mirantis

Oracle OpenStack for Oracle Linux, ali O3L

Oracle OpenStack for Oracle Solaris

Platform9 Managed OpenStack

Red Hat

SUSE

VMware Integrated OpenStack (VIO)

Page 27: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

13

3.2 Arhitektura

OpenStack je sestavljen iz več manjših komponent za delo z oblakom, ki omogočajo

popolno upravljanje sistemov z infrastrukturo (Slika 3.1), tj. modelom IaaS. Ta ima za vsako

komponento vtičnik za I/O operacije in za pretok podatkov med komponentami. Vsi vtičniki

znajo komunicirati in sodelovati med seboj, obstaja pa možnost lastne izdelave, ki mora biti

kompatibilna z ostalimi OpenStack vtičniki platforme. [7]

Slika 3.1 OpenStack programska infrastruktura

(Vir: https://www.openstack.org/software,)dostopno 13.8.2016

3.3 Fuel

Je odprtokodno orodje za upravljanje in postavitev OpenStack platforme. Razvit je bil s

prizadevanjem širše skupnosti zagotoviti intuitiven grafični vmesnik za izgradnjo ter

upravljanje in postavitev projektov, ki imajo široko podporo skupnosti ter vtičnikov za

enostavno povezovanje z drugimi komponentami. Zagotavlja racionalizacijo postavitve ter

odpravo kompleksnih napak, ki se dogajajo med procesom izgradnje, testiranja in

vzdrževanja po vzpostavljenem projektu. Predstavlja vodilni projekt (Slika 3.2) OpenStack

platforme, saj stremi k avtomatizaciji procesa postavitve in testiranja, obenem pa ponuja

veliko drugih možnosti za povezovanje z drugimi zunanjimi ogrodji in aplikacijami. [13]

Page 28: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

14

Glavne značilnosti:

odkrivanje strojne opreme,

konfiguracija strojne opreme v vodenem grafičnem vmesniku,

možnost sočasne podpore več gručam,

ponuja podporo za HA ter tudi brez HA konfiguracije,

v ogrodje vgrajena pred postavitvena testiranja ter omrežna preverjanje,

v ogrodje vgrajena po postavitvena testiranja ter vgrajene skupine testov za

testiranje postavljene konfiguracije OpenStack,

pregled dnevnikov v realenm času z pomočjo grafičnega vmesnika,

podpora mnogim UNIX distribucija,

podpora mnogim OpenStack distribucijam.

(Vir: https://wiki.openstack.org/wiki/Fuel,dostopno 11.8.2016)

WEB UI je aplikacija, ki ponuja v programskem jeziku JavaScript razvit uporabniški

vmesnik. Za delovanje uporablja Bootstrap ter njegovo hrbtenično ogrodje.

Slika 3.2 Fuel arhitektura

Page 29: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

15

Nailgun je glavna komponenta Fuel projekta, ki je bila razvita v programskem jeziku python,

v katerega so implementirali REST API vtičnik in upravljanje ter nadzor vzpostavitvenih

podatkov ogrodja. Upravlja velikosti diskovnih kapacitet, omrežne nastavitve in druge

specifične podatke, potrebne za delovanje projekta. Skrbi za pravilno zaporedje izvajanja

vzpostavitvenih delov, uporablja SQL podatkovno zbirko za shranjevanje podatkov ter

AMQP storitev za komunikacijo z gradniki postavitvenega ogrodja. CLI omogoča veliko več

akcij in izvedb, kot nam jih ponuja standardni grafični vmesnik.

Astute je komponenta, ki izvršuje akcije, posredovane od glavne komponente projekta.

Sestavlja jo več plasti, ki enkapsulira akcije in ponuja asinhron vmesnik drugim storitvam,

kot so Cobbler, Puppet in Shell skriptne datoteke.

Cobbler se uporablja kot rezervacijska storitev.

Puppet je namestitvena storitev, ki ima možnost kreiranja Mcollertive instanc za upravljanje

konfiguracij drugih ogrodij, kot so Chef, SaltStack in drugi.

Mcollective nam omogoča izvajanje posebnih akcij, kot so čiščenje trdega diska, testiranje

omrežne povezljivosti.

OSTF omogoča hitro in enostavno preverjanje izvedbe izgradnje postavitve in odkrivanje

napak.

Fuel arhitektura (Slika 3.2) sestavljata dve vozlišči. Pomembnejše oziroma vodilno je Fuel

Master vozlišče, sestavljenega iz strežnika in nameščenih Fuel aplikacij. Te izvajajo

konfiguracijo, oskrbovanje ter PXE zagon Slave vozlišč, ki jim določa IP naslov. Fuel Slave

vozlišče je nadzorovano od Fuel Master vozlišča, Slave vozlišče lahko predstavlja

controller, compute, ali storage vozlišče.[14]

Page 30: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

16

3.4 Glavne komponente

Openstack glavne komponente (Slika 3.3) so:Compute, Block Storage, Networking, Image

Service, Object Storage ter Idetity Service

Slika 3.3 OpenStack glavne komponente

(Vir:http://docs.openstack.org/security-guide/introduction/introduction-to-

openstack.html,dostopno 6.8.2016)

3.4.1 OpenStack Compute (Nova)

Komponenta, ki omogoča uporabniku avtomatizacijo pri upravljanju in ustvarjanju virtualnih

strežnikov z uporabo slik naprav (»machine images«). Nova arhitektura (Slika 3.4) in njeno

delovanje pa predstavlja jedro oziroma glavni del oblaka za delovanje in upravljanje z

velikim številom skupin navideznih strojev. [21]

Slika 3.4 Nova arhitektura

(Vir: http://docs.openstack.org/developer/nova/architecture.html,dostopno 16.8.2016 )

Page 31: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

17

3.4.2 Block Storage (Cinder)

Komponenta nudi blokovno shranjevanje vzpostavljenim instancam navideznih strojev,

fleksibilnost arhitekture (Slika 3.5) pa omogoča enostavno ustvarjanje novih in upravljanje

obstoječih blokov. [2] Za razliko od komponente Swift nam Cinder dovoljuje upravljanje

hrambe. Glavna prednost komponente je integracija s standardnimi sistemi za shranjevanje

podatkov

Slika 3.5 Cinder arhitekturna zgradba

(Vir: http://www.slideshare.net/mirantis/openstack-architecture-43160012, dostopno

13.8.2016)

3.4.3 OpenStack Networking (Neutron)

Je vtičniško prilagodljiv in izdelan sistem za upravljanje omrežnih mrež virtualnih sistemov

za upravljanje VLAN omrežij, IP naslovov ter požarnih zidov komponent, ki uporabljajo

Neutron omrežno arhitekturo (Slika 3.6). [2]

Page 32: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

18

Slika 3.6 Neutron omrežna arhitektura

(Vir:http://docs.openstack.org/security-guide/networking/architecture.html,dostopno

13.8.2016)

3.4.4 Identity Storitev (Keystone)

Keystone arhitektura (Slika 3.7) mogoča platformi centralni imenik uporabnikov, vključenih

v storitve OpenStack, ter se uporablja za zagotavljanje storitev za preverjanje pristnosti in

odobritev drugim storitvam. Keystone integrira LDAP, da zagotavlja centralni direktorij

uporabnikov in omogoča administratorju nastavljanje pravil in politik, ki nadzirajo vire

uporabnikov. [2]

Page 33: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

19

Slika 3.7 OpenStack Keystone arhitektura

(Vir: http://ken.pepple.info/openstack/2012/09/25/openstack-folsom-architecture/,dostopno

20.8.2016)

3.4.5 Image storitev (Glance)

Je arhitektura (Slika 3.8) tipa odjemalec-strežnik, ki za končnega uporabnika zagotavlja

REST API, preko katere pošlje strežniku zahtevo za izvedbo akcije. Domain Controller

upravlja notranje v več plasti deljene strežniške operacije, vsaka od teh pa je

implementirana na določenem nivoju. Vse datotečne operacije so izvedene z uporabo

knjižnice glance_Story, ki je hkrati odgovorna za komunikacijo z zunanjo hrambo ali z

lokalnim datotečnim sistemom in nudi vmesnik za dostop do hrambe. Uporablja centralno

podatkovno zbirko, ki je dodeljena vsem ostalim komponentam v sistemu in je grajena na

osnovi sql podatkovne zbirke. Podpira tudi druge vrste podatkovnih zbirk, vendar te niso

priporočene za stabilno delovanje. [2]

Page 34: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

20

Slika 3.8 Glance arhitektura

(Vir: http://docs.openstack.org/developer/glance/architecture.html,dostopno 16.8.2016)

3.4.6 Object Storage (Swift)

Je standard objektnega shranjevanja podatkov na različnih nivojih (Slika 3.9) v Openstack

okolju, rezultat storitve pa je Hadoop na OpenStack platformi za obdelavo podatkov točno

tam, kjer so ti shranjeni.

Obstaja kar nekaj izboljšav, ki nam lahko pomagajo pri delu s podatki. Integraciji Swift in

Hadoop sta pomembni za nadaljnje delo in povezovanje storitev. Ključ integracije je bila

implementacija Hadoop Swift datotečnega sistema na platformo, kasneje je bila

implementacija združena v izvajanje projekta Hadoop, Sahara nenehno vzdržuje različice

Page 35: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

21

z najnovejšimi funkcijami in nadgradnjami, ki so trenutno na razpolago v OpenStack okolju.

[2]

(Vir: http://www.slideshare.net/servers-com/openstack-swift-tailored-for-highload-duties

,dostopno 13.8.2016)

3.4.7 HORIZON –Dashboard

Uporabniku ponuja, portal za nadzor nad storitvami in delovanjem ter konfiguracijo nad

OpenStack komponentami, zgrajen je kot spletni vmesnik in zelo pregleden ter enostaven

za uporabo in delo. Spletni grafični vmesnik daje možnost lažje predstavitve in upravljanja

avtomatiziranih storitev. [2]

3.4.8 CEILOMETER –Telemetry

Storitev spremlja in meri vire oblaka, ki so na voljo, ter predvsem, koliko se jih uporablja za

namen zaračunavanja storitev, analize in primerjave ter za statistične namene pregleda

delovanja in učinkovitosti virov. [2]

Slika 3.9 Swift nivojska arhitektura

Page 36: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

22

3.5 Izbirne storitve

Izbirne storitve OpenStack predstavlja diagram komponent (Slika 3.10), ki prikazuje

delovanje okolja.

Slika 3.10 OpenStack izbirne storitve

(Vir:http://docs.openstack.org/juno/install-guide/install/apt/content/ch_overview.html,dostopno

16.8.2016)

Page 37: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

23

Izbirne storitve v okolju so:

Heat,

Horizon,

Neutron,

Cinder,

Nova,

Swift,

Glance,

Ceilometer,

Keystone

3.5.1 HEAT-Orchestration

HEAT z svojo arhitekturo (Slika 3.11) nadzoruje več oblačnih komponent z uporabo REST

API vtičnika in vtičnika AWS CloudFormation-compatible Query API. [2]

Slika 3.11 Heat arhitektura

(Vir: https://wiki.openstack.org/wiki/Heat/Vision , dostopno 15.8.2016)

Page 38: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

24

3.5.2 TROVE-Database

Zagotavlja prilagodljivo arhitekturo (Slika 3.12) in zanesljivo oblačno funkcionalnost

DaaS(Database-as-a-Storitev), tj. bazo kot storitev, za relacijske kot tudi za ne-relacijske

baze podatkov. [2]

3.5.3 SAHARA -Elastic Map Reduce

Je spletna storitev/komponenta, ki omogoča enostavno in hitro obdelavo velikih količin

podatkov na stroškovno učinkovit način (le z določanjem nekaj parametrov). EMR v nekaj

minutah izgradi gručo, ki z upravljanjem ustreznih vozlišč na zahtevo uporabnika med

izgraditvijo bodisi z dodajanjem ali odvzemanjem vozlišč. [4]

3.5.4 IRONIC-Bare-Metal Provisioning

Je skupek projektov, ki preko RESTful vtičnika (Slika 3.13) omogočajo oskrbo in z njo

povezane aktivnosti. To pomeni, da lahko stranka uporabi strojno opremo neposredno, na

način da izvaja delovni proces ter z njim nastalo obremenitev na dejanski fizični in ne zgolj

na navidezni napravi, kot je to denimo Hypervizor. [17]

Slika 3.12 Throve arhitektura

(Vir: https://www.mirantis.com/blog/enterprise-openstack-dbaas,dostopno 16.8.2016)

Page 39: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

25

(Vir:http://docs.openstack.org/developer/ironic/deploy/user-guide.html,dostopno,4.8.2016)

3.5.5 ZAQAR – Storitev sporočanja

Gre za arhitekturo (Slika 3.15), ki predstavlja sporočevalno storitev za spletne in mobilne

razvijalce. Je skupek ideje Amazon SQS z dodano semantiko, ki podpira oddajanje

dogodkovnih sporočil. Podpira celoten RESTful API, ki ga lahko razvijalci uporabijo za

pošiljanje sporočila med različnimi komponentami programskih storitev in mobilnih aplikacij

s pomočjo različnih komunikacijskih vzorcev. Za pravilno delovanje vtičnika skrbi okolje za

sporočanje, zgrajeno s poudarkom na varnosti in z možnostjo razširitev, kar je bilo že

upoštevano pri zasnovi projekta.[27]

Slika 3.13 Ironic arhitektura

Page 40: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

26

(Vir: https://wiki.openstack.org/wiki/Zaqar/old-home,dostopno 20.8.2016)

3.5.6 MANILA -Shared Filesystems

Je koncept in vizija vzpostavitve enotnega datotečnega sistema OpenStack storitvam, ki

temelji na Cinder komponenti. Ponuja storitev deljenja datotek deljenim datotečnim

sistemom. Ima modularno arhitekturo (Slika 3.16) in je na voljo kot samostojna komponenta.

Prvič je bila predstavljena v »Juno« izdaji. [18]

Slika 3.14 Zaqar arhitektura

Page 41: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

27

3.5.7 DESIGNATE -DNS Storitev

Je komponenta, ki (Slika 3.17) zagotavlja delovanje DNSaaS storitve v OpenStack okolju.

Ima implementirano integracijo s Keystone za načine avtentikacije. Ponuja ogrodje za

povezavo z izmenjavo obvestil komponent Nova in Neutron, dodano ima tudi podporo za

PowerDNS in Bind9. [12]

Slika 3.15 Manila arhitektura

(Vir: https://solutionizeit.com/tag/openstack/,dostopno 13.8.2016)

Slika 3.16 Designate arhitektura

(Vir: http://blogs.rdoproject.org/6351/dnsaas-with-designate-powerdns-and-nsd4,

dostopno 5.8.2016

Page 42: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

28

3.5.8 BARBICAN -Key Management

Je zasnovan kot REST API komponenta (Slika 3.18) za varno skladiščenje ter nadzor in

zagotavljanje ključev, gesel ter certifikatov, kakor tudi za upravljanje z njimi. Namenjen je

raznim različnim okoljem in oblačnim sistemom. [9]

3.5.9 MAGNUM –Containers

Storitev Magnum je bila razvita s strani OpenStack Containers skupine, ki razvija

orkestracijska ogrodja, kot so Docker Swarm, Kubernetes in Apache Mesos njihovo

delovanje (Slika 3.19). Ta ogrodja predstavljajo najpomembnejša sredstva v platformi. [26]

Slika 3.17 Barbican komponenta

(Vir:http://docs.openstack.org/developer/barbican/contribute/architecture.html,dostopno 16.8.2016)

Page 43: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

29

3.5.10 MURANO -Application Catalog

Projekt predstavlja aplikacijski nabor elementov za platformo OpenStack. Zagotavlja

enostaven vmesnik ter vtičnik, ki omogoča kompozicijo in uporabo kompozitnih okolij na

nivoju aplikativne rabe in aplikativnega življenjskega cikla.

3.5.11 CONGRESS –Governance

Omogoča PaaS (policy as a storitev) za vse storitve v oblaku, da bi lahko zagotovili celotno

upravljanje skladnosti za izgrajene dinamične infrastrukture. [8]

Slika 3.18 Magnum delovni tok

(Vir: https://wiki.openstack.org/wiki/Magnum,dostopno 17.8.2016)

Page 44: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

30

4 SAHARA

4.1 Definicija

Namen Sahare je zagotoviti dinamičen sistem za obdelavo podatkov na skladu ter

zagotavljanje učinkovitega delovanja skladov ter upravljanja z njimi, kakor tudi načrtovanje,

upravljanje in procesiranje podatkov na skladu.

Sahara je eden izmed glavnih komponent OpenStack arhitekture. Razvita je bila s strani

vodilnih pri Apache in OpenStack s sodelovanjem skupnosti Mirantis, Hortonworks in Red

Hat. Ponuja prilagodljivo podatkovno procesiranje (EDP) in ustvarjanje predlog na podlagi

naslednjih atributov[22]:

:

kreiranje in upravljanje gruč

izgradnjo in zagon analitičnih nalog

voden programski grafični vmesnik- spletna konzola

Uporabnik z pomočjo Sahare upravlja le z tremi večjimi entitetami ki so:

Predloge vozliščnih skupin,

predloge gruč

gruče

Vtičniki, ki nam omogočajo predloge:

Cloudera

Spark

Vanilla Apache Hadoop

Page 45: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

31

4.2 Zgradba Sahare po komponentah:

Komponente Sahare (Slika 4.1):

Cluster Configuration Manager – upravlja konfiguracijo gruče

Auth component – skrbi za odjemalčevo avtentikacijo ter avtorizacijo s pomočjo

Identity storitve.

DAL - Data Access Layer – odpravljena navzočnost notranjih modelov podatkovnih

zbirk

VM Provisioning – komponenta, odgovorna za komunikacijo med: OpenStack

Compute (nova), Orchestration-(heat), Block Storage (cinder) in Image (glance)

storitvami

Deployment Engine

REST API – razširja funkcionalne lastnosti projekta preko REST http vmesnika

Python Sahara Client – projektu lasten python odjemalec

Sahara pages – zagotavlja grafični vmesnik v OpenStack Dashboard

Slika 4.1 Sahara komponente

(Vir: http://docs.openstack.org/developer/sahara/overview.html,dostopno 13.8.2016)

Page 46: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

32

4.3 Delovanje

Namen Sahare je zagotoviti uporabnikom preprost način upravljanja s Hadoop Spark ter

Storm gručami. To dosega z določitvijo večjega števila parametrov, kot so: verzija,

topologija, strojne opreme idr. Sahara omogoča upravljanje z dodajanjem in odvzemanjem

vozlišč na daljavo.[22]

Projekt funkcionalno uporaben za:

Hitre obdelave in zagotavljanje podatkov za procesiranje Hadoop gručah na

OpenStack platformi za razvijanje, testiranje ter zagotavljanje kakovosti.

Učinkovito koriščenje neuporabljene računske moči oblaka za namene

infrastrukture kot storitve tipa oblaka

AaaS - Analytics as a Storitev za ad-hoc ali sočasne analitične operacije

(podobno kot AWS EMR)

4.3.1 Delovni tok Sahara ogrodja (Slika 4.2)

1. Izbira Hadoop različice

2. Izberemo bazno sliko z ali brez pred-nameščenega ogrodja za procesiranje podatkov

3. Določimo arhitekturno obliko gruče, ki vključuje velikost gruče, topologijo ter parametre

programske arhitekture.

4. Sahara zagotovi navidezne naprave, namestitev ter konfiguracijo ogrodja za

procesiranje podatkov

5. Izvajanje operacij nad vozlišči, kot so kreiranje in odstranjevanje vozlišč

6. Zaključek življenjskega cikla gruče, ko ta ni več potreben.

[22]

Page 47: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

33

Slika 4.2 Delovni tok Sahara

4.4 Glavne značilnosti:

Sahara je bila zasnovana kot OpenStack komponenta, ki se upravlja z REST vtičnikom

preko uporabniškega vmesnika ki je na voljo na OpenStack nadzorni plošči.

Predstavlja podporo za različne Hadoop distribucije:

ponuja vtičniški sistem za Hadoop namestitvene sisteme;

ponuja integracijo s proizvajalci namenskih upravljalnih orodij, kot so Apache

Ambari ali Cloudera Managment Console;

Ponuja vnaprej definirane predloge Hadoop gručnih konfiguracij z možnostjo

spreminjanja parametrov, podporo mnogo podatkovnoprocesnih ogrodij, kot so:

Apache, Spark in Storm ter vtičniški mehanizem za namestitev Hadoop gruč. [16]

4.5 Predloge

Za poenostavljeno upravljanje je Sahara vključila sistem predlog, ki uporabniku močno

zmanjšajo delo ter prihranijo ogromno časa, potrebnega za ponavljajoča se dejanja.

Predloge delimo v dve skupini: predloge vozlišč ter predloge gruč. Prve se uporabljajo za

lažje kreiranje gruč. S tem so nam prihranili ogromno časa: vsakič ko smo želeli izgraditi

novo gručo, smo morali vedno znova vnašati parametre, ki so sedaj že ob prvi konfiguraciji

shranjeni v predlogi; slednjo lahko potem znova uporabimo (Slika 4.3) ali pa prilagodimo

brez spreminjanja vseh parametrov.

Page 48: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

34

Slika 4.3 Tok uporabe predlog

(Vir: https://wiki.openstack.org/wiki/Sahara/Templates,dostopno 13.8.2016)

4.5.1 Urejanje predloga skupine vozlišč

Predloge nam s svojim delovanjem (slika 4.4) v ozadju omogočajo, da se izognemo

ponovnemu nastavljanju parametrov ob ponovni uporabi za kreiranju gruče. Nastavimo

število instanc vsakega nivoja za kreiranje, vrsto strojnih zmogljivosti, ki jih bomo vozlišču

dodelili ter tip omrežnih nastavitev in nastavitev skupine za upravljanje varnosti.

Page 49: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

35

Slika 4.4 Delovni tok predloge vozlišč

(vir:http://wiki.openstack.org/wiki/Sahara/ModifyNodeGroupTemplate,dostopno21.8.2016)

4.5.2 Urejanje predloge gruče

Predloge gruč nam s svojim delovanjem (Slika 4.5) omogočajo ponovno uporabljivost. Z

delovanjem predloge za vozlišča, ki smo jih predstavili v poglavju 4.5.1, nastavimo gruči

osnovne nastavitve in nastavitve vozlišč, upravljamo varnostno skupino, nastavitve

vtičnikov ter ostalih povezanih komponent.

Slika 4.5 Delovni tok predloge gruče

(Vir: https://wiki.openstack.org/wiki/Sahara/ModifyClusterTemplate,dostopno 20.8.2016)

Page 50: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

36

4.6 Podpora z drugimi OpenStack storitvam:

Sahara se povezuje z drugimi komponentami (Slika 4.6) kot so:

Dashboard (horizon) preko REST API

Identity (keystone)

Compute (nova)

Orchestration (heat)

Image (glance)

Object Storage (swift)

Block Storage (cinder)

Networking (neutron)

Telemetry (ceilometer)

Shared file systems (manila)

Slika 4.6 sodelovanje z drugimi komponentami

(Vir: http://docs.openstack.org/developer/sahara/overview.html,dostopno 17.8.2016)

Page 51: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

37

4.7 Funkcije projekta Sahara

4.7.1 Blokovna hramba

Uporabimo jo lahko kot alternativo za pogone na instancah, saj nam poveča zanesljivost

hranjenih podatkov, kar je zelo pomembno za HDFS storitve. Uporabnik ima možnost

upravljanja in nastavljanja obsega hrambe, dodeljene vsaki instanci v skupini vozlišč, lahko

pa določa tudi velikost vsake hrambe ločeno od ostalih. Vse hrambe so dodeljene med

kreiranjem gruče ter med njegovim skaliranjem.

Če uporabljamo HDFS hrambo, se je pomembno osredotočiti na linearne bralno-pisalne

operacije in poskrbeti, da je stopnja IOpS dovolj velika za upravljanje in nadziranje

obremenitev med delovanjem, s čimer preprečimo morebitna ozka grla na tej stopnji in

zadovoljimo zmogljivosti oblaka. V nekaterih primerih se lahko obseg hrambe podpre z

komponento, ki podpira porazdeljeno hrambo, kot je Ceph. Pri tej namestitvi moramo biti

pozorni, da mrežne latence in hitrost mreže ne postanejo ozko grlo za HDFS. Porazdeljena

hramba običajno ponuja svoje mehanizme replikacije. HDES replikacija je v tem primeru

onemogočena, da ne generira redundantnega omrežnega prometa skozi oblak. [16]

4.7.2 Prilagoditev gruče

Omogoča uporabniku, da spremeni večje število izvajanih instanc v klastru brez potrebe po

vnovičnem kreiranju le-tega. Uporabnik ima na voljo povečanje ali zmanjšanje števila

instanc v vozliščni skupini ali doda nov vozliščno skupino obstoječi gruči. V primeru, da se

to spremembe ne uveljavijo pravilno, se vse spremembe povrnejo v začetno stanje pred

spreminjanjem ali dodajanjem. [16]

4.7.3 Lokalnost podatkov

Za optimalno zmogljivost je najbolje, da aplikacije, ki skrbijo za obdelavo podatkov, delajo

s podatki lokalno na istem nivoju. Hadoop podpira možnost lokalnega procesiranja

podatkov in razporejanje nalog s sledenjem opravilom vseh vozlišč, ki obdelujejo podatke

na lokalnem nivoju. To pomeni da lahko sledilna vozlišča sledijo in komunicirajo direktno

lokalnim vozliščem. Sahara podpira tudi konfiguracijo topologije HDFS in objektnega

hranjenja podatkovnih virov. [16]

Page 52: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

38

4.7.4 Porazdeljen način

Sahara ima možnost konfiguracije delovanja v porazdeljenem načinu, ki kreira ločitev med

API in delovnimi procesi. To tudi omogoča API procesom, da ostanejo relativno enostavni

za upravljanje zahtev, medtem ko se izvajajo zahtevni engine procesi. V pomoč nam je

sahara-api, ki deluje kot front-end in streže uporabniške zahteve. Če Saharo poganjamo na

več kot enem gostitelju, se lahko API ukazi enakomerno porazdelijo med gostitelji, ki

uporabljajo storitev uravnavanja obremenitve, ni pa to potrebno izvajati med različnimi

sahara-engine gostitelji, saj se to avtomatično zgodi z pomočjo message broker-ja. [16]

4.7.5 Hadoop HDFS razpoložljivost

Ponuja arhitekturo za zagotavljanje HDFS-ovega delovanja tudi v primeru napake

namenode objekta. Uporablja dve namenodes v aktivno-pasivnih spremembah

konfiguracije HDFS in drugih storitvah, ki uporabljajo HDFS. [16]

4.7.6 Omrežna podpora

V privzetem načinu Sahara uporablja nova-network implementacijo OpenStack arhitekture.

Za dinamično upravljanje z IP naslovi med postavitvijo gruče mora Sahara imeti možnost

dostopa in upravljanja z Secure shell (SSH) bodisi preko statičnega bodisi dinamičnega IP

naslova instance. Privzeto delovanje Sahare je nastavljeno na dinamične naslove za

dostop, nadzor in upravljanje. Uporabnik lahko izbere, da vsi primerki uporabljajo dinamične

IP naslove, če pa se zanje ne odloči, ima še vedno na voljo statične IP naslove. V kolikor

uporabljamo Nutron komponento za upravljanje omrežnih aktivnosti, ima uporabnik

možnost določiti statične naslove vse instancam v klastru. V obeh primerih izbire moramo

zagotoviti, da imajo vsi primerki, na katerih se izvaja Sahara, dostop do statičnega IP

omrežja. [16]

Page 53: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

39

4.7.7 Sistem za skupno rabo datotek

Sahara uporablja NFS(Network File System) deljenje preko OpenStack Shared Fylesystem

service – manila za shranjevanje binarnih in podatkovnih storitev. Zagotavlja usklajen

dostop do deljenih in skupnih datotečnih sistemov, medtem ko je primarna poraba datotek

v krogu OpenStack Compute instanc. [16]

4.7.8 Orkestracijska podpora – Heat

Je vodilni del OpenStack arhitekture, glavni projekt OpenStack orkestracije za

implementacijo delovanja sistema za zagon mnogih oblačnih aplikacij na osnovi tekstovno

datotečnih predlog, ki se lahko smatrajo za programsko kodo. Ob zelo hitrem in

pospešenem razvoju kreirnih predlog je še vedno prisotna skrb za kompatibilnost z AWS

CloudFormation formatom, kar pomeni, da lahko uporabimo že obstoječe CloudFormation

predloge za uveljavitev konfiguracije.

Podpira tako OpenStack-native ReST API in CloudFormation-compatible Query API. Viri

Heat infrastrukture so sestavljeni iz: strežnikov, dinamičnih IP naslovov, shrambe,

varnostnih skupin, uporabnikov. Hkrati Heat ponuja telemetrijo za prilagajanje skupini, ki se

lahko vključi kot vir v predlogo (template). Predloge lahko določijo povezavo med viri, kar

omogoča Heat-u uporabo OpenStack API za izgradnjo vse potrebne infrastrukture v

pravilnem zaporedju za pripravo aplikacije.

Upravlja s celotnim življenjskim ciklom aplikacije, to pomeni od začetka do konca izgradnje.

Ko začutimo potrebo po spremembi infrastrukture, uporabljeno predlogo pred začetkom

izgradnje ustrezno spremenimo in tako posodobimo naš stack. Arhitektura zna poskrbeti za

potrebne spremembe, kar vključuje izbris vseh datoteke in virov po uporabi aplikacije.

Glavna naloga je upravljanje infrastrukture, kjer pridejo do izraza predloge (Templates), ki

so zelo dobro integrirane z drugimi orodji za upravljanje konfiguracij, kot sta Puppet in Chef.

Nadaljni razvoj komponente je orientiran na okrepitev povezave med programsko opremo

in infrastrukturo za še učinkovitejše delovanje in boljšo stabilnost. [16]

Page 54: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

40

4.7.9 Možnost vključitve vtičnikov

Tabela prikazuje kompatibilnost lastnosti z vtičniki (Tabela 4.1)

Tabela 4.1 Kompatibilnost komponent z vtičniki

Lastnost Vtičnik

Vanilla HDP Cloudera Spark

Nova and Neutron network x x x x

Cluster Scaling x Novejše verzije

x x

Swift Integration x x x x

Cinder Support x x x x

Data Locality x x N/A x

EDP x x x x

4.7.10 Upravljanje varnostnih skupin

Varnostne skupine so IP filtri, ki so določeni omrežju instance. Specifični so za vsak projekt

ločeno, uporabnik pa ima možnost urejanja privzetih nastavitev dodajanja in odstranjevanja.

Vsak projekt ima na začetku določeno privzeto varnostno skupino, ki se kasneje določi

instanci brez kakor koli drugače definirane varnostne skupinske politike. [16]

Sahara uporabnikom omogoča izbiro varnostne politike za vsako instanco posebej, kar je

mogoče storiti preko security_groups parametra. Omogočena je tudi nastavitev zaprtega

tipa omrežja, ki v oddaljenem izvajanju konfiguracij preprečuje zunanje grožnje med

inkubacijo in postavitvijo oblaka. [16]

Page 55: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

41

4.7.11 Pomoč pri deljenju in zaščiti virov

Sahara dovoljuje kreiranje in določanje virov, ki so deljeni med uporabniki/najemniki

arhitekture in so zaščiteni pred spremembami. Za uporabo pred spremembami se dostopa

preko Sahara REST API z nastavitvijo parametrov logičnega tipa; privzeto so parametri

nastavljeni na false. Če so parametri nastavljeni na true, potem to pomeni, da ne morejo

biti spremenjeni med izvajanjem ­ s tem so možnosti posodabljanja, manjšanja, preklica in

brisanja onemogočene. Javni objekti funkcij, kreirani iz ene predloge, se lahko prenašajo v

drugo predlogo, kar pomeni da je lahko klaster, ki je bil kreiran iz javne predloge gruče,

kreiran v drugem razdelku. [16]

4.8 Integracija z Swift

Storitev Swift je standard objektnega shranjevanja v OpenStack okolju. S tem pridobimo

Hadoop na OpenStack platformi za obdelavo podatkov, kjer so ti shranjeni. Integracija s

Swift in Hadoop je pomembna za nadaljnje delo in povezovanje. Ključ te integracije je

implementacija Hadoop Swift datotečnega sistema, pri čemer sta bila razvoj in

implementacija združena v izvajanje projekta Hadoop. Sahara vzdržuje različice s trenutno

najnovejšimi funkcijami.[22]

4.9 Vtičniki

4.9.1 Vanilla vtičnik

Vanilla vtičnik omogoča končnemu uporabniku nadzor in upravljanje gruče z Apache

Hadoop. Vnaprej konfigurirane slike lahko prenesemo z Mirantis spletnega repozitorija ali

jih kreiramo sami. Za uporabo vtičnika potrebujemo nameščen ssh odjemalec, okolje Java

verzije 6.0 ali novejše, nameščen Apache Hadoop ter kreiranega uporabnika Hadoop Oozie

verzije 4 (ali novejše), MySql ter hive [25]

Page 56: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

42

4.9.2 Ambari vtičnik

Ambari vtičnik nam omogoča izgradnjo gruče s platformo Hortonworks Data Platform v

OpenStacku, kjer nam je na voljo uporaba predloge, ki je zelo enostavna in pripravljena za

ponovno uporabo. Saharin krmilnik omogoča povezavo med Hadoop in OpenStack, med

katerima upravlja zahteve Ambari vtičnik, ki razporeja in konfigurira Hadoop na OpenStack

platformo. Ambari vtičnik uporablja Ambari Blueprints za oskrbo gruče.[1]

4.9.3 Spark vtičnik

Spark vtičnik zagotavlja Apache Spark gručna na OpenStack platformi z enostavno

uporabo ter s ponovno uporabljivostjo. [24]

4.9.4 MapR Distribution vtičnik

MapR vtičnik zagotavlja MapR gruče na OpenStack platformi z zelo enostavnim, hitrim ter

učinkovitim načinom izgradnje. [19]

4.9.5 Cloudera vtičnik

Cloudera s svojim delovanjem (Slika 4.3) uporabnikom omogoča razvoj in delovanje gruč

s Cloudera Manager-jem. Cloudera ima možnost prilagajanja nastavitev delovanja preko

nastavitev konfiguracije, ki se nahaja v konfiguracijski datoteki projekta Sahara ter je ob

izgradnji že privzeto vključena in omogočena.[11]

Page 57: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

43

Slika 4.7 Cloudera tok delovnega procesa

4.10 Elastic Data Processing (EDP)

Elastic Data Processing (Slika 4.8) uporabniku daje možnost izvršitev opravil na gruči, ki je

bil kreiran z pomočjo Sahara EDP modula.

Page 58: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

44

Sahara Elastic Data Processing omogoča:

Uporabo Hive, Pig, MapReduce, MapReduce.Streaming, Java ter izvršbo Shell

ukazov na Hadoop gručah,

Spark paketna opravila na Spark standalone gručah, MapR spark gruče in

CDH gruče,

Hrambo binarnih del v OpenStack Object Storage storitev (Swift) ter

OpenStack Shared file systems storitev (manila) ali v lastni Sahara podatkovni

zbirki,

Dostop do vnosa in iznosa podatkov na:

HDFS

Swift

Manila

Konfiguracijo opravil

Izvršitev opravil na obstoječih ali na predhodno definiranih gručah

[15]

4.11 Sahara REST API

Namenjen je izvrševanju MapReduce opravil na Hadoop clustrih. Na njem so podatkovni

viri sestavljeni iz: Swift, HDFS ter Ceph arhitekture. Podpira vtičniško arhitekturo Oozie ter

Spark. Vključeno ima podporo za Hadoop verziji 1, ki poganjata enega od naslednjih

procesov: jobtracker, namenode, oozie, tasktracker, datanode; in prav tako tudi verziji 2, ki

morata vsebovati enega izmed naslednjih procesov: namenode, datanode,

resourcemanager, nodemanager, historyserver ali oozie. Pri avtentikaciji in avtorizaciji

OpenStack uporablja storitev Identity za privzeti način avtentikacije in avtorizacije. Ko

uporabnik pošlje zahtevo, se preveri avtentikacija, kadar je Identity prisoten v glavi zahtevka

preko posebnega parametra. [23]

Slika 4.8 EDP delovni tok

Page 59: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

45

4.12 Kreiranja nove gruče

Kreiranje nove gruče je sestavljeno iz korakov (Slika 4.9):

1. Validacija

2. Infrastrukturne posodobitve

3. Vzpostavitev

4. Čakanje na zagon navideznih računalnikov

5. Priprava

6. Konfiguracija

7. Hadoop zagon

8. Zagon gruče

Slika 4.9 koraki kreiranje nove gruče

Page 60: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

46

5 MIRANTIS

5.1 Definicija

OpenStack je odprtokodna platforma, ki se uporablja izključno za postavitev programske

infrastrukture razvijajočega se računalništva v oblaku. Je edina platforma, ki deluje na vseh

operacijskih sistemih, vključno z Red Hat, CentOS ter Ubuntu Linux. Nadzorovana je s

strani podjetja OpenStack Foundation, ustvarjenega za promocijo razvoja in za distribucijo

platforme OpenStack.

Distribucija Mirantis trenutno prispeva največ k razvoju slednje: s pomočjo priporočil

uporabnikov skuša dvigniti platformo OpenStack na nivo, ki bo zadovoljil potrebe vseh

uporabnikov. Za delovanje uporablja odprtokodne komponente in rešitve, ki jih podaja

OpenStack platforma. Mirantis hkrati prodaja komercialno verzijo programa z možnostjo

testiranja programa, njegove izboljšave in nadgraditve.

Podjetje Mirantis je za razliko od drugih konkurenčnih programov (podjetij Red Hat, Hewlett-

Packard idr.) oktobra 2013 predstavilo lastno distribucijo OpenStack platforme. Skozi nekaj

let razvoja in z izdajo številnih različic in komponent se je uveljavila v OpenStack

platformi.[6]

Page 61: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

47

5.2 Zgradba

Platforma Mirantis OpenStack je zgrajena (Slika 5.1) iz OpenStack jedra, ki je združljivo s

compute, storage in networking komponentami za kar največjo elastičnost in prilagodljivost

uporabniku. V primerjavi z drugimi platformami Mirantis ne omejuje uporabnikov, ne

zaklepa dostopa do glavnih komponent, ima široko podporo vtičnikov in dodatkov ter je med

ponudniki storitev, ki jih lahko upravljamo z lastnimi orodji, v samem vrhu. [6]

5.2.1 Compute – Nova

Upravlja z življenjskim ciklom compute primerkov v OpenStack okolju. Njegove

odgovornosti vključujejo ustvarjanje novih instanc, prilagajanje časovnega izvajanja ter

terminiranje primerkov.[21]

5.2.2 Storage –Cinder

Zagotavlja neprekinjeno blokovno shrambo za vse vzpostavljene instance. Je vtičniško

(Slika 5.2) naravnana arhitektura za kreiranje in upravljanje različnih naprav z blokovno

hrambo. [10]

Slika 5.1 Mirantis arhitektura

(Vir: https://www.mirantis.com/products/mirantis-openstack-software/what-is-new-in-8-

0/,dostopno 16.8.2016 )

Page 62: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

48

Slika 5.2 Cinder arhitektura

(Vir: https://www.mirantis.com/blog/openstack-cinder-first-look/,dostopno 19.8.2016)

5.2.3 Networking - Neutron

Omogoča omrežje kot Connectivity as a Service (CaaS) drugim OpenStack storitvam (npr.

Openstack Compute) ter zagotavlja API za uporabnike, ki so definirani v omrežju. Ima

vtičniško arhitekturo, ki podpira mnogo priljubljenih ponudnikov omrežnih storitev in

tehnologij. [20]

5.3 Izvedba testov

Za okolje lahko izvedemo teste (Slika 5.3),(Slika 5.4) funkcionalnosti, ki lahko odkrijejo

zgodnje napake v nastavitvah okolja.

Page 63: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

49

5.3.1 Testi funkcionalnosti

Slika 5.3 testiranje funkcionalnosti okolja 1.del

Page 64: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

50

Slika 5.4 testiranje funkcionalnosti okolja 2.dels

Page 65: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

51

6 NAMESTITEV MIRANTIS SAHARA PROJEKTA V OKOLJE OPENSTACK

Po uspešni namestitvi okolja se prijavimo v Fuel nadzorno ploščo (Slika 6.1) z

uporabniškim imenom in geslom, ki ga zaradi varnosti našega okolja ob prvi prijavi

tudi spremenimo

Slika 6.1 Fuel prijava

Page 66: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

52

Sledi izgradnja OpenStack okolja, ki mu določimo parametre, kot je prikazano

(Slika 6.2). Spodaj izberemo ime okolja ter OpenStack različico.

.

Slika 6.2 vnos imena ter izbira OpenStack različice

Izberemo nastavitve Compute modula (Slika 6.3) z izbiro QEMU-KVM ali vCenter.

Slika 6.3 izbira nastavitev Compute

Nato z izbiro segmentacije prikazano na sliki izberemo omrežne nastavitve (Slika

6.4).

Page 67: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

53

Slika 6.4 izbera omrežnih nastavitev

V naslednjem koraku nastavimo konfiguracijo blokovnega in objektnega

shranjevanja podatkov (Slika 6.5). Pri blokovni hrambi izbiramo med LVM ter Ceph

arhitekturo. Za objektno hrambo, hrambo slik ter kratkotrajno hrambo nam je na

voljo Ceph komponenta.

Slika 6.5 nastavitev hrambe objektov

Page 68: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

54

V naslednjem koraku izberemo izbirne/dodatne storitve, ki jih želimo vključiti v naše okolje,

in tukaj izberemo naš projekt SAHARA (Slika 6.6). V okolje bi lahko vključili še aplikacijski

katalog Murano ter orodji za nadzor in telemetrijo Ceilometer ter Ironic.

Po uspešnem kreiranju okolja pridobimo dostop do nadzorne plošče (Slika 6.7) za

upravljanje nastavitev ter virov. V okolju dodelimo prosta vozlišča Compute, Storage ter

Networking komponentam za delovanje ter strojne vire potrdimo, da se prične postopek

namestitve osnovnih operacijskih sistemov na vozlišča in namestitev OpenStack platforme

ter dodatnih storitev, ki smo jih izbrali v kreiranju okolja. Popravimo nastavitve omrežja ter

hrambe, dodamo ali odstranimo komponente. Pridobimo dostop do poročil oz. trenutnega

stanja integracije okolja. Možnost izvedbe testov pripomore k hitremu odkrivanju napak pri

izbiri namestitev.

Slika 6.6 Izbira dodatnih storitev

Page 69: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

55

Kadar uveljavimo spremembe in nastavitve vozlišč, sledi upravljanje z vozlišči, a še prej je

potrebna avtorizacija (Slika 6.8) na Horizon nadzorni plošči.

Slika 6.7 Prijava v nadzorno ploščo Horizon

Page 70: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

56

Po uspešni prijavi v nadzorno stran preko spletnega vmesnika (Slika 6.9 ) vidimo pregled

nad uporabo virov. Na levi strani imamo navigacijo med sekcijami: projekt, skrbnik, sistem

ter identiteta.

V naslednjem koraku izberemo zavihek projekt (Slika 6.10) ter podkategorijo slike

(»Images«), kjer izberemo gumb ustvari sliko (»create image«). Pojavi se nam formular za

vnos parametrov: ime, opis, izbira vira, izbira direktorija shranjene slike ali spletni naslov

(opcijsko glede na izbiro vira slike), izberemo tip formata slike, ki jo bomo uporabili.

Določimo lahko tudi minimalne zahteve za kreirano sliko, kot so arhitektura, najniža

kapaciteta shranjevalnega prostora ter najnižja velikost delovnega pomnilnika. Na izbiro

imamo še dva atributa, ki nista tako ključnega pomena za delovanje, sliko lahko naredimo

javno (»public«), jo delimo z drugimi v platformi ali pa jo označimo kot zaščiteno/zasebno

(»protected«), tj. nevidno drugim. Nato izberemo »Create Image«, s čimer se prične proces

nalaganja, če izberemo prenos iz spletnega naslova se prične prenos iz spletnega imenika,

pri prenosu slike iz lokalnega imenika je čas nalaganja in shranjevanja dolg nekje 3-5 minut,

pri prenosu iz spletnega imenikab ima največji vpliv hitrost povezave (v mojem poskusu je

nalaganje slike velikosti 913MB ter shranjevanje je trajalo 7 minut).

Slika 6.8 Horizon nadzorna plošča

Page 71: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

57

Slika 6.9 Kreiranje slike

Izgrajena gruča za dostop in upravljanje potrebuje omrežni dostop, zato moramo tudi

določiti omrežje (in možnosti dosptopa), ki mu bodo pripadale instance. Za upravljanje in

nastavljanje omrežja so nam na voljo nastavitve pod zavihkom omrežje »Network« (Slika

6.11), v katerem smo nastavili tri omrežja ter jih preko navideznega usmerjevalnika

povezali, da lahko dostopamo do virov iz enega v drugo omrežje.

Page 72: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

58

Sledi registracija slike (Slika 6.12), kjer shranjeno sliko uporabimo. Za uspešen vpis slike v

imenik slik je potrebno izbrati s seznama sliko, ki smo jo prenesli v direktorij, nato izberemo

uporabniško ime ter opis. Na voljo imamo tudi vtičniške oznake, ki jih lahko za kasnejši lažji

nadzor in upravljanje morebitnih popravkov pripnemo registrirani sliki. Ko so vsi atributi

izbrani in vneseni, izberemo končano »done«.

Slika 6.10 Omrežna struktura

Page 73: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

59

Slika 6.11 Registracija slike

Sledi kreiranje predloge vozliščne skupine (Slika 6.13), kjer izberemo naziv vtičnika, ki ga

bomo uporabili, ter verzijo izbranega vtičnika. Velja opozoriti, da je med različicami najbolje

izbrati zadnje, tj. različice označene z najvišjim nivojem, saj te vsebujejo popravke. V našem

primeru smo izbrali sliko z Apache Spark vtičnikom verzije 1.3.1 ter nato izbrali naprej

»next«.

Page 74: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

60

Slika 6.12 Ustvarjanje predloge glavnega vozlišča 1. korak

Sledijo nastavitve konfiguracije (Slika 6.14) naše predloge. Za konfiguracijo imamo

naslednje atribute: naziv predloge, opis predloge, OpenStack predlogo, območje

razpoložljivosti, lokacijo shranjevanja ter omrežne nastavitve.

Slika 6.13 Ustvarjanje predloge glavnega vozlišča 2. korak

Page 75: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

61

Sledi nastavitev vozliščnih procesov (Slika 6.15), kjer določimo atributa HDFS proces ter

Spark proces. Tukaj se nastavitve razlikujejo glede na to, ali izdelujemo glavno »master«

predlogo ali podložniško »slave« predlogo. Pri glavni predlogi smo izbrali HDFS proces

»namenode« ter Spark proces »master«.

Slika 6.14 Ustvarjanje predloge glavnega vozlišča 3. korak

Za tem sledi nastavitev (Slika 6.16) varnostne politike predloge in s tem tudi instanc, za

katere bomo uveljavili predlogo pri izgradnji. Predloga bo primerke umestila v privzeto

»default« varnostno skupino. Po nastavitvi vseh atributov izberemo ustvari »Create«.

Slika 6.15 Ustvarjanje predloge glavnega vozlišča 4. korak

Page 76: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

62

Postopek se skorajda ponovi, le da za podložniško »slave« predlogo (Slika 6.17) veljajo

drugačni parametri. Ne smemo pozabiti, da morata imeti obe predlogi (»master« in »slave«)

enak vtičnik ter verzijo vtičnika, sicer lahko pride do nekompatibilnosti predloge ali do napak

med kreiranjem predloge gruče. Zatem izberemo Apache Spark verzije 1.3.1 ter izberemo

naprej »Next«.

Slika 6.16 Ustvarjanje predloge podrejenega vozlišča 1. korak

Naslednji korak (Slika 6.18) ponovno nastavimo nastavitve konfiguracije naše predloge, a

sedaj za podložniško »slave« predlogo. Za konfiguracijo imamo naslednje atribute: naziv

predloge, opis predloge, OpenStack predlogo, območje razpoložljivosti, lokacijo

shranjevanja ter omrežne nastavitve.

Page 77: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

63

Slika 6.17 Ustvarjanje predloge podrejenega vozlišča 2. korak

Page 78: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

64

V naslednjem zavihku (Slika 6.19) »Node Processes« pri HDFS procesu izberemo

»datanode«, pri Spark procesu pa izberemo »slave«

Slika 6.18 Ustvarjanje predloge podrejenega vozlišča 3. korak

V zavihku (Slika 6.20) varnost »Security« dodelimo instancam predloge privzeto »default«

varnostno skupino.

Slika 6.19 Ustvarjanje predloge podrejenega vozlišča 4. korak

Page 79: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

65

V naslednjem koraku sledi kreiranje gručne predloge (Slika 6.21), v kateri bomo uporabili

do sedaj ustvarjene predloge. Spet izberemo vrsto vtičnika ter verzijo, ki morata biti identični

prejšnjima predlogama, ko smo kreirali predloge vozlišč »node template« Izberemo Spache

Spark ter v našem primeru različico 1.3.1.

Predlogi določimo parametre (Slika 6.22): naziv in morebiten opis. Nato opcijsko izberemo

tip predloge, bodisi javen ali zaseben.

Slika 6.20 Kreiranje predloge gruče 1. korak

Page 80: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

66

Slika 6.21 Kreiranje predloge gruče 2. korak

Sledi korak, kjer uporabimo kreirane predloge vozlišč (Slika 6.23) iz prejšnjih korakov. Iz

spustnega seznama izberemo tip vozlišča ter kliknemo dodaj (simbol +), ki nam na seznam

doda predlogo izbranega vozlišča iz seznama. Dodamo obe (»master« in »slave«) predlogi

ter izberemo število primerkov, ki jih po predlogi izgradimo za vsako vrsto predloge. V naši

konfiguraciji bodo izgrajeni trije primerki podložniškega (»slave«) vozlišča ter en primerek

glavnega vozlišča (»master«).

Page 81: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

67

V naslednjem zavihku splošni parametri (Slika 6.24) »general parameters«

izberemo/vnesemo splošne atribute, kot je prikazano na konfiguraciji na sliki spodaj.

V zavihku HDFS parametri (Slika 6.25) lahko pustimo privzete nastavitve, ki jih določi

predloga, ali jih prilagodimo kot v našem primeru na sliki.

Slika 6.22 Kreiranje predloge gruče 3.korak

Page 82: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

68

Slika 6.23 Kreiranje predloge gruče 4. korak

Slika 6.24 Kreiranje predloge gruče 5. korak

Page 83: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

69

V zavihku Spark parametri (Slika 6.26) nastavimo vrata za dostop do »master« grafičnega

vmesnika ter vrata za dostop do grafičnega vmesnika »worker« ter dodelimo ves

razpoložljiv spomin »worker«-ja.

Slika 6.25 Kreiranje predloge gruče 6. korak

Sledi končni korak kjer bomo po konfiguraciji (Slika 6.27) parametrov gruče dobili primerke,

ki so nastavljeni po uveljavljenih parametrih naših ustvarjenih predlog. Pri zagonu gruče

izberemo naziv ter različico vtičnika. Naše predloge temeljijo na Apache Spark vtičniku

različice1.3.1 ter izberemo naprej »next«.

Slika 6.26 Zagon gruče 1. korak

Page 84: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

70

Pri vzpostavitvi (Slika 6.28) izberemo naziv gruče in morebiten dodaten opis, ki pa ni

obvezen parameter. Izberemo predlogo s konfiguracijo Apache Spark različice 1.3.1 in

izberemo število primerkov gruče, ki jo bo izgradilo (v našem primeru je to 1, kar pomeni da

bo ustvarilo štiri primerke: 1 glavni »master« primerek, ter 3 podrejene »slave« primerke).

Izberemo osnovno sliko, na kateri bodo izgrajeni primerki. Opcijsko za dostop lahko

izberemo že kreirane pare ključev »Keypair« ali jih kreiramo v tem koraku s klikom na »+«

simbol. Izberemo še omrežje, ki mu bodo primerki dodeljeni. Ko so vse nastavitve

konfiguracije izbrane, izberemo zagon »Launch«.

Slika 6.27 Zagon gruče 2. korak

Page 85: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

71

Prične se postopek izgraditve (Slika 6.29) instanc, nastavljenih po nastavitvah/parametrih

v kreiranih predlogah. Takoj po zagonu izgraditve vidimo, da sta se izgradila dva primerka

(od štirih), ki sta kreirana po predlogi z generičnim imenom ter z zaporedno številko, ki sta

bile izgrajeni iz izbrane osnovne slike, ter sta dodeljeni konfiguriranemu omrežju z nazivom

»private«.

Slika 6.28 Seznam ustvarjenih (zagnanih) primerkov

Za vsak primerek imamo na voljo veliko število akcij (Slika 6.30), ki jih lahko izvedemo na

izbranem primerku, kot je prikazano na naslednji sliki.

Slika 6.29 Možnosti izgrajenih primerkov

Page 86: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

72

7 SKLEP

V nalogi smo predstavili namestitev komponente Sahara, ki je del distribucije Mirantis

OpenStack. Za analizo je bila uporabljena distribucija OpenStack Mirantis 8.0 (pod kodnim

imenom Liberty), ki je bila postavljena na linux operacijskem sistemu Ubuntu različice 14.04.

Med namestitvijo Fuel okolja ni bilo zaznati nobene napake, prav tako ne med konfiguracijo

osnovnih komponent OpenStack okolja (z izjemo grafičnega vmesnika Horizon). Sam

vmesnik se je sicer izkazal za nastavitveno precej izpopolnjenega, saj nas je v korakih vodil

skozi postopek nastavitve parametrov in nam pomagal pri upravljanju konfiguracije vozlišč,

gruč, omrežja ter drugih nastavitev okolja.

V naši raziskavi je Horizon občasno zastal pri obvestilu “Waiting”, prav tako pa kljub

izdanemu obvestilu, da so bile nastavitve uspešno shranjene, mestoma ni zaznal

sprememb. Nadalje so se pojavile težave pri zavihku “Flavors”, ki predstavlja predloge

strojnih virov primerkov. Spreminjanje le-teh se ni najbolje obneslo, saj grafični vmesnik

spremenjene predloge včasih ni več našel in nato javil njeno odstranitev, čeprav je bila le

spremenjena. Tudi pri kreiranju predlog za vozlišča je bilo zaznati, da obrazec s parametri

ni bil pravilno poslan, in je bilo potrebno vse nastavitve nastaviti znova (ena od možnih

rešitev za to bi bilo shranjevanje obrazca v začasni pomnilnik, s čimer bi parametre v

primeru napake lahko obnovili in tako bistveno skrajšali čas njihovega vnašanja).

Okolje Mirantis je odrazilo stabilnost in reakcijsko konstantnost, saj med njegovo uporabo

ni bilo zaznanih zaustavitev in preprek. Distribucija OpenStack je pokazala svojo

funkcionalnosti tako za večja kot manjša podjetja in primernost za vse vrste oblakov. Na

drugi strani so se določena mesta spletni dokumentaciji OpenStack platforme zdela

vendarle preveč splošno opisana.

Zaradi Saharinih razsežnosti upravljanja z oblačno arhitekturo in z njenimi konfiguracijami

je bil v tej nalogi predstavljen samo del zmogljivosti te komponente, kar je obenem odkrilo

spoznavni potencial prihodnjih raziskav s tega področja

Page 87: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

73

8 VIRI

[1] OpenStack. Ambari Plugin. Dostopno na:

http://docs.openstack.org/developer/sahara/userdoc/ambari_plugin.html [13.8.2016].

[2] Cloudify. A Quick Guide to Open Cloud. Dostopno na:

http://getcloudify.org/2014/07/18/openstack-wiki-open-cloud.html [18.8.2016].

[3] Florentine, S. What are the top five cloud features every exec should know?. Dostopno

na: http://www.cloudcomputing-news.net/news/2012/oct/04/top-5-cloud-features-every-

exec-should-know/ [16.8.2016].

[4] IBM. Deploy an OpenStack private cloud to a Hadoop MapReduce environment.

Dostopno na: http://www.ibm.com/developerworks/cloud/library/cl-openstack-

deployhadoop/ [8.8.2016].

[5] Mirantis. Mirantis OpenStack. Dostopno na:

https://www.openstack.org/marketplace/distros/distribution/mirantis/mirantis-openstack

[29.8.2016].

[6] Mirantis. OpenStack Software. Dostopno na:

https://www.mirantis.com/products/mirantis-openstack-software/ [11.8.2016].

[7] Wikipedia. OpenStack. Dostopno na: https://en.wikipedia.org/wiki/OpenStack

[3.8.2016].

[8] OpenStack. Congress. Dostopno na: https://wiki.openstack.org/wiki/Congress

[9.8.2016].

[9] OpenStack. Barbican. Dostopno na: https://wiki.openstack.org/wiki/Barbican

[15.8.2016].

[10] OpenStack. Cinder. Dostopno na: https://wiki.openstack.org/wiki/Cinder [16.8.2016].

[11] OpenStack. Cloudera Plugin. Dostopno na:

http://docs.openstack.org/developer/sahara/userdoc/cdh_plugin.html [15.8.2016].

[12] OpenStack. Designate, a DNSaaS component for OpenStack. Dostopno na:

http://docs.openstack.org/developer/designate [17.8.2016].

[13] OpenStack. Fuel Instalation Guide. Dostopno na: https://wiki.openstack.org/wiki/Fuel

[25.7.2016].

Page 88: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

74

[14] OpenStack. Introduction to Fuel. Dostopno na:

http://docs.openstack.org/developer/fuel-docs/userdocs/fuel-install-

guide/intro/intro_fuel_intro.html [18.6.2016].

[15] OpenStack. Elastic Data Processing (EDP). Dostopno na:

http://docs.openstack.org/developer/sahara/userdoc/edp [13.7.2016].

[16] OpenStack. Features overview. Dostopno na:

http://docs.openstack.org/developer/sahara/userdoc/features.html [17.8.2016].

[17] OpenStack. Ironic. Dostopno na: https://wiki.openstack.org/wiki/Ironic [3.8.2016].

[18] OpenStack. Manila. Dostopno na: https://wiki.openstack.org/wiki/Manila [17.8.2016].

[19] OpenStack. MApR Distribution Plugin. Dostopno na:

http://docs.openstack.org/developer/sahara/userdoc/mapr_plugin.html [6.8.2016].

[20] OpenStack. Neutron. Dostopno na: https://wiki.openstack.org/wiki/Neutron

[19.6.2016].

[21] OpenStack. Nova. Dostopno na: https://wiki.openstack.org/wiki/Nova [16.8.2016].

[22] OpenStack. Rationale-Sahara. Dostopno na:

http://docs.openstack.org/developer/sahara/overview.html [25.8.2016].

[23] OpenStack. Sahara REST API v1.0. Dostopno na:

http://docs.openstack.org/developer/sahara/restapi/rest_api_v1.0.html [4.8.2016].

[24] OpenStack. Spark Plugin. Dostopno na:

http://docs.openstack.org/developer/sahara/userdoc/spark_plugin.html [3.8.2016].

[25] OpenStack. Vaničča Plugin. Dostopno na:

http://docs.openstack.org/developer/sahara/userdoc/vanilla_plugin.html [6.8.2016].

[26] OpenStack. Magnum. Dostopno na: https://wiki.openstack.org/wiki/Magnum

[5.6.2016].

[27] OpenStack. Zaqar. Dostopnno na: https://wiki.openstack.org/wiki/Zaqar [18.6.2016].

[28] Wikipedija. Računalništvo v oblaku. Dostopno na:

https://sl.wikipedia.org/wiki/Ra%C4%8Dunalni%C5%A1tvo_v_oblaku [14.8.2016].

[29] Wikipedia. Cloud computing. Dostopno na:

https://en.wikipedia.org/wiki/Cloud_computing [17.8.2016].

[30] Wikipedia. OpenStack. Dostopno na: https://en.wikipedia.org/wiki/OpenStack

[15.6.2016].

Page 89: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

75

IZJAVA O ISTOVETNOSTI TISKANE IN ELEKTRONSKE VERZIJE ZAKLJUČNEGA

DELA IN OBJAVI OSEBNIH PODATKOV DIPLOMANTOV Ime in priimek avtorja:

Gregor Kocmut

Vpisna številka:

E1064241

Študijski program:

INFORMATIKA IN TEHNOLOGIJE KOMUNICIRANJA

Naslov zaključnega dela:

Izgradnja projekta Sahara v okolju Mirantis 8.0

Mentor:

viš. pred. dr. Bojan Novak , univ. dipl. inž. el

Somentor:

/

Podpisani-a Gregor Kocmut izjavljam, da sem za potrebe arhiviranja oddal elektronsko verzijo zaključnega dela v Digitalno knjižnico Univerze v Mariboru. Zaključno delo sem izdelal-a sam-a ob pomoči mentorja. V skladu s 1. odstavkom 21. člena Zakona o avtorskih in sorodnih pravicah dovoljujem, da se zgoraj navedeno zaključno delo objavi na portalu Digitalne knjižnice Univerze v Mariboru. Tiskana verzija zaključnega dela je istovetna z elektronsko verzijo elektronski verziji, ki sem jo oddal za objavo v Digitalno knjižnico Univerze v Mariboru.

Zaključno delo zaradi zagotavljanja konkurenčne prednosti, varstva industrijske lastnine ali tajnosti podatkov naročnika: ne sme biti javno dostopno do (datum odloga javne objave ne sme biti daljši kot 3 leta od zagovora dela).

Podpisani izjavljam, da dovoljujem objavo osebnih podatkov, vezanih na zaključek študija (ime, priimek, leto in kraj rojstva, datum zaključka študija, naslov zaključnega dela), na spletnih straneh in v publikacijah UM. Datum in kraj: Podpis avtorja-ice: Podpis mentorja: (samo v primeru, če delo ne sme biti javno dostopno)

Podpis odgovorne osebe naročnika in žig: (samo v primeru, če delo ne sme biti javno dostopno)

Page 90: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

76

I Z J A V A O A V T O R S T V U

Spodaj podpisani

Gregor Kocmut

z vpisno številko

E1064241

sem avtor diplomskega dela z naslovom:

Izgradnja projekta Sahara v okolju Mirantis 8.0

Deployment of project Sahara in Mirantis 8.0

(naslov diplomskega dela)

S svojim podpisom zagotavljam, da:

sem diplomsko delo izdelal/-a samostojno pod mentorstvom (naziv, ime in priimek)

viš. pred. dr. Bojan Novak, univ. dipl. inž. el

in somentorstvom (naziv, ime in priimek)

/

so elektronska oblika diplomskega dela, naslov (slov., angl.), povzetek (slov., angl.) ter ključne besede (slov., angl.) identični s tiskano obliko diplomskega dela.

soglašam z javno objavo elektronske oblike diplomskega dela v DKUM.

V Mariboru, dne

Podpis avtorja/-ice:

Page 91: UNIVERZA V MARIBORU - COnnecting REpositories · components. OpenStack the platform can be expanded with components that are optionally available. Fuel user interface, us provides

77

IZJAVA O USTREZNOSTI ZAKLJUČNEGA DELA

Podpisani mentor :

viš. pred. dr. Bojan Novak, univ. dipl. inž. el

(ime in priimek mentorja)

in somentor (eden ali več, če obstajata):

_____________/________________________________

(ime in priimek somentorja)

Izjavljam , da je študent

Ime in priimek: Gregor Kocmut

Vpisna številka: E1064241

Na programu: INFORMATIKA IN TEHNOLOGIJE KOMUNICIRANJA

izdelal zaključno delo z naslovom:

______ Izgradnja projekta Sahara v okolju Mirantis 8.0________________________

(naslov zaključnega dela v slovenskem in angleškem jeziku)

__________Deployment of project Sahara in Mirantis 8.0 _______________________

v skladu z odobreno temo zaključnega dela, Navodilih o pripravi zaključnih del in mojimi (najinimi oziroma našimi) navodili. Preveril (-a, -i) in pregledal (-a, -i) sem (sva, smo) poročilo o plagiatorstvu. Datum in kraj: Podpis mentorja: Datum in kraj: Podpis somentorja (če obstaja): Priloga:

- Poročilo o preverjanju podobnosti z drugimi deli.