Flexiant Cloud Orchestrator: dak li jiġi miegħu

Flexiant Cloud Orchestrator: dak li jiġi miegħu

Biex nipprovdu servizzi IaaS (Ċentru tad-Data Virtwali), aħna Rusonyx nużaw orkestratur kummerċjali Flexiant Cloud Orchestrator (FCO). Din is-soluzzjoni għandha arkitettura pjuttost unika, li tiddistingwiha minn Openstack u CloudStack, magħrufa mill-pubbliku ġenerali.

KVM, VmWare, Xen, Virtuozzo6/7, kif ukoll kontenituri mill-istess Virtuozzo huma appoġġjati bħala compute node hypervisors. Għażliet ta 'ħażna appoġġjati jinkludu Ħażna lokali, NFS, Ceph u Virtuozzo.

FCO jappoġġja l-ħolqien u l-ġestjoni ta 'raggruppamenti multipli minn interface wieħed. Jiġifieri, tista 'timmaniġġja cluster Virtuozzo u cluster KVM + Ceph billi taqleb bejniethom bi klikk tal-maws.

Fil-qalba tagħha, FCO hija soluzzjoni komprensiva għall-fornituri tal-cloud, li, minbarra l-orkestrazzjoni, tinkludi wkoll kontijiet, bis-settings kollha, plugins ta 'ħlas, fatturi, notifiki, bejjiegħa mill-ġdid, tariffi, eċċ. Madankollu, il-parti tal-kontijiet mhix kapaċi tkopri l-isfumaturi Russi kollha, għalhekk abbandunajna l-użu tagħha favur soluzzjoni oħra.

Ninsab kuntent ħafna bis-sistema flessibbli għad-distribuzzjoni tad-drittijiet għar-riżorsi kollha tal-cloud: immaġini, diski, prodotti, servers, firewalls - dan kollu jista 'jiġi "kondiviżi" u jingħata drittijiet bejn l-utenti, u anke bejn l-utenti ta' klijenti differenti. Kull klijent jista 'joħloq diversi ċentri tad-dejta indipendenti fil-cloud tagħhom u jamministrahom minn pannell tal-kontroll wieħed.

Flexiant Cloud Orchestrator: dak li jiġi miegħu

Arkitettonalment, FCO jikkonsisti f'diversi partijiet, li kull waħda minnhom għandha l-kodiċi indipendenti tagħha, u xi wħud għandhom id-database tagħhom stess.

Skyline – admin u user interface
Jade – loġika tan-negozju, kontijiet, ġestjoni tal-kompiti
tigerlily – koordinatur tas-servizz, jimmaniġġja u jikkoordina l-iskambju ta' informazzjoni bejn il-loġika tan-negozju u l-clusters.
XVPMManager – ġestjoni ta' elementi ta' cluster: nodi, ħażna, netwerk u magni virtwali.
XVPAgent – aġent installat fuq in-nodi biex jinteraġixxi ma' XVPManager

Flexiant Cloud Orchestrator: dak li jiġi miegħu

Qed nippjanaw li ninkludu storja dettaljata dwar l-arkitettura ta 'kull komponent f'serje ta' artikli, jekk, ovvjament, is-suġġett iqajjem interess.

Il-vantaġġ ewlieni ta 'FCO ġej min-natura tiegħu "b'kaxxa". Is-sempliċità u l-minimaliżmu huma għas-servizz tiegħek. Għan-nodu tal-kontroll, hija allokata magna virtwali waħda fuq Ubuntu, li fiha huma installati l-pakketti kollha meħtieġa. Is-settings kollha jitqiegħdu f'fajls ta' konfigurazzjoni fil-forma ta' valur varjabbli:

# cat /etc/extility/config/vars
…
export LIMIT_MAX_LIST_ADMIN_DEFAULT="30000"
export LIMIT_MAX_LIST_USER_DEFAULT="200"
export LOGDIR="/var/log/extility"
export LOG_FILE="misc.log"
export LOG_FILE_LOG4JHOSTBILLMODULE="hostbillmodule.log"
export LOG_FILE_LOG4JJADE="jade.log"
export LOG_FILE_LOG4JTL="tigerlily.log"
export LOG_FILE_LOG4JXVP="xvpmanager.log"
export LOG_FILE_VARS="misc.log"
…

Il-konfigurazzjoni kollha hija inizjalment editjata f'mudelli, imbagħad jitnieda l-ġeneratur
#build-config li se jiġġenera fajl vars u jikkmanda lis-servizzi biex jerġgħu jaqraw il-konfigurazzjoni. L-interface tal-utent huwa sabiħ u jista 'jkun faċilment tad-ditta.

Flexiant Cloud Orchestrator: dak li jiġi miegħu

Kif tistgħu taraw, l-interface jikkonsisti minn widgets li jistgħu jiġu kkontrollati mill-utent. Huwa jista 'faċilment iżid/tneħħi widgets mill-paġna, u b'hekk joħloq id-dashboard li għandu bżonn.

Minkejja n-natura magħluqa tiegħu, l-FCO hija sistema li tista’ tiġi personalizzata ħafna. Għandu numru kbir ta 'settings u punti ta' dħul biex jibdel il-fluss tax-xogħol:

  1. Plugins personalizzati huma appoġġjati, pereżempju, tista 'tikteb il-metodu tal-kontijiet tiegħek jew ir-riżors estern tiegħek biex tipprovdi lill-utent b'
  2. L-iskattaturi tad-dwana għal ċerti avvenimenti huma appoġġjati, pereżempju, iż-żieda tal-ewwel magna virtwali lil klijent meta tinħoloq
  3. Widgets tad-dwana fl-interface huma appoġġjati, pereżempju, l-inkorporazzjoni ta 'vidjo ta' YouTube direttament fl-interface tal-utent.

Il-personalizzazzjoni kollha hija miktuba f'FDL, li hija bbażata fuq Lua. Jekk taf Lua, mhux se jkun hemm problemi bl-FDL.

Hawnhekk huwa eżempju ta 'wieħed mill-aktar sempliċi triggers li nużaw. Dan il-grillu ma jippermettix lill-utenti jaqsmu l-immaġini tagħhom stess ma' klijenti oħra. Aħna nagħmlu dan biex nevitaw utent wieħed milli joħloq immaġni malizzjuża għal utenti oħra.

function register()
    return {"pre_user_api_publish"}
end
   
function pre_user_api_publish(p)  
    if(p==nil) then
        return{
            ref = "cancelPublishImage",
            name = "Cancel publishing",
            description = "Cancel all user’s images publishing",
            triggerType = "PRE_USER_API_CALL",
            triggerOptions = {"publishResource", "publishImage"},
            api = "TRIGGER",
            version = 1,
        }
    end

    -- Turn publishing off
    return {exitState = "CANCEL"}
   
end

Il-funzjoni tar-reġistru se tissejjaħ mill-qalba tal-FCO. Se jirritorna l-isem tal-funzjoni li għandha tissejjaħ. Il-parametru "p" ta 'din il-funzjoni jaħżen il-kuntest tas-sejħa, u l-ewwel darba li tissejjaħ se jkun vojt (ness). Li se jippermettilna nirreġistraw il-grillu tagħna. Fil-triggerType aħna nindikaw li l-grillu jiġi invokat QABEL l-operazzjoni tal-pubblikazzjoni, u jaffettwa biss lill-utenti. Naturalment, inħallu lill-amministraturi tas-sistema jippubblikaw kollox. F'triggerOptions niddettaljaw l-operazzjonijiet li għalihom se jispara l-grillu.

U l-ħaġa prinċipali hija r-ritorn {exitState = "CANCEL"}, u huwa għalhekk li l-grillu ġie żviluppat. Se jirritorna l-falliment meta l-utent jipprova jaqsam l-immaġni tiegħu fil-pannell tal-kontroll.

Fl-arkitettura FCO, kwalunkwe oġġett (disk, server, immaġni, netwerk, adapter tan-netwerk, eċċ.) huwa rappreżentat bħala entità tar-Riżorsi, li għandha parametri komuni:

  • UUID tar-riżorsi
  • isem tar-riżorsi
  • tip ta' riżorsa
  • Sid tar-riżorsi UUID
  • status tar-riżorsi (attiv, inattiv)
  • metadata tar-riżorsi
  • ċwievet tar-riżorsi
  • UUID tal-prodott li għandu r-riżorsa
  • riżorsa VDC

Dan huwa konvenjenti ħafna meta taħdem bl-użu ta 'API, meta r-riżorsi kollha jinħadmu skond l-istess prinċipju. Il-prodotti huma kkonfigurati mill-fornitur u ordnati mill-klijent. Peress li l-kontijiet tagħna huma fuq in-naħa, il-klijent jista' jordna liberament kwalunkwe prodott mill-panel. Dan se jiġi kkalkulat aktar tard fil-kontijiet. Il-prodott jista 'jkun indirizz IP fis-siegħa, GB addizzjonali ta' disk fis-siegħa, jew sempliċiment server.

Ċwievet jistgħu jintużaw biex jimmarkaw ċerti riżorsi biex tinbidel il-loġika ta 'ħidma magħhom. Pereżempju, nistgħu nimmmarkaw tliet nodi fiżiċi biċ-ċavetta tal-Piż, u timmarka xi klijenti bl-istess ċavetta, u b'hekk nallokaw dawn in-nodi personalment lil dawn il-klijenti. Aħna nużaw dan il-mekkaniżmu għal klijenti VIP li ma jogħġbux ġirien ħdejn il-VMs tagħhom. Il-funzjonalità nnifisha tista 'tintuża ħafna aktar.

Il-mudell tal-liċenzjar jinvolvi l-ħlas għal kull qalba tal-proċessur ta 'node fiżiku. L-ispiża hija affettwata wkoll min-numru ta 'tipi ta' cluster. Jekk qed tippjana li tuża KVM u VMware flimkien, pereżempju, l-ispiża tal-liċenzja tiżdied.

FCO huwa prodott sħiħ, il-funzjonalità tiegħu hija rikka ħafna, għalhekk qed nippjanaw li nippreparaw diversi artikoli f'daqqa b'deskrizzjoni dettaljata tal-funzjonament tal-parti tan-netwerk.

Wara li ħdimna ma' dan l-orkestratur għal diversi snin, nistgħu nimmakkruh bħala adattat ħafna. Alas, il-prodott mhuwiex mingħajr difetti:

  • kellna nottimizzaw id-database għax il-mistoqsijiet bdew jonqsu hekk kif żdied l-ammont ta' data fihom;
  • wara inċident wieħed, il-mekkaniżmu ta 'rkupru ma ħadimx minħabba bug, u kellna nirkupraw il-karozzi ta' klijenti sfortunati bl-użu ta 'sett ta' skripts tagħna stess;
  • Il-mekkaniżmu għall-iskoperta tan-nuqqas ta 'disponibbiltà tan-nodi huwa hardwired fil-kodiċi u ma jistax jiġi personalizzat. Jiġifieri, ma nistgħux noħolqu politiki tagħna stess biex niddeterminaw in-nuqqas ta 'disponibbiltà ta' nodu.
  • il-qtugħ tas-siġar mhux dejjem ikun dettaljat. Xi drabi, meta jkollok bżonn tinżel għal livell baxx ħafna biex tifhem problema partikolari, ma jkollokx biżżejjed kodiċi tas-sors biex xi komponenti jifhmu għaliex;

TOTAL: B'mod ġenerali, l-impressjonijiet tal-prodott huma tajbin. Aħna qegħdin f'kuntatt kostanti mal-iżviluppaturi tal-orkestratur. Il-guys huma disposti għal kooperazzjoni kostruttiva.

Minkejja s-sempliċità tiegħu, FCO għandu funzjonalità wiesgħa. F'artikli futuri qed nippjanaw li nidħlu aktar fil-fond fis-suġġetti li ġejjin:

  • netwerking fl-FCO
  • jipprovdu protokoll ta' rkupru ħajjin u FQP
  • tikteb il-plugins u l-widgets tiegħek
  • jgħaqqdu servizzi addizzjonali bħal Load Balancer u Acronis
  • backup
  • mekkaniżmu unifikat għall-konfigurazzjoni u l-konfigurazzjoni ta 'nodi
  • l-ipproċessar tal-metadata tal-magni virtwali

ZY Ikteb fil-kummenti jekk inti interessat f'aspetti oħra. Ibqa' sintonizzat!

Sors: www.habr.com

Żid kumment