T.C. SÜLEYMAN DEMİREL ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ

BULUT BİLİŞİM VE EĞİTİM ALANINDA ÖRNEK BİR UYGULAMA

Onur SEVLİ

Danışman: Yrd. Doç. Dr. Ecir Uğur KÜÇÜKSİLLE

YÜKSEK LİSANS TEZİ BİLGİSAYAR MÜHENDİSLİĞİ ANABİLİM DALI ISPARTA - 2011

İÇİNDEKİLER

Sayfa

İÇİNDEKİLER ...……………………………………………………………………..i

ÖZET ...…………………………………………………………………………...…ix

ABSTRACT ...……………………………………………………………………..…x

TEŞEKKÜR ...……………………………………………………………………….xi

ŞEKİLLER DİZİNİ ...………………………………………………………………xii

1. GİRİŞ ...……………………………………………………………………………1

2. KAYNAK ÖZETLERİ ...………………………………………………………….5

2.1. Bulut Bilişim Alanında Yapılan Genel Kapsamlı Araştırmalar ...………………5

2.2. Eğitim Alanında Bulut Bilişim Uygulamaları ...………………………………...6

2.2.1. Open cirrus ...…………………………………………………………………..6

2.2.2. Virtual computing laboratory (VCL) ...………………………………………..7

2.2.3. BlueSky ...……………………………………………………………………...7

2.2.4. Microsoft live@edu ...... 7

3. MATERYAL VE YÖNTEM ...……………………………………………………8

3.1. Bulut Bilişim ...…………………………………………………………………..8

3.2. Bulut Bilişimin Tarihçesi ...……………………………………………………...9

3.2.1. Anaçatı (Mainframe) hesaplama sistemleri ...…………………………………9

3.2.2. Zaman paylaşımlı sistemler ...………………………………………………..10

3.2.3. Bağımsız iş parçacıklı hesaplama sistemleri ...……………………………….11

3.2.4. Dağıtık hesaplama sistemleri ...………………………………………………11

i

3.2.5. Günümüz bilişim sistemleri ...………………………………………………..11

3.3. Bulut Bilişimin Temelleri ...……………………………………………………14

3.3.1. Sanallaştırma ...……………………………………………………………….15

3.4. Bulut Bilişimin Karakteristik Özellikleri ………………………………………15

3.4.1. Sürekli büyüyen altyapı ……………………………………………………...15

3.4.2. Talebe bağlı ölçekleme ………………………………………………………16

3.4.3. Kullanım miktarına bağlı ücretlendirme ……………………………………..16

3.4.4. Servis düzeyi anlaşması (Service level agreement – SLA) ………………….16

3.4.5. Farklı coğrafyalara dağıtılmış veri merkezleri ……………………………….16

3.5. Bulut Bilişimin Anahtar Özellikleri ……………………………………………17

3.5.1. Ölçeklenebilirlik ……………………………………………………………..17

3.5.2. Düşük maliyet ………………………………………………………………..17

3.5.3. Güvenlik ……………………………………………………………………...17

3.5.4. Cihaz, konum ve platformdan bağımsızlık …………………………………..18

3.5.5. Çoklu kullanım ……………………………………………………………….18

3.5.6. Bakım ………………………………………………………………………...18

3.5.7. Güvenilirlik …………………………………………………………………..18

3.5.8. Performans görüntüleme ……………………………………………………..19

3.5.9. Süreklilik ……………………………………………………………………..19

3.5.10. İş süreçlerinin iyileştirilmesi ………………………………………………..19

ii

3.6. Bulut Bilişim Mimarisi ………………………………………………………...19

3.7. Bulut Bilişim Yapısal Katmanları ……………………………………………...20

3.7.1. Sunucu ………………………………………………………………………..21

3.7.2. Altyapı ………………………………………………………………………..21

3.7.3. Platform ………………………………………………………………………21

3.7.4. Uygulama …………………………………………………………………….21

3.7.5. İstemci ………………………………………………………………………..22

3.8. Bulut Bilişim Servisleri ………………………………………………………..22

3.8.1. Servis olarak altyapı (Infrastructure as a Service – IaaS) ……………………22

3.8.2. Servis olarak platform ( – PaaS) ………………………23

3.8.3. Servis olarak yazılım ( – SaaS) ……………………….23

3.9. Bulut Bilişim Mimari Modelleri ……………………………………………….23

3.9.1. Özel bulut …………………………………………………………………….23

3.9.2. Genel bulut …………………………………………………………………...24

3.9.3. Hibrit bulut …………………………………………………………………...25

3.10. Bulut Bilişim Platformları …………………………………………………….25

3.10.1. Amazon simple queue service (Amazon SQS) ……………………………..26

3.10.2. Amazon simpledb …………………………………………………………..26

3.10.3. Amazon web services (AWS) ………………………………………………26

3.10.4. AppScale ……………………………………………………………………27

iii

3.10.5. Caspio ………………………………………………………………………27

3.10.6. Engine yard …………………………………………………………………27

3.10.7. Force.com …………………………………………………………………...27

3.10.8. Google app engine ………………………………………………………….27

3.10.9. Heroku ………………………………………………………………………28

3.10.10. Orangescape ……………………………………………………………….28

3.10.11. Rackspace …………………………………………………………………28

3.10.12. Rollbase ……………………………………………………………………28

3.10.13. Sun cloud ………………………………………………………………….29

3.10.14. Vertebra ……………………………………………………………………29

3.10.15. Windows Azure services platform ………………………………………...29

3.10.16. Wolf frameworks ………………………………………………………….30

3.11. Bulut Bilişim Uygulamaları …………………………………………………..30

3.11.1. Microsoft bulut uygulamaları ……………………………………………....30

3.11.2. Zoho ………………………………………………………………………...31

3.11.3. Apttus …………………………………………………………………….....31

3.11.4. IBM innovation jam ………………………………………………………...32

3.11.5. Amazon web servisleri ……………………………………………………...32

3.11.6. Wikipedia ve intellipedia …………………………………………………...33

3.11.7. New york times ve animoto ………………………………………………...33

iv

3.12. Windows Azure ……………………………………………………………....34

3.12.1. Windows Azure platform katmanları ……………………………………….35

3.12.1.1. Donanım …………………………………………………………………..35

3.12.1.2. Hipervizör …………………………………………………………...……35

3.12.1.3. Yapı denetçisi ……………………………………………………………..36

3.12.1.4. Veri merkezleri …………………………………………………………...37

3.12.2. Windows Azure depolama servisleri ……………………………………….38

3.12.2.1. Büyük ikil nesne depolama servisi …………………………………….....38

3.12.2.2. Kuyruklama servisi ……………………………………………………….39

3.12.2.3. Tablo depolama servisi …………………………………………………...39

3.12.2.4. SQL Azure ………………………………………………………………..39

3.12.3. Windows Azure depolama karakteristiği ……………………………….…..41

3.12.3.1. Geniş ve arttırılabilir kapasite ………..……………………………….…..41

3.12.3.2. Dağıtık veri modeli ………..………………………………………….…..41

3.12.3.3. Ölçeklenebilirlik ………..…………………………………………….…..41

3.12.3.4. Yedekleme ………..……………………………………………….….…..42

3.12.3.5. Tutarlılık ………..……………………………………………….….….....42

3.12.3.6. Güvenilir HTTP ara yüzleri ………..………………………...….….….....42

3.12.3.7. Coğrafik dağılım ………..………………………...……………..….….....42

3.12.4. Windows Azure servis modeli ………..………………………...….….…....43

v

3.12.4.1. Web ve işçi rolleri ………..…………………………………...….….…....43

3.12.5. Windows Azure tabanlı bulut uygulamaları geliştirme …………………….45

3.12.5.1. Windows Azure yönetim portalı …………………………………...……..46

3.12.5.2. SQL Azure yönetim portalı ……………………………………………….46

3.12.5.3. Visual Studio üzerinde Windows Azure projesi oluşturma ………………48

3.12.5.4. SQL Azure üzerinde veri tabanı yapısının oluşturulması ………………...50

3.12.5.5. Bulut uygulamalarının Windows Azure platformunda yayınlanması ……51

4. ARAŞTIRMA BULGULARI VE TARTIŞMA ……………………………...….53

4.1. Geleneksel Yazılım Geliştirme Süreçleri ve Bulut Bilişim ……………………53

4.2. Bulut Bilişime Geçişi Gerekli Kılan Senaryolar …………………………...…..54

4.2.1. Zaman aralıklı kullanım ……………………………………………….……..55

4.2.2. Düzenli büyüme ……………………………………………………………...55

4.2.3. Tahmin edilebilir talep artışı ……………………………………………..…..56

4.2.4. Tahmin edilemeyen talep artışı ………………………………………………57

4.3. Eğitim ve Bulut Bilişim ………………………………………………………..58

4.3.1. Esnek ve dinamik altyapı …………………………………………………….59

4.3.2. Güçlü hesaplama kaynakları …………………………………………………60

4.3.3. Ortak çalışma ve işbirliği …………………………………………………….60

4.3.4. Lisans alımı gerektirmeyen uygulamalar …………………………………….60

4.4. Bulut Tabanlı Eğitim Uygulamaları…………………………………………….61

vi

4.5. Bulut Bilişim Eğitim Portalı …………………………………………………...62

4.5.1. Bulut bilişim eğitim portalına erişim ………………………………………...63

4.5.2. Bulut bilişim eğitim portalı kullanıcı rolleri …………………………………64

4.5.3. Bulut bilişim eğitim portalı modülleri ……………………………………….64

4.5.3.1. Mesajlar modülü …………………………………………………………...64

4.5.3.2. Gruplar modülü ………………………………………………………..…...65

4.5.3.3. Duyurular modülü ……………………………………………………..…...66

4.5.3.4. Bilgi güncelleme modülü …………………………………………………..66

4.5.3.5. Yönetim modülü …………………………………………………………...66

4.6. Bulut Bilişimin Yararları ……………………………………………………....67

4.6.1. Düşük maliyet ………………………………………………………………..68

4.6.2. Erişim kolaylığı ……………………………………………………..………..68

4.6.3. Ölçeklenebilirlik ve ayarlanabilir kapasite …………………………………..68

4.6.4. Paylaşım ve işbirliği …………………………………………….……………69

4.6.5. Kişiselleştirme …………………………………………………………..……69

4.7. Bulut Bilişim Güvenlik İlkeleri ………………………………………………..69

4.7.1. Fiziksel güvenlik ……………………………………………………………..69

4.7.2. Mantıksal güvenlik …………………………………………………………...70

4.7.3. Devamlılık …………………………………………………………………....70

4.7.4. Yasal sorumluluk …………………………………………………………….70

vii

4.8. Bulut Bilişim Risk Analizi ………………………………………………..……71

4.8.1. Erişilebilirlik ve hizmet sürekliliği …………………………………………..71

4.8.2. Veri güvenliği ve gizliliği ……………………………………………………72

4.8.3. Servis sağlayıcı bağımlılığı ………………………………………………...... 73

4.8.4. Kullanılabilir bant genişliği ve yük dengeleme ……………………………...73

5. SONUÇ …………………………………………………………………………..75

6. KAYNAKLAR …………………………………………………………………..78

ÖZGEÇMİŞ ……………………………………………………………………….. 82

viii

ÖZET

Yüksek Lisans Tezi

BULUT BİLİŞİM VE EĞİTİM ALANINDA ÖRNEK BİR UYGULAMA

Onur SEVLİ

Süleyman Demirel Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Anabilim Dalı

Danışman: Yrd. Doç. Dr. Ecir Uğur KÜÇÜKSİLLE

Bulut bilişim, kişisel bilgisayarlar üzerindeki