Posts Tagged: SVN

Skrifstofa Tafla Computing með Virtual umhverfi - Part 4

Með því að og Föstudagur 4 desember 2009 23:59

Inngangur

Ég vinn í fyrirtæki þar sem við keyra mörg störf Runuvinnsla milljónir gagna 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ð efla vinnslu kraft kerfi okkar? Í þessu mengi greina sem ég ætla að líta á hugsanlegum ávinningi af ráðningu skrifstofu rist með virtualised umhverfi.

Í 3. hluta sem við bjuggum til raunverulegur vinnsla vél okkar og setja upp Windows vélar til að verða aðgerðalaus-tími starfsmenn.

Keyra nýjustu kóða

Óhjákvæmilega eftir að búa starfsmenn viðskipti rökfræði þína mun breyta, villur verður að finna, mun hraðar skilvirkari kóða er framleitt þannig að fara starfsmenn þínir sat um vinnslu gagna með gamla daunillur kóða . Hvernig þá áttu að tryggja að við að við erum alltaf með nýjustu og mest útgáfu af skriftum vinnslu okkar?

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

Fyrsta aðferðin væri að einfaldlega tengja við starf stjórna miðlara 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ð nokkuð, hvernig væri að búa til rsync handriti og nota það í hvert sinn í staðinn? Einnig hvað um að setja nýjustu vinnslu handrit okkar í niðurrifsstarfsemi að skoða kóðann í upphafi og þá bara að uppfæra kóðann okkar á hverju hlaupa ( SVN uppfærslu )?

Í lok við gæti endað með bash handrit (kallað eftir cron á 10 mínútna fresti), sem lítur út eins einfalt og þetta:

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

Nú getum við verið viss um að með hverjum tíma sem við erum örugglega að keyra nýjustu kóða. Við erum að tryggja þetta með því að uppfæra kóða stöð okkar í hvert og hvert skipti sem við framkvæma að hlaupa og draga úr net umferð aðeins um að flytja skrá mismun yfir netið okkar.

Í uppsetningu kynningu mína, gerði ég nákvæmlega eins og hér að ofan. Niðurrifsstarfsemi var sett á starf vinnslu vefþjóninum mínum og ég kippti einfaldlega nýjustu kóða frá a 'launþega' á grein nota "SVN uppfærslu". Ég bætti líka útgáfunúmer tag vinnslu handriti mínu sem var aftur í gagnagrunn sem hluta af niðurstöðum aftur. Þannig að ég gat séð að kóðinn minn var að uppfæra í hvert sinn sem ég afrita skottinu mínu í grein starfsmanna, þ.e. að ég var örugglega að keyra nýjustu vinnslu handrit.

Notkun nýjustu gögn

Ef starf vinnslu þinn gerir notkun heimildum gögn þá á einhverjum tímapunkti þetta eru að fara að uppfæra líka. Nema þú hringja gögn heimildir þínar á mjög örfáum grundvelli þú ert að fara að drekkja net með umferð eins fljótt og starfsmenn þínar byrja að birtast færa allt til kyrrstöðu. Lausn ég ákvað að ég vil færa gögn heimildir mínar í kring með VMS mínum.

Haltu þú ert hestar þar! Hvað ef gögn heimildir mínar eru HUGE? Jæja þetta er í raun 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 í hverja 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ð þess bara unfeasible að halda að magn af gögnum í vél starfsmaður þinn. Í því tilfelli hvað myndir þú gera? Jæja við gætum litið á að kalla á staðnum gögn miðlara, en þetta gæti valdið mál með netið. Í þessu tilfelli er net 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 milli 8pm og 6am á hverju kvöldi og / eða throttling gögn uppspretta þess.

Flutningur á segjum gögn heimildum magn okkar til 100GB af gögnum. Jæja já það er töluvert af gögnum til að fletta á netinu á 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 fengið þinn á starf vinnslu miðlara og setja þetta upp sem skipstjóri í eftirmyndun (með fallegu langan bin log) gæti verið leið til að fara:

afritunar Með því að setja hvern starfsmanna upp sem þræll að stjórna vinnu miðlara breytingar á gögnum heimildum þínum mun trickle niður fallega til starfsmanna án þess að mikið aukningu á virkni net (sem er nema þú framkvæma a gríðarstór gögn uppfærslu og allir starfsmenn þínir sparka í í einu). Þetta hefur yfirburði yfir rsync í að þú viljir ekki fá langt hlé fyrir hvert starf, sem gagnasafn endurnýja, að MySQL púkinn á starfsmann þinn mun stöðugt að uppfæra gögn á meðan vinnsla áfram.

Þetta er hvernig ég setja upp sýning vefþjóninum mínum. Til að setja upp afritunar Ég fylgdi leiðbeiningunum á MySQL staður ( Uppsetning afritunar ) og innan 20 mínútna sem ég hafði inital starfsmann minn afrit stjórn starf netþjóna DataSet. Fyrir hvern starfsmann á afritunar stillingar og ferli vann í 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óðann þinn upp til dagsetning með using rsync eða subverion gr SVN) til að vinna verk og draga net umferð á sama time. Við ræddum einnig hvernig að halda gögn uppspretta upplýsinga upp-til-dagsetning með því að leyfa það að seytla niður til hver af starfsmönnum þínum. Þannig að við svæði að tryggja að við höldum upp með rökfræði fyrirtæki og upplýsingar í skrifstofu rist kerfi okkar. Það mun augljóslega vera ótal kostir til að sinna þessum verkefnum, en hér voru tvær einfaldar dæmi til að sýna hversu auðvelt lausn er að koma með.

Næst þegar

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

Skrifstofa Tafla Computing með Virtual umhverfi - Part 1

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

Inngangur

Ég vinn í fyrirtæki þar sem við keyra mörg störf Runuvinnsla milljónir gagna 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ð efla vinnslu kraft kerfi okkar? Í þessu mengi greina sem ég ætla að líta á hugsanlegum ávinningi af ráðningu skrifstofu rist með virtualised umhverfi.

Sem PHP forritari ég ætla að nota verkfæri sem ég nota á hverjum degi þ.e., 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 sem ég afla verður mjög lauslega byggð á tegund vinnslu við þyrftum að ná þó þetta getur ekki verið satt í gegnum allt hlutur sem ég breyta hlutum fyrir einfaldleika, eða að framleiða fleiri áhugaverða 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 með þessum vélum ætti að þurfa ekki viðhald á vélinni, og vera auðveldlega deployable nýjum vélum sem þeir verða í boði. Einnig nýr raunverulegur vél ætti ekki að þurfa frekari stillingar sem þetta dregur verulega úr sveigjanleika og vellíðan þar sem rist kerfi er hægt að framlengja.

Hvers vegna Dreifa að Computing Skrifstofa Tafla?

Í fyrsta lagi getur þú 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ð nokkur, td:

  • Þú munt ekki fela ákveðnar upplýsingar í tölvunarfræði ský umhverfi
  • Þú getur ekki sett ákveðin gögn í tölvunarfræði ský umhverfi fyrir lagalegum ástæðum (td gögn yfirgefa landið), hugsanlega fyrir lagalegum ástæðum, td NHS records.
  • Þú vilt halda vinnslu einingar þinn loka og hafa fulla stjórn á vélbúnaði of
  • Þú hefur ekki verkefni fjármagn til að keyra ský dæmi
  • Skrifstofu hefur ekki tengingu við netið og því ekki hægt til þess að nota ský síðu
  • Þú líkar ekki rigning, ský benda regn, því þú haldir vel í burtu

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

Kostir við Computing Office Grid

Jæja leyfir, gera sumir stærðfræði (og í réttu eðlisfræði stíl lætur gera nokkrar umfangsmiklar forsendur). Ímyndaðu þér að þú ert stór Beefy vinnslu framreiðslumaður hlaupandi 100 störf á dag. Í skrifstofu þú hefur 50 vélar sem eru aðgerðalaus 16 tímar á dag, hver af þessum vélum er 10% eins og öflugur eins Beefy vinnslu skera þinn. (Allar niðurstöður hér eru ávalar til að vanmeta árangur aukning).

Svo, 1 vél * 10% völd * 2/3 tíma = 0,067, þ.e. 1 skrifborð vinnslu á aðgerðalaus tíma geta afgreitt 6 fullri vinnu á dag.

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

Svo í þykjast skrifstofu okkar 50 vél við gætum 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.

Tilkynning, því að enginn fjárfestingu í nýjum vélbúnaði fyrirtæki þitt hefur bara aukist Runuvinnsla getu sína 4 sinnum! Hugsanlega þú ert að fara að auka vald notkun þína, en frá flestum skrifstofu umhverfi sem é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æra) vinnsla framreiðslumaður geta tafist ef Skrifstofuvélar þínar eru fullnægjandi og að eins og þú bæta kraft vélum skrifstofu skrifstofu rist þitt verða öflugri sjálfkrafa.

Tækni

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

  • Idle vélar skrifstofa (í minn tilfelli a vara gamall gluggakista 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 þessar mínum Limp netþjóna :)
  • Algengar til að keyra
  • Atvinna miðlara (getur verið annar raunverulegur vél einhvers staðar)

Dæmigert Algengar

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

  • Kerfi fær lista af gögnum á sem við þurfum að passa og skila niðurstöðum
  • Lokað felur haka / leita nokkrum (frekar truflanir) gögn heimildir
  • Niðurstöður úr heimildum gögn getur krafist frekari staðfestingu, samruna, eftirlit með viðbótar gögnum heimildum til að bregðast við niðurstöðum
  • Gögn er skilað með samsvarandi færslur, að fullu staðfest og unnin
  • Hver færsla innan starf er óháð öðrum

Svo í rauninni erum við að horfa á gangi störf sem krefjast blöndu af leit gagnagrunninum og sumir tala marrinu í völsunum og nokkuð dæmigerður atburðarás í rekstrarumhverfi.

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

Hvað munum við ná?

Í lok þessara greinar É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órn starf kerfi, starf stillingar
  • Búa til viðeigandi vinnslu 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 byggt, þá skrifaði þetta) dæmi forrit til að prófa hugmyndir á vél með Windows XP og minn 'GridMachine "raunverulegur vél. Starf stjórna framreiðslumaður minn mun vera aðal vél mín sem keyrir Fedora 11 .

Þetta er á engan hátt ætlað að sýna fram á fullu að vinna öflugt kerfi, þess ætlað meira á kynningu og umræðu sem sýnir að þetta er hægt að ná í tiltölulega skömmum tíma og á litlum tilkostnaði. Vinsamlegast ekki hika við að senda mér einhverjar athugasemdir, leiðréttingar eða úrbætur og ég mun gera mitt besta til að halda þessa grein uppfærð til að passa.

Næst þegar

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













Panorama Þema eftir Themocracy

5 gestir inni núna
3 gestir, 2 Botswana, 0 meðlimir
Max gestir í dag: 11 í 01:15 am UTC
Þessi mánuður: 40 á 23-05-2012 03:33 am UTC
Á þessu ári: 69 á 27-02-2012 09:56 am UTC
Allra tíma: 130 á 28-03-2011 10:40 PM UTC