Flexiant awọsanma Orchestrator: ohun ti o wa pẹlu

Flexiant awọsanma Orchestrator: ohun ti o wa pẹlu

Lati pese awọn iṣẹ IaaS (Ile-iṣẹ Data Foju), a Rusonyx a lo a ti owo orchestrator Flexiant awọsanma Orchestrator (FCO). Ojutu yii ni faaji alailẹgbẹ kuku, eyiti o ṣe iyatọ rẹ lati Openstack ati CloudStack, ti ​​a mọ si gbogbogbo.

KVM, VmWare, Xen, Virtuozzo6/7, bi daradara bi awọn apoti lati Virtuozzo kanna ni atilẹyin bi awọn hypervisors node oniṣiro. Awọn aṣayan ipamọ atilẹyin pẹlu agbegbe, NFS, Ceph ati Ibi ipamọ Virtuozzo.

FCO ṣe atilẹyin ẹda ati iṣakoso ti ọpọlọpọ awọn iṣupọ lati wiwo kan. Iyẹn ni, o le ṣakoso iṣupọ Virtuozzo kan ati iṣupọ KVM + Ceph nipa yiyi laarin wọn pẹlu tẹ asin.

Ni ipilẹ rẹ, FCO jẹ ojutu okeerẹ fun awọn olupese awọsanma, eyiti, ni afikun si orchestration, tun pẹlu ìdíyelé, pẹlu gbogbo awọn eto, awọn afikun isanwo, awọn risiti, awọn iwifunni, awọn alatunta, awọn owo-ori, ati bẹbẹ lọ. Sibẹsibẹ, apakan ìdíyelé ko lagbara lati bo gbogbo awọn nuances Russia, nitorinaa a kọ lilo rẹ silẹ ni ojurere ti ojutu miiran.

Inu mi dun pupọ pẹlu eto rọ fun pinpin awọn ẹtọ si gbogbo awọn orisun awọsanma: awọn aworan, awọn disiki, awọn ọja, awọn olupin, awọn ogiriina - gbogbo eyi le jẹ “pinpin” ati fifun awọn ẹtọ laarin awọn olumulo, ati paapaa laarin awọn olumulo ti awọn alabara oriṣiriṣi. Onibara kọọkan le ṣẹda ọpọlọpọ awọn ile-iṣẹ data ominira ni awọsanma wọn ati ṣakoso wọn lati ẹgbẹ iṣakoso kan.

Flexiant awọsanma Orchestrator: ohun ti o wa pẹlu

Ni ayaworan, FCO ni awọn ẹya pupọ, ọkọọkan eyiti o ni koodu ominira tirẹ, ati diẹ ninu awọn ni data data tiwọn.

Skyline - abojuto ati wiwo olumulo
Jade - iṣaro iṣowo, ìdíyelé, iṣakoso iṣẹ-ṣiṣe
Tigerlily - oluṣakoso iṣẹ, ṣakoso ati ipoidojuko paṣipaarọ alaye laarin ọgbọn iṣowo ati awọn iṣupọ.
XVPManager - iṣakoso ti awọn eroja iṣupọ: awọn apa, ibi ipamọ, nẹtiwọọki ati awọn ẹrọ foju.
XVPAgent - aṣoju ti a fi sori ẹrọ lori awọn apa lati ṣe ajọṣepọ pẹlu XVPManager

Flexiant awọsanma Orchestrator: ohun ti o wa pẹlu

A gbero lati ṣafikun itan alaye kan nipa faaji ti paati kọọkan ni lẹsẹsẹ awọn nkan, ti, dajudaju, koko-ọrọ naa fa iwulo.

Anfani akọkọ ti FCO lati inu iseda “apoti” rẹ. Ayedero ati minimalism wa ni iṣẹ rẹ. Fun ipade iṣakoso, ẹrọ foju kan lori Ubuntu ti pin, sinu eyiti gbogbo awọn idii pataki ti fi sori ẹrọ. Gbogbo awọn eto ni a gbe sinu awọn faili iṣeto ni irisi iye-iye:

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

Gbogbo iṣeto ni iṣatunṣe ni awọn awoṣe, lẹhinna a ṣe ifilọlẹ monomono
#build-konfigi eyiti yoo ṣe agbekalẹ faili vars kan ati paṣẹ awọn iṣẹ lati tun ka atunto naa. Ni wiwo olumulo dara ati pe o le ṣe iyasọtọ ni rọọrun.

Flexiant awọsanma Orchestrator: ohun ti o wa pẹlu

Bi o ti le rii, wiwo naa ni awọn ẹrọ ailorukọ ti olumulo le ṣakoso. O le ni rọọrun ṣafikun/yọ awọn ẹrọ ailorukọ kuro ni oju-iwe naa, nitorinaa ṣiṣẹda dasibodu ti o nilo.

Laibikita iseda pipade rẹ, FCO jẹ eto isọdi giga. O ni nọmba nla ti awọn eto ati awọn aaye titẹsi fun yiyipada iṣan-iṣẹ:

  1. Awọn afikun aṣa jẹ atilẹyin, fun apẹẹrẹ, o le kọ ọna ìdíyelé tirẹ tabi awọn orisun ita tirẹ lati pese olumulo pẹlu
  2. Awọn okunfa aṣa fun awọn iṣẹlẹ kan ni atilẹyin, fun apẹẹrẹ, fifi ẹrọ foju akọkọ kun si alabara nigbati o ṣẹda
  3. Awọn ẹrọ ailorukọ aṣa ni wiwo jẹ atilẹyin, fun apẹẹrẹ, fifi fidio YouTube kan taara sinu wiwo olumulo.

Gbogbo isọdi ti kọ ni FDL, eyiti o da lori Lua. Bìo ó o Ɲúh ⁇ so Lua, á ɓa nùpua ɓúenɓúen yi FDL.

Eyi jẹ apẹẹrẹ ti ọkan ninu awọn okunfa ti o rọrun julọ ti a lo. Ohun okunfa yii ko gba awọn olumulo laaye lati pin awọn aworan tiwọn pẹlu awọn alabara miiran. A ṣe eyi lati ṣe idiwọ olumulo kan lati ṣiṣẹda aworan irira fun awọn olumulo miiran.

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

Iṣẹ iforukọsilẹ yoo pe nipasẹ ekuro FCO. Yoo da orukọ iṣẹ naa pada lati pe. Paramita “p” ti iṣẹ yii tọju ipo ipe, ati ni igba akọkọ ti a pe yoo jẹ ofo (nil). Eyi ti yoo gba wa laaye lati forukọsilẹ okunfa wa. Ni triggerType a tọkasi wipe okunfa ti wa ni invoked Šaaju ki o to atẹjade isẹ, ati ki o kan awọn olumulo nikan. Nitoribẹẹ, a gba awọn alabojuto eto laaye lati ṣe atẹjade ohun gbogbo. Ni awọn aṣayan okunfa a ṣe alaye awọn iṣẹ ṣiṣe eyiti okunfa yoo tan.

Ati pe ohun akọkọ ni ipadabọ {exitState = “CANCEL”}, eyiti o jẹ idi ti okunfa naa ti ni idagbasoke. Yoo pada ikuna nigbati olumulo ba gbiyanju lati pin aworan wọn ninu ẹgbẹ iṣakoso.

Ninu faaji FCO, eyikeyi nkan (disiki, olupin, aworan, nẹtiwọọki, ohun ti nmu badọgba nẹtiwọọki, ati bẹbẹ lọ) jẹ aṣoju bi ohun elo orisun, eyiti o ni awọn aye ti o wọpọ:

  • awọn oluşewadi UUID
  • awọn oluşewadi orukọ
  • awọn oluşewadi iru
  • Awọn oluşewadi eni UUID
  • ipo orisun (lọwọ, aiṣiṣẹ)
  • awọn oluşewadi metadata
  • awọn oluşewadi bọtini
  • UUID ti ọja ti o ni awọn oluşewadi
  • awọn oluşewadi VDC

Eyi jẹ irọrun pupọ nigbati o n ṣiṣẹ ni lilo API, nigbati gbogbo awọn orisun ṣiṣẹ ni ibamu si ipilẹ kanna. Awọn ọja ni tunto nipasẹ olupese ati paṣẹ nipasẹ alabara. Niwọn igba ti ìdíyelé wa wa ni ẹgbẹ, alabara le paṣẹ ọja eyikeyi larọwọto lati inu igbimọ naa. Yoo ṣe iṣiro nigbamii ni ìdíyelé. Ọja naa le jẹ adiresi IP fun wakati kan, afikun GB ti disk fun wakati kan, tabi olupin nikan.

Awọn bọtini le ṣee lo lati samisi awọn orisun kan lati yi ọgbọn ti ṣiṣẹ pẹlu wọn pada. Fun apẹẹrẹ, a le samisi awọn apa ti ara mẹta pẹlu bọtini iwuwo, ki o samisi diẹ ninu awọn alabara pẹlu bọtini kanna, nitorinaa pinpin awọn apa wọnyi tikalararẹ si awọn alabara wọnyi. A lo ẹrọ yii fun awọn alabara VIP ti ko fẹran awọn aladugbo lẹgbẹẹ awọn VM wọn. Awọn iṣẹ ara le ṣee lo Elo siwaju sii ni opolopo.

Awoṣe iwe-aṣẹ pẹlu isanwo fun ipilẹ ero isise kọọkan ti oju ipade ti ara. Iye owo naa tun ni ipa nipasẹ nọmba awọn iru iṣupọ. Ti o ba gbero lati lo KVM ati VMware papọ, fun apẹẹrẹ, iye owo iwe-aṣẹ yoo pọ si.

FCO jẹ ọja ti o ni kikun, iṣẹ ṣiṣe rẹ jẹ ọlọrọ pupọ, nitorinaa a gbero lati mura awọn nkan lọpọlọpọ ni ẹẹkan pẹlu alaye alaye ti iṣẹ ṣiṣe ti apakan nẹtiwọọki.

Lehin ti o ti ṣiṣẹ pẹlu akọrin yii fun ọpọlọpọ ọdun, a le samisi bi o dara julọ. Ala, ọja naa ko ni awọn abawọn:

  • a ni lati mu ibi ipamọ data pọ si nitori awọn ibeere bẹrẹ si fa fifalẹ bi iye data ninu wọn ti pọ si;
  • lẹhin ijamba kan, ilana imularada ko ṣiṣẹ nitori kokoro kan, ati pe a ni lati gba awọn ọkọ ayọkẹlẹ ti awọn onibara ti ko ni laanu nipa lilo awọn iwe afọwọkọ ti ara wa;
  • Ilana fun wiwa wiwa oju ipade jẹ lile sinu koodu ati pe ko le ṣe adani. Iyẹn ni, a ko le ṣẹda awọn ilana tiwa fun ṣiṣe ipinnu wiwa ti ipade kan.
  • gedu kii ṣe alaye nigbagbogbo. Nigbakuran, nigbati o ba nilo lati lọ si isalẹ si ipele ti o kere pupọ lati ni oye iṣoro kan pato, iwọ ko ni koodu orisun ti o to fun diẹ ninu awọn irinše lati ni oye idi;

Lapapọ: Ni gbogbogbo, awọn iwunilori ti ọja naa dara. A wa ni olubasọrọ nigbagbogbo pẹlu awọn olupilẹṣẹ orchestrator. Awọn enia buruku ti wa ni sọnu to todara ifowosowopo.

Pelu ayedero rẹ, FCO ni iṣẹ ṣiṣe jakejado. Ninu awọn nkan iwaju a gbero lati jinle si awọn akọle wọnyi:

  • nẹtiwọki ni FCO
  • n pese igbasilẹ-aye ati ilana FQP
  • kikọ ara rẹ afikun ati ẹrọ ailorukọ
  • sisopọ awọn iṣẹ afikun gẹgẹbi Load Balancer ati Acronis
  • afẹyinti
  • siseto iṣọkan fun atunto ati tunto awọn apa
  • processing foju ẹrọ metadata

PS Kọ ninu awọn asọye ti o ba nifẹ si awọn aaye miiran. Duro si aifwy!

orisun: www.habr.com

Fi ọrọìwòye kun