Pejabat Grid Computing menggunakan persekitaran Virtual - Bahagian 3

Dengan Watkin Lloyd Steven , 4 Disember 2009 23:37 Jumaat

Pengantar

Saya bekerja di sebuah syarikat di mana kita menjalankan banyak kerja batch processing berjuta-juta nota data setiap hari dan saya sudah berfikir baru-baru ini tentang semua mesin yang duduk-duduk masing-masing dan setiap hari melakukan apa-apa selama beberapa jam. Bukankah lebih baik jika kita boleh menggunakan mesin-mesin untuk meningkatkan kekuatan pemprosesan sistem kita? Dalam Seri artikel ini saya akan melihat potensi manfaat menggaji pejabat grid menggunakan persekitaran virtualised.

Pada bahagian 2 kita melihat pekerjaan pelayan akan berjalan, dan bagaimana pekerjaan harus dikonfigurasikan untuk mencapai jumlah terbesar sementara proses memastikan bahawa setiap pekerjaan diproses tanpa gagal.

Menyediakan pekerja anda - atau pelayan Limp

Langkah seterusnya dalam proses ini adalah untuk menetapkan pekerja virtual anda. Untuk ini saya akan menggunakan pemasangan CentOS menggunakan VirtualBox. Aku akan memasang mySQL dan PHP pada pelayan, juga dikenali sebagai pincang (Li Nux, m ySQL, L HP) servera (saya mungkin telah membuat nama itu atas).

  • Pasang VirtualBox pada mesin windows anda (ikuti link)
  • Download dan install CentOS (versi 5.3) di dalam mesin virtual yang dibuat

Tidak ada gunanya saya terus ini ada kemungkinan 's / d 1,000 tutorial besar di luar sana (ok, ini satu: Membuat dan Managing mesin virtual CentOS bawah virtualbox ). Mata penting untuk diperhatikan saya kira adalah bahawa saya disebut GridMachine mesin virtual saya.

Sejauh pilihan saya pelanggan virtualisasi dan sistem operasi pergi ke sana ada alasan kuat besar bagi masing-masing pilihan. VirtualBox adalah sesuatu yang saya gunakan di komputer rumah saya dan disokong oleh tiga sistem operasi utama. Saya memilih CentOS sebagai OS nya stabil baik dan saya gunakan di pelayan web sendiri. Saya sangat percaya pada alat yang tepat untuk pekerjaan (walaupun aku menerapkan 'menggunakan terpantas dan termudah untuk anda' mentaliti di sini), jadi jika sistem operasi X menjalankan kod anda lebih cepat dan lebih efisien menggunakannya sebagai gantinya:)

Yang penting pastikan bahawa VM anda menggunakan DHCP, dinyatakan untuk setiap mesin virtual baru akan harus dikonfigurasikan secara berasingan yang merupakan sesuatu yang kita tidak want.By menggunakan DHCP kita tidak perlu menyediakan tatacara rangkaian secara individu untuk mesin pekerja, DHCP akan tangan keluar IP untuk anda. Oleh itu, anda boleh menyalin mesin virtual anda tentang kantor tanpa bimbang tentang tatacara masing-masing Facebook (ini meningkatkan skalabilitas dan mengurangkan pentadbiran pekerja).

Proses anda harus berusaha untuk mencapai adalah untuk mendapatkan sebuah mesin fizikal baru, pasang VirtualBox, dan kemudian cukup banyak menyebarkan gambar virtual tanpa banyak lagi. Mungkin bijaksana untuk setup semua pekerja anda pada subnet yang berbeza sehingga anda sekurang-kurangnya dapat melihat berapa banyak mesin berjalan. Anda juga harus menyiapkan mesin anda pada sewa panjang atau DHCP sewa terhad.

Bagaimana menjalankan Jobs pada pekerja

Ini adalah kawasan yang menarik dan ada beberapa kaedah yang sah untuk pekerjaan pemprosesan pada pekerja. Di sini saya hanya akan membahas dua yang paling jelas:

  • Menerus menjalankan skrip: script A, baik itu shell script, atau script PHP dieksekusi sekali pada pekerja dan berjalan sebagai sebahagian dari sebuah loop tak terbatas. Saya sudah diskaun kaedah ini sebagai salah satu kemalangan naskah dan berpotensi pekerja anda akan berhenti berjalan tanpa semacam campur tangan.
  • Cron eksekusi script mengikut: Setiap minit X cron daemon kicks off panggilan kepada skrip anda untuk mendapatkan hal yang terjadi. Tanpa menyemak beberapa perkara ini boleh menyebabkan banyak salinan banyak script pekerja anda berjalan.

Keputusan saya adalah pergi dengan cron yang kicks off shell script setiap 10 minutes. shell script saya melakukan kegiatan sebagai berikut:

  1. Dapatkan senarai proses dan grep ini untuk 'php'. Jika tidak dijumpai, maka teruskan.
  2. Kod panggilan pekerjaan anda, dalam kes saya ini akan menjadi sesuatu yang berasaskan PHP
  3. Pekerja script selesai menjalankan syarikat
  4. Siap untuk pergi lagi pada panggilan yang sesuai seterusnya

bash script saya terlihat seperti berikut:

  #! / Bin / sh
 jika ps ax | grep-v grep |> grep php / dev / null
 kemudian
     echo "Ayub saat ini pemprosesan, keluar"
 lain
     echo "Ayub tidak berjalan, mulai sekarang"
     php yourJobProcessingScript.php
 fi 

Nota: echo adalah hampir sama sekali tidak ada gunanya, tetapi boleh membantu orang seterusnya yang datang untuk mencuba dan mengeditnya.

Yang menyimpulkan set up dari pekerja mesin virtual, cepat, sederhana, dan mudah untuk copy ke mana-mana bahagian hardware baru yang diterima. 'Kepintaran' The sistem grid benar-benar tidak di OS divisualisasikan, yang semua dilakukan dengan kod dibuat untuk pekerjaan proses, tatarajah pekerjaan, dan dalam memastikan bahawa pekerjaan berjalan saat yang tepat (iaitu ketika tuan rumah itu idle ).

Menyediakan Windows untuk Menginisialisasinya Pekerja

Tugas pertama adalah untuk bekerja di luar arahan yang diperlukan untuk menjalankan mesin virtual dari baris arahan windows. Jika anda telah memasang VirtualBox di lokasi lalai dan anda sudah bernama GridMachine pekerja anda maka perintah yang diperlukan untuk memuatkan pekerja anda adalah:

  "C: \ Program Files \ Sun \ VirtualBox \ VBoxManage.exe" startvm GridMachine 

Namun untuk menjalankan skrip dalam keadaan 'tanpa kepala' kita perlu menggunakan:

  "C: \ Program Files \ Sun \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - vrdp = off 

Ini akan memulakan mesin virtual tanpa GUI dan membolehkan untuk menyelamatkan negara dengan anggun. Hujah kedua mematikan RDP sehingga tidak bertentangan dengan windows RDP, atau memberikan mesej tentang mendengar pada port 3389. Nama mesin virtual adalah kes sensitif!

Kemudian, kita akan perlu untuk menetapkan tetingkap Facebook untuk memulakan VM pekerja kita sekali mesin sudah idle. Untuk melakukan hal ini (pada Windows XP) anda perlu pergi Start -> All Programs - Accessories -> System Tools -> Jadual Tugas sebagai berikut:

jadual tugas

Selanjutnya klik pada 'Tambah Scheduled Task' diikuti dengan menelusuri menambah program tersuai. Arahkan ke script VBoxManage anda dan klik ok. Jadual tugas anda untuk salah satu pilihan (kita akan perubahan ini dalam satu minit) dan teruskan. Setelah melewati tetingkap berikutnya akan meminta anda yang anda ingin menjalankan tugas ini, saya cadangkan baik 'Administrator' atau membuat pengguna istimewa baru. Ingat kita tidak mahu mengganggu akaun kakitangan standard pada mesin pada titik apapun. Klik pilihan acara berikutnya dan periksa lanjutan untuk tugas ini.

Untuk akhir textbox menjalankan menambah string 'startvm GridMachine' kami dan memastikan bahawa hanya berjalan ketika login dibiarkan unticked. Lawati tugas jadual seterusnya dan menukar jadual drop ke pilihan 'saat menganggur', memilih jumlah masa yang anda ingin mesin untuk idle sebelum pindah ke tab berikutnya.

Akhirnya untick opsyen yang menyatakan menghentikan tugas jika telah menjalankan X jumlah masa, tapi jangan tandakan pilihan untuk menghentikan tugas jika enjin tidak lagi menganggur.

jadual

Itu saja dan untuk host setup windows!

Review

Pada bahagian ini, kami telah menetapkan suatu mesin virtual untuk bertindak sebagai seorang pekerja, serta cara yang kita sebut dan melaksanakan tugas kita skrip pemprosesan (untuk diriku sendiri script PHP). Dari sini kita melihat cara membuat salinan kita tetingkap untuk memulakan mesin virtual dalam mod tanpa kepala ketika komputer menjadi siap sedia, dan simpan negaranya ketika pengguna kembali penggunaan mesin. Semoga pada saat ini anda melihat betapa sederhananya adalah untuk menetapkan sistem tersebut dan gatal untuk mendapatkan beberapa percubaan pergi sendiri!

Lain kali

Di Bahagian 4 kita akan melihat menggunakan alat-alat untuk memastikan bahawa anda menjalankan versi terbaru dan kod sumber data sehingga hasil yang diperolehi selalu up-to-date dengan maklumat perniagaan terbaru dan logik.

3 Responses to "Pejabat Grid Computing menggunakan persekitaran Virtual - Bahagian 3"

  1. [...] Bahagian 3 kita akan mencipta mesin virtual pemprosesan kami dan menetapkan mesin windows kita untuk menjadi [...]

  2. [...] Bahagian 3 kita buat mesin pengolah virtual kami dan menetapkan mesin windows menjadi [...] idle-time

  3. Download Digsby berkata:

    Anda adalah Blogger Sungguh berpengalaman, anda juga mempunyai pemahaman high dari apa yang anda bicarakan atau anda melakukan penyelidikan hebat. Terima kasih untuk posting ini sangat baik.

Tinggalkan Balasan













Panorama Tema oleh Themocracy

2 tetamu online sekarang
1 tetamu, 1 bot, 0 ahli
Max pengunjung hari ini: 16 jam 12:39 am UTC
Bulan ini: 26 jam 2011/07/05 00:35 UTC
Tahun ini: 130 pada 28-03-2011 10:40 UTC
Sepanjang masa: 130 pada 28-03-2011 10:40 UTC