18
www.grid.org.tr TÜBİTAK ULAKBİM YÜKSEK BAŞARIMLI BİLGİ İŞLEM MERKEZİ TÜBİTAK ULAKBİM Küme Bilgisayar ve Grid Üzerine İş Gönderimi Onur Temizsoylu – Kürşad Yusuf Konuş [email protected] - [email protected]

TÜBİTAK ULAKBİM Küme Bilgisayar ve Grid Üzerine İş Gönderimi

Embed Size (px)

DESCRIPTION

Onur Temizsoylu – Kürşad Yusuf Konuş [email protected] - [email protected]. TÜBİTAK ULAKBİM Küme Bilgisayar ve Grid Üzerine İş Gönderimi. TÜBİTAK ULAKBİM YÜKSEK BAŞARIMLI BİLGİ İŞLEM MERKEZİ. İÇERİK. YBBİM “Deniz” Küme Bilgisayar Sistemi üzerine iş gönderilmesi - PowerPoint PPT Presentation

Citation preview

www.grid.org.tr

TÜBİTAK ULAKBİM YÜKSEK BAŞARIMLI BİLGİ İŞLEM MERKEZİ

TÜBİTAK ULAKBİM

Küme Bilgisayar ve Grid Üzerine İş Gönderimi

Onur Temizsoylu – Kürşad Yusuf Konuş[email protected] - [email protected]

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 2

İÇERİK• YBBİM “Deniz” Küme Bilgisayar Sistemi üzerine iş

gönderilmesi• PBS, Sun Grid Engine Nedir?

• Örnek iş gönderimi• Grid üzerine iş gönderilmesi

• Güvenlik

• Grid Durumuna bakılması

• Kullanıcı İşinin Yaratılması• JDL Dili

• Kullanıcı İşinin Gönderilmesi ve Takibi

• Grid üzerinde dosya yönetimi

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 3

DENİZ

• 2003 Kasım ayı itibari ile TÜBİTAK ULAKBİM Yüksek Başarımlı Bilgi İşlem Merkezi bünyesinde, araştırmacıların kullanımına sunulmuş, 128 adet uç hesaplama bilgisayarından oluşan linux küme bilgisayar sistemimiz “DENİZ” üzerinde, kullanıcıların hesaplamalarını dengeli bir biçimde yapmaları sağlanmaya çalışılmaktadır.

• İşlerin dengeli bir biçimde uç bilgisayarlara dağıtılması işi bir PBS (Portable Batch System) yazılımı olan Sun Grid Engine kullanılarak yapılmaktadır.

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 4

PBS

• Genel olarak;• Ortak kaynaklar üzerinde birden çok kullanıcının işlerini

çalıştırmasını sağlamak• Kaynak yönetimini zaman, kullanıcı ve iş tipi önceliği gibi

limitlerine göre yapmak• İşleri uç makinaların yük durumuna göre kuyrukta

bekletmek• PBS (Portable Batch System) bir batch iş ve bilgisayar

sistem kaynak yönetimi paketidir. Batch işleri (kontrol öznitelikli kabuk betikleri) alır, muhafaza eder ve koşturulana değin korur, işi koşturur ve çıktıyı işi sunana geri gönderir.

• PBS sistemi kullanarak yük ve kuyruk yönetimi işlemini yapan açık kaynak kodlu yazılımlar mevcuttur (Sun Grid Engine, OpenPBS, LSF, Maui/PBS...)

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 5

Sun Grid Engine

• SGE (Sun Grid Engine) açık kaynak kodlu bir PBS yazılımıdır.

• Seri/Paralel iş desteği• Kaynak (işlemci, bellek, disk, hesaplama zamanı) yönetimi • Yük dengelemesi• Kuyruk sistemi

• İş Gönderilmesi• Programın derlenmesi

• İş betik dosyasının düzenlenmesi

• İşin gönderilmesi

• Kuyruğun beklenmesi

• Sonuçların değerlendirilmesi

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 6

SGE Örnek İş Gönderimi -1-

• Kodun derlenmesi%mpicc paralelkodunuz.c -o paralelkodunuz.calistirilabilir%mpif77 paralelkodunuz.f paralelkodunuz.calistirilabilir

İş betik dosyasının düzenlenmesi#$ -N MPI ##İşin Adı#$ -cwd ##Bulunulan Dizinde Çalış#$ -V ##Mevcut Çevresel Değişkenleri geçir#$ -S /bin/bash ##Kullanılacak Shell#$ -pe mpi 4 ##Paralel Değişkeni ve Uç Birim Sayısı#$ -e mpi.sge.err ##Hataların Yönlendirileceği Dosya Adı#$ -o mpi.sge.out##Çıktıların Yönlendirileceği Dosya Adıecho Isin Calistirilacagi Ana Makina adi: $HOSTNAMEecho Bu is Asagidaki makinalarda calisacak:echo `cat $TMPDIR/machines`mpirun ~/kullanici/paralelkodunuz.calistirilabilir

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 7

•İşin Gönderilmesi•%qsub sge_mpi.sh

•Your job 10554 ("MPI") has been submitted.

•Kuyruğun Beklenmesi•%qstat -u kullanici_adiJob-ID prior name user state submit/start at queue slots ja-task-ID 155 0.51 MPI kyk r 09/19/2005 15:03:31 genel@hamsi71 4

•r -> Çalışıyorqw -> Kuyrukta Bekliyort -> İş transferi başlamak Üzered -> İş silinecek

SGE Örnek İş Gönderimi -2-

Yrd. Doç. Dr. Erol ŞahinOrta Doğu Teknik Üniversitesi

Bilgisayar Mühendisliği

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 8

Grid üzerine iş gönderilmesi

Yrd. Doç. Dr. Erol ŞahinOrta Doğu Teknik Üniversitesi

Bilgisayar Mühendisliği

• LCG-2 Grid üzerinde iş çalıştırabilmek için;•LCG-2 Grid'ine bağlı bir UI (kullanıcı arayüzü) makinasında hesaba sahip olmak•LCG-2 Sertifika Otoritesi tarafından kabul edilmiş X.509 standartında sertifika (http://lcg-registrar.cern.ch/pki_certificates.html)

•LCG-2 Sanal Organizasyonlarından birine üye olmak

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 9

• Grid üzerinde hesabınızın olduğu UI makinasına giriş yaptıktan sonra, size ait bilgilerin güvenliği için grid üzerindeki diğer makina veya servislerle iletişiminizde almış olduğunuz sertifika kullanılır.•Sertifikanızın geçerliliğini kontrol edebilmek için

•%grid-cert-info•%openssl verify -CApath /etc/grid-security/certificates/ ~/.globus/usercert.pem

Sertifika Geçerliliği

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 10

• Proxy Sertifikası grid üzerindeki güvenliği arttırabilmek amacı ile kullanıcının yapacağı bağlantılara daha önceden tanımlanan limitli bir zaman aralığında izin verilmesini sağlar.

•%voms-proxy-init -valid H:M (Öntanımlı olarak 12 saat)Your identity:/DC=ORG/DC=SEE GRID/O=People/O=TUBITAK/CN=Kursad Yusuf KonusEnter GRID pass phrase for this identity: (sertifika şifresi girilir)Creating proxy .............................. DoneYour proxy is valid until: Tue Sep 20 12:56:57 2005

•Yaratılmış Proxy hakkındaki bilgilere ulaşabilmek için•%voms-proxy-info

•Yaratılmış Proxy nin iptali için•%voms-proxy-destroy

Proxy Sertifikası

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 11

dteamseegridbiomed

• İşimizi göndermeden önce Grid üzerindeki servislerin durumu hakkında bilgi alabilmek için

•%lcg-infosites –vo <sanal_org_adi> options –is <BDII>

Grid Servisleri Hakkında Bilgi

cese

closeSElrclfctagall

Eğer Çevre Değişkeni $LCG_GFAL_INFOSYS

tanımlı değil ise;--is <BDII ismi> verilir.

%lcg-infosites –vo dteam ce

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 12

•%lcg-info –vo <Sanal Org Adı>[--list-ce][--list-se][--query <sorgu>][--attrs <nitelikler>]

komutu ile $LCG_GFAL_INFOSYS Çevre değişkeninde belirtilmiş BDII dan CE veya SE makinalarının durumları ve nitelikleri hakkında bilgi verir.

•%lcg-info –vo seegrid –list-se –query ‘AvailableSpace>=1000000000’ –attrs

CloseCEs•%lcg-info –vo seegrid –list-ce

--query ‘RunningJobs=0,OS=SL*’--attrs ‘TotalCPUs,FreeCPUs,OS’

Grid Servisleri Hakkında Bilgi

Yrd. Doç. Dr. Erol ŞahinOrta Doğu Teknik Üniversitesi

Bilgisayar Mühendisliği

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 13

•Servisler hakkında bilgi aldıktan sonra göndereceğimiz iş hakkındaki bilgileri JDL (İş tanımlama Dili) metin dosyasında belirtmeliyiz. Örnek JDL metin dosyası içeriğiExecutable = “DenemeIsi.sh”;Arguments = “a b c”;StdInput = “deneme.dat”;StdOutput = “deneme.out”;StdError = “deneme.err”;InputSandBox = ( “~/OrnekIs/denemeIsi.sh”, “~/OrnekIs/deneme.dat”);OutputSandBox = ( “deneme.out”,”deneme.err”);Environment = (“CMS_PATH=$HOME/cms”);RetryCount = 3;Requirements = other.Architecture == “INTEL” &&

(other.OpSys == “RH 6.2” || other.OpSys == “Solaris 2.6”) &&other.MinPhysicalMemory >= 200 &&!RegExp(“cern.ch”, other.GlueCEUniqueId && other.GlueCEPolicyMaxWallClockTime > 86000);

JDL

Yrd. Doç. Dr. Erol ŞahinOrta Doğu Teknik Üniversitesi

Bilgisayar Mühendisliği

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 14

•JDL dosyamızı oluşturduktan sonra, işimizi çalıştırabilecek CE’lerin (Hesaplama Elemanı) listesine bakmak için

•%edg-job-list-match deneme.jdl

•Eğer koşturacağımız işimize uygun CE varsa, işimizi grid ortamına gönderebiliriz.

•%edg-job-submit [-o çıktı_dosyası] deneme.jdl

•İşi gönderdiğimizde çıktı olarak bize benzersiz iş numarasına sahip bir yol verilir.

Grid Servisleri Hakkında Bilgi

Yrd. Doç. Dr. Erol ŞahinOrta Doğu Teknik Üniversitesi

Bilgisayar Mühendisliği

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 15

•Göndermiş olduğumuz işin hangi aşamada olduğunu öğrenmek için,

•%edg-job-status <İş Numarası> [<-i iş_listesi_dosyası>][<--from AY:GUN:SAAT:DK:YIL> <--to AY:GUN:SAAT:DK:YIL><-s durumunda_olanlar><-e durumunda_olmayanlar>]

•İş Durumları•SUBMITTED (Gönderildi)WAITED (Beklemede)READY (Hazır)PLANNED (Planlandı)RUNNING (Çalışıyor)DONE (Bitti)CLEARED (Temizlendi)

Grid Servisleri Hakkında Bilgi

Yrd. Doç. Dr. Erol ŞahinOrta Doğu Teknik Üniversitesi

Bilgisayar Mühendisliği

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 16

•Göndermiş olduğumuz işi sonlandırmak istersek•%edg-job-cancel <İş Numarası> <-i iş_listesi_dosyası>

•Göndermiş olduğumuz işin çalışması bittikten sonra RB makinasındaki çıktı dosyasının bulunduğumuz UI makinasına getirilmesini isteyebiliriz.

•%edg-job-get-output <İş Numarası>

Grid Servisleri Hakkında Bilgi

Yrd. Doç. Dr. Erol ŞahinOrta Doğu Teknik Üniversitesi

Bilgisayar Mühendisliği

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 17

•Dosya Kataloğu, kullanıcıların ve programlarının Grid üzerinde dosya işlemlerini yapabilmelerini sağlamak amacıyla oluşturulmuş bir servistir.•Dosya kataloğunun kullanılabilmesi için,

•$LFC_CATALOG_TYPE, $LFC_GFAL_VO, $LFC_HOST çevre değişkenlerinin tanımlanmış olması gerekmektedir.•Eğer LFC Dosya Kataloğunu kullanmak istiyorsak, $LFC_CATALOG_TYPE değişkeninin lfc olarak tanımlamalıyız.•lfc-* komutlarını kullanırken LFC üzerinde işlem yapabileceğimiz dizinin /grid/sanal_organizasyon_adi (Örn: /grid/biomed) olduğunu unutmamalıyız. Eğer böyle bir dizin yoksa LFC bu sanal organizasyonu desteklemiyor demektir.

Dosya Kataloğu

Yrd. Doç. Dr. Erol ŞahinOrta Doğu Teknik Üniversitesi

Bilgisayar Mühendisliği

Ulusal Grid Çalıştayı 21-22 Eylül 2005 Ankara 18

LFC sunucusu üzerindeki Dosya/Dizin%lfc-chmod Erişim haklarını değiştirir%lfc-chown Sahiplik bilgilerini değiştirir%lfc-delcomment Eklenmiş yorum bilgisini siler%lfc-getacl Erişim kontrol listesini alır%lfc-ln Sembolik Link yaratır%lfc-ls Dosya ve dizinleri listeler%lfc-mkdir Dizin yaratır%lfc-rename Dosya/Dizin ismini değiştirir%lfc-rm Dosya/Dizin Siler%lfc-setacl Erişim kontrol listesini tanımlar%lfc-setcomment Dosya/Dizin üzerine yorum bilgisi ekler

Dosya Kataloğu Komutları

Yrd. Doç. Dr. Erol ŞahinOrta Doğu Teknik Üniversitesi

Bilgisayar Mühendisliği