Posts tagged: boşta

Sanal ortamlar kullanarak Office Grid - Bölüm 3

By , Cuma 4 Aralık 2009 23:37

Giriş

Birçok toplu iş veriler, her gün milyonlarca kaydın işlenmesi ve ben birkaç saat hiçbir şey yapmadan her gün oturup tüm makineler hakkında son zamanlarda düşünüyordum çalıştırmak nerede bir şirkette çalışmak. Bizim sistemlerinin işlem gücü desteklemek için bu makineleri kullanabilir olsa iyi olmaz mıydı? Bu makaleler set ben bir ofis istihdam potansiyel yararları bakmak için gidiyorum ızgara sanallaştırılmış ortamlarda kullanarak.

In part 2 bir sunucunun çalışacağı işler baktı ve işler her iş aksatmadan işlenir sağlarken işleme büyük miktarda elde etmek için nasıl yapılandırılmalıdır.

Veya gevşek sunucu - işçi ayarlama

Sürecinde bir sonraki adım sanal işçilerin kurmaktır. Bunun için VirtualBox kullanarak CentOS bir yükleme kullanmak için gidiyorum. Ben yüklemek için gidiyorum MySQL ve PHP de topallama (Li nux, m ySQL, P HP) Servera (Ben bu ismi kadar yapmış olabilir) olarak bilinen sunucu üzerinde.

  • (Bağlantıyı izleyin) windows makinede VirtualBox yükleyin
  • Bir oluşturulan sanal makine içinde CentOS (güncel sürüm 5.3) indirin ve kurun

Hiçbir nokta beni orada büyük öğreticiler (: Tamam, biri 1000 'muhtemelen orada bu olacak var virtualbox altında Oluşturma ve Managing CentOS sanal makine ). Sanırım dikkat edilmesi gereken önemli nokta benim sanal makine GridMachine denilen olmasıdır.

Bildiğim kadarıyla sanallaştırma istemci ve işletim sistemi ile ilgili seçenekleri gitmek gibi, her seçim için büyük zorlayıcı neden yoktur. VirtualBox benim ev makinede kullanmak ve üç büyük işletim sistemi tarafından desteklenen bir şeydir. Ben onun iyi bir kararlı bir işletim sistemi olarak Pardus seçti ve benim kendi web sunucusu üzerinde kullanabilirsiniz. (Kendimi uygulayarak ediyorum rağmen burada zihniyet 'sizin için en hızlı ve kolay kullanın') iş için doğru araçları büyük bir inananlardanım, böylece işletim sistemi X hızlı kodunuz çalışır ve eğer daha verimli bunun yerine :) kullanın

Önemlisi VM her yeni sanal makine için aksi takdirde, DHCP kullandığından emin olun biz işçi makineleri için ayrı ayrı ağ ayarlarını yapılandırmak gerekmez biz want.By DHCP kullanılarak yok bir şey olduğu ayrı olarak yapılandırılması gerekir, DHCP devredecek sizin için IP'leri dışarı. Bu nedenle, (bu ölçeklenebilirlik artırır ve işçi yönetimi azaltır) her biri kurma hakkında endişelenmeden ofis hakkında sanal makine kopyalayabilirsiniz.

Size ulaşmak amacı olmalıdır süreci yeni bir fiziksel makine, kurulum VirtualBox edinmek ve ardından çok başka olmaksızın hemen hemen sanal görüntü dağıtmak için olacaktır. Bu size en azından çalışan kaç makineleri görebilirsiniz böylece farklı bir alt ağdaki tüm işçilerin kurmak akıllıca olacaktır. Ayrıca, uzun bir kira veya sınırsız kiralama DHCP üzerinde makineleri kurmak gerekir.

İşçiye İşler nasıl çalıştırılır

Bu ilginç bir alandır ve İşçiye işlerini işlemek için birçok geçerli yöntem vardır. Ben burada sadece iki en belirgin ele alacağız:

  • Sürekli komut dosyası çalıştırma: Bir komut dosyası, bir kabuk, ya da bir PHP komut dosyası olması işçinin bir kez idam ve sonsuz bir döngünün bir parçası olarak çalıştırır. Senaryoyu bir çarpışma olarak bu yöntemi iskonto ettik ve potansiyel olarak işçiler müdahale çeşit olmadan çalıştırmak sona erecek.
  • Cron tabanlı komut dosyası yürütme: Her X dakika cron işlerin almak için komut bir arama başladı. Bazı kontroller olmadan bu sizin işçi komut çalışan çok sayıda kopya yol açabilir.

Benim karar bir kabuk Benim kabuk aşağıdaki görevleri gerçekleştirir her 10 minutes. başladı hangi cron ile gitmek oldu:

  1. Bir süreç listesini alın ve 'php' Bu grep. Bulamazlarsa sonra devam edin.
  2. İşinizi kod aramak, benim durumumda bu PHP tabanlı bir şey olurdu
  3. İşçi komut onun çalışma tamamlar
  4. Sonraki uygun çağrı üzerine tekrar gitmek için hazır

Benim bash betiği aşağıdaki gibi görünür:

  #! / Bin / sh
 eğer ps ax | grep-v grep | grep php> / dev / null
 o zaman
     echo "İş, şu anda çıkış işliyor"
 başka
     echo "İş çalışmıyorsa, şimdi başlatın"
     php yourJobProcessingScript.php
 fi 

Not: yankı Kullanıcı neredeyse tamamen anlamsız olduğunu, ancak bunları deneyin ve düzenlemek için birlikte gelir sonraki kişiye yardımcı olabilir.

Yani, hızlı, basit, ve alınan her yeni donanım parçasının kopyalanması kolay işçi sanal makine, kümesi kadar varmıştır. Izgara sisteminin 'akıllılık' gerçekten görselleştirildiği OS, değil sürecini işler, iş yapılandırma ve için oluşturulan kod ile ilgili tüm zaman (yani ev sahibi boştayken uygun iş çalıştığından emin yapımında ).

İşçiler başlatmak için Windows kurma

İlk görev pencereler komut satırından sanal makine çalıştırmak için gerekli komutu yerine çalışmaktır. Eğer varsayılan konumda VirtualBox yükledim ve sizin işçi GridMachine adlı yaptıysanız sonra işçi kadar yük için gerekli komut:

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

Ancak bir 'başsız' devlet içinde komut dosyasını çalıştırmak için biz kullanmanız gerekir:

  "C: \ Program Files \ Sun \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - VRDP = kapalı 

Bu GUI olmadan sanal makine başlatmak ve olağan durumunu kaydetmek için izin verecek. İkinci argüman pencereleri RDP ile çakışmaması için RDP kapatır, ya da 3389 numaralı bağlantı noktasında dinleme ile ilgili bir mesaj vermek. Sanal makine adı küçük harf duyarlıdır!

Sonra, makinenin boş kaldığında bizim işçi VM tekmelemek için pencereleri kurmak gerekir. > Tüm Programlar - -> Donatılar -> Sistem Araçları - Bu (Windows XP) yapmak için Başlat gitmek gerekir aşağıdaki gibi> Zamanlanmış Görevler:

zamanlanmış görevler

Sonraki tıklayın özel bir program eklemek için göz takip 'Zamanlanmış Görev Ekle'. Sizin VBoxManage komut gidin ve ok tıklayın. Seçeneklerden birini (biz bir dakika içinde bu değişikliği olacak) için görev zamanlama ve devam edin. Bir sonraki ekranda atlayarak sonra pencereleri bu görevi çalıştırmak istediğiniz kim soracak, ben de 'Yönetici' ya yeni bir ayrıcalıklı kullanıcı oluşturma öneririm. Biz herhangi bir noktada makine üzerinde standart personeli hesabı ile müdahale istemiyorum unutmayın. Sonraki tıklayın ve bu görev için show advanced options kontrol edin.

Run metin sonunda bizim 'startvm GridMachine' dizeyi ekleyin ve unticked bırakılır oturum sadece bu çalışma sağlar. Bir sonraki program görev ziyaret edin ve makinanın sonraki sekmeye geçmeden önce boşta olmak istiyorum süreyi seçin 'boş zaman' zamanlama seçeneği açılır değiştirin.

Nihayet o zaman X miktar çalışmakta olduğu takdirde görevini durdurmak belirten seçeneği işaretini kaldırın, ancak makine boşta artık eğer görevini durdurmak için seçeneği işaretleyiniz yok.

zamanlamak

Bu pencere ana kurulum için o kadar!

Özet

Bu bölümde bir işçinin yanı sıra dediğimiz ve iş işleme programları çalıştırma hangi yolu olarak hareket için bir sanal makine kurdunuz (kendimi bir PHP komut dosyası için). Buradan itibaren kullanıcının makinenin kullanımı devam ettiğinde, devlet bilgisayar boşta olduğunda başsız modunda sanal makine başlatmak ve kaydetmek için pencereleri bizim kopyalarını kurmak için nasıl bakmak. Umarım bu noktada böyle bir sistemi kurmak için ne kadar basit olduğunu görüyoruz ve bazı deneyler kendinizi yola çıkmaya kaşıntı vardır!

Bir dahaki sefere

Olarak Bölüm 4 biz elde edilen sonuçlar her zaman en son iş bilgilerini ve mantık ile güncel olduğunu böylece kod ve veri kaynaklarının son sürümü kullanıp sağlamak için araçlarını kullanarak bakacağız.

Sanal ortamlar kullanarak Office Grid - Bölüm 1

By , Cuma 4 Aralık 2009 11:23

Giriş

Birçok toplu iş veriler, her gün milyonlarca kaydın işlenmesi ve ben birkaç saat hiçbir şey yapmadan her gün oturup tüm makineler hakkında son zamanlarda düşünüyordum çalıştırmak nerede bir şirkette çalışmak. Bizim sistemlerinin işlem gücü desteklemek için bu makineleri kullanabilir olsa iyi olmaz mıydı? Bu makaleler set ben bir ofis istihdam potansiyel yararları bakmak için gidiyorum ızgara sanallaştırılmış ortamlarda kullanarak.

Olarak PHP geliştiricisi Ben, yani her gün Linux, kullandığınız araçları kullanmak için gidiyorum mySQL , PHP, VirtualBox ve subversion (SVN). Ancak ben bu kılavuz gibi diğer dillerde ve teknolojilere adapte umuyoruz.

Ben sağlayan çözüm çok gevşek biz Burada basitlik için şeyleri değiştirmek gerekir, ya da daha ilginç kullanım senaryoları üretmek için bu makalenin tümünü doğru olmayabilir ancak ulaşmak için ihtiyaç duyacağımı işlem türüne göre yapılacaktır.

Bu ofisler çoğunluğu çalıştırmak ne zamandan beri bu sanallaştırılmış ortamlarda pencereler makinelerde çalışacaktır. Büro makineleri yaptığımız işlem bu makineleri kullanarak personel ile müdahale etmemelidir, makinede herhangi bir bakım gerektirir ve kullanılabilir olduklarında yeni makinelerin kolayca konuşlandırılabilir olmalıdır. Bu büyük ölçüde ızgara sistemi uzatılabilir hangi ölçeklenebilirlik ve kolay azaltır olarak da, yeni sanal makineler herhangi bir ek yapılandırma gerektirmemelidir.

Neden bir Office hesaplama parmaklığı dağıtma?

Öncelikle düşünce olabilir, neden sadece gibi bir bulut bilgi işlem kaynağı kullanmaz Amazon'un EC2 platformu ? Sıra nedenlerle, örneğin, çeşitli olabilir:

  • Bir bulut bilgi işlem ortamı için belirli veri emanet olmaz
  • Siz yasal nedenlerle, örneğin NHS kayıtları için potansiyel olarak, yasal nedenlerle (örneğin veri ülkeyi terk) için bir bulut bilgi işlem ortamı içine belirli veri koyamazsınız.
  • Sen işleme üniteleri çok donanım üzerinde tam kontrol kapatmak ve sahip tutmak istiyor
  • Sen bulut örneklerini çalıştırmak üzere proje fon yok
  • Ofisiniz bir bulut kaynak kullanmak için internet bağlantısı olmayan ve bu nedenle mümkün değil
  • Sen yağmur sevmiyorum, bulutlar yağmur öneririm, bu nedenle de uzak tutun

Ben liste devam edebilir emin değilim, ama yeterli şimdilik olduğunu düşünüyorum.

Office Computing Grid Avantajları

Eh, biraz matematik (ve gerçek fizik tarzı bazı süpürme varsayımlar yapmanıza olanak sağlar) yapmanıza olanak sağlar. Eğer günde 100 iş çalışan büyük etli işleme sunucu var düşünün. Ofisinizde size günde 16 saat boşta 50 makinemiz var, bu makinelerin her biri kendi adeleli işleme sever gibi güçlü% 10'dur. (Buradaki tüm sonuçları performans artışı hafife yuvarlanır).

Yani, 1 makine *% 10 güç * 2/3 saat = boş zaman 0,067 yani 1 masaüstü işlemci günde 6 tam işlerini işlemek olabilir.

Şimdi bu kadar ölçeklendirilebilir Eğer ana işleme sunucu yaptığı gibi günde bir işlerini işlemek için 15 boşta masaüstü alır.

Yani 50 makinelerin bizim hayali ofiste biz 4 tam işleme sunuculara kadar 1 sunucu bizim işlemci gücü artabilir, ya da 100 yerine günde 400 işlerini işlemek olabilir.

Bildirim, yeni donanım hiçbir yatırım için şirket sadece kendi toplu işleme kapasitesi 4 kat arttı! Potansiyel size güç kullanımını artırmak için gidiyoruz ama çoğu ofis ortamlarına Ben makineleri ziyaretinde genellikle zaten gece boyunca, bu nedenle yeşil bir girişim olarak bu görebiliyordu.

Diğer avantajlar da büro makineleri yeterli iseniz ve büro makinelerinin gücü artırmak olarak ofis ızgara otomatik olarak daha güçlü hale gelmesi durumunda yeni bu yatırım (veya güncellenmiş) işleme sunucuları gecikebilir demek.

Teknolojileri

Neye ihtiyacın var? (Daha doğrusu ne kullanmalıyım vermedi):

  • Boşta büro makineleri (benim durumumda bir yedek eski windows XP dizüstü)
  • VirtualBox (veya başka bir istemci sanallaştırma yazılımı)
  • PHP, mySQL running OS aşağı bir kesim ile çalışan bir sanal makine, ben bu benim LIMP sunucular :) arıyorum
  • Çalıştırmak için İş
  • İş sunucusu (bir yerde başka bir sanal makine olabilir)

Tipik İşler

Aşağıdaki gibi, bu sistemin çalıştırmak için tasarlanmış bir iş türlerine şöyledir:

  • Sistem biz sonuçları maç ve dönmek gerek bunun üzerine veri listesini alır
  • Eşleştirme (oldukça statik) çeşitli veri kaynaklarına kontrol / arıyor içerir
  • Veri kaynaklarından Sonuçları sonuç yanıt olarak ek veri kaynaklarının denetimi, birleştirilmesi, daha doğrulama gerektirebilir
  • Veri, eşleşen kayıtları ile iade tamamen onaylanmadığı ve işlenir
  • Bir iş içindeki her kayıt geri kalanından bağımsız olduğunu

Yani temelde biz veritabanı aramalarına karışımı ve bazı numarası çıtırdatan, bir iş ortamında oldukça tipik bir senaryo gerektiren işlerde çalışan bakıyoruz.

Izgara çözümlerin bu tip işler işlenmesi için, sadece avantajlı değildir. Temel olarak, bağımsız birimler bölünebilir herhangi bir işlem paralel olarak çalıştırılabilir. Örnekler ve daha fazla bilgi için bu wikipedia bakınız: Grid , ancak ünlü birkaç örnek vardır Seti @ Home ve BIONC . Orada bilgisayar ızgaraları çalıştırmak için çerçeveler vardır ve bunlar içine bakarak iyi değer.

Ne elde edecek?

Bu maddelerin sonunda ben bir ofis ızgara dağıtma derece pahalı veya zaman alıcı olması gerekmez göstermek istiyoruz. Ben tartışmak için gidiyorum:

  • Iş yapılandırma, iş denetim sisteminin kurulması
  • Uygun bir işleme sanal makine oluşturma
  • Bir windows makinede sistemi kurmak için nasıl
  • En son kod ve veri kullanıyorsanız sağlanması
  • Dağıtım ve kıyaslama
  • İleriye

Ben (tamam ben bu yazdı, sonra yerleşik) Windows XP ve benim 'GridMachine' sanal makine kullanarak bir yerel makine üzerinde kavramları test etmek için örnek bir uygulama bina olacak. Benim işim kontrol sunucusu çalıştırır benim ana makine olacak Fedora 11 .

Bu, hiçbir şekilde tam çalışan sağlam bir sistem göstermek içindir, onun bir gösteri daha fazla ve bunları makul bir süre kısa ve az maliyetle elde edilebileceğini gösteren tartışılması anlamına geliyordu. Bana herhangi bir yorum, düzeltilmesi veya iyileştirmeler göndermek için çekinmeyin ve ben eşleşecek şekilde güncelleştirilir bu makalede tutmak için elimden geleni yapacağım olun.

Bir dahaki sefere

In part 2 ben iş denetim sistemi bakarak başlayacak ve işler her iş aksatmadan işlenir sağlarken işleme büyük miktarda elde etmek için nasıl yapılandırılmalıdır içine bakmak.













Tarafından Panorama Tema Themocracy

Şimdi online 7 ziyaretçi
5 misafir, 2 bot, 0 üye
Bugün Max ziyaretçiler: 05:00 az 19 UTC ÖS
Bu ay: 2012/04/04 10:27 UTC de 26
Bu yıl: 27-02-2012 09:56 de 69 UTC ÖS
Bütün Zaman: 28-03-2011 10:40 UTC de 130