Ominaisuudet

1.1.  Compute (Nova)

Compute -moduuli on alustan ydin, jolla hallitaan palvelimia (instances) ja verkkoja.

Palvelimet sijaitsevat fyysisesti jommalla kummalla kahdesta eri saatavuusalueesta (Availability zone). Kukin palvelin perustuu mallipohjaan (Flavor) jotka ovat ennalta määritettyjä palvelinkonfiguraatioita. Palvelimen voi skaalata joko alas- tai ylöspäin annettujen konfiguraatiopohjien puitteissa.

Ilmaisen kokeilujakson (Free-tier) resurssit on suunniteltu kokeilukäyttöön. Näiden instanssien suorituskyky on tarkoitettu testaamiseen, eikä niiden suorituskyky kuvaa Pilven todellista suorituskykyä. Kokeilujaksopalvelinten verkkoliikenteen määrä ja levy-IO on rajoitettu kapasiteetin turvaamiseksi.

 

NimiKokoonpanoVerkon nopeus (Mb/s)

Ilmainen kokeilujakso

nbl-free-tier1 CPU 768MB, 32 Gt järjestelmälevyä10

N1-sarja, normaalijakauma muistin ja virtuaalisten prosessoriytimien kesken

nbl-n1-tiny

1 CPU, 1Gt, 8Gt järjestelmälevyä

100

nbl-n1-small1 CPU, 2Gt, 32Gt järjestelmälevyä200

nbl-n1-medium2 CPU, 4Gt, 50Gt järjestelmälevyä200

nbl-n1-large

4 CPU, 8Gt, 100Gt järjestelmälevyä

500

nbl-n1-xlarge8 CPU, 16Gt, 100Gt järjestelmälevyä1000

nbl-n1-2xlarge16 CPU, 32Gt, 150Gt järjestelmälevyä1500

M1-sarja, muisti optimoitu

nbl-m1-small1 CPU, 4Gt, 50Gt järjestelmälevyä200

nbl-m1-medium

2 CPU, 8Gt, 50Gt järjestelmälevyä

500

nbl-m1-large4 CPU, 16Gt, 100Gt järjestelmälevyä1000

nbl-m1-xlarge8 CPU, 32Gt, 150Gt järjestelmälevyä1500

nbl-m1-2xlarge16 CPU, 64Gt, 200Gt järjestelmälevyä2000

HM1-sarja, korkea muisti optimoitu

nbl-hm1-large2 CPU, 16Gt, 100Gt järjestelmälevyä1000

nbl-hm1-xlarge4 CPU, 32Gt, 150Gt järjestelmälevyä1500

nbl-hm1-2xlarge8 CPU, 64Gt, 200Gt järjestelmälevyä2000

nbl-hm1-4xlarge16 CPU, 128Gt, 300Gt järjestelmälevyä2000

Oletuksena palvelimen käyttöjärjestelmä asennetaan paikalliselle levylle, joka ei ole pysyvää levytilaa. Tämä tarkoittaa sitä, että palvelimen tiedot säilyvät esim. uudelleen käynnistyksen yhteydessä, mutta palvelimen poistamisen yhteydessä kaikki sinne tallennetut tiedot häviävät. Pysyvämpään tarpeeseen kannattaa pitää tiedostot erillisellä massamuistilla (Volume), joka voidaan tarvittaessa liittää toiseen palvelimeen.

Imaget (Levykuvat)

Palvelussa on tarjolla useita valmiita levykuvia eri käyttöjärjestelmillä varustettuna. Voit valita halutun levykuvan palvelimen luontivaiheessa.

KäyttöjärjestelmäVaraa tilaa järjestelmälevyltä

CentOS 6 (x86_64)1.1 GB

CentOS 7 (x86_64)326.7 MB

Debian 7 (amd64)997.3 MB

Ubuntu 12.04 (LTS amd64)249.4 MB

Ubuntu 14.04 (LTS amd64)244.0 MB

Windows Server 2008 (R2 Datacenter 64-bit)17.2 GB

Windows Server 2012 (R2 Std 64-bit)11.6 GB

Palveluun on myös mahdollisuus tuoda omia levykuvia.

1.2. Levytila (Cinder)

Pysyvämpää levytilan tarvetta varten voidaan tiedot tallentaa levytilaan (Volumes). Levytila on palvelimesta riippumaton levyosio, toisin kuin palvelimen oma paikallinen levytila.

Levytila voidaan luoda käyttäen hallintapaneelia tai API-rajapintaa. Levytilan kokoa rajoittaa ainoastaan palveluun hankittu kokonaiskapasiteetti (quota) ja aiemmin käytetty levyn määrä. Kun levy luodaan ensimmäisen kerran, se on tyhjä levy ilman osioita tai tiedostojärjestelmää. Levy pitää ensin liittää palvelimeen (attach) jotta se voidaan alustaa käyttöön, ja vielä sen jälkeen liittää käyttöjärjestelmään (mount) jotta sille voi tallentaa tiedostoja.

Levyn voi liittää vain yhteen palvelimeen kerrallaan. Levy voidaan kuitenkin irrottaa palvelimelta ja liittää toiseen palvelimeen.

Levytila on käytettävissä vain yhden saatavuusalueen sisällä.

Pysyvää, staattista tietoa voidaan tallentaa myös käyttäen Object storage-tallennustilaa.

 

Paikallinen levy

Massamuisti (Volumes)

Object Storage

Käyttötarkoitus

Käyttöjärjestelmä

Pysyvä tallennustarve

Staattinen tallennustarve (Varmuuskopiot, kuvat, arkisto)

Käyttö

Tiedostojärjestelmä

Massamuisti

REST API

Saatavuus

Palvelimen sisällä

Palvelimen sisällä

Mistä tahansa

Säilyy kunnes

Palvelin poistetaan

Käyttäjä poistaa

Käyttäjä poistaa

Koko

Palvelinkonfiguraation (flavor) määrittämä

Käyttäjän määrittämä

Rajaton

Nebula Pilvi sisältää kolmea erityyppistä levypintaa:

Levyn tyyppi

Fyysinen levy

Käyttötarkoitus

Suorituskyky

LTK-SSD

SSD

Tietokanta, sovellusvälimuisti

50000 iops luku
13000 iops kirjoitus 
Siirto 300 Mt/s

LTK-SAS

NL-SAS

Sovellukset, staattinen data

3000 IOPS luku
3000 IOPS kirjoitus
Siirto 150 Mt/s 

LTK-ARK

SATA

Arkisto,staattinen data, varmuuskopiot

 

1500 IOPS luku
1500 IOPS kirjoitus
Siirto 100 Mt/s 

 

 

1.2.1. Tilannekuvat (Snapshot)

Levyn tilannekuva on kopio levyn tilanteesta annettuna aikana. Yleisesti tilannekuva saatetaan ottaa jotta voidaan luoda uusi samanlainen levytila.

Levykuvaan tallentuu tiedostojärjestelmän nykyinen tila, mutta ei muistin tila.

Huomaathan, että levykuvaa ei kannata käyttää varmuuskopiona, sillä se tallentuu samalle fyysiselle laitteelle kuin missä lähdelevy on. Siitä voi olla apua palautustilanteessa esim. inhimillisen virheen jälkeen, mutta ei fyysisen laitevian kohdatessa.

1.3.  Verkkojen hallinta (Neutron)

Neutron on alustan verkkojenhallintamoduuli, “networking as a service”. Sillä voidaan luoda virtualisoitu verkkoinfrastruktuuri, sisältäen verkkoja, reitittimiä ja palomuureja. Palvelimet ovat yhteydessä verkkoihin, jotka käyttävät sisäverkon IP-osoitteita, jotka voit itse määrittää. Reitittimiä käytetään tilanteessa jossa palvelinten on saatava yhteys ulkomaailmaan julkiseen Internetiin. Järjestelmän ulkopuolelta palvelimille pääsee käyttäen julkisia IP-osoitteita (floating IP addresses). Liikenteen rajoittamiseksi verkon tasolla voidaan käyttää palomuuria.

Nebula Pilven sisällä palvelinten tulee viitata toisiinsa vain sisäisillä ip-osoitteilla. Näin varmistetaan, että palvelun sisäinen liikenne pysyy virtuaalisen verkon sisällä.

1.4.  Object Storage (Ceph)

Object storage on skaalautuvaa objektipohjaista tallennustilaa johon tallentuu sekä objektien konteksti (metadata) ja sisältö. Objektit ja tiedostot kirjoitetaan usealle fyysiselle levylle jotka on hajautettu palvelinkeskukseen. Siten jos yhdessä palvelimessa tapahtuu vikatilanne, sen sisältö replikoituu toisilta aktiivisilta palvelimilta uusiin sijainteihin levyklusterissa. Object storageen on olemassa OpenStack Swift ja Amazon S3 -yhteensopivat rajapinnat. Myös hallintapaneelista voi muokata hakemistoja (containers) ja niiden sisältämiä objekteja.

Kaikki Nebula Pilven Object Storage -tallennustilaan tallennettu data on hajautettu vähintään kahteen saatavuusalueeseen (Availability zone).

Object Storage -hakemistojen (container) nimet ovat uniikkeja asiakkaiden kesken. Mikäli yrität luoda hakemistoa järjestelmässä jo olemassa olevalla nimellä, et voi luoda sitä vaan saat virheilmoituksen. 

Tekniset rajat ja koodit

Yleistä

  • Tasaisen suorituskyvyn takaamiseksi on LTK-OBJ palvelun suorituskyky rajattu / client
  • Rajoitin on operaatiopohjainen (GET,PUT jne) ja vaihtelee operaatiotyypeittäin. 
  • Rajoitin on lähdekohtainen.
  • Clientille päin välitetään rajoittimen tila requestin response headerien mukana 

Esimerkkinä GET request:

X-Ratelimit-Bucket:obj-general-limit
X-Ratelimit-Limit:500
X-Ratelimit-Remaining:497
X-Ratelimit-Reset:1447861054

Selitykset lyhyesti:

X-RateLimit-Reset: Unix timestamp when the rate limit counter will be reset
X-RateLimit-Limit: The total number of requests allowed in a time period
X-RateLimit-Remaining: Number of requests that can be made until the reset time
X-RateLimit-Bucket: Name of the limit hit

Jos aikaikkunan sisällä limitin sallimat requestit loppuvat kesken alkaa client saamaan 429 "Too many requests" paluukoodia. Näiden headereiden avulla älykäs ohjelma voi seurailla miltä limitti milloinkin näyttää ja milloin siihen osutaan ja tämän perusteella sitten throttlettaa/odottaa tilanteen vaatimalla tavalla.

Rajoitukset suorituskyky

  • PUT operaatioille 100 uutta operaatiota / 5 sekuntia / lähde. 
  • GET operaatioille 500 operaatiota / 10 sekuntia / lähde.

Suorituskyky
- 1 MB operaatioilla noin 20 MB/s (~160 Mbps)
- 5 MB operaatioilla noin 100 MB/s (~800 Mbps)

PUT operaation koon kasvaessa suorituskyky (Mb/s) kasvaa. Vastaavasti pienillä PUT operaatioilla suorituskyky (Mb/s) laskee.

Muut rajoitukset 

  • Enintään 500 000 objektia / container

 

 

1.5.  Hallintapaneeli (Horizon)

Horizon on selainpohjainen hallintapaneeli, jota voidaan käyttää palvelun hallintaan. Se sisältää helppokäyttöisen käyttöliittymän palvelun eri moduulien hallintaan ja sisältää seuraavat ominaisuudet:

  • Palvelinten luominen ja hallinta
  • SSH-avainten luominen ja hallinta
  • Levypinnan hallinta
  • Levykuvien hallinta
  • Turvamääritysten hallinta
  • Verkkojen, reitittimien ja palomuurien hallinta
  • Object storage -hakemistojen ja objektien hallinta

1.6. Saatavuusalueet (Availability zones)

Nebula Pilvi 9.0 sijaitsee useissa fyysisissä sijainneissa, jotka on eristetty toisistaan. Palvelussa näitä kutsutaan saatavuusalueiksi (Availability Zones). Jokainen saatavuusalue on sijoitettu erilliseen Nebulan palvelinkeskukseen, joilla on toisistaan riippumattomat resurssit ja komponentit. Palvelinkeskuksilla on omat virtalähteet, UPS-järjestelmät ja automaattiset varavirtakoneet. 

Saatavuusalue 

Sijainti

helsinki-1

Helsinki Lauttasaari

helsinki-2

Helsinki Pitäjänmäki

Palvelinkeskuksen vikaantuminen on harvinaista mutta mahdollista. Jos käytössä olevat palvelimet ja sovellukset on rakennettu vain yhden, vikaantuneen saatavuusalueen sisälle, mitkään palvelimista eivät ole saatavilla. Siksi on tärkeää rakentaa palvelimet ja ympäristön arkkitehtuuri hajautetusti molempiin saatavuusalueisiin. Myös yksittäisten komponenttien kuten verkkolaitteiden tai isäntäpalvelimien vikatilanteet ovat mahdollisia. Mahdollisten laitevikojen vaikutuksilta voi välttyä hajauttamalla palvelut useampaan saatavuusalueeseen.

Kaikki verkkoliikenne saatavuusalueiden välillä kulkee Nebulan omaa huippunopeaa runkoverkkoa pitkin. 

Moduuli

Resurssi

Sijainti

Compute

Palvelimet

Yksittäinen saatavuusalue

Volumes

LTK-SSD, SAS, ARK

Yksittäinen saatavuusalue

Network

Julkiset ip-osoitteet

Palvelun sisäiset verkot

Yksittäinen saatavuusalue

Useita saatavuusalueita

Object storage

Objektiperustainen tallennustila

Useita saatavuusalueita [1]

[1]

Objekteista on kolme kopiota, yksi kopio toisella saatavuusalueella.

Koska tiedostoja (poislukien Object Storage) ei replikoida saatavuusalueiden välillä, on tärkeää rakentaa ympäristö eri saatavuusalueille ja tehdä replikointi palvelimilla, esim. tietokantareplikointi tai hajautettu tiedostojärjestelmä.

Kaikki palvelun hallintaan liittyvät elementit, mm. avainten hallinta, rajapinnat sekä käyttöliittymä sijaitsevat aina useammalla saatavuusalueella.

Kaikki Nebula Pilvi 9.0 palveluun tallennettu sisältö on sijoitettuna ainoastaan Nebulan omiin palvelinkeskuksiin.

1.7. Turvamääritykset (Security groups)

Security group, turvamääritykset, tarkoittaa virtuaalista palomuuria joka kontrolloi verkkoliikennettä sekä lähtevää että saapuvaa liikennettä palvelimella. Saapuvasta liikenteestä käytetään termiä ingress ja lähtevää liikennettä kutsutaan termillä egress. Oletuksena palvelussa on turvamääritys joka estää kaiken sisäänpäin tulevan liikenteen. Turvamäärityksiä voi luoda useampia ja jokaiseen määritykseen voi luoda sääntöjä, joilla voi hallita yksittäisiin palvelimiin kohdistuvaa liikennettä.

 

HUOM! Turvamäärityssääntöjen määrä on rajoitettu!