Kantor Grid Computing menggunakan lingkungan Virtual - Bagian 5

Dengan Watkin Lloyd Steven , 4 Desember 2009 23:03 Jumat

Pengantar

Saya bekerja di sebuah perusahaan di mana kita menjalankan banyak pekerjaan batch processing jutaan catatan data setiap hari dan saya sudah berpikir 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 bisa menggunakan mesin-mesin untuk meningkatkan kekuatan pemrosesan sistem kita? Dalam Seri artikel ini saya akan melihat potensi manfaat mempekerjakan kantor grid menggunakan lingkungan virtualised.

Di Bagian 4 kita melihat menggunakan alat untuk memastikan bahwa kami menjalankan versi terbaru dan kode sumber data sehingga hasil yang diperoleh selalu up-to-date dengan informasi bisnis terbaru dan logika.

Pre-Deployment

Sebelum menyebarkan sistem grid Anda jika ada satu hal yang Anda lakukan dan satu hal saja itu benchmark sistem Anda saat ini! Tidak peduli apa yang Anda katakan rekan tentang berapa banyak pekerjaan tambahan sistem anda akan lakukan apabila Anda mempunyai beberapa nomor untuk mendukung hal ini menjamin Anda apa-apa. Jadi,

  • berapa banyak catatan yang dapat Anda proses saat ini? Per Hari? Per Jam?
  • Berapa lama biasanya waktu yang diperlukan untuk berbalik pekerjaan?
  • Berapa banyak lagi kapasitas yang Anda miliki?

Ada juga pertanyaan tambahan:

  • Jika server memproses Anda (atau salah satu server pengolahan Anda) turun bagaimana ini akan mempengaruhi kemampuan Anda, Anda akan lumpuh?
  • Apa keuntungan yang Anda harapkan / mengharapkan untuk mendapatkan dari suatu sistem grid?
  • Apakah mesin kantor Anda mampu menjalankan pekerjaan?
  • Apakah Anda (atau bisa Anda pekerjaan dikonversi) untuk bekerja dalam gaya berjalan?

Titik besar terakhir adalah untuk mengambil waktu Anda pada setiap perubahan besar seperti ini. Update kode pengolahan Anda untuk bekerja dengan menggunakan metodologi baru, patokan lagi. Mungkin proses menyiapkan server Anda untuk menjalankan mesin virtual, setelah semua proses server Anda hanya akan menjadi pekerja lain (hanya satu yang sangat kuat relatif). Biarkan proses baru untuk menetap.

Penyebaran

Saran saya akan pop ke akhir pekan satu kantor melakukan semua instalasi dan setup. Lakukan ini sebelum dua minggu libur dan cuti miskin laki-laki lain sehingga untuk berurusan dengan konsekuensi ... mungkin tidak ...

Penyebaran untuk sistem seperti ini harus lambat. Meskipun itu menjadi relatif sederhana untuk mengatur sistem ini akan mempengaruhi seluruh kantor Anda infrastruktur (baik satu digital). Pertama, roll ke beberapa mesin sekaligus, memonitor lalu lintas jaringan, bagaimana host pekerja melakukan atas dasar sehari-hari. Anda mungkin perlu mengubah konfigurasi pekerjaan Anda dalam menanggapi temuan-temuan Anda.

Setelah sistem telah diselesaikan dengan beberapa mesin (katakanlah 10% dari semua mesin kantor, yaitu 5) terus memonitor lalu lintas jaringan dan host mesin benchmark performance. Next lagi, Anda sekarang harus memproses pekerjaan 33% lebih dari benchmark pertama Anda. Periksa ini begitu, atau bahwa Anda setidaknya dalam ballpark ini. Jika tidak, menyelidiki apa yang terjadi sebelum pindah. Ulangi siklus ini sampai Anda bahagia memiliki semua mesin kantor berjalan tanpa membunuh kinerja mesin penggiling individu atau jaringan Anda untuk berhenti.

Pada setiap waktu terus pembandingan, bahkan setelah semua penyebaran dilakukan. Periksa bagaimana pembaruan kode baru mempengaruhi kecepatan sistem Anda, periksa semua pekerja pelaporan dan pekerjaan pengolahan. Perlahan (sangat lambat) kenaikan konfigurasi pekerjaan Anda untuk mendapatkan yang terbaik dari pekerja Anda dan jaringan.

Stop!

Bagaimana jika Anda ingin menghentikan pekerja Anda dari berjalan pada beberapa waktu? Mereka semua ada berjalan, regenerasi, dan mencoba yang terbaik untuk memproses data seperti serangga lapar. Jawabannya mungkin tampak jelas tapi nilainya menambahkan hanya dalam kasus yang diabaikan. Cukup mengedit script pengolahan Anda dengan exit (0) atau mati () atau beberapa pernyataan lain untuk membunuh pekerjaan pengolahan Anda. Sebuah alasan penting mengapa kita selalu mencoba untuk update ke skrip pemrosesan terbaru sebelum menjalankan!

Sistem Demonstrasi

Dalam rangka untuk menulis artikel ini set pendek saya membuat sebuah kotak yang sangat kecil untuk mendemonstrasikan teknologi dan metodologi. Saya membaca banyak artikel, tutorial, dan digunakan berbagai alat untuk setup dan memonitor apa yang terjadi. Dengan tidak berarti aku pergi keluar dan jenuh kantor keseluruhan dengan lalu lintas dan juga tidak pernah saya memiliki akses ke PC anggota staf biasa untuk melihat bagaimana kinerja host terpengaruh.

demonstrasi sistem saya sangat sederhana memang. Saya menggunakan desktop biasa saya set sebagai server kontrol pekerjaan. Pada ini saya telah terinstal mySQL server terinstal ditetapkan sebagai master dalam replikasi, PHP , Â dan SVN dihubungkan melalui apache (untuk akses melalui pekerja VM).

Saya kemudian membuat sebuah mesin pekerja CentOS pada VirtualBox pada laptop berusia 6 tahun windows XP. Aku setup dijadwalkan tugas sebagaimana ditentukan setelah menyalin VM ke mesin dan membiarkannya pergi.

Mesin virtual didirikan dengan PHP, subversi, dan mySQL. Aku memeriksa cabang bernama 'pekerja' dari server repositori kontrol pekerjaan saya dan membuat yakin itu dapat diperbarui dengan menggunakan 'svn update'. Berikutnya setup Aku mySQL sebagai budak dan memeriksa bahwa data replikasi dari mySQL di server kontrol pekerjaan ke VM pekerja. Setelah semua ini saya setup script bash dan cron job.

pengolahan script pada dasarnya saya pergi sepanjang garis ini (hal yang sangat sederhana):

  • Baca di bidang nama
  • Menghitung jumlah nama yang mirip dalam tabel dari sumber data yang diadakan pada VM
  • Menghitung jumlah nama-nama seperti di atas tapi membelah nama dengan spasi (nama kecil, yaitu tengah, nama keluarga)
  • Mengulangi proses ini 1.000 kali

Setiap pekerjaan waktu sekitar 20 menit untuk menjalankan. Pada satu titik saya membuka beberapa salinan dari VM pekerja pada laptop jendela dan mengawasi pekerjaan diperiksa off oleh masing-masing alamat IP pekerja. Pada titik ini saya juga menegaskan replikasi yang secara otomatis restart.

Meninggalkan laptop untuk idle menghasilkan pekerja mulai proses pekerjaan dari server kontrol pekerjaan. Ketika melanjutkan penggunaan laptop ada penundaan dari sekitar 30-60 detik, ini adalah cukup banyak waktu dan staf akan perlu dibuat sadar bahwa mesin mereka dapat menghentikan untuk sementara waktu ketika kembali ke mesin. mesin yang lebih baru mungkin tidak memiliki jeda selama ini. Manfaat dari jumlah pengolahan yang dilakukan oleh mesin-mesin selama periode idle akan lebih yang lebih besar daripada anggota staf harus menunggu jangka waktu singkat (katakanlah 1 menit) pada mesin mereka tiba di suatu pagi (aku sering menunggu lebih lama bahwa ini untuk Windows Defender update untuk mengambil tempat) asalkan mereka dibuat sadar kali ini (berguna untuk mengambil kopi pagi!).

Semuanya saya merasa yakin bahwa saya telah menunjukkan teknologi yang dapat digunakan untuk membuat sistem tersebut. Saya telah menunjukkan bahwa sistem seperti ini tidak bekerja pada skala (sangat) kecil dan lebih bereksperimen dengan beberapa bisa ditingkatkan memanfaatkan sumber daya dari mesin-mesin kantor itu. Jika saya tidak bisa sampai ke titik melakukan hal ini saya akan sangat tertarik untuk mengetahui / melihat bila orang lain tidak.

Kesimpulan / Evaluasi

Langkah pasti yang berikutnya adalah untuk benar-benar mendapatkan contoh dunia nyata dan mulai untuk menggelar sebuah sistem seperti ini dalam lingkungan kantor dan melihat apa yang terjadi. Meminta bisnis untuk melakukan ini tanpa sebuah perusahaan jejak menyala untuk membuktikan teknologi dan efektivitas mungkin sedikit sulit. Grid / komputasi terdistribusi yang sangat populer adalah beberapa kalangan dan memiliki beberapa aplikasi besar (BIONC, SETI @ Home, Folding @ Home, dll). Aku tidak, bagaimanapun, menemukan skala yang lebih kecil dan sistem sederhana seperti ini dalam pencarian saya yang dapat diluncurkan dalam lingkungan kantor.

Saya menciptakan sistem pada dasarnya bebas menggunakan perangkat lunak sumber terbuka dan sebagian besar alat yang tersedia di hampir setiap kantor. Teknologi pada dasarnya menunjukkan dan menunjukkan untuk melakukan dan bekerja seperti yang diharapkan. Mudah-mudahan saya telah menunjukkan bahwa dengan tidak bekerja banyak dan dengan setup yang sangat sederhana Anda bisa menyebarkan sebuah sistem komputasi grid kantor yang sangat kuat, murah, Â dan scalable semua pada waktu yang sama.

Setelah sebuah sistem dan berjalan hampir tidak ada akhir untuk jumlah penyesuaian dan perbaikan Anda dapat membuat. Untuk statistik contoh / benchmarking dengan mudah dapat ditambahkan menunjukkan nilai dari sistem tersebut setiap hari. mesin baru dapat ditambahkan dengan cepat dan mudah dan ketika mereka tiba dengan upgrade ke hardware yang ada memperkuat daya proses Anda.

Saya harap Anda menikmati membaca rangkaian artikel dan yang memberi Anda makanan untuk berpikir untuk menjalankan sistem grid kantor. Solusi yang disajikan di sini tidak akan selalu bekerja dalam segala situasi tetapi harus disesuaikan untuk memungkinkan Anda untuk mendapatkan pengolahan data dilakukan dengan menggunakan solusi sendiri.

Silahkan kirim komentar, koreksi, atau perbaikan dan saya akan melakukan yang terbaik untuk menjaga artikel ini diperbarui untuk mencocokkan.

3 Responses to "Kantor Grid Computing menggunakan lingkungan Virtual - Bagian 5"

  1. [...] Bagian akhir dari seri ini, aptly bernama Bagian 5, kita akan membicarakan menyebarkan sistem ini. Aku akan meringkas apa yang telah dipelajari dan [...]

  2. Roland Gorychka mengatakan:

    Howdy sana, dude artikel Great! i am Lelah menggunakan RSS feed dan yang Anda gunakan twitter sehingga saya dapat mengikuti kamu di sana:? D.
    PS: Apakah Anda dianggap meletakkan video ke blog Anda untuk menjaga para pembaca lebih banyak dinikmati saya pikir itu bekerja, Roland Gorychka?.

  3. Steven Lloyd Watkin mengatakan:

    Lihat twitter di sisi kanan dari tiap halaman. Terima kasih!

Tinggalkan Balasan













Panorama Tema oleh Themocracy

8 pengunjung online sekarang
5 tamu, 3 bots, 0 anggota
Max pengunjung hari ini: 14 pada 07:34 UTC
Bulan ini: 26 jam 2011/07/05 00:35 UTC
Tahun ini: 130 pada 28-03-2011 10:40 UTC
Sepanjang waktu: 130 pada 28-03-2011 10:40 UTC