Office Grid Computing gamit kapaligiran Virtual - Part 3
Pagpapakilala
trabaho ko sa isang kumpanya na kung saan tumakbo kami maraming jobs batch processing milyon-milyong mga talaan ng data sa bawat araw at ako ay iisip kamakailan lamang tungkol sa lahat ng mga makina na umupo sa paligid ng bawat at bawat araw paggawa ng wala para sa ilang oras. Hindi ba ito ay mabuti kung maaari naming gamitin ang mga makina sa magbolster ang pagpoproseso ng kapangyarihan ng aming mga sistema? Sa set na ito ng mga artikulo na ako ng pagpunta sa tumingin sa mga potensyal na benepisyo ng employing isang opisina parilya gamit virtualised kapaligiran.
Sa part 2 namin tumingin sa ang mga trabaho ng isang server ay tatakbo, at kung paano ang mga trabaho ay dapat na isinaayos upang makamit ang pinakamalaking halaga ng processing habang tinitiyak na ang bawat trabaho ay naproseso nang walang mabibigo.
Pagse-set up ang iyong mga manggagawa - o Limp server
Ang susunod na hakbang sa proseso ay i-set up ang iyong virtual na manggagawa. Para sa mga ito ako ng pagpunta sa gamitin ang isang installation ng centOS gamit VirtualBox. Ako pagpunta upang i-install ng MySQL at PHP sa server, na kilala rin bilang isang Limp (Li nux, m ySQL, P HP) Server (na aking ginawa na ang pangalan up).
- I-install ang VirtualBox sa iyong mga bintana ng makina (sundan ang link)
- Download at install centOS (kasalukuyang bersyon 5.3) sa loob ng isang nilikha virtual machine
Mayroong point walang ako pagpunta sa ito mayroong marahil 1,000 's ng mga dakilang Tutorials out doon (ok, ito ang isa: Paglikha at Managing centOS virtual machine sa ilalim ng virtualbox ). Ang mahalagang punto upang tandaan akala ko ay na ako tinatawag ang aking virtual machine GridMachine.
Gaya malayo gaya ang aking mga pagpipilian ng virtualisation client at operating system na pumunta doon ay walang malaking uudyok na dahilan para sa bawat pinili. VirtualBox ay isang bagay na gamit ko sa aking bahay machine at ay suportado ng tatlong pangunahing mga operating system. Pinili ko centOS bilang nito sa isang magandang kuwadra OS at gagamitin ko ito sa aking sariling web server. Ako ay isang malaking naniniwala sa mga karapatan tools para sa trabaho (bagaman ako ng nag-aaplay 'paggamit ng pinakamabilis at pinakamadaling para sa iyo' mentality dito), kaya kung operating system X tumatakbo ang iyong code ng mas mabilis at mas mahusay ang gamitin na sa halip na:)
Mahalaga siguraduhin na ang iyong VM gumagamit ng DHCP, kung hindi, para sa bawat bagong virtual machine ay kailangan na naka-configure na magkahiwalay na kung saan ay isang bagay na hindi namin want.By gamit DHCP hindi namin kailangan upang isaayos ang mga setting ng network para sa mga indibidwal na makina worker, DHCP ay kamay out IPs para sa iyo. Kaya't maaari mong kopyahin ang iyong mga virtual machine tungkol sa opisina nang hindi nababahala tungkol sa pagtatakda ng bawat isa hanggang (ito ay nagpapabuti kakayahang sumukat at binabawasan manggagawa administrasyon).
Ang proseso na dapat mong layunin upang makamit ay upang makakuha ng isang bagong pisikal na makina, install VirtualBox, at pagkatapos ay medyo marami lumawak ang virtual image na walang gaanong sino pa ang paririto. Ito ay maaaring maging pantas sa setup ang lahat ng iyong mga manggagawa sa ibang subnet sa gayon ay maaari kang hindi bababa sa makita kung ilang mga machine ay tumatakbo. Kakailanganin mo ding i-set up ang iyong mga makina sa isang mahabang lease o walang limitasyong lease DHCP.
Kung paano patakbuhin ang Jobs sa mga manggagawa
Ito ay isang nakawiwiling lugar at may mga ilang mga wastong pamamaraan para sa proseso ng mga trabaho sa mga manggagawa. Narito ang kukunin ko na lang talakayin ang dalawang pinaka halata:
- Walang katapusan tumatakbo script: Ang isang script, maging ito ng isang shell script, o ng isang PHP script ay naisakatuparan nang isang beses sa manggagawa at tumatakbo bilang bahagi ng isang walang hanggan loop. Ko na bawas ang paraan na ito bilang isa crash ng script at potensyal na ang iyong mga manggagawa ay titigil na tumakbo nang walang ilang mga uri ng interbensyon.
- Cron based script pagpapatupad: Bawat X minuto ang cron daemon kicks off ng isang tawag sa iyong mga script na makakuha ng mga bagay pagpunta. Walang ilang suri ito ay maaaring humantong sa maraming maraming mga kopya ng iyong mga manggagawa script na tumatakbo.
Aking desisyon ay upang pumunta sa cron na kicks off sa isang shell script bawat 10 minutes. My shell script gumaganap ang mga sumusunod na gawain:
- Kumuha ng isang proseso sa listahan at grep ito para sa 'php'. Kung hindi natagpuan pagkatapos ay magpatuloy.
- Tawagan ang iyong trabaho code, sa aking mga kaso na ito ay isang bagay PHP based
- Worker script nakatapos nito tumakbo
- Handa na upang pumunta muli sa susunod na angkop na tawag
My bash script hitsura ng isang bagay tulad ng mga sumusunod:
#! / Bin / sh kung palakol ps | grep-v grep | grep php> / dev / null pagkatapos echo "Job ay kasalukuyang processing, lumabas" iba echo "Job ay hindi tumatakbo, simulan ngayon" php yourJobProcessingScript.php fi
Tandaan: ang mga echo's ay halos ganap na walang kahulugan, ngunit maaaring makatulong ang mga susunod na tao na dumating kasama na subukan at i-edit ang mga ito.
Concludes na ang set up ng makina worker virtual, mabilis, simple, at madaling kopyahin sa bawat bagong piraso ng hardware na natanggap. Ang 'kabihasnan' ng sistema ng takbuhan tunay ay hindi sa mga visualized OS, ang lahat na gawin sa ang code na nilikha sa trabaho na proseso, ang mga trabaho configuration, at sa siguraduhin na ang trabaho ay tumatakbo nang naaangkop (ibig sabihin kapag ang host ay bakante ).
Pagse-set up ng Windows sa Initialise Manggagawa
Ang unang gawain ay upang gumana ang mga command na kinakailangan upang tumakbo ang virtual machine mula sa bintana command line. Kung na-install virtualBox sa lokasyon at default mo na pinangalanan ang iyong mga manggagawa GridMachine pagkatapos ay ang command na kinakailangan upang load up ang iyong mga manggagawa ay:
"C: \ Program Files \ Sun \ VirtualBox \ VBoxManage.exe" startvm GridMachine Gayunman na tumakbo ang script sa isang 'walang ulo' ng estado na kailangan namin upang gamitin:
"C: \ Program Files \ Sun \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - vrdp = off Ito ay magsisimula ang virtual machine na walang ang GUI at payagan ito upang i-save ang estado maganda. Ang ikalawang argument ay lumiliko off RDP kaya ito ay hindi conflict sa bintana RDP, o magbigay sa iyo ng mensahe tungkol sa pakikinig sa port 3389. Ang mga virtual machine pangalan ay case sensitive!
Susunod na, kami ay kailangang magtakda ng mga bintana hanggang sa kick off ang aming worker VM minsan ang makina ay bakante. Upang gawin ito (sa Windows XP) kailangan mong pumunta Start -> All Programs -> Accessories -> System Tools -> Scheduled Tasks bilang sa ibaba:
Susunod na mag-click sa 'Magdagdag ng mga naka-iskedyul ang Gawain' sinundan sa pamamagitan ng browse sa magdagdag ng isang pasadyang programa. Mag-navigate sa iyong VBoxManage script at i-click ok. Iskedyul ang iyong mga gawain para sa alinman sa mga opsyon (kami ay baguhin ito sa isang minuto) at magpatuloy. Pagkatapos ng laktaw sa susunod na mga bintana ng screen ay magtatanong sa iyo na gusto mong patakbuhin ang gawain na ito, gusto ko magmungkahi alinman sa 'Administrator' o paglikha ng isang bagong privileged user. Tandaan na hindi namin nais na makagambala sa standard account kawani sa makinang sa anumang point. I-click ang susunod at check ipakita mga advanced na mga opsyon para sa gawain na ito.
Upang sa dulo ng tumakbo textbox idagdag 'startvm GridMachine' string aming at masiguro na tatakbo lamang kapag naka-log in ay kaliwa unticked. Bisitahin ang iskedyul ng susunod na gawain at baguhin ang iskedyul na drop down na ang pagpipiliang 'kapag idle', piliin ang halaga ng oras na gusto mo ng makina na maging idle bago lumipat sa susunod na tab.
Sa wakas untick ang opsyon na nagsasabing itigil ang mga gawain kung ito ay tumatakbo X halaga ng oras, ngunit gawin tik ng opsyon upang ihinto ang gawain kung ang makina ay hindi na walang ginagawa.
Iyan na ang pagkatapos ay para sa windows setup host!
Buod
Sa bahaging ito namin na-set up ng isang virtual machine upang kumilos bilang isang manggagawa, pati na rin ang paraan kung saan ang tawag namin at execute ang aming scripts trabaho processing (para sa aking sarili ng isang PHP script). Mula dito namin tumingin sa kung paano mag-set up ang aming mga kopya ng mga bintana upang simulan up ang virtual machine sa walang ulo mode kapag ang computer ay nagiging idle, at i-save ang kanyang estado kapag ang user ay Resumes paggamit ng makina. Sana sa puntong ito ikaw ay nakakakita ng kung paano simple ito ay upang set up ng tulad ng isang sistema at ay nangangati upang makakuha ng ilang mga eksperimento ng pagpunta sa iyong sarili!
Susunod na panahon
Sa Part 4 kami ay naghahanap sa paggamit ng mga kasangkapan upang matiyak na ikaw ay nagpapatakbo ng mga pinakabagong bersyon ng mga data at mga mapagkukunan code kaya na nakuha sa mga resulta ay laging up-to-date sa mga pinakahuling impormasyon ng negosyo at lohika.




















































[...] Part 3 kami gumawa ng aming mga virtual machine processing at set up ng aming mga machine bintana upang maging [...]
[...] Part 3 nilikha namin ang aming mga virtual machine processing at set up ng makina ng windows para maging [...] idle-time
Ikaw ay isang Talagang nakaranas ng Blogger, ka man may kalidad unawa sa kung ano ang iyong pakikipag-usap tungkol sa o ikaw ay ang ilang mga fantastic pananaliksik. Salamat sa ito mahusay na post.