Blog: Bøllebank i skyen

Jo jo da, FiFo virker stadig ikke, og kunderne er stadig meget kede af, at det ikke fungerer. I mit sidste blogindlæg havde jeg remset alle alternativer til FiFo op, så nu er spørgsmålet – hvilket af disse alternativer vil kunne opfylde vores behov?

Ingen…. så min løsning er: lav et nyt GUI selv, jeg mener, hvor svært kan det være? Mit argument er, at siden vi kun har brug for basis funktionalitet, så er det eneste vi skal lave, en slags webificeret wrapper til imgadm og vmadm, og det ser jo pærenemt ud!

Lige så snart som jeg havde færdiggjort min tanke, så begyndte den unge vellugtende og fremadstormende konsulent med rundsave på albuerne at argumentere for, at det var da komplet spild af tid. Det var da meget bedre at bidrage til det eksisterende projekt FiFo sammen med alle de andre bidragsydere og høste alle medfølgende fordele ved et rigtigt open source projekt. Men jeg var ikke helt overbevist; jeg syntes, at FiFo projektet allerede var blevet for stort, og alt for mange ting var blevet efterladt i ustabil stand, mens man stormede frem for at tilføre ny funktionalitet. Og så var jeg sikker på, at ingen andre ville kunne tilslutte sig min minimalistiske tilgang til tingene.

På billedet ovenfor kan man se, hvordan den residerende bølle-konsulent er i gang med at overbevise mig (det er mig, der ligger forsvarsløs på gulvet) om alle de lykkelige fordele og glæder, der er ved Open Source, ligesom han fremfører, at sharing is caring. Efter at være overvældet af slående og kærlige argumenter, så indvilligede jeg i at udgive kildekoden på Github, hvis det nogensinde lykkedes at lave den fordømte tingest.

I et forsøg på at holde tingene simple og ikke falde i de samme faldgruber som FiFo, så er det nødvendigt at holde ambitionerne til et absolut minimum, eller endnu bedre, slet ikke have nogen ambitioner overhovedet. I hvert fald, så kan ambitionerne, eller mangel på samme opsummeres til:

Generel funtionalitet

Et simpelt grafisk bruger-interface skrevet i node.js, der kører i en enkelt SmartOS Zone. Administration foregår via SSH ind i Global Zone. Alt virtuel maskine og brugerinformation lagres i JSON filer. User session tracking klares med en enkelt cookie.

User Access Control

• Logon

• Logoff

Virtual Machine administration

• List

• Create

• Delete

• Start/Stop/Reboot

• Update

• Snapshot create delete rollback

• Get VNC info

• Automatic IP delegation

Som det nok kan ses af ovenstående, så er det meget letvægts, og det skal bruges i skyen; derfor blev projektet LightlyCloudy…. Der er kun en ekstern afhængighed, og det er SSH2, som bliver brugt til at SSH’e ind i Global Zone for at eksekvere imgadm og vmadm commandoerne. Man vil sikkert lægge mærke til det komplette fravær af en backend database, der er simpelthen ikke nogen grund til at bruge en database og tilføre unødig kompleksitet med det lille antal brugere, vi har tænkt os at understøtte på nuværende tidspunkt.

Siden vi ikke har nogle umiddelbare planer om at frelse verden indenfor de næste par uger, så er der funktionalitet, som bliver nødt til at vente til en version 2.0 af LightlyCloudy. Den udvidede funktionalitet er, bare for at nævene et par eksempler, understøttelse af flere hypervisors, virtual network administration, prerequisite checks for ressourcer og performance.

Med en klar plan i hovedet, er jeg startet på at kode det hele selv, jeg leder stadig efter frivillige kode bidragsydere, men har ikke fundet nogen endnu; jeg overvejer kraftigt at bruge nogle af de effektive overtalelsemetoder, jeg har lært tidligere.

Anyway, stay tuned for næste episode, hvor jeg vil dele ud af koden og de opnåede erfaringer.

Posted in computer.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>