ఫ్లెక్సియంట్ క్లౌడ్ ఆర్కెస్ట్రేటర్: దానితో ఏమి వస్తుంది

ఫ్లెక్సియంట్ క్లౌడ్ ఆర్కెస్ట్రేటర్: దానితో ఏమి వస్తుంది

IaaS (వర్చువల్ డేటా సెంటర్) సేవలను అందించడానికి, మేము రుసోనిక్స్ మేము వాణిజ్య ఆర్కెస్ట్రేటర్‌ని ఉపయోగిస్తాము ఫ్లెక్సియంట్ క్లౌడ్ ఆర్కెస్ట్రేటర్ (FCO). ఈ పరిష్కారం ఒక ప్రత్యేకమైన నిర్మాణాన్ని కలిగి ఉంది, ఇది సాధారణ ప్రజలకు తెలిసిన Openstack మరియు CloudStack నుండి వేరు చేస్తుంది.

KVM, VmWare, Xen, Virtuozzo6/7, అలాగే అదే Virtuozzo నుండి కంటైనర్‌లు కంప్యూట్ నోడ్ హైపర్‌వైజర్‌లుగా మద్దతునిస్తాయి. మద్దతు ఉన్న నిల్వ ఎంపికలలో లోకల్, NFS, Ceph మరియు Virtuozzo నిల్వ ఉన్నాయి.

ఒకే ఇంటర్‌ఫేస్ నుండి బహుళ క్లస్టర్‌ల సృష్టి మరియు నిర్వహణకు FCO మద్దతు ఇస్తుంది. అంటే, మీరు మౌస్ క్లిక్‌తో వాటి మధ్య మారడం ద్వారా Virtuozzo క్లస్టర్ మరియు KVM + Ceph క్లస్టర్‌లను నిర్వహించవచ్చు.

దాని ప్రధాన భాగంలో, FCO అనేది క్లౌడ్ ప్రొవైడర్‌ల కోసం ఒక సమగ్ర పరిష్కారం, ఇది ఆర్కెస్ట్రేషన్‌తో పాటు, అన్ని సెట్టింగ్‌లు, చెల్లింపు ప్లగిన్‌లు, ఇన్‌వాయిస్‌లు, నోటిఫికేషన్‌లు, పునఃవిక్రేతలు, టారిఫ్‌లు మొదలైన వాటితో పాటు బిల్లింగ్‌ను కూడా కలిగి ఉంటుంది. అయినప్పటికీ, బిల్లింగ్ భాగం అన్ని రష్యన్ సూక్ష్మ నైపుణ్యాలను కవర్ చేయగలదు, కాబట్టి మేము మరొక పరిష్కారానికి అనుకూలంగా దాని ఉపయోగాన్ని విడిచిపెట్టాము.

అన్ని క్లౌడ్ వనరులకు హక్కులను పంపిణీ చేయడానికి అనువైన సిస్టమ్‌తో నేను చాలా సంతోషిస్తున్నాను: చిత్రాలు, డిస్క్‌లు, ఉత్పత్తులు, సర్వర్లు, ఫైర్‌వాల్‌లు - వీటన్నింటిని వినియోగదారుల మధ్య మరియు వివిధ క్లయింట్‌ల వినియోగదారుల మధ్య కూడా “షేర్” చేయవచ్చు మరియు హక్కులను మంజూరు చేయవచ్చు. ప్రతి క్లయింట్ వారి క్లౌడ్‌లో అనేక స్వతంత్ర డేటా కేంద్రాలను సృష్టించవచ్చు మరియు వాటిని ఒకే నియంత్రణ ప్యానెల్ నుండి నిర్వహించవచ్చు.

ఫ్లెక్సియంట్ క్లౌడ్ ఆర్కెస్ట్రేటర్: దానితో ఏమి వస్తుంది

నిర్మాణపరంగా, FCO అనేక భాగాలను కలిగి ఉంటుంది, వీటిలో ప్రతి దాని స్వంత స్వతంత్ర కోడ్ మరియు కొన్ని వాటి స్వంత డేటాబేస్ను కలిగి ఉంటాయి.

స్కైలైన్ - అడ్మిన్ మరియు యూజర్ ఇంటర్ఫేస్
జాడే - వ్యాపార లాజిక్, బిల్లింగ్, టాస్క్ మేనేజ్‌మెంట్
టైగర్లీలీ - సర్వీస్ కోఆర్డినేటర్, వ్యాపార తర్కం మరియు క్లస్టర్‌ల మధ్య సమాచార మార్పిడిని నిర్వహిస్తుంది మరియు సమన్వయం చేస్తుంది.
XVP మేనేజర్ - క్లస్టర్ మూలకాల నిర్వహణ: నోడ్స్, స్టోరేజ్, నెట్‌వర్క్ మరియు వర్చువల్ మిషన్లు.
XVPAgent - XVPManagerతో పరస్పర చర్య చేయడానికి నోడ్స్‌లో ఇన్‌స్టాల్ చేయబడిన ఏజెంట్

ఫ్లెక్సియంట్ క్లౌడ్ ఆర్కెస్ట్రేటర్: దానితో ఏమి వస్తుంది

వాస్తవానికి, అంశం ఆసక్తిని రేకెత్తిస్తే, కథనాల శ్రేణిలో ప్రతి భాగం యొక్క ఆర్కిటెక్చర్ గురించి వివరణాత్మక కథనాన్ని చేర్చాలని మేము ప్లాన్ చేస్తున్నాము.

FCO యొక్క ప్రధాన ప్రయోజనం దాని "బాక్స్డ్" స్వభావం నుండి వచ్చింది. సరళత మరియు మినిమలిజం మీ సేవలో ఉన్నాయి. నియంత్రణ నోడ్ కోసం, ఉబుంటులో ఒక వర్చువల్ మెషీన్ కేటాయించబడింది, దీనిలో అవసరమైన అన్ని ప్యాకేజీలు ఇన్‌స్టాల్ చేయబడతాయి. అన్ని సెట్టింగ్‌లు వేరియబుల్-విలువ రూపంలో కాన్ఫిగరేషన్ ఫైల్‌లలో ఉంచబడతాయి:

# 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"
…

మొత్తం కాన్ఫిగరేషన్ ప్రారంభంలో టెంప్లేట్‌లలో సవరించబడుతుంది, తర్వాత జనరేటర్ ప్రారంభించబడుతుంది
#build-config ఇది vars ఫైల్‌ను ఉత్పత్తి చేస్తుంది మరియు కాన్ఫిగరేషన్‌ను మళ్లీ చదవమని సేవలను ఆదేశిస్తుంది. వినియోగదారు ఇంటర్‌ఫేస్ బాగుంది మరియు సులభంగా బ్రాండ్ చేయవచ్చు.

ఫ్లెక్సియంట్ క్లౌడ్ ఆర్కెస్ట్రేటర్: దానితో ఏమి వస్తుంది

మీరు చూడగలిగినట్లుగా, ఇంటర్‌ఫేస్ వినియోగదారుచే నియంత్రించబడే విడ్జెట్‌లను కలిగి ఉంటుంది. అతను పేజీ నుండి విడ్జెట్‌లను సులభంగా జోడించవచ్చు/తీసివేయవచ్చు, తద్వారా అతనికి అవసరమైన డాష్‌బోర్డ్‌ను సృష్టించవచ్చు.

దాని క్లోజ్డ్ స్వభావం ఉన్నప్పటికీ, FCO అనేది అత్యంత అనుకూలీకరించదగిన వ్యవస్థ. ఇది వర్క్‌ఫ్లోను మార్చడానికి భారీ సంఖ్యలో సెట్టింగ్‌లు మరియు ఎంట్రీ పాయింట్లను కలిగి ఉంది:

  1. అనుకూల ప్లగిన్‌లకు మద్దతు ఉంది, ఉదాహరణకు, వినియోగదారుకు అందించడానికి మీరు మీ స్వంత బిల్లింగ్ పద్ధతిని లేదా మీ స్వంత బాహ్య వనరును వ్రాయవచ్చు
  2. నిర్దిష్ట ఈవెంట్‌ల కోసం అనుకూల ట్రిగ్గర్‌లకు మద్దతు ఉంది, ఉదాహరణకు, క్లయింట్‌ను సృష్టించినప్పుడు మొదటి వర్చువల్ మెషీన్‌ను జోడించడం
  3. ఇంటర్‌ఫేస్‌లోని అనుకూల విడ్జెట్‌లకు మద్దతు ఉంది, ఉదాహరణకు, YouTube వీడియోని నేరుగా వినియోగదారు ఇంటర్‌ఫేస్‌లో పొందుపరచడం.

అన్ని అనుకూలీకరణలు లువాపై ఆధారపడిన FDLలో వ్రాయబడ్డాయి. మీరు లువా గురించి తెలుసుకుంటే, FDLతో ఎటువంటి సమస్యలు ఉండవు.

మేము ఉపయోగించే సరళమైన ట్రిగ్గర్‌లలో ఒకదానికి ఉదాహరణ ఇక్కడ ఉంది. ఈ ట్రిగ్గర్ వినియోగదారులు తమ స్వంత చిత్రాలను ఇతర క్లయింట్‌లతో పంచుకోవడానికి అనుమతించదు. ఒక వినియోగదారు ఇతర వినియోగదారుల కోసం హానికరమైన చిత్రాన్ని సృష్టించకుండా నిరోధించడానికి మేము దీన్ని చేస్తాము.

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

రిజిస్టర్ ఫంక్షన్ FCO కెర్నల్ ద్వారా పిలువబడుతుంది. ఇది పిలవబడే ఫంక్షన్ పేరును తిరిగి ఇస్తుంది. ఈ ఫంక్షన్ యొక్క “p” పరామితి కాల్ సందర్భాన్ని నిల్వ చేస్తుంది మరియు మొదటిసారి పిలిచినప్పుడు అది ఖాళీగా ఉంటుంది (nil). ఇది మా ట్రిగ్గర్‌ను నమోదు చేసుకోవడానికి అనుమతిస్తుంది. ట్రిగ్గర్ టైప్‌లో పబ్లిష్ ఆపరేషన్‌కు ముందు ట్రిగ్గర్ అమలు చేయబడిందని మరియు వినియోగదారులను మాత్రమే ప్రభావితం చేస్తుందని మేము సూచిస్తున్నాము. వాస్తవానికి, మేము సిస్టమ్ నిర్వాహకులను ప్రతిదీ ప్రచురించడానికి అనుమతిస్తాము. ట్రిగ్గర్ ఆప్షన్స్‌లో మేము ట్రిగ్గర్ ఏ ఆపరేషన్ల కోసం కాల్పులు జరుపుతుందో వివరిస్తాము.

మరియు ప్రధాన విషయం ఏమిటంటే {exitState = “రద్దు”} తిరిగి రావడం, అందుకే ట్రిగ్గర్ అభివృద్ధి చేయబడింది. వినియోగదారు నియంత్రణ ప్యానెల్‌లో వారి చిత్రాన్ని భాగస్వామ్యం చేయడానికి ప్రయత్నించినప్పుడు ఇది వైఫల్యాన్ని అందిస్తుంది.

FCO ఆర్కిటెక్చర్‌లో, ఏదైనా వస్తువు (డిస్క్, సర్వర్, ఇమేజ్, నెట్‌వర్క్, నెట్‌వర్క్ అడాప్టర్ మొదలైనవి) సాధారణ పారామితులను కలిగి ఉన్న రిసోర్స్ ఎంటిటీగా సూచించబడుతుంది:

  • వనరు UUID
  • వనరు పేరు
  • వనరు రకం
  • వనరుల యజమాని UUID
  • వనరుల స్థితి (క్రియాశీల, నిష్క్రియ)
  • వనరు మెటాడేటా
  • వనరుల కీలు
  • వనరును కలిగి ఉన్న ఉత్పత్తి యొక్క UUID
  • వనరు VDC

APIని ఉపయోగించి పని చేస్తున్నప్పుడు, అన్ని వనరులు ఒకే సూత్రం ప్రకారం పని చేసినప్పుడు ఇది చాలా సౌకర్యవంతంగా ఉంటుంది. ఉత్పత్తులు ప్రొవైడర్ ద్వారా కాన్ఫిగర్ చేయబడతాయి మరియు క్లయింట్ ద్వారా ఆర్డర్ చేయబడతాయి. మా బిల్లింగ్ వైపు ఉన్నందున, క్లయింట్ ప్యానెల్ నుండి ఏదైనా ఉత్పత్తిని ఉచితంగా ఆర్డర్ చేయవచ్చు. ఇది బిల్లింగ్‌లో తర్వాత లెక్కించబడుతుంది. ఉత్పత్తి గంటకు IP చిరునామా, గంటకు అదనపు GB డిస్క్ లేదా సర్వర్ కావచ్చు.

నిర్దిష్ట వనరులతో పని చేసే తర్కాన్ని మార్చడానికి వాటిని గుర్తించడానికి కీలను ఉపయోగించవచ్చు. ఉదాహరణకు, మేము బరువు కీతో మూడు భౌతిక నోడ్‌లను గుర్తించవచ్చు మరియు అదే కీతో కొంతమంది క్లయింట్‌లను గుర్తించవచ్చు, తద్వారా ఈ నోడ్‌లను వ్యక్తిగతంగా ఈ క్లయింట్‌లకు కేటాయించవచ్చు. వారి VMల పక్కన ఉన్న పొరుగువారిని ఇష్టపడని VIP క్లయింట్‌ల కోసం మేము ఈ విధానాన్ని ఉపయోగిస్తాము. కార్యాచరణను మరింత విస్తృతంగా ఉపయోగించవచ్చు.

లైసెన్సింగ్ మోడల్‌లో ఫిజికల్ నోడ్ యొక్క ప్రతి ప్రాసెసర్ కోర్ కోసం చెల్లించడం ఉంటుంది. క్లస్టర్ రకాల సంఖ్య ద్వారా ఖర్చు కూడా ప్రభావితమవుతుంది. మీరు KVM మరియు VMwareలను కలిపి ఉపయోగించాలని ప్లాన్ చేస్తే, ఉదాహరణకు, లైసెన్స్ ధర పెరుగుతుంది.

FCO అనేది పూర్తి స్థాయి ఉత్పత్తి, దాని కార్యాచరణ చాలా గొప్పది, కాబట్టి మేము నెట్‌వర్క్ భాగం యొక్క పనితీరు యొక్క వివరణాత్మక వివరణతో ఒకేసారి అనేక కథనాలను సిద్ధం చేయాలని ప్లాన్ చేస్తున్నాము.

ఈ ఆర్కెస్ట్రేటర్‌తో చాలా సంవత్సరాలు పనిచేసినందున, మేము దానిని చాలా సరిఅయినదిగా గుర్తించవచ్చు. అయ్యో, ఉత్పత్తి లోపాలు లేకుండా లేదు:

  • మేము డేటాబేస్‌ను ఆప్టిమైజ్ చేయాల్సి వచ్చింది ఎందుకంటే వాటిలోని డేటా మొత్తం పెరిగేకొద్దీ ప్రశ్నలు మందగించడం ప్రారంభించాయి;
  • ఒక ప్రమాదం తర్వాత, బగ్ కారణంగా రికవరీ మెకానిజం పని చేయలేదు మరియు మేము మా స్వంత స్క్రిప్ట్‌లను ఉపయోగించి దురదృష్టకర క్లయింట్‌ల కార్లను తిరిగి పొందవలసి వచ్చింది;
  • నోడ్ లభ్యతను గుర్తించే విధానం కోడ్‌లో హార్డ్‌వైర్డ్ చేయబడింది మరియు అనుకూలీకరించబడదు. అంటే, నోడ్ యొక్క లభ్యతను నిర్ణయించడానికి మేము మా స్వంత విధానాలను సృష్టించలేము.
  • లాగింగ్ ఎల్లప్పుడూ వివరంగా ఉండదు. కొన్నిసార్లు, మీరు ఒక నిర్దిష్ట సమస్యను అర్థం చేసుకోవడానికి చాలా తక్కువ స్థాయికి వెళ్లవలసి వచ్చినప్పుడు, కొన్ని భాగాలు ఎందుకు అర్థం చేసుకోవడానికి మీకు తగినంత సోర్స్ కోడ్ ఉండదు;

మొత్తం: సాధారణంగా, ఉత్పత్తి యొక్క ముద్రలు మంచివి. మేము ఆర్కెస్ట్రేటర్ డెవలపర్‌లతో నిరంతరం సంప్రదిస్తున్నాము. కుర్రాళ్ళు నిర్మాణాత్మక సహకారానికి మొగ్గు చూపుతారు.

దాని సరళత ఉన్నప్పటికీ, FCO విస్తృత కార్యాచరణను కలిగి ఉంది. భవిష్యత్ కథనాలలో మేము ఈ క్రింది అంశాలను లోతుగా పరిశోధించడానికి ప్లాన్ చేస్తాము:

  • FCO వద్ద నెట్‌వర్కింగ్
  • లైవ్-రికవరీ మరియు FQP ప్రోటోకాల్‌ను అందిస్తోంది
  • మీ స్వంత ప్లగిన్‌లు మరియు విడ్జెట్‌లను వ్రాయడం
  • లోడ్ బ్యాలెన్సర్ మరియు అక్రోనిస్ వంటి అదనపు సేవలను కనెక్ట్ చేస్తోంది
  • బ్యాకప్
  • నోడ్‌లను కాన్ఫిగర్ చేయడానికి మరియు కాన్ఫిగర్ చేయడానికి ఏకీకృత విధానం
  • వర్చువల్ మెషీన్ మెటాడేటాను ప్రాసెస్ చేస్తోంది

ZY మీకు ఇతర అంశాలపై ఆసక్తి ఉంటే వ్యాఖ్యలలో వ్రాయండి. చూస్తూ ఉండండి!

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి