En privat sky fødes

Og det skete i de dage, at der blev skrevet en hel masse i branche medier om virtualisering, cloud, SaaS, PaaS, IaaS og så videre, og så videre. Det var faktisk lidt ligesom vejret: alle taler om det, men ingen gør noget ved det.

Vi skal derfor ikke diskutere, hvorvidt cloud er fremtiden eller ej. Det er blevet diskuteret længe, og det er fremtiden for datacentre, der er ingen vej udenom. Så i stedet for bare at tale om det, så blev nogle kolleger og jeg enige om, at vi skal da til at lave vores helt egen private sky fra bunden af.

Men hvordan laver man så sin egen private sky? Det er jo ikke fordi, at der er mange lavpraktiske bud at finde rundt omkring, og resten er for det meste noget opblæst og ubrugligt salgsgas.

Vores private sky skal som udgangspunkt tjene følgende formål:

  • Testning og udvikling af sky-teknologier
  • Levering af virtuelle maskiner engros til vores forskellige afdelinger
  • Demonstration for kunder

Til at starte med skal man jo bruge noget hardware; mere om det senere. Derefter skal man bruge et dedikeret cloud operativ system. Som operativsystem har vi valgt at bruge SmartOS fra Joyent. Ud over at være open source og gratis, så er det bygget på det stabile Solaris, som bliver brugt af rigtig mange organisationer, hvor der går mænd rundt med skæg og blå briller.

SmartOS virker derfor som et logisk valg, hvis man ikke vil gå ned af den sti, som Oracle, Microsoft, Citrix og VMware fortæller os, vi skal gå ned af. Der er naturligvis mange andre gode grunde til at vælge SmartOS, men det skal vi heller ikke diskutere her, der er mange blogindlæg rundt omkring, som afdækker dette emne til fuldstændighed. Så det bliver altså SmartOS, vi vælger!

Illustration: Privatfoto

Nårh men, jeg har jo adgang til vores altid venlige og servicemindede hosting afdeling, som har deres helt eget datacenter. Så jeg tænkte, vi booter da bare SmartOS fra nogen af deres Cisco UCS B200 M2 servere. Men, men… så nemt skulle det ikke være, vi løb straks ind i de første problemer. Det viste sig, at de tilgængelige netværksdrivere ikke er SmartOS kompatible, så forsøget blev afbrudt af vores hosting-teknikere, og her er den fejl, som de viste mig:

Så I stedet for at spilde mere tid på noget, som givetvis ikke kommer til at virke i den nærmeste fremtid, så besluttede jeg mig for at indkøbe noget hardware, der allerede er testet med SmartOS. På SmartOS’s wiki kan man finde "Works for Me" Hardware Configurations-siden. Valget faldt på den følgende configuration, et X9DR7-LN4F motherboard fra Supermicro, 2 x Intel E5-2620 2GHz 6-core, 256MB DDR3 1600MHz, 6 x 1TB SAS2 hard diske.

Her er et billede af vores første server i et gammelt Chieftec chassis, den er proppet som en kalkun omkring juletid. Bemærk den hvide USB stang i bunden af billedet, jeg fulgte instruktionerne Creating a SmartOS Bootable USB Key, så jeg kunne lave en bootable USB stang. Hele maskinen startede op uden problemer, efter den fik lidt strøm, der er altså slet ikke nødvændigt at installere SmartOS, og en opgradering foregår på samme simple måde.

Henry Frankenstein: Look! It's moving. It's alive. It's alive... It's alive, it's moving, it's alive, it's alive, it's alive, it's alive, IT'S ALIVE!
Victor Moritz: Henry - In the name of God!
Henry Frankenstein: Oh, in the name of God! Now I know what it feels like to be God!

Fyldet er nu ved at blive flyttet over til et SuperChassis 826BE16-R920LPB chassis, så vi er i stand til at lave hot-swap med hard diskene.

Efter vi konstaterede, at vi var tilfredse med konfigurationen, så bestilte jeg en server til, denne gang samlet og burn-in testet. Denne fine server købt hos Monotil, kostede kun DKK 33.000 (Anno Domini 2013). Så vi har nu to identiske servere, som gør os I stand til at teste i et rigtigt sky miljø. Det næste trin er at rack-montere begge servere i vores bombesikre og revisor-certificerede redundante datacenter.

Følg med i næste uge, hvor vi skal til at orkestrere vores private sky...

Kommentarer (20)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Claus Jacobsen

Du har nok lidt ret Michael - Eftersom der ikke findes 256MB ramklodser til den type maskiner. :-)

Noget andet er Gordon - kan du løfte sløret for i hvilken retning du har tænkt dig at gå med systemet? Her tænker jeg mest på hvilken stack du rent faktisk vil gå med til orkestrering af skyen? (også selvom "det kommer i næste afsnit" :) )

  • 2
  • 0
Bjørn Connolly

Glæder mig til at høre om dine erfaringer med SmarOS. Jeg var godt nok tæt på at vælge SmartOS da jeg i sin tid (6 måneder siden) skulle igennem noget af det samme, bare på et betydeligt mindre budget. Den faldt dog på den manglende understøttelse af shared storage.

Jeg kan forstå at du ikke vil ind på bevæggrundene for valget af SmartOS. Men jeg kan ikke lade være med at blive lidt nysgerrig om valget, når du kun sammenligner med de properitære spillere på markedet. Der findes en del open source alternativer til SmartOS. Med flere features og bedre integration til de store orkestererings "stakke".

Er der forresten en grund til at i ikke PXE booter SmartOS noderne? Det var IMHO et af de bedste argumenter for at vælge SmartOS, da jeg i sin tid skulle vælge.

  • 0
  • 0
Claus Jacobsen

Jeg tror faktisk ikke der er noget som helst storage connected til systemet. Synes jeg kan læse ud af artiklen at det lige pt står helt isoleret.(selvom det står i et fint moderne datacenter, så er der nok ikke lige afsat storagesystem til "udvidet home lab" :-) ) Så er der jo ikke så meget at remote boote fra. - Tror måske de vælger en local storage - i et converged setup måske? Det ville helt klart give mening som experiment

  • 0
  • 0
Gordon Flemming

Bjørn, jeg ville ikke ind på bevæggrundene for valget af SmartOS fordi diskussionen kunne gå hen og blive lidt af en religionskrig. Jeg syntes det var langt mere spændende at se hvad man oplever efter man har taget beslutningen. Men kort sagt, SmartOS blev valgt fordi det er en Open Source fork af Solaris og understøtter ZFS, DTrace, Zoner og KVM. Det er ganske rigtigt at der findes Open Source Linux alternativer der integrerer langt bedre med de store orkestrerings stakke, men det var ikke det vi lagde vægt på ved valget.

Mht. shared storage, så er jeg ikke rigtig klar over hvad du mener med det? Som Kristian nævner, så findes der jo NFS til shared storage på fil niveau, og man kan udstille et ZFS volume som en iSCSI device og få shared storage på blok niveau.

Og grunden til at vi ikke PXE booter noderne er fordi der er kun to ;-) men når vi når over 10 noder, så kan det da godt være at vi laver en PXE server.

  • 2
  • 0
Bjørn Connolly
  • 0
  • 0
Bjørn Connolly

KVM kan vel stadig fungere med ie openstack saa er lidt I tvivl om hvad du mener Bjoern?

OpenStack er ikke kun hypervisoren, man får ikke meget foræret med OpenStack som standard og især ikke med SmartOS. Men det er jo også lige meget når Gordon ikke har vægtet det i beslutningen.

Jeg mindes dog at have set et par forsøg på SmartOS specifikke orkestrerings værktøjer. Om ikke andet kan man jo altid vælge Joyent's eget hvis man har pengene til det.

  • 0
  • 0
Bjørn Connolly

Jeg tror faktisk ikke der er noget som helst storage connected til systemet. Synes jeg kan læse ud af artiklen at det lige pt står helt isoleret.(selvom det står i et fint moderne datacenter, så er der nok ikke lige afsat storagesystem til "udvidet home lab" :-) ) Så er der jo ikke så meget at remote boote fra. - Tror måske de vælger en local storage - i et converged setup måske? Det ville helt klart give mening som experiment

Sådan læser jeg det også. Min kommentar var udelukkende baseret på grunden til at jeg fravalgte SmartOS.

Claus, som du selv så rigtigt kommer ind på, så hører traditionel "shared storage" ikke rigtigt til i en cloud arkitektur, vi vil jo gerne have en distribueret og skalerbar infrastruktur, eller en converged infrastructure om du vil. Jeg kan bla. anbefale denne blog Network Storage in the Cloud: Delicious but Deadly som godnat læsning ;-)

Jeg er bestemt ikke enig i at "shared storage" ikke hører til i en "cloud". Det kan den meget vel gøre, det hele afhænger af hvilken type cloud man vil lave. At Joyent ikke mener at det hører til, overrasker mig ikke.

  • 0
  • 0
Claus Jacobsen

Bjørn - Der er mange der ikke mener Shared storage hører til en sky-løsning, men det er nok mere et religionsspm. Men shared vejen er den "lette" løsning, og typisk den folk har adgang til fra starten af. Men det kommer nok meget an på hvad det er for tjenester man vil tilbyde i sin sky. Både distributed og shared har sine fordele, men det kræver også at man i meget høj grad kigger på sin netværksstruktur. Det er ikke helt nok bare at have et par gigabit netkort siddende i maskinerne :)

  • 0
  • 0
Bjørn Connolly

Bjørn - Der er mange der ikke mener Shared storage hører til en sky-løsning, men det er nok mere et religionsspm. Men shared vejen er den "lette" løsning, og typisk den folk har adgang til fra starten af. Men det kommer nok meget an på hvad det er for tjenester man vil tilbyde i sin sky.

Helt enig og det var også det jeg skrev. Min pointe var bare at fordi Joyent har designet en løsning uden og mener at det er den rigtige vej at gå. Betyder det ikke at den løsning er rigtig for alle.

Både distributed og shared har sine fordele, men det kræver også at man i meget høj grad kigger på sin netværksstruktur. Det er ikke helt nok bare at have et par gigabit netkort siddende i maskinerne :)

Distributed har nogle af de samme problemer, den er i høj grad afhængig af hjælp højere i stakken for at virke.

Man kan levere shared storage på andet en ethernet. Men det er normalt det billigste :-)

Jeg har som sådan intet imod Joyent's løsning og ville også selv have valgt den (selvom deres KVM er en del efter Linux). Jeg havde bare brug for shared storage, da min infrastruktur ikke er distribueret og nok ikke bliver det lige foreløbigt. Da en del af de services jeg skal bruge ikke har den mulighed.

  • 0
  • 0
Claus Jacobsen

Og umiddelbart ville jeg måske også gå shared vejen hvis jeg skulle gå nr sikker i det her tilfælde. - Taget i betragtning af at Gordon er CTO hos Miracle, så ville det her lille eksperiment helt sikkert kunne medføre en Oracle DB as a service på deres egen platform (og nok i virkeligheden derfor han valgte en solaris vej i første omgang. ZFS, snapshots og en masse andre ting vil helt sikkert være en fordel for at kunne minimere adm-udgifterne. Med mindre systemet kørte via IB (måske senere Silicon Photonics) så ville jeg blive på shared til databaserne. Men skalerbarheden vil nok unægtelig kræve en IB-infrastruktur på sigt. Ellers vil der nok komme for mange waitstates på grund af latency på tværs af netværket. Især hvis de tænker på in-memory eller der kommer større kunder på platformen som har brug for langt højere skalerbarhed end lige nogle få cores.

  • 0
  • 0
Gordon Flemming

Bjørn, jeg er enig med dig, altid det rigtige værktøj til opgaven. Så hvis shared storage løser din opgave bedst, så er det naturligvis det du skal bruge.

Claus, jeg takker for tilliden. Vi har naturligvis prøvet at installere OracleDB på maskinen, men da SmartOS er strippet totalt ned ift. Solaris så mangler OracleDB en del Solaris pakker som ikke umiddelbart lader sig installere på SmartOS. For det andet så kan Oracles, skal vi sige, noget avancerede licens struktur gøre det dyrt at køre OracleDB is SmartOS zoner. Og for det tredje så er det ikke så spændende for os at køre RDBMS på SmartOS, vi vil hellere bruge systemet til at eksperimentere med f.eks. Big Data.

Og når det kommer til Big Data så går ideologien på at data skal tættere på CPU'en, så selve noden får en slags "MapReduce" funktionalitet. Jeg giver dig ret i at det lyder rigtig lækkert med InfiniBand, Silicon Photonics og Quantum teleportation, men vi må jo ligesom først benytte os af de teknologier er indenfor økonomisk rækkevidde, og introducere resten senere. Jeg finder personligt stor inspiration i den her tilgang som google løftede sløret for Google uncloaks once-secret server for nogle år siden.

  • 0
  • 0
Claus Jacobsen

Gordon - du har fuldkommen ret i det med licenserne til Oracle. (men hvis der er nogen der kan få "rabat" er det vel jer :) Og på et eller andet tidspunkt må de vel indse at der skal ændringer til hvis folk vil køre sådan noget gennem skyerne. Det er jo fuldkommen "tåget" hvor tingene er i en sky. Så længe man er påpasselig med at huske indirect licensing også :-) )

Infiniband kan køre node2node uden en switch hvis i kun har 2 kasser at lege med. (og jeg snakkede ikke lige om teleportation. :) Men intels lille netværksløsning vil meget snart blive interessante for big data løsninger.)

Men du har ret i at både Google's HW-implementeringer og også Facebooks open compute project er nogle yderst interessante studier i hvor barebone man kan lave et setup til hyperscale niveau. (ja ok - jeg tør faktisk også godt sige Microsofts seneste designløsninger til deres Azure kunne være meget værd at kigge på. - synes bare det ligner lidt for meget supermicro's "cloud" løsninger. :-) )

  • 0
  • 0
Log ind eller Opret konto for at kommentere