Flokkur: Grid Computing

Skrifstofa Grid Computing nota Virtual umhverfi - Part 4

Með því að , föstudagur 4. desember 2009 11:59

Inngangur

Ég vinn í fyrirtæki þar sem við hlaupum mörg störf runuvinnsla milljóna færslur af gögnum á hverjum degi og ég hef verið að hugsa undanfarið um allar vélar sem sitja í kring á hverjum degi að gera ekki neitt í nokkrar klukkustundir. Væri ekki gott ef við gætum notað þær vélar til að styrkja vinnslu mátt kerfi okkar? Í þennan hóp greinar sem ég ætla að líta á hugsanlegum ávinningi af ráða skrifstofu rist með virtualised umhverfi.

Í hluta 3 bjuggum við til raunverulegur vinnsla vél og setja upp Windows vél til að verða aðgerðalaus tíma starfsmanna.

Running nýjustu kóða

Óhjákvæmilega Eftir að starfsmenn viðskipti rökfræði mun breytast, bugs verður að finna mun hraðar skilvirkari kóða verið framleidd þannig að fara starfsmönnum þínum sat í kringum úrvinnslu gagna að nota gamla daunillur kóða . Hvernig þá áttu að tryggja að við að við erum alltaf með nýjustu og snjöllustu útgáfuna af skriftum vinnslu okkar?

Það eru nokkur mjög auðvelt einfaldar leiðir sem við gætum gert þetta, bragð er hins vegar að draga úr vinnslu orku og net umferð að ná þessu. Lets byrja með einföldustu lausnir og bæta það rólega yfir nokkrar endurtekningar.

The fyrstur aðferð væri að einfaldlega tengja við starf stjórna framreiðslumaður okkar (í gegnum Samba, FTP, eða svipað) og rífa niður nýjustu útgáfu af kóða. Ekki mjög duglegur, en það vilja gera the starf. Lets bæta á það heldur, hvernig væri að búa til rsync handriti og með að í hvert skipti í staðinn? Einnig hvað um að setja nýjustu vinnslu handrit okkar í niðurrifsstarfsemi stöðva út kóðann upphafi og þá bara að uppfæra kóðann okkar á hverjum tíma ( SVN uppfærslu )?

Í lok við gætum endað með bash handrit (kölluð cron á 10 mínútna fresti), sem lítur eins einfalt og þetta:

  #! / Bin / SH
 ef PS öxi | grep-v grep | grep PHP > / dev / null
 þá
     echo "Job er vinnsla, hætta"
 annað
     echo "Job er ekki í gangi, byrja núna"
     CD / slóð / á / vinna / eintak
     SVN uppfæra
     PHP yourJobProcessingScript.php
 Fi 

Nú getum við verið viss um að við hvert hlaupa við erum örugglega að keyra nýjustu kóða. Við erum að tryggja það með því að uppfæra kóðann stöð okkar hvert og hvert skipti sem við framkvæmum hlaupa og draga net umferð aðeins um að flytja skrá munur á netinu.

Í skipulag sýning mínu, gerði ég nákvæmlega eins og hér að ofan. Subversion var sett á starfi vinnslu vefþjóninum mínum og ég kippti einfaldlega nýjustu kóða úr "starfsmaður" útibú með "SVN uppfærslu". Ég bætti líka tala útgáfu tag til vinnslu handrit mitt sem var skilað til gagnagrunn sem hluta af niðurstöðum aftur. Á þennan hátt gat ég séð að númerið mitt var að uppfæra í hvert sinn sem ég afrita skottinu mínu í grein starfsmann, þ.e. að ég var ákveðið að keyra nýjustu vinnslu handriti.

Notkun nýjustu tölur

Ef starf vinnsla þín gerir notkun heimilda gögn þá á einhverjum tímapunkti þetta eru að fara að uppfæra líka. Nema þú kalla gögn heimildir þínar á mjög sjaldgæf grundvelli þú ert að fara að flóð þinn net með umferð eins fljótt og starfsmenn þínar byrja að birtast að koma allt til kyrrstöðu. Lausn ég ákvað að ég myndi vilja flytja gögn heimildum mínum í kring með VMs mínum.

Haltu þú ert hestar þarna! Hvað ef gögn heimildum minn er HUGE? Jæja er þetta virkilega gott dæmi um hversu mikið af gögnum erum við að tala? Það kann að vera hagkvæmari til að setja upp fleiri stærri harður ökuferð inn í hvert vél en að kaupa til viðbótar vinnslu miðlara. Þetta er spurning um fjárhagsáætlun og er allt að fyrirtæki til að ákveða. Það kannski að gögn heimildir þínar eru svo stór að bara unfeasible að hafa það magn af gögnum í vélum starfsmaður þinn. Hennar Í því tilfelli hvað myndir þú gera? Jæja við getum litið á að hringja í staðbundin gögn miðlara, en þetta gæti valdið mál með netið. Í þessu tilfelli töflu kerfi eins og það getur orðið óraunhæft að fela í umhverfi skrifstofu. Það getur líka verið að þú getur litið inn í aðra gangi áætlanir, til dæmis aðeins að kalla starfsmenn þína 20:00-06:00 á hverri nóttu og / eða throttling gögn uppspretta beiðnir.

Að flytja á segjum gögn heimildir nema okkar til 100GB af gögnum. Jæja já það er töluvert af gögnum til að fletta í net á uppfærslu. Hvernig myndum við tryggja að við höfum nýjustu afrit af gögnum í þessu tilfelli? Rsync er möguleiki, en persónulega finnst með því að keyra nýjustu gögn uppspretta á starfi vinnslu vefþjónsins þíns og setja þetta upp sem master í afritunar (með fallegu langa bin log) gæti verið leið til að fara:

afritunar Með því að setja hvern launþega upp sem þræll að stjórna vinnu miðlara uppfærslur á gögn heimildum mun trickle niður fallega til starfsmanna án þess mikla aukning á virkni net (sem er nema þú framkvæma a gríðarstór gögn uppfæra og alla starfsmenn þína sparka í í einu). Þetta hefur yfirburði yfir rsync í að þú viljir ekki fá langt hlé fyrir hvert starf, eins og gagnasafn endurnýja, að MySQL púkinn á starfsmaður verður stöðugt uppfæra gögn á meðan vinnslu áfram.

Þetta er hvernig ég setja upp kynningu vefþjóninum mínum. Til að setja upp afritunar ég fylgdi leiðarvísir á mySQL staðnum ( Setja upp afritunar ) og innan 20 mínútna að ég hafði inital starfsmaður minn afrit stjórna starfi netþjónum dataset. Fyrir hvern starfsmann afritunar stillingar og ferli starfað í hvert sinn þegar VM var afrituð.

Yfirlit

Í þessum hluta greinarinnar sem við höfum litið á hversu auðvelt og sársaukalaust það er að halda vinnslu kóða upp til dagsetning með using rsync eða subverion (SVN) til að vinna verk og draga net umferð á sama time. Við ræddum einnig hvernig til að halda gögn uppspretta upplýsinga upp-til-dag með því að leyfa það til trickle niður til hvers launþega þína. Þannig að við svæði tryggja að við höldum upp með rökfræði fyrirtæki og upplýsingar á skrifstofu rist kerfi okkar. Það mun augljóslega vera óteljandi val til að skila þessum verkefnum, en hér voru tvö einföld dæmi til að sýna hversu auðvelt lausn er að komast yfir.

Næst þegar

Í síðasta hluta þessa röð, viðeigandi nafni Part 5 , munum við ræða að beita þessu kerfi fyrir. Ég saman það sem hefur verið lært og hvað ég náði að búa til.

Skrifstofa Grid Computing nota Virtual umhverfi - Part 1

Með því að , föstudagur 4. desember 2009 11:23

Inngangur

Ég vinn í fyrirtæki þar sem við hlaupum mörg störf runuvinnsla milljóna færslur af gögnum á hverjum degi og ég hef verið að hugsa undanfarið um allar vélar sem sitja í kring á hverjum degi að gera ekki neitt í nokkrar klukkustundir. Væri ekki gott ef við gætum notað þær vélar til að styrkja vinnslu mátt kerfi okkar? Í þennan hóp greinar sem ég ætla að líta á hugsanlegum ávinningi af ráða skrifstofu rist með virtualised umhverfi.

Sem PHP forritari ég ætla að nota verkfæri sem ég nota á hverjum degi nefnilega, Linux, MySQL , PHP, Raunverulegur og niðurrifsstarfsemi (SVN). En ég vona að þessi handbók mun laga sig að öðrum tungumálum og tækni eins og heilbrigður.

Lausnin ég veita mun vera mjög lauslega byggð á tegund vinnslu við þyrftum að ná þó þetta getur ekki verið satt í gegnum allt hlutur sem ég breyta hlutum til einföldunar, eða til að framleiða fleiri áhugaverður notkun atburðarás.

Þessar virtualised umhverfi mun keyra á Windows vél þar sem þetta er það sem meirihluti skrifstofur hlaupa. Vinnslu að Skrifstofuvélar gera ætti ekki að trufla starfsfólk að nota þessar vélar, að þurfa ekkert viðhald á vél, og hæglega deployable að nýjar vélar eins og þeir liggja fyrir. Einnig nýr raunverulegur vél ætti ekki að þurfa frekari stillingar sem þetta dregur verulega úr sveigjanleika og auðvelda þar sem rist kerfi er hægt að framlengja.

Hvers vegna Dreifa á Computing Office Grid?

Í fyrsta lagi þú gætir verið að hugsa, hvers vegna ekki bara að nota computing ský auðlind eins og EC2 pallur Amazon ? Jæja ástæður gætu verið nokkrar, td:

  • Þú munt ekki fela ákveðnar upplýsingar til computing ský umhverfi
  • Þú getur ekki sett ákveðnar upplýsingar í computing ský umhverfi fyrir lagalegum ástæðum (td gögn yfirgefa landið), hugsanlega vegna lagalegum ástæðum, td NHS færslur.
  • Þú vilt halda vinnslu einingar þína náið og hafa fulla stjórn á vélbúnaði of
  • Þú hefur ekki verkefnið fjármagn til að keyra ský tilvikum
  • Skrifstofu er ekki með tengingu við internetið og því þetta er ekki hægt að nota ský auðlind
  • Þér líkar ekki rigning, ský benda rigning, því þú haldir vel í burtu

Ég er viss um að listi gæti haldið áfram, en ég held að nóg í bili.

Kostir á Computing Office Grid

Jæja leyfir, gera sumir stærðfræði (og sannur eðlisfræði stíl lætur gera sumir sópa forsendur). Ímyndaðu þér að þú ert stór beefy vinnslu framreiðslumaður hlaupandi 100 störf á dag. Í skrifstofu þú ert 50 vélar sem eru aðgerðalaus 16 tímar á dag, hver þessara véla er 10% eins og öflugur eins beefy vinnslu skera þinn. (Allar niðurstöður hér eru ávalar að vanmeta árangur hækkun).

Svo, 1 vél * 10% afl * 2 / 3 time = 0,067, þ.e. 1 skrifborð vinnslu í biðstöðu tíma geta ferli 6 fullur störf á dag.

Ef þú mæli nú þetta allt sem það tekur 15 aðgerðalaus skjáborð til að vinna eins og mörg störf á dag sem aðal vinnslu netþjóninn gerir.

Svo í þykjast skrifstofu okkar á 50 vélum við getum aukið vinnslugetu okkar frá 1 miðlara allt að 4 Full netþjóna vinnslu, eða við gætum verið að afgreiða 400 störf á dag í stað 100.

Fyrirvara, engin fjárfesting í nýjum vélbúnaði fyrirtæki þitt hefur bara aukist runuvinnsla getu sína 4 sinnum! Hugsanlega þú ert að fara til að auka vald notkun þína, en frá flestum skrifstofu umhverfi Ég hef verið að vélar eru almennt vinstri á einni nóttu engu að síður, svo þú gætir séð þetta sem græna frumkvæði.

Aðrir kostir þýða einnig að fjárfesting í nýjum (eða uppfærðar) vinnsla framreiðslumaður geta tafist ef Skrifstofuvélar eru fullnægjandi og að þegar þú bæta kraft vélar skrifstofu skrifstofu rist þitt verða öflugri sjálfkrafa.

Technologies

Það sem þú þarft? (Eða réttara hvað gerði ég nota):

  • Aðgerðalaus vél skrifstofa (í mínu tilfelli vara gamall Windows XP laptop)
  • Raunverulegur (eða annar viðskiptavinur virtualisation hugbúnaður)
  • A raunverulegur vél með PHP, mySQL running keyra skera niður OS, ég kalla þetta minn Limp netþjónum:)
  • Störf að keyra
  • Atvinna miðlara (getur verið annar raunverulegur vél einhvers staðar)

Dæmigert starf

Þær gerðir af störfum sem þetta kerfi er hannað til að keyra er sem hér segir:

  • Kerfi fær lista yfir gögn sem liggja við þurfum að passa og skila niðurstöðum
  • Lokað felur í sér að haka / leita nokkrum (frekar truflanir) gögn heimildum
  • Niðurstöður úr heimildum gögnum getur þurft frekari staðfestingu, samruna, eftirlit með frekari gögn heimildum til að bregðast við niðurstöðum
  • Gögn er skilað með samsvarandi gögnum, að fullu viðurkennt og unnar
  • Hver færsla í vinnu er óháð hinum

Þannig að í rauninni erum við að horfa á gangi störf sem krefjast blöndu af leit gagnagrunni og sumir tala marr, nokkuð dæmigerður atburðarás í rekstrarumhverfi.

Tafla lausnir eru ekki einungis gagnleg fyrir vinnslu störf af þessu tagi. Í grundvallaratriðum, getur nokkur ferli sem hægt er að skipta í sjálfstæðar einingar að keyra samhliða. Sjá þetta Wikipedia fyrir dæmi og frekari upplýsingar: Grid Computing , en par af fræga dæmi eru SETI @ Home og BIONC . Það eru ramma að keyra computing grids, og þetta eru vel þess virði að skoða.

Hvað munum við ná?

Í lok þessara greinar sem ég vona að sýna að beita skrifstofu rist þarf ekki að vera gríðarlega dýrt eða tímafrekt. Ég ætla að ræða:

  • Uppsetning stjórna starfi kerfi, starf stillingar
  • Búa til viðeigandi vinnsla raunverulegur vél
  • Hvernig á að setja upp kerfi á Windows vél
  • Tryggja þú ert að nota nýjustu kóða og gögn
  • Dreifing og kvóti
  • Horft fram á veginn

Ég ætla að byggja (ok ég byggði, þá skrifaði þetta) dæmi forrit til að prófa hugmyndir á vél með Windows XP og mínum GridMachine 'raunverulegur vél. Starf stjórna framreiðslumaður mín mun vera helsta vél mína, sem keyrir Fedora 11 .

Þetta er á engan hátt ætlað að sýna fram á fullu að vinna öflugt kerfi, þess ætlað meira af sýnikennslu og ræða sýnir að þetta er hægt að ná í tiltölulega skömmum tíma og á lítinn kostnað. Vinsamlegast ekki hika við að senda mér einhverjar athugasemdir, leiðréttingar eða endurbóta og ég skal gera mitt besta til að halda þessari grein uppfærð til að passa.

Næst þegar

Í hluta 2 vil ég byrja á því að horfa á stjórn starf kerfi, og líta inn í hvernig störf skal stilla í því skyni að ná mesta magn af vinnslu á meðan að tryggja að hvert starf er afgreidd án mistakast.

Skrifstofa Grid Computing nota Virtual umhverfi - Part 2

Með því að , föstudagur 4. desember 2009 11:23

Inngangur

Ég vinn í fyrirtæki þar sem við hlaupum mörg störf runuvinnsla milljóna færslur af gögnum á hverjum degi og ég hef verið að hugsa undanfarið um allar vélar sem sitja í kring á hverjum degi að gera ekki neitt í nokkrar klukkustundir. Væri ekki gott ef við gætum notað þær vélar til að styrkja vinnslu mátt kerfi okkar? Í þennan hóp greinar sem ég ætla að líta á hugsanlegum ávinningi af ráða skrifstofu rist með virtualised umhverfi.

Í Part 1 Ég gaf yfirlit yfir kerfinu og tækni Ég ætla að nota eins og heilbrigður eins og fjallað er sumir af the möguleiki ástæður hvers vegna þú vilt að búa til skrifstofu rist.

Job Control

Ef þú ætlar að vera í gangi störf þá þú ert að fara að þurfa einhvern hátt að stjórna þeim. Starf stjórna vélinni þinni (á vefþjóninum starf þitt) þarf að vera vel hugsað út áður jafnvel að reyna að hlaupa skrifstofu rist. Svo fyrst, hvað er verkefni fyrir stjórn starf kerfi:

  • Hand út störf samkvæmt beiðni frá starfsmönnum
  • Segðu starfsmenn hvers konar störf til að keyra
  • Track störf
  • Tryggja að störf eru aðeins keyra einu sinni
  • Veita starf gögn til starfsmanna, eða að minnsta kosti segja þeim hvar best er að fá það

Kerfið þarf einnig að vera teygjanlegur, lausn sem virkar fyrir nú í einum tilviki má framlengja til að keyra nokkrar gerðir af störfum sem fyrirtækið sér virði í töflu lausn. Til dæmis, störf getur fengið forgang, fleiri en einu starfi tegund getur verið (þ.e. margar undirstöður code), loksins þú getur jafnvel hlaupa nokkrar mismunandi vélar starfsmanni sem eru bjartsýni fyrir hverja tegund vinnu (þó það þýðir að hverfa frá "almenna starfsmann "hugmynd). Alltaf að reyna að hugsa um framtíðina þegar þróa kerfi, á stuttum tíma sýn getur leitt til lengri tíma gremju og aukin þróun tíma.

Job Server

Við erum að fara að þurfa eitthvað að stjórna störfum okkar, ætti þetta að vera eina kerfið á rist þínu sem hefur fasta Resource Locator, að IP tölu, gestgjafi nafn, URL (með innri DNS), o.fl. Þetta er vegna þess að starfsmenn þurfa að vita hvar á að leita störf, þurfa starfsmenn að finna stjórna starfi kerfi (ekki stjórn starf kerfi finna starfsmenn).

Starfið þjóninum sjálfum er í raun ekki hafa flókið verkefni (í grunn kerfi einhvern veginn), þarf það að geyma lista af störfum, hönd út störf, fá niðurstöður, og síðan geyma þá þar til seinna sókn. Hvernig þessir hlutir ('vegar út störf "ss) er skilgreind getur verið mjög einfalt. Seinna getum við lengja kerfið til að fela stjórnsýslu tengi til að bæta við, breyta, eyða, hengja störf en það sem er handan þessa æfingu.

Það er engin ástæða alls þá að starf netþjóninn gæti ekki verið raunverulegur vél í gangi í helstu vinnslu miðlara enda er ekki holræsi of margar auðlindir af því. Starfið Miðlarinn þó er þörf hár framboð, ef það fer niður á föstudagskvöldi þú ert að fara að missa alla helgina vinnslu, hugsanlega kosta þig nokkrar vikur virði af tíma vinnslu (í samanburði við helstu vinnslu miðlara eitt sér) . Þú vilt kannski íhuga að setja vinnu miðlara á hlaða jafnvægi umhverfi fyrir mikið framboð.

Basic Setup

Grunn skipulag fyrir miðlara starf okkar mun samanstanda af því sem ég er að kalla eitt af haltur netþjónum minn (sem er Li nux, m ySql, P HP). The merkjamál birtast á Thea starfsmenn vilja raunverulega vinna að því hvað störf það getur keyrt í gegnum samskipti við með starfið eftirlitskerfi gagnagrunna. Síðar gætum við búið til vefþjónustu og í raun vegar út störf frekar en að þurfa starfsmenn eiga erfitt verk sín, en nú munum við halda áfram að nota KISS reglan (Hafðu það einfalt, Stupid!).

Svo leyfir, að búa til þrjú mySQL töflur til að takast á við störf. Þetta mun vera `störf`, `jobRecords` og `jobResults`.

störf borð Hér ég er að nota SQL Buddy a mikill lítill val til phpMyAdmin bara vegna þess að auðveldara þess að setja á CentOS (fyrir aðra sjá: 10 Great val til phpMyAdmin )

Þessi tafla inniheldur 5 einföld sviðum,

  • id: einstaklega finna starf
  • Notendanafn: Gæti verið viðskiptavinur tilvísun, eða fjölda annarra heiti
  • Staða: Þú þarft að vita hvar starfið er á, td
    • 0: Ekki byrjað
    • 1: sóttir
    • 2: Lokið
  • started_by: Hver byrjaði að gera starfið? Þetta er ekki alveg nauðsynlegt en er gott að hafa. Ég myndi stinga upp mælingar starfsmenn með IP tölu þeirra á netinu þínu
  • started_at: Hvenær var starfsmaður hefja starf? Með því að fylgjast með störfum sem ekki hafa lokið innan X tíma við vitum að við þurfum að taka upp vinnu aftur og byrja vinnslu hjá öðru starfsmanns. Starfsmenn gætu hætt vinnslu / go offline fyrir allir tala af ástæða, máttur bilun, hrun, net tap, o.fl.

Það er auðvelt hvernig þetta borð gæti verið framlengdur með nokkrum fleiri sviðum til að leyfa fyrir tölfræði rekja spor einhvers, tími ljúka dálki til að sjá hversu lengi starf tók, gegn til að sjá hversu margir starfsmenn teknir upp starf (augljóslega þetta þarf að hafa tilhneigingu til að 1), starf forgang, lista getur farið á og á. Í flóknari starf atburðarás það væri hægt að tilgreina hversu mikið minni starfsmaður þyrfti aðgang að (og því aðeins nota viðeigandi starfsmenn), eða jafnvel hvaða gerð af starfsmanni væri nauðsynleg.

Lets bæta við nokkrum störf dæmi:

td störf

Næsta borðið aftur er alveg einfalt að skilja, eru þessi störf skrám okkar. Þau eru tengd helstu störf borð með dálk `jobs_id`. The gera upp þessa töflu mjög mikið veltur á þau gögn sem þú þarft að láta starfsmenn þína, við skulum gera mjög einfalt dæmi þar sem við höfum fjóra dálka:

  • id: ID á hreinu
  • Nafn: Einstaklingur Nafn
  • heimilisfang: netfang viðkomandi
  • jobs_id: Starfið ID að þetta met er tengd

Þriðja og síðasta borð samanstendur af niðurstöðum borð, hefur það mikill the sami gera upp sem skrár borð okkar, og með því að bæta við nokkrum dálkum gæti verið hluti af gögnum töflu:

  • job_record_id: Link niðurstöður til vinnu borðið
  • niðurstaða: Niðurstaðan gögn

... Og það er allt sem þú þarft að stjórna vinnu! (Að vísu á mjög undirstöðu-láréttur flötur) Í mínu tilfelli er ég benti á annað borð þar sem gögn til að vinna var staðsett, en þetta gæti alveg eins auðveldlega verið skrá, breytur til að keyra uppgerð kóða, þú nafn það.

Val á starfi

Eins og áður sagði, að starfsmenn vilja gera starf stjórnun okkar fyrir okkur nú, svo það eina sem við þurfum að virkilega finna starf sem þarf úrvinnslu og fá upplýsingar. Hvernig myndum við gera þetta? Jæja velja starf valforsendur okkar og leita störf í SQL ég gerði eftirfarandi:

  1. Taka hvaða störf sem eru ekki merkt sem lokið en frá starfsmanni okkar og endurstilla þá (í staðinn __ME__ með auðkenni, auðveldlega væri IP heimilisfang):
      UPDATE `störf` SET `Staða` = 0 þar `Staða` = 1 AND `started_by` = __ME__; 
  2. Using starf valviðmið okkar, velja vinnu og segja eftirlitskerfi sem þessi starfsmaður er að fást við það:
      UPDATE `störf` SET `Staða` = 1, `started_by` = __ME__, `started_at` = NOW () HVAR `Staða` = 0 OR
     (`Staða` = 1 AND `started_at`> DATE_SUB (NOW (), bil X klukkustund)) Raða eftir `id` ASC; 

    Með því að grabbing störf sem ekki hafa skilað árangri í X tíma við að tryggja að öll störf eru rekin í the atburður af a verkamaður hrun eða fara awol.

  3. Next grípa störf smáatriði á eftir færslur sig:
      SELECT * FROM `störf` WHERE `started_by` = __ME__ LIMIT 1;
     SELECT * FROM `job_records` WHERE `id` = __JOBID__; 

Að loknu starfi við setja inn úrslit skrám okkar og merkja starf sem lokið. Muna eins og störf getur stöðvað / byrja aftur hvenær sem gera ráð fyrir sumir robustness í handritið. Það gæti verið að verkefni frestar helmingur vegur í gegnum að uppfæra stjórna starfi kerfi, svo haka við fjölda gagna í vinnu og margar niðurstöður vistað aftur til að stjórna vinnu kerfi myndi vera vitur hreyfa.

Þar að auki, á meðan þetta sýnir hvernig störf er hægt að velja og stjórna frá SQL-fyrirspurn ramma þú ættir virkilega að vera abstracting starf stjórna þannig að ef þú ákveður að skipta yfir í vefþjónustu, skrá undirstaða kerfi, XML , eða önnur Fjöldi kerfa það mun ekki hafa áhrif á kóðann fyrir ofan hann.

Atvinna Stillingar

Næsta þáttur til íhuga er starf stærð og stillingar. Með því að leika með stillingar starf við getum slá mjög gott jafnvægi milli hraða, ferli afritunar og áreiðanleika. Taktu of núna aðstæður:

  1. Jobs taka 1 dag hvern til að keyra: Þetta þýðir að starfsmönnum þínum þarf 15 daga til að vinna hvert starf (man 10% af orku fyrir 2/3rds af tímanum). Þetta er greinilega ekki vitur stillingar, starf stærð er alltof stór! Það myndi taka að minnsta kosti tvöfalt tíma til að fá starf unnið að fyrstu starfsmaður fara awol (tími til að ná sér að það hefur ekki skilað þeim sökum auk endurvinnslu tíma). Í fullkominni þú vilt hafa að minnsta kosti eitt vinnu auðveldlega eytt í lok hvers lengi aðgerðalaus tíma, þannig að þú halda störfum tjalddúkur yfir og í versta falli starf myndi taka tvo daga til að ganga ber að fara fyrst vantar.
  2. Jobs taka 1 mínútu til að hlaupa: Þetta þýðir að starfsmönnum þínum tekur um 15 mínútur að keyra hvert starf. Þó að þetta kann að upphaflega virðist hugsjón, þú færð fleiri vinna vinnsla á tíma hádegismat, kaffihlé, fundi, etc þessari atburðarás setur álag á öðrum sviðum kerfisins og kynnir eigin vandamál hennar. Til dæmis, í fyrsta lagi skipulag / afgreiðslutíma hlutfall er að fara að fara rétt niður, því að tapa kerfi skilvirkni. Netið er að fara að vera stöðugt á vinnu upplýsingum til ýmissa starfsmanna svekkjandi starfsmanna sem eru Dong þeirra dagur í dag vinna. Þú ert líka að fara að setja meira álag á vinnu vinnslu þinn framreiðslumaður eins og það hefur að fat út fullt og fullt af litlum stykki af vinna með reglulegu millibili. Loksins, í þessu ástandi ef starf miðlara fer niður þú ert að fara að búa til mikið aftur skrá þig inn á uncompleted vinnu en stærri störf gætu áframhaldandi vinnslu sátt og samlyndi ókunnugt um að starfið þjóninum var að upplifa erfiðleika.

Í raun og veru verður enginn tilvalið stillingar fyrir uppsetningu rist þína, mikið veltur á fyrirliggjandi úrræði, gerðir af starfi, starf afgreiðslutími kröfur, net hæfileiki, og svo framvegis. Þó nokkrar leiðbeiningar myndi vera:

  • Stærð störf þannig að hver starfsmaður getur fengið í gegnum að minnsta kosti 3-4 störf á tímabili 15 tímar (lengst líklega aðgerðalaus tímabil)
  • Leika við starfið stærð þannig að skipulag tíma verður nokkuð óveruleg í samanburði við vinnslu tíma (með það í huga að ofan benda).
  • Ef starf er ekki lokið í tvöfalda tíma (kannski minna) sem þú búast við það til að ljúka verkinu ætla að farið awol og byrja vinnslu það með öðrum starfsmanni. Þetta þýðir að þú gætir þurft að bíða í allt að þrisvar sinnum eðlileg lengd vinnu fyrir það að ljúka (hugsanlega lengur ef síðari starf mistakast). Þú vilt kannski til að draga úr þessum tíma, en vera varkár ekki til að draga það of mikið og þú getur byrjað endurtekning vinnslu verkefna með reglulegu millibili.
  • Störf skal vera óháð utanaðkomandi kröfur eins mikið og mögulegt er. Starfið miðlara, til dæmis, ætti aðeins að hafa samband í upphafi og lok hvers starf.
  • Ekki saturate ekki netið, þetta mun hafa tveir neikvæð áhrif, daginn starfsfólk finnur að nota netið pirrandi og vandamál geta komið fram við tengingar tímasetning út vandamál sem mun aðeins versna eins og þú mælikvarði rist þinn.
  • Tryggja störf geta keyrt á starfsmönnum þínum. Ef störf verða of minni ákafur eða diskur rúm ákafur störf hefst hætti við og það eina sem þú munt taka eftir er dropi í fjölda starfa unnum með enginn raunverulegur ástæða.

Sendi Niðurstöður um starf

Þegar að senda niðurstöður starf er mikilvægt að athuga að árangur hefur ekki verið lögð fram af öðrum starfsmanni, sérstaklega ef núverandi starfsmaður hefur verið sofandi um nokkurt skeið.

Þegar niðurstöður eru lagðar tryggja að margar niðurstöður samsvarar fjölda gagna innan starf.

Eins og áður sagði, og geta ekki verið yfir áherslu, byggja kenna umburðarlyndi í sókn starf og árangur uppgjöf. Starfsmenn geta (og líklega vilja) að fara inn fresta ham í mesta óþægilegur sinnum og þetta þarf að vera veitingamaður fyrir. Einnig aftur abstracting burt niðurstöður senda inn mun hjálpa koma til móts við um breytingar á starf stjórna vélinni þinni miklu auðveldara að takast á við.

Yfirlit

Í þessu section höfum við litið á það sem stjórna vinnu miðlara þarf að gera og hvernig á að fá mjög einfalt kerfi sett upp. Við ræddum hvernig á að sækja vinnu frá eftirlitskerfi og hvernig best sé að stilla störf til að fá sem mest okkar skrifstofu rist kerfinu þínu. Til að ljúka, var málsgrein, eða tveir á senda niðurstöður aftur til að stjórna vinnu miðlara kynnt.

  • A stjórna starf miðlara stýrir störfum og tryggir að öll vinna einingar eru lokið
  • Með abstracting starf þitt select / niðurstöður uppgjöf við getum breytt tækni af the stjórna framreiðslumaður án mikillar vandræðum
  • Stilla störf til að tryggja að þeir eru að keyra hratt og vel án þess að setja of mikið álag á innviði net, og án þess að endurtaka vinnslu verkefna með reglulegu millibili.
  • Gakktu úr skugga um að þú byggir kenna umburðarlyndi og villa checking inn venjur þínar, starfsmenn geti stöðvað og haldið áfram og mest óþægilegur sinnum. Mundu að athuga hvort árangur hefur þegar verið lögð fram af öðrum starfsmanni.

Næst þegar

Í hluta 3 við munum skapa raunverulegur vinnsla vél og setja upp Windows vélum okkar að verða aðgerðalaus tíma starfsmanna.

Skrifstofa Grid Computing nota Virtual umhverfi - Part 5

Með því að , föstudagur 4. desember 2009 11:03

Inngangur

Ég vinn í fyrirtæki þar sem við hlaupum mörg störf runuvinnsla milljóna færslur af gögnum á hverjum degi og ég hef verið að hugsa undanfarið um allar vélar sem sitja í kring á hverjum degi að gera ekki neitt í nokkrar klukkustundir. Væri ekki gott ef við gætum notað þær vélar til að styrkja vinnslu mátt kerfi okkar? Í þennan hóp greinar sem ég ætla að líta á hugsanlegum ávinningi af ráða skrifstofu rist með virtualised umhverfi.

Í 4. hluta við skoðuðum að nota tæki til að tryggja að við erum að keyra nýjustu útgáfuna af kóða og gögn heimildir til þess að fá niðurstöður eru alltaf upp til dagsetning með the nýjastur upplýsingar um fyrirtæki og rökfræði.

Pre-Dreifing

Áður en beita rist vélinni þinni ef það er einn hlutur sem þú gerir og eitt einn það er benchmark núverandi kerfi! Sama hvað þú segir samstarfsmenn um hversu mikið auka vinnu kerfið þitt er að fara að gera nema þú hefur tölur til baka þetta upp tryggingar þínar eru ekkert. Svo,

  • hversu margir færslur er hægt að vinna núna? Á dag? Á klukkustund?
  • Hversu langan tíma tekur það yfirleitt að snúa við vinnu?
  • Hversu miklu meira rúmtak ertu með?

Það er líka fleiri spurningar:

  • Ef vinnsla framreiðslumaður (eða einn af netþjónum vinnslu þínum) fer niður Hvernig mun þetta hafa áhrif á getu þína, verður þú að vera örkumla?
  • Kosti hvað þú vonast / ætlast til að fá úr töflu kerfi?
  • Eru Skrifstofuvélar þinn fær um að keyra störf?
  • Eru þín (eða þú getur störf að breyta) að vinna í þessum stíl í gangi?

Síðasta meiriháttar atriði er að taka þinn tíma á öllum helstu breytinga eins og this. Uppfæra vinnslu kóða til að vinna með nýja aðferðafræði, viðmið aftur. Hugsanlega setja upp vinnslu miðlara til að hlaupa raunverulegur vél, eftir öll vinnsla netþjóninn munu bara vera annar starfsmaður (bara mjög öflugur einn tiltölulega). Leyfa nýja aðferð til að leysa.

Dreifing

Tillaga mín væri að skjóta inn á skrifstofu einni helgi framkvæma allar innsetningar og skipulag. Gerðu þetta rétt fyrir frí tvær vikur og fara svo önnur léleg springa að takast á við afleiðingar ... kannski ekki ...

Dreifing fyrir kerfi eins og þetta þarf að vera hægt. Þrátt fyrir það að vera tiltölulega einfalt að setja upp þetta kerfi mun hafa áhrif á allan skrifstofu innviði þína (vel á stafræna einn). Í fyrsta lagi, rúlla út til a par af vélum í einu, hafa eftirlit með net umferð, hvernig starfsmaður allsherjar framkvæma á degi til dags. Þú gætir þurft að breyta starfi stillingar þínar til að bregðast við niðurstöður þínar.

Þegar kerfið hefur upp með nokkrum vélum (segjum 10% af öllum Skrifstofuvélar, þ.e. 5) halda eftirlit net umferð og gestgjafi vél performance. Next kvóti aftur, þú ættir nú að vera vinna 33% fleiri störf en fyrri viðmið þína. Athuga þetta er svo, eða að þú ert að minnsta kosti í þessu Ballpark. Ef ekki, rannsaka hvað er að gerast áður en hann flutti á. Endurtaktu þetta ferli þangað til þú hamingjusamlega hafa skrifstofu vélum sem keyra án þess að drepa einstaka vél frammistöðu eða mala símafyrirtækið til kyrrstöðu.

Á öllum tímum að halda kvóti, jafnvel eftir allt dreifing eru gerðar. Athugaðu hvernig nýjar uppfærslur kóða hafa áhrif hraða þinn kerfi, stöðva alla starfsmenn eru skýrslugerð í og ​​vinnslu starfa. Hægt (mjög hægt) vöxtur starf stillingar til að fá bestu frá starfsmönnum og net.

Hættu!

Hvað ef þú vilt hætta starfsmenn þína að birtast á einhverjum tíma? Þau eru öll þarna úti hlaupandi, regenerating, og reyna sitt besta til að vinna gögn eins og hungraður skordýr. Svarið kann að virðast augljóst, en þess virði að bæta bara í málinu gleymast þess. Einfaldlega breyta vinnslu handritið með brottför (0) eða deyja () eða einhverja aðra yfirlýsingu að drepa vinnslu starf þitt. Mikilvæg ástæða þess að við reynum alltaf að uppfæra í nýjustu vinnslu handritið áður en hlaupa!

Sýning System

Til að skrifa þessa sett af stuttum greinum Ég bjó til mjög lítil rist til að sýna fram á tækni og aðferðir. Ég las fullt af greinum, námskeið og nota ýmis verkfæri til að skipulag og fylgjast með hvað var í gangi. Alls ekki ég hef farið út og mettuð í heild skrifstofu með umferð og né hef ég haft aðgang að reglulegum starfsmanna PC til að sjá hvernig her flutningur var áhrifum.

Sýning minn kerfi var mjög auðmjúkur örugglega. Ég notaði reglulega minn skrifborð sett upp sem stjórna vinnu miðlara. Á þessum ÉG had setja í embætti MySQL framreiðslumaður uppsett sett upp sem master í afritunar, PHP , Â og SVN sem tengd er í gegnum Apache (fyrir aðgang í gegnum VM starfsmann).

Ég bjó þá CentOS starfsmaður vél á Raunverulegur á 6 ára gamall Windows XP laptop. Ég skipulag tímaáætlun verkefni eins og tilgreint er eftir að afrita VM inn á vél og láta það fara.

The raunverulegur vél var sett upp með PHP, niðurrifsstarfsemi, og mySQL. Ég skoðaði út útibú sem heitir 'starfsmaður' úr vinnunni stjórna framreiðslumaður minni geymsla og gerði viss um að það væri hægt að uppfæra í gegnum "SVN uppfærslu". Next ég skipulag mySQL sem þræll og athugað þessi gögn voru afrit af MySQL á stjórn starf miðlara niður á starfsmaður VM. Eftir allt þetta ég setja upp bash handrit og cron starf.

Vinnslu handrit minn fór í rauninni á sömu nótum og þetta (mjög einfalt efni):

  • Lesið á reitnum Heiti
  • Taldi fjölda áþekk nöfn í töflu frá gagnaheimild haldinn á VM
  • Taldi fjölda nafna og að ofan, en kljúfa nafnið með bilum (þ.e. eiginnafn, miðja, kenninafn)
  • Endurtekin þetta ferli 1.000 sinnum

Hvert starf tók u.þ.b. 20 mínútur að keyra. Á einum tímapunkti ég opnaði nokkur eintök af starfsmanninum VM á Windows laptop og horfði á störf að athuga burt við hverja IP starfsmanns viðtakandi. Á þessum tímapunkti Ég staðfesti einnig að afritunar sjálfkrafa á ný.

Keyrsla á fartölvu að aðgerðalaus leitt til starfsmaður að byrja að vinna störf frá stjórn vinnu miðlara. Þegar haldið áfram laptop notkun var seinkun um 30-60 sekúndur, þetta er sanngjarn magn af tíma og starfsfólk þyrfti að vera meðvitaðir um að þeirra vél getur hlé í smástund þegar að fara aftur á vélina. Nýrri vélar geta ekki hlé á þessu lengi. Ávinningur af the magn af vinnsla flutt af þessum vélum á aðgerðalaus tíma myndi meira að meiri starfsmenn þurfa að bíða í skamman tíma (td 1 mínútu) um komu á vélum sínum í morgun (ég bíða oft lengur að þetta fyrir Windows Defender endurnýja að eiga sér stað) sem þeir voru meðvitaðir um þetta (gagnlegur tími til að grípa morgun kaffi!).

Heildar Mér finnst þess fullviss að ég hef sýnt fram á tækni sem hægt væri að nota til að búa til slíkt kerfi. Ég hef sýnt fram á að slíkt kerfi virkar á (mjög) litlum mæli og með sumir fleiri tilraunir gæti verið minnkaðar upp nýta auðlindir af vélum skrifstofu er. Ef ég fæ ekki að benda á að gera þetta myndi ég vera mjög áhugasamur á að vita / sjá þegar einhver annar það.

Ályktanir / Mat

Næsta augljós skref væri að raunverulega fá a raunverulega heimi fordæmi og byrja að senda á vettvang kerfi eins og þetta innan skrifstofu umhverfi og sjá hvað gerist. Asking fyrirtæki til að skuldbinda sig til þessa án slóð logi fyrirtæki til að sanna tækni og skilvirkni getur verið svolítið erfitt. Tafla / Úthluta computing er mjög vinsæll er sumum hópum og hefur einhverja stór forrit (BIONC, SETI @ Home, Folding @ Home, etc). Ég vissi hins vegar ekki að finna minna mæli og einfalt kerfi eins og þetta í leit minni sem hægt væri að vals út innan skrifstofu umhverfi.

Ég bjó til í grundvallaratriðum frjáls kerfi sem notar að mestu leyti opinn uppspretta hugbúnaður og verkfæraskúr laus í næstum hvaða skrifstofu. The tækni voru í grundvallaratriðum fram og sýna að framkvæma og vinna eins og búast mætti ​​við. Vonandi hef ég sýnt að með ekki mikill vinna og með mjög einfalt skipulag getur þú sent á rist skrifstofu computing kerfi sem er öflugt, ódýr, Â og stigstærð á sama tíma.

Einu sinni er kerfi upp og keyra það er nánast enginn endir til the magn af customization og úrbætur sem þú getur gert. Til dæmis tölfræði / kvóti getur auðveldlega bætt sýnir virði slíku kerfi á hverjum degi. Ný vél er hægt að bæta fljótt og auðveldlega eins og þegar þeir koma með uppfærslu á núverandi vélbúnaði efla vinnsla máttur þinn.

Ég vona að þú hafir gaman af að lesa þetta röð af greinum og þess gefa þér mat fyrir hugsun á að keyra rist skrifstofu kerfi. Lausnin sem hér munu ekki endilega að vinna í öllum tilvikum en ætti að vera að laga til að leyfa þér að fá gagnavinnslu þín gert með eigin lausn þína.

Vinsamlegast ekki hika við að senda mér einhverjar athugasemdir, leiðréttingar eða endurbóta og ég skal gera mitt besta til að halda þessari grein uppfærð til að passa.













Panorama Þema eftir Themocracy

8 gestir tengdir núna
7 gestir, 1 Botswana, 0 meðlimir
Max gestir í dag: 18 við 04:13 UTC
Þessi mánuður: 19 á 19-08-2011 06:09 UTC
Á þessu ári: 130 á 28-03-2011 22:40 UTC
Allra tíma: 130 á 28-03-2011 10:40 UTC