Office Grid computing gamit Virtual kapaligiran - Part 3
Pagpapakilala
Magtrabaho ako sa isang kumpanya kung saan tumakbo namin ang maraming mga batch trabaho na pagproseso ng mga milyon-milyong ng mga talaan ng data sa bawat araw at ako ay iniisip kamakailan tungkol sa lahat ng mga machine na umupo sa paligid ng bawat at bawat araw paggawa ng wala para sa mga ilang oras. Hindi magiging mahusay na kung maaari naming gamitin ang mga machine sa magbolster ang pagproseso ng kapangyarihan ng aming mga system? Sa hanay ng mga artikulo na ako pagpunta sa tumingin sa mga potensyal na benepisyo ng employing ng isang tanggapan grid na gamit ang virtualised kapaligiran.
Sa bahagi 2 namin tumingin sa trabaho server ng tatakbo, at kung paano ang mga trabaho ay dapat na-configure upang makamit ang pinakamalaking halaga ng pagproseso habang tinitiyak na ang bawat trabaho ay naproseso walang sablay.
Pagse-set up ng iyong manggagawa - o malata server
Ang susunod na hakbang sa proseso ay i-set up ang iyong mga virtual na manggagawa. Para sa ako pagpunta sa gamitin ang isang pag-install ng mga centOS na gamit VirtualBox. Ako pagpunta upang i-install ang MySQL at PHP sa server, na kilala rin bilang isang tikod (Li nux, ang m ySQL, P HP) Server (na maaari kong ginawa na pangalan up).
- I-install ang VirtualBox sa iyong machine sa bintana (sundin ang link)
- I-download at i-install ang centOS (kasalukuyang bersyon 5.3) sa loob ng isang nilikha virtual machine
Walang point sa akin ng pagpunta sa may marahil 1,000 's ng mga mahusay na mga tutorial out doon (ok, narito ang isa: Paglikha at Managing centOS virtual machine sa ilalim ng virtualbox ). Ang mahalagang punto upang tandaan ipagpalagay ko na tinatawag ko ang aking virtual machine GridMachine.
Bilang malayo bilang aking mga pagpipilian ng ang virtualisation client at operating system pumunta doon ay walang malaking nakahihimok na dahilan para sa bawat pagpipilian. VirtualBox ay isang bagay na gamitin ko sa aking bahay machine at suportado ng ang tatlong pangunahing mga operating system. Pinili ko ang mga centOS bilang nito ang isang magandang matatag na OS at gagamitin ko ito sa aking sariling web server. Ako ay isang mahusay na believer sa mga karapatan na kasangkapan para sa trabaho (bagaman ako ng nag-aaplay sa 'gamitin ang pinakamabilis at pinakamadaling para sa' kuru-kuro dito), kaya kung operating system na nagpapatakbo ng X ang iyong code mas mabilis at mas mahusay na gamitin sa halip :)
Mahalaga siguraduhin na ang iyong VM ay gumagamit ng DHCP, kung hindi man para sa bawat bagong virtual machine ay kailangang naka-configure ang hiwalay na kung saan ay isang bagay na hindi namin want.By gamit ang DHCP hindi namin kailangan i-configure ang mga setting ng network nang paisa-isa para sa mga machine manggagawa, ang DHCP ay ipasa out sa mga IP para sa iyo. Samakatuwid maaari mong kopyahin ang iyong virtual machine tungkol sa opisina nang hindi worrying tungkol sa pagtatakda ng bawat isa hanggang (ito ay mapabuti ang kakayahang sumukat at binabawasan manggagawa administrasyon).
Ang proseso na kailangan mong sikaping upang makamit ay upang makakuha ng isang bagong pisikal machine, install VirtualBox, at pagkatapos ay medyo magkano lumawak ang virtual imahe nang walang magkano ang iba. Maaaring ito ay matalino upang i-setup ang lahat ng iyong mga manggagawa sa isang iba't ibang subnet kaya na maaari mong hindi bababa sa makita kung gaano karaming mga machine ay tumatakbo. Makikita mo rin kailangang mag-set up ang iyong machine sa isang mahabang lease o walang limitasyong lease DHCP.
Paano patakbuhin ang mga Trabaho sa ang manggagawa
Ito ay isang kagiliw-giliw na lugar at may ilang mga wastong pamamaraan para sa pagproseso ng mga trabaho sa manggagawa. Dito kukunin ko na lang pag-usapan ang dalawang pinaka-halata:
- Magpakailanman tumatakbo ang script: script A, maging ito ng isang shell script, o isang PHP script ay pinaandar nang isang beses sa ang manggagawa at tumatakbo bilang bahagi ng isang walang hanggan loop. Bawas ko na ang paraan na ito bilang isang pag-crash ng script at potensyal na ang iyong mga manggagawa ay itigil upang tumakbo nang walang ilang uri ng interbensyon.
- Cron based na pagpapatupad ng script: bawat X minuto ang cron demonyo kicks-off ang isang tawag sa iyong script upang makakuha ng mga bagay-bagay pagpunta. Walang ilang pagsuri na ito ay maaaring humantong sa maraming maraming mga kopya ng inyong manggagawa script na tumatakbo.
Aking desisyon ay upang pumunta sa cron kung saan kicks off ang shell script bawat 10 minutes. Aking shell script gumaganap ang mga sumusunod na gawain:
- Kumuha ng isang listahan ng proseso at grep ito para sa 'php'. Kung hindi natagpuan pagkatapos ay magpatuloy.
- Tawagan ang iyong code sa trabaho, sa aking mga kaso na ito ay magiging isang bagay PHP batay
- Manggagawa script nakumpleto nito run
- Handa na pumunta muli sa susunod na angkop na tawag
Aking Bash script mukhang isang bagay tulad ng sumusunod:
#! / Bin / SH kung PS palakol | grep-v grep | grep php> / dev / null pagkatapos echo "Job ay kasalukuyang pinoproseso, lumabas" iba umalingawngaw ang "Job ay hindi tumatakbo, simulan ngayon" php yourJobProcessingScript.php Fi
Tandaan: ang echo ng ay halos ganap na walang kabuluhan, ngunit maaaring makatulong ang susunod na tao na dumating kasama upang subukan at i-edit ang mga ito.
Na concludes ang set up ng mga virtual machine manggagawa, mabilis, simple, at madaling kopyahin sa bawat bagong piraso ng hardware na natanggap. Ang 'kabihasnan' ng sistema ng grid ay talagang hindi sa ang visualized OS na, ang lahat upang gawin sa ang code na nilikha sa trabaho sa proseso, ang configuration ng trabaho, at sa pagtiyak na ang trabaho ay nagpapatakbo kapag naaangkop na (ibig sabihin kapag ang host ay bakante ).
Pagse-set up Windows sa Initialise ng Manggagawa
Ang unang gawain ay upang gumana ang command na kinakailangan upang patakbuhin ang virtual machine mula sa bintana command na linya. Kung na-install virtualBox sa ang default na lokasyon at pinangalanan mo na ang iyong manggagawa GridMachine pagkatapos ay ang command na kinakailangan upang i-load ang iyong manggagawa ay:
"C: \ Program Files \ Sun \ VirtualBox \ VBoxManage.exe" startvm GridMachine Subalit upang patakbuhin ang script sa isang 'walang ulo' na estado kailangan naming gamitin:
"C: \ Program Files \ Sun \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - vrdp = off Ito ay simulan ang virtual machine na walang GUI at payagan ang mga ito upang i-save ang estado maganda. Ang pangalawang argumento ay lumiliko off RDP kaya hindi salungat sa mga bintana RDP, o magbigay sa iyo ng isang mensahe tungkol sa pakikinig sa port 3389. Ang mga virtual machine pangalan ay case sensitive!
Susunod, kami ay kailangan upang itakda ang mga bintana upang mag-alis ng aming manggagawa VM-sabay machine ay naging idle. Upang gawin ito (sa Windows XP) kailangan mong pumunta sa Start -> All Programs -> Accessories -> System Tools -> Naka-iskedyul Gawain bilang sa ibaba:
Susunod click sa 'Magdagdag Naka-iskedyul ang Gawain' sinundan sa pamamagitan ng-browse sa magdagdag ng isang pasadyang programa. Mag-navigate sa iyong VBoxManage script at i-click ang ok. Iskedyul ang iyong mga gawain para sa anumang ng mga pagpipilian (kami ay baguhin ito sa isang minuto) at magpatuloy. Pagkatapos laktaw sa susunod na screen windows ka na tatanungin na gusto mong patakbuhin ang gawaing ito, gusto ko iminumungkahi ang alinman sa 'Administrator' o paglikha ng isang bagong privileged gumagamit. Tandaan na hindi namin gusto mong makagambala sa karaniwang kawani ng account sa machine sa anumang punto. I-click ang susunod at ang ipakita ang mga advanced na mga opsyon para sa gawain.
Sa dulo ng textbox run magdagdag ng aming string na 'startvm GridMachine' at matiyak na run na lamang kapag naka-log in ay iniwan unticked. Bisitahin ang gawain ng iskedyul sa tabi at baguhin ang iskedyul ng drop down na ang pagpipiliang 'kapag idle', piliin ang halaga ng oras na gusto mo machine ang maging idle bago lumipat sa sa susunod na tab.
Panghuli untick ang opsyon na estado itigil ang mga gawain kung ito ay tumatakbo ng X halaga ng oras, ngunit garapata ang pagpipilian upang itigil ang mga gawain kung machine ay hindi na naka-idle.
Iyan ay para sa setup ng windows host!
Buod
Sa bahaging ito namin ang set up ng isang virtual machine upang kumilos bilang isang manggagawa, pati na rin ang paraan na kung saan namin tumawag at isakatuparan ang aming mga script sa pagpoproseso ng trabaho (para sa aking sarili ng isang PHP script). Mula dito namin tumingin sa kung paano mag-set up ng aming mga kopya ng mga bintana upang simulan ang virtual machine sa walang ulo mode kapag ang computer ay nagiging idle, at i-save ang kanyang estado kapag ang gumagamit ay magpapatuloy paggamit ng machine. Sana sa puntong ito ikaw ay nakakakita ng kung paano simple ito ay i-set up ganoong isang sistema at nangangati upang makakuha ng ilang mga eksperimento ng pagpunta sa iyong sarili!
Susunod na
Sa Bahagi 4 kami ay naghahanap gamit ang mga tool upang matiyak na kayo ay tumatakbo sa pinakabagong bersyon ng mga pinagkukunan ng code at data upang makuha resulta ay laging up-to-date sa pinakabagong impormasyon sa negosyo at lohika.



















































