260 likes | 443 Views
1000 Çekirdekli TR-GRID Altyapısı Nasıl Kuruldu ? . Onur BEKTAŞ onur at ulakbim.gov.tr. İçerik. TR-Grid e-Altyapı Projesi Altyapı Bileşenlerinin Seçimi ve Sayıları Uçların Seçimi Sitelerin Kurulumu ve Donanım Testleri Kullanılan Yazılım ve Teknolojiler Fotoğraflar.
E N D
1000 Çekirdekli TR-GRID Altyapısı Nasıl Kuruldu ? Onur BEKTAŞ onur at ulakbim.gov.tr
İçerik • TR-Grid e-Altyapı Projesi • Altyapı Bileşenlerinin Seçimi ve Sayıları • Uçların Seçimi • Sitelerin Kurulumu ve Donanım Testleri • Kullanılan Yazılım ve Teknolojiler • Fotoğraflar
TR-Grid e-Altyapı Projesi Başlangıcı TR-GridAltyapısının Çalışmaya Başlaması EGEE-2 Projesi Başlangıç 2008 2007 2005 2006 2004 SEE-Grid Projesi Başlangıç SEE-Grid-2 Projesi Başlangıç LHC Başlangıç Geant Bağlantısı 622 Mbps A Tipi Sistemlerin Bağlantısı UlakNet 1 Gbps – Siteler Arası 20 Gbps TR-Grid e-Altyapı Projesi – Süreç TR-Grid e-Altyapı Projesi TÜBİTAK Bilim Kurulu tarafından 2005 Kasım ayında kabul edilmiş bir altyapı projesidir. • Projenin donanım maliyeti yaklaşık 750.000$ olmuştur. • Projede gerekli kaynakları belirlerken YEF gruplarının dahil oldukları deneylerdeki ihtiyaçları, ULAKBİM YBBİM’nin kullanıcılarının gereksinimleri dikkate alınmıştır. • Proje takvimi belirlenirken uluslararası projeler dikkate alınmıştır.
TR-Grid Siteleri 50 Tbyte =~ 11100 DVD veya 14.285.000 mp3
Deniz kümesini kurarken yaşadığımız problemler,ihtiyaçlar, sorunlar. Sabit bütçe ile en uygun fiyat / performans ve kullanıcı memnuniyeti için: Çift çekirdek ? Çift işlemci ? Alınacak bilgisayar sayısı ? Toplam depolama alanı ? Ağ bağlantı kapasitesi ? Anahtarlama cihazı yetenekleri ? Çift Çekirdek mi Çıtır Çekirdek mi?
Hesaplama ve Servis Düğümleri 256 Adet 1U Sunucu 2 adet çift çekirdekli Intel Xeon 5110 1.6 Ghz işlemci 4Gbyte FB-DIMM 80 Gbyte SATA Sabit Disk 2 x Gigabit Ethernet Depolama Düğümü 4 Adet 2U Sunucu 2 adet çift çekirdekli Intel Xeon 5110 1.6 Ghz işlemci 4Gbyte FB-DIMM 80 Gbyte SAS Sabit Disk 3 Adet Gigabit Ethernet 8 Adet Disk Kutusu 12 Adet 500 Gbyte Sata Disk Toplam 46 Tbyte Donanım 1 - Sunucu Altyapısı
Orta Doğu Teknik Üniversitesi ve ULAKBİM’deki kümelerde toplam iki adet 144 arabirimli gigabit ethernet omurga anahtarlama cihazı 64 çekirdekli kümelerde 48 arabirimli gigabit ethernet anahtarlama cihazı Donanım 2 – Ağ Altyapısı
Sistem yöneticisi iş yapma algoritması ## sistem yöneticisi ana iş yürütme programı while (1) do if (iş == "oturarak otomatik yapilabiliyor" ) then yap(iş) return göbek_büyüt ; elsif (iş == “oturak otomatik yapılcak hale gelebilir”) yap(iş) return göbek_büyüt ; else oturarak_otomatik_yapılacak_hale_getir(iş) fi
Tamamı ile ağ üzerinden Scientific Linux Kickstart kurulumu. Ethernet kartı testleri Linux channel bonding ile iki ethernet beraber test edildi Nptcp ağ test programı kullanıldı Disk Testleri Badblocks scsi_info Bellek testleri Memtest86+ Bios güncellemesi ve Bios sürüm kontrolu Dmidecode İşlemci kontrolü /proc/cpuinfo Sitelerin Kurulumu ve Donanım Testleri
Test betikleri-Sunucu #!/bin/bash #Onur BEKTAS onur at ulakbim.gov.tr 16/11/2006 function bonding {INT="eth0" IP=`ifconfig $INT | grep -i inet | awk -F: '{print $2}' | awk '{print $1}'` echo "Bonding islemi basliyor" modprobe bonding arp_interval=60 miimon=1000 mode=0 /sbin/ifconfig bond0 $IP netmask 255.255.255.0 broadcast 193.140.99.255 up /sbin/ifenslave bond0 eth0 /sbin/ifenslave bond0 eth1 echo "Bonding islemi tamamlandi“} function bekle { sleep 3 ana } function ana { if [ -z `pidof NPtcp` ] then echo "Nptcp Calismiyor" echo "Nptcp Baslatiliyor.." ./NPtcp 2 -l 1048573 & else echo "NPtcp calisiyor " fi bekle } bonding ana
#!/bin/bash echo "bonding yukleme betigi" if [ -z "$1" ] then echo echo "Kullanim ./nettestclient.sh sunucu.ip" echo else ## Tanimlar INT="eth0" IP=`ifconfig $INT | grep -i inet | awk -F: '{print $2}' | awk '{print $1}'` RAM=` free | grep Mem | awk '{print $2}'` CPUSAYISI=` cat /proc/cpuinfo | grep -i "model name" | awk -F: '{print $2}'` DOSYA="tukur.txt" DOSYA1="tukur1.txt" ETH0MAC=`ifconfig eth0 | grep HWaddr | awk -F HWaddr '{print $2}'` ETH1MAC=`ifconfig eth1 | grep HWaddr | awk -F HWaddr '{print $2}'` #DISKMODEL=`cat /proc/ide/ide0/hda/model` DISKMODEL=`scsi_info /dev/sda |grep -i model ` DISK=/dev/hda #BIOSVERSION=`dd if=/dev/mem bs=64k skip=15 count=1 | strings -n 20 | grep "HP FEATURES" | awk -F: '{print $2}'` #BIOSVERSION=`dd if=/dev/mem bs=64k skip=15 count=1 | strings | grep -i 2006 | grep -i "(" ` dmidecode | head -34 > tukur2.txt BIOSVERSION=`head -10 tukur2.txt | tail -4` SYSINFO=`tail -7 tukur2.txt` MOUNTLOC="193.140.99.21:/storage/etc/logs" echo "ETH0 MAC: $ETH0MAC " >> $DOSYA1 echo "ETH1 MAC: $ETH1MAC " >> $DOSYA1 ## TCP/IP optimizisasyonu echo "Tcp/ip optimize ediliyor" echo 8388608 > /proc/sys/net/core/wmem_max echo 8388608 > /proc/sys/net/core/rmem_max echo 65535 > /proc/sys/net/core/rmem_default echo 65535 > /proc/sys/net/core/wmem_default echo "4096 87380 4194304" > /proc/sys/net/ipv4/tcp_rmem echo "4096 87380 4194304" > /proc/sys/net/ipv4/tcp_wmem echo "4194304 4194304 4194304" > /proc/sys/net/ipv4/tcp_mem echo 1 > /proc/sys/net/ipv4/route/flush echo "Tamam" ## Bonding islemi basliyor echo "Bonding islemi basliyor" modprobe bonding arp_interval=20 miimon=1000 mode=0 /sbin/ifconfig bond0 $IP netmask 255.255.255.0 broadcast 193.140.99.255 up /sbin/ifenslave bond0 eth0 /sbin/ifenslave bond0 eth1 echo "tamam" sleep 15 ### Gecici olarak mail atabilmesi icin route ekleniyor #route add default gw 193.140.99.1 ## Ag testi basliyor echo "Ag testi basliyor" ./NPtcp 2 -l 1048573 -h $1 2&> $DOSYA #Raporlama kismi echo "Bilgisayar ip : $IP" >> $DOSYA1 echo -e "Sistem bilgisi \n $SYSINFO " >> $DOSYA1 echo "BIOSVERSION: $BIOSVERSION" >> $DOSYA1 echo "RAM: $RAM" >> $DOSYA1 echo -e "CPU: \n $CPUSAYISI" >> $DOSYA1 echo "DISK : $DISKMODEL" >> $DOSYA1 echo "---------------------------------------------------------------------------------------------------" >> $DOSYA1 #Rapor tukurma secenekleri ## Mail at #cat $DOSYA1 $DOSYA | mail -s "Grid network testi $IP" onur@ulakbim.gov.tr ## NFS disk mount edip icine yaz mount -t nfs -w $MOUNTLOC /mnt cat tukur.txt >> tukur1.txt cp tukur1.txt /mnt/$IP.txt ## Sabit disk testi icin Badblocks calistir #echo "badblocks calistiriliyor" # /sbin/badblocks -n -o /mnt/"$IP.disktest.txt" $DISK rm -f tukur.txt rm -f tukur1.txt rm -f tukur2.txt #sleep 30 #route delete default gw 193.140.99.1 Test Betikleri-İstemci
Sunucu kapama betiği #!/usr/local/bin/perl #onur at ulakbim.gov.tr #Hp ilo 100 uzaktan acma kapama use Net::Telnet (); $t = new Net::Telnet; $ip = $ARGV[0]; $username =$ARGV[1] ; $password =$ARGV[2] ; $ackapa =$ARGV[3] ; if ( "$ip" == "" ) { print "kullanim ./ilo.pl ip username password 1/0 \n" ; print "0 == kapat\n1 == ac \n" ; } else { $t = new Net::Telnet (Timeout => 10 ); $t->open("$ip"); $t->login($username, $password); if ($ackapa == "1") { $t->cmd("cd system1"); $t->cmd("start system1"); } if ($ackapa == "0") { $t->cmd("cd system1"); $t->cmd("stop system1"); } }
Üşengeç Adam Yaratıcı Olur - Betik raporları ETH0 MAC: 00:18:FE:28:4F:A0 ETH1 MAC: 00:18:FE:28:4F:A1 Bilgisayar ip : 193.140.99.230 Sistem bilgisi System Information Manufacturer: HP Product Name: ProLiant DL140 G3 Version: 409855-001 Serial Number: GB8641PMS0 UUID: 6E6FC60D-6EFF-E306-6EFF-E306737F660E Wake-up Type: Power Switch BIOSVERSION: BIOS Information Vendor: HP Version: O08 Release Date: 10/26/2006 RAM: 4090800 CPU: Intel(R) Xeon(R) CPU 5110 @ 1.60GHz Intel(R) Xeon(R) CPU 5110 @ 1.60GHz Intel(R) Xeon(R) CPU 5110 @ 1.60GHz Intel(R) Xeon(R) CPU 5110 @ 1.60GHz
DISK : MODEL="ATA ST3808110AS" --------------------------------------------------------------------------------------------------- Send and receive buffers are 87380 and 87380 bytes (A bug in Linux doubles the requested buffer sizes) Now starting the main loop 0: 1048570 bytes 6 times --> 999.30 Mbps in 8005.58 usec 1: 1048573 bytes 6 times --> 982.21 Mbps in 8144.91 usec 2: 1048576 bytes 6 times --> 945.83 Mbps in 8458.18 usec 3: 1572856 bytes 5 times --> 1057.99 Mbps in 11342.20 usec 4: 1572859 bytes 5 times --> 1066.17 Mbps in 11255.19 usec 5: 1572862 bytes 5 times --> 1073.15 Mbps in 11182.01 usec 6: 2097142 bytes 3 times --> 1098.48 Mbps in 14565.48 usec 7: 2097145 bytes 3 times --> 1105.18 Mbps in 14477.17 usec 8: 2097148 bytes 3 times --> 1107.33 Mbps in 14449.16 usec 9: 3145714 bytes 3 times --> 1248.34 Mbps in 19225.51 usec 10: 3145717 bytes 3 times --> 1259.37 Mbps in 19057.15 usec 11: 3145720 bytes 3 times --> 1257.90 Mbps in 19079.34 usec 12: 4194286 bytes 3 times --> 1279.36 Mbps in 25012.34 usec 13: 4194289 bytes 3 times --> 1268.64 Mbps in 25223.68 usec 14: 4194292 bytes 3 times --> 1275.27 Mbps in 25092.66 usec 15: 6291430 bytes 3 times --> 1328.33 Mbps in 36135.51 usec 16: 6291433 bytes 3 times --> 1322.81 Mbps in 36286.16 usec 17: 6291436 bytes 3 times --> 1310.91 Mbps in 36615.66 usec 18: 8388574 bytes 3 times --> 1325.22 Mbps in 48293.51 usec 19: 8388577 bytes 3 times --> 1322.95 Mbps in 48376.51 usec 20: 8388580 bytes 3 times --> 1313.40 Mbps in 48728.19 usec
İşletim sistem kurulumu,donanım testleri,bilgisayar açılıp kapanması uzaktan otomatik hale getirildi Sunucuların iş yükü, sıcaklık, yük durumu gibi parametrelerini incelemek için Ganglia, Ağ cihazlarının durumunu incelemek için MRTG, Paket güncelleme durumlarını incelemek için PAKITI, Sistemlerin periyodik bakım işleri için geliştirilmiş ev yapımı betikler Kullanılan Yazılım ve Teknolojiler - 1
Grid orta katman yazılımı olarak gLite 3.0 İş planlayıcı Torque / Maui GNU, Intel Derleyiciler Matematik kütüphaneleri MPICH desteği Kullanıcı dizinleri ve geçici dosyalar için düğümlere paylaştırılmış NFS dosya sistemi Yeni ! – Dağıtık dosya sistemi - Lustre Kullanılan Yazılım ve Teknolojiler - 2