Post tag: idle

Office Grid computing gamit Virtual kapaligiran - Part 3

, mga Biyernes 4th Disyembre 2009 23:37

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:

  1. Kumuha ng isang listahan ng proseso at grep ito para sa 'php'. Kung hindi natagpuan pagkatapos ay magpatuloy.
  2. Tawagan ang iyong code sa trabaho, sa aking mga kaso na ito ay magiging isang bagay PHP batay
  3. Manggagawa script nakumpleto nito run
  4. 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:

naka-iskedyul na mga gawain

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.

iskedyul

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.

Office Grid computing gamit Virtual kapaligiran - Part 1

, mga Biyernes 4th Disyembre 2009 11:23

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.

Bilang isang PHP developer ako pagpunta sa gamitin ang mga tool na ginagamit ko sa bawat araw katulad, Linux, MySQL , PHP, VirtualBox at pagbabagsak (SVN). Gayunpaman Umaasa ako gabay na ito ay iangkop sa iba pang mga wika at teknolohiya lamang pati na rin.

Ang solusyon na magbigay ako ay masyadong maluwag batay sa uri ng pagproseso gusto namin kailangan upang makamit gayunpaman ito ay maaaring hindi tunay na sa pamamagitan ng buong artikulo tulad ng kukunin ko na baguhin ang mga bagay na simple, o upang makabuo ng mas kawili-wiling pangyayari paggamit.

Ang mga virtualised kapaligiran ay tumakbo sa windows machine dahil ito ay kung ano ang karamihan ng mga tanggapan na tumakbo. Ang processing na ang mga opisina machine gawin ay hindi dapat makagambala sa staff gamit ng mga mga machine, dapat na nangangailangan ng walang maintenance sa machine, at madaling deployable sa bagong machine bilang maging sila magagamit. Gayundin, ang mga bagong virtual machine ay hindi dapat nangangailangan ng anumang karagdagang mga configuration na ito lubos na binabawasan ang kakayahang sumukat at kadalian na kung saan ang grid system ay maaaring pinalawak.

Bakit lumawak isang Grid computing Office?

Una maaari kang iniisip, bakit hindi lamang gamitin ang isang ulap computing mapagkukunan tulad ng EC2 Amazon platform ? Na rin ang mga dahilan ay maaaring maraming, halimbawa:

  • Hindi mo pagkatiwalaan ilang mga data sa isang ulap computing kapaligiran
  • Ikaw ay hindi maaring ilagay ang ilang mga data sa isang ulap computing kapaligiran para sa legal na dahilan (eg data na umaalis sa bansa), potensyal na para sa mga legal na dahilan, gaya ng NHS talaan.
  • Gusto mong panatilihin ang iyong mga yunit ng processing isara at magkaroon ng buong kontrol ng hardware masyadong
  • Hindi mo na kailangang ang mga pondo ng proyekto upang patakbuhin ang mga pagkakataon ng ulap
  • Iyong opisina ay hindi magkaroon ng isang koneksyon sa internet at samakatuwid nito hindi posible na gumamit ng isang mapagkukunan ng ulap
  • Hindi mo gusto ng ulan, ang mga ulap iminumungkahi ulan, kaya mo rin panatilihin ang layo

Ako ba ang listahan ay maaaring magpatuloy, ngunit tingin ko na sapat para sa ngayon.

Pakinabang ng isang Grid computing Office

Well, ay nagbibigay-daan sa gawin ang ilang mga matematika (at sa totoo pisika estilo ay nagbibigay-daan sa gumawa ng ilang mga malawak na pagpapalagay). Isipin mo na may malaking malakas processing server na tumatakbo ng 100 mga trabaho bawat araw. Sa iyong opisina mayroon ka ng 50 machine na idle 16 oras sa isang araw, ang bawat isa sa mga machine ay 10% bilang malakas na bilang iyong malakas processing maputol. (Bilugan ang lahat ng mga resulta sa dito sa pangmamata ang pagtaas ng pagganap).

Kaya, ang 1 machine * 10% ng kapangyarihan * 2/3 oras = 0.067 is 1 desktop processing sa idle time maproseso ng 6 buong trabaho bawat araw.

Kung ngayon ka masukat ito hanggang ito ay tumatagal ng 15 idle desktop upang iproseso ng maraming trabaho bawat araw bilang ang iyong pangunahing server ng ​​processing.

Kaya sa aming magpanggap opisina ng 50 machine namin ma-dagdagan ang aming pagproseso ng kapangyarihan mula sa 1 server up sa 4 buong server processing, o namin ang pagproseso ng 400 mga trabaho bawat araw sa halip ng 100.

Paunawa, para sa walang pamumuhunan sa bagong hardware ang iyong kumpanya lamang nadagdagan ang kapasidad ng batch processing 4 na beses! Potensyal na kayo ay pagpunta sa dagdagan ang iyong paggamit ng kapangyarihan ngunit mula sa pinaka-kapaligiran opisina ko na sa machine ay karaniwang naiwan sa magdamag pa rin, kaya maaari mong makita ito bilang isang berdeng hakbangin.

Iba pang mga pakinabang ay ibig sabihin na pamumuhunan sa bagong (o na-update) processing server ay maaaring maantala kung ang iyong mga opisina machine ay sapat at na bilang mo mapagbuti ang kapangyarihan ng iyong mga machine sa opisina ng iyong opisina grid nagiging mas malakas na awtomatikong.

Teknolohiya

Ano ang kailangan mo? (O mas tama kung ano ang ko bang gamitin):

  • Idle opisina machine (sa aking kaso ng isang ekstrang lumang windows XP laptop)
  • VirtualBox (o isa pang client ng software ng virtualisation)
  • Ang isang virtual machine sa PHP, MySQL running pagpapatakbo ng isang cut down na OS, ako pagtawag ito ang aking mga malata server :)
  • Trabaho upang tumakbo
  • Job server (ay maaaring maging isa pang virtual machine sa lugar)

Karaniwang Trabaho

Ang mga uri ng mga trabaho na ang sistema na ito ay dinisenyo upang tumakbo bilang mga sumusunod:

  • Ang sistema na natatanggap ng isang listahan ng mga data na kung saan na kailangan namin upang tumugma sa at ibalik ang mga resulta
  • Pagtutugma nagsasangkot check / naghahanap ilang (medyo static) mapagkukunan ng data
  • Mga resulta mula sa mga pinagkukunan ng data ay maaaring mangailangan ng karagdagang pagpapatunay, pinagsasama, pagsuri ng karagdagang mapagkukunan ng data bilang tugon sa mga resulta
  • Nagbalik ang data ay sa pagtutugma ng mga tala, ganap na napatunayan at maproseso
  • Ang bawat record sa loob ng isang trabaho ay malayang ng ang natitirang

Kaya talaga namin hinahanap sa pagtakbo ng mga trabaho na nangangailangan ng isang timpla ng database lookups at ilang mga numero crunching, isang pantay karaniwang sitwasyon sa isang kapaligiran ng negosyo.

Mga Grid solusyon ay hindi lamang ang kapaki-pakinabang para sa pagproseso ng mga trabaho ng ganitong uri. Talaga, anumang proseso na maaaring nahati sa mga independiyenteng mga yunit ay maaaring magpatakbo ng kahanay. Tingnan ang Wikipedia para sa mga halimbawa at karagdagang impormasyon: Grid computing , ngunit isang pares ng mga tanyag na halimbawa ay Seti @ Home at BIONC . May mga frameworks para sa pagpapatakbo ng mga grids computing, at ito ay mahusay nagkakahalaga naghahanap sa.

Ano ang kami ay makamit?

Sa pamamagitan ng dulo ng mga artikulo na Umaasa ako upang ipakita na ang paganahin ng isang grid ng opisina hindi kailangan maging hugely mahal o oras na gugulin. Ako pagpunta upang talakayin:

  • Pagse-set up ang kontrol ng sistema ng trabaho, trabaho configuration
  • Paglikha ng isang naaangkop na na processing virtual machine
  • Kung paano i-setup ang sistema sa isang makina ng bintana
  • Tinitiyak ikaw ay gumagamit ng mga pinakabagong code at data
  • Deployment at benchmarking
  • Naghahanap ng maaga

Kukunin ko ang gusali (ok na binuo ko, sinulat ito) ang isang halimbawa ng application upang subukan ang mga konsepto sa isang lokal na machine na gamit ang mga bintana XP at aking 'GridMachine na' virtual machine. Ang aking trabaho control server ay aking pangunahing makina na nagpapatakbo ng Fedora 11 .

Ito ay sa walang paraan ay nilayon upang ipakita ang isang ganap na gumagana ng malakas na sistema, ang ibig sabihin higit pa sa pagpapakita at tatalakayin na ipinapakita na ang mga bagay na ito ay maaaring nakakamit sa isang makatwirang maikling puwang ng oras at sa maliit na gastos. Mangyaring huwag mag-atubiling ipadala sa akin ang anumang mga puna, pagwawasto, o mga pagpapabuti at kong gawin ang aking pinakamahusay na upang mapanatili ang artikulong ito na-update upang tumugma sa.

Susunod na

Sa bahagi 2 ay ako magsisimula sa pamamagitan ng pagtingin sa sistema ng kontrol ng trabaho, at tumingin sa 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.













Panorama Tema sa pamamagitan ng Themocracy

9 mga bisita sa online ngayon
4 mga bisita, 5 bot, 0 miyembro
Max mga bisita ngayon: 15 sa 05:20 am UTC
Sa buwang ito: 26 sa 2012/04/04 10:27 pm UTC
Ito taon: 69 sa 27-02-2012 09:56 am UTC
Lahat ng oras: 130 sa 28-03-2011 10:40 pm UTC