Posts Tagged: bash

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 5

Með því að og föstudagur 4. desember 2009 11:03 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.

Í hluta 4 skoðuðum við að nota verkfæri til að tryggja að við erum að keyra nýjustu útgáfuna af kóða og gögn heimildum svo sem fengnar niðurstöður eru alltaf upp-til-dagsetning með nýjustu upplýsingar um fyrirtæki og rökfræði.

Pre-Dreifing

Áður en að beita rist kerfi ef það er einn hlutur sem þú gerir og einn hlutur einn það er kvóti núverandi kerfi! Sama hvað þú segir samstarfsmenn um hversu mikið auka vinna að kerfið þitt er að fara að gera nema þú hafa tölur til að styðja þetta upp tryggingar þínar eru ekkert. Svo,

  • hversu margar færslur er hægt að vinna núna? Á dag? Á klukkustund?
  • Hversu lengi tekur það yfirleitt að snúa að vinnu?
  • Hversu mikið meira rúmtak þarft þú?

Það er líka fleiri spurningar:

  • Ef vinnslu miðlara (eða einn af netþjónum vinnslu þinn) fer niður hvernig mun þetta hafa áhrif á getu þína, verður þú að vera örkumla?
  • Hvaða kosti finnst þér vona / búist við að fá frá rist kerfi?
  • Eru Skrifstofuvélar þín fær um að keyra á störf?
  • Ert þinn (eða er hægt að störf að breyta) að wrok í þessum stíl í gangi?

Síðasta meiriháttar lið er að taka tíma á öllum helstu breytinga eins og þetta. Uppfæra vinnslu kóða til að vinna með nýja aðferðafræði og viðmið aftur. Hugsanlega að setja upp vinnslu miðlara til að keyra raunverulegur vél, eftir allt vinnslu miðlara verður bara að 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 einu helgi framkvæma allar innsetningar og uppsetningu. Gerðu þetta bara áður en frí tvær vikur og fara svo annað léleg springa til 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 á allt skrifstofu innviði þína (og the stafrænn einn). Í fyrsta lagi, rúlla út a par af vélum í einu, fylgjast með net umferð, hvernig starfsmanninum vélar framkvæma á degi til dags. Þú gætir þurft að breyta starf uppsetninguna til að bregðast við niðurstöðum þínum.

Þegar kerfið hefur leyst með nokkrum vélum (segjum 10% af öllum Skrifstofuvélar, þ.e. 5) halda eftirlit net umferð og gestgjafi vél performance. Næsta viðmið aftur, ættir þú nú að afgreiða 33% fleiri störf en fyrstu viðmið þína. Athugaðu að þ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 hringrás þar til þú hamingjusamlega hafa öll Skrifstofuvélar keyra án þess að drepa einstaka vél árangur eða mala netið til kyrrstöðu.

Á öllum tímum að halda kvóti, jafnvel eftir að öll dreifing eru gerðar. Athugaðu hvernig nýjar uppfærslur kóða áhrif hraða kerfisins, athuga allar starfsmenn eru skýrslur í og ​​vinnslu störf. Hægt (mjög hægt) hækka starf stillingar til að fá það besta frá starfsmönnum og netið.

Hættu!

Hvað ef þú vilt hætta að starfsmenn þína frá að birtast á einhverjum tíma? Þau eru öll þarna í gangi, endurnýjun, og reyna sitt besta til að vinna úr gögnum eins svangur skordýr. Svarið kann að virðast augljóst, en þess virði að bæta bara í tilfelli gleymast þess. Einfaldlega breyta vinnslu handritið með brottför (0) eða deyja () eða einhver önnur staðhæfing að drepa vinnslu starf. Mikilvægt ástæða þess að við reynum alltaf að uppfæra í nýjustu vinnslu handrit áður en hlaupa!

Sýning Kerfi

Til að skrifa þennan hóp af stuttum greinum sem ég skapa mjög litla töflu til að sýna fram á tækni og aðferðafræði. Ég las fullt af greinum, námskeið, og nota ýmis verkfæri til að setja upp og fylgjast með hvað var að gerast. Alls ekki ég hef farið út og mettuð í heild skrifstofu með umferð og né hef ég haft aðgang að reglulegum starfsfólki tölvunni til að sjá hvernig vélin árangur var fyrir áhrifum.

Sýning kerfi minn var mjög auðmjúkur örugglega. Ég nota reglulega skrifborð mitt sett upp sem stjórna vinnu miðlara. Á þetta að ég hafði sett upp MySQL framreiðslumaður uppsett sett upp sem skipstjóri í afritunar, PHP , Â og SVN tengd í gegnum Apache (fyrir aðgang gegnum VM starfsmanna).

Ég bjó þá til CentOS starfsmanna vél á Raunverulegur á 6 ára gamla Windows XP laptop. Ég skipulag áætlunarflug 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 starfi stjórna framreiðslumaður minni geymsla og gerði viss um að það gæti verið uppfærð að nota 'SVN uppfærslu ". Næsta ég skipulag MySQL sem þræl og athugað þessi gögn var afrit af MySQL á stjórn starf miðlara niður að starfsmanninum VM. Eftir allt þetta, er ég setja upp bash handrit og cron starf.

Vinnslu handrit mitt fór í grundvallaratriðum á sömu nótum og þetta (mjög einfalt efni):

  • Lesa í reitinn
  • Taldi fjölda svipuðum nöfnum í töflunni frá gagnaheimild haldinn á VM
  • Taldi fjölda nafna sem ofan en skipta nafni með rými, þ.e. eiginnafn, miðja, kenninafn)
  • Endurtekin þetta ferli 1.000 sinnum

Hvert starf tók um það bil 20 mínútur að keyra. Á einum tímapunkti opnaði ég nokkur eintök af starfsmanninum VM á Windows fartölvu og horfði störf að athuga burt af hverju IP starfsmaður viðtakandi. Á þessum tímapunkti ég staðfesti einnig að afritunar sjálfkrafa aftur.

Keyrsla á fartölvu að aðgerðalaus leiddi í starfsmann að byrja að vinna störf frá stjórn starf miðlara. Þegar haldið áfram fartölvu notkun var seinkun um 30-60 sekúndur, þetta er heilmiklar tíma og starfsfólk þarf að vera meðvitaður um að vélin þeirra getur hvílt í stuttan tíma þegar aftur á vél. Nýrri vélar geta ekki hlé á þessu lengi. Ávinningur af fjárhæð vinnslu er gerð af þessum vélum á aðgerðalaus tíma myndi meira að vega þyngra en starfsmenn þurfa að bíða í stutta stund (td 1 mínútu) á að koma á vélum þeirra á morgun (ég bíða oft lengur að þessu fyrir Windows Defender uppfæra til að taka fram) að því tilskildu að þeir voru meðvitaðir um þetta (gagnlegt tími til að grípa morgun kaffi!).

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

Ályktanir / mat

Næsta augljóst skref væri að raunverulega fá a raunverulegur veröld dæmi og byrja að senda á vettvang kerfi eins og þetta innan skrifstofu umhverfi og sjá hvað gerist. Spyrja fyrirtæki til að skuldbinda sig til að þetta án slóð logandi 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, osfrv.) Ég vissi hins vegar ekki að finna í minni mæli og einföld kerfi eins og þetta í leitum mínum gæti verið að vals út innan skrifstofu umhverfi.

Ég bjó til í grundvallaratriðum frjáls kerfi með mestu opinn hugbúnað og tiltæk tól í nánast hvaða starfi. The tækni var í rauninni sýnt fram á og sýna að framkvæma og vinna eins og búast mætti ​​við. Vonandi hef ég sýna að við ekki mikillar vinnu og með mjög einfalda uppsetningu þú geta sent á rist skrifstofu computing kerfi sem er öflugt, ódýr, Â og stigstærð allt á sama tíma.

Þegar er kerfi upp og keyra það er nánast enginn endir til the magn af customization og úrbætur sem þú getur gert. Fyrir tölfræði td / kvóti getur auðveldlega bætt sýnir virði slíkt 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 þessa röð af greinum og þess gefa þér mat fyrir hugsun á að keyra rist skrifstofu kerfi. Lausnin sem hér munu ekki endilega virka í öllum tilfellum en ættu að vera að laga til að leyfa þér að fá gagnavinnslu þinn gert með þína eigin lausn.

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.













Panorama Þema eftir Themocracy

6 gestir inni núna
5 gestir, 1 Botswana, 0 meðlimir
Max gestir í dag: 23 í 07:18 am UTC
Þessi mánuður: 26 á 04-04-2012 10:27 PM UTC
Á þessu ári: 69 á 27-02-2012 09:56 am UTC
Allra tíma: 130 á 28-03-2011 10:40 PM UTC