Ders Detayı
Ders Detayı
Ders Tanımı
| Ders | Kodu | Yarıyıl | T+U Saat | Kredi | AKTS |
|---|---|---|---|---|---|
| DEVOPS | COE3115964 | Güz Dönemi | 3+0 | 3 | 6 |
| Ders Programı |
| Ön Koşul Dersleri | |
| Önerilen Seçmeli Dersler |
| Dersin Dili | İngilizce |
| Dersin Seviyesi | Lisans |
| Dersin Türü | Programa Bağlı Seçmeli |
| Dersin Koordinatörü | Dr.Öğr.Üye. Ahmet KAPLAN |
| Dersi Verenler | Dr.Öğr.Üye. Ahmet KAPLAN |
| Dersin Yardımcıları | |
| Dersin Amacı | Bu dersin amacı, öğrencilere Linux sistem yönetimi konusunda gerekli temel bilgi ve pratik becerileri kazandırmaktır. Teorik kavramlar ve pratik uygulamaların bir kombinasyonu ile öğrenciler, temel Linux komutlarını etkili bir şekilde kullanmayı, sistem performansını izlemeyi, günlükleri yönetmeyi ve Docker ve Kubernetes gibi konteyner teknolojilerini kullanmayı öğreneceklerdir. Bu ders ayrıca, sistem yönetiminde güvenlik en iyi uygulamalarının ve otomasyonun önemini vurgulayarak, öğrencileri gerçek dünya zorluklarıyla başa çıkmaya ve hızla gelişen teknolojilere uyum sağlamaya hazırlamaktadır. |
| Dersin İçeriği | Bu ders; Linux işletim sistemlerine genel bakış Linux dosya sistemini anlamak Linux kabuğuna giriş ve kabuk komutları,Kullanıcı ve grup yönetimi Paket yönetimi Sistem güncellemeleri ve yükseltmeleri,Linux Sistemlerini İzleme Sistemleri izlemek için top, ps ve iostat kullanma , izleme yazılımları,Günlük Yönetimi Sistem günlüğünü anlama Logrotate'i Kullanma ELK ve Grafana kontrol paneli,Süreç yönetimi, Süreçleri ve süreç yönetimini anlamak top, ps ve diğer araçlarla sistem performansını izleme, Dosya Sistemi Yönetimi, Dosya sistemlerini oluşturma, bağlama ve çıkarma Dosya sistemi izinlerini ve güvenliğini anlama,Docker'a Genel Bakış, Docker'ı yükleme ve yapılandırma, Docker container oluşturma ve çalıştırma,Docker Container (Devamı), Docker imaj anlama, İmaj oluşturmak için Dockerfiles kullanma, Çoklu uygulamaları dağıtma,Vize Sınavı,Kubernetes'e Giriş, Kubernetes'e Genel Bakış, Düğümleri ve bölmeleri anlama, Uygulamaları Kubernetes ile dağıtma,Kubernetes Hizmetleri ve yük dengelemeyi anlama, Depolamayı ve birimleri yapılandırma, Kubernetes güvenliğine genel bakış,Gelişmiş Kubernetes Çoğaltma kümelerini ve durum bilgisi olan kümeleri anlama Giriş yapılandırma Sürekli Entegrasyon ve Sürekli Dağıtım (CI/CD) ile Kubernetes Kullanma,Linux Komut Dosyası Sistem yönetimi görevlerini otomatikleştirme Linux Performans Optimizasyonu CPU ve bellek kullanımını anlama Ayarlama ile performansı optimize etme,Proje Sunumu, Derste anlatılan kavramların gerçek dünya senaryolarına uygulanması,Final Sınavı; konularını içermektedir. |
| Dersin Öğrenme Kazanımları | Öğretim Yöntemleri | Ölçme Yöntemleri |
| Temel Linux komutlarını kullanma konusunda yetkinlik gösterir. | 37 | B, E, F |
| Sistem performansı ve kaynak kullanımını etkili bir şekilde izler. | ||
| Docker konteynerleri oluşturmak, yönetmek ve sunuculara yüklemek için gerekli bilgilere sahip olur. | ||
| Konteynerleştirmenin prensiplerini anlar ve Kubernetes mimarisinin ve bileşenlerinin temel kavramlarını açıklar. | ||
| Gerçek dünya senaryolarında pratik projeler ve laboratuvarlar aracılığıyla öğrenilen kavramları uygular | ||
| Linux sistem yönetimi, konteynerleştirme ve orkestrasyondaki yaygın sorunları gidermek ve çözmek konusunda tecrübe sahibi olur. |
| Öğretim Yöntemleri: | 37: Bilgisayar Ve İnternet Destekli Öğretim |
| Ölçme Yöntemleri: | B: Kısa Cevaplı Yazılı Sınav, E: Ödev, F: Proje Görevi |
Ders Akışı
| Sıra | Konular | Ön Hazırlık |
|---|---|---|
| 1 | Linux işletim sistemlerine genel bakış Linux dosya sistemini anlamak Linux kabuğuna giriş ve kabuk komutları | https://linux-dersleri.github.io/ |
| 2 | Kullanıcı ve grup yönetimi Paket yönetimi Sistem güncellemeleri ve yükseltmeleri | https://linux-dersleri.github.io/ |
| 3 | Linux Sistemlerini İzleme Sistemleri izlemek için top, ps ve iostat kullanma , izleme yazılımları | |
| 4 | Günlük Yönetimi Sistem günlüğünü anlama Logrotate'i Kullanma ELK ve Grafana kontrol paneli | https://www.linuxfoundation.org/blog/blog/classic-sysadmin-viewing-linux-logs-from-the-command-line |
| 5 | Süreç yönetimi, Süreçleri ve süreç yönetimini anlamak top, ps ve diğer araçlarla sistem performansını izleme, Dosya Sistemi Yönetimi, Dosya sistemlerini oluşturma, bağlama ve çıkarma Dosya sistemi izinlerini ve güvenliğini anlama | https://www.digitalocean.com/community/tutorials/process-management-in-linux https://www.developer.com/open-source/linux-file-management/ |
| 6 | Docker'a Genel Bakış, Docker'ı yükleme ve yapılandırma, Docker container oluşturma ve çalıştırma | https://docker-curriculum.com/ |
| 7 | Docker Container (Devamı), Docker imaj anlama, İmaj oluşturmak için Dockerfiles kullanma, Çoklu uygulamaları dağıtma | https://docker-curriculum.com/#multi-container-environments |
| 8 | Vize Sınavı | |
| 9 | Kubernetes'e Giriş, Kubernetes'e Genel Bakış, Düğümleri ve bölmeleri anlama, Uygulamaları Kubernetes ile dağıtma | https://kubernetes.io/ |
| 10 | Kubernetes Hizmetleri ve yük dengelemeyi anlama, Depolamayı ve birimleri yapılandırma, Kubernetes güvenliğine genel bakış | https://kubernetes.io/docs/concepts/security/ |
| 11 | Gelişmiş Kubernetes Çoğaltma kümelerini ve durum bilgisi olan kümeleri anlama Giriş yapılandırma Sürekli Entegrasyon ve Sürekli Dağıtım (CI/CD) ile Kubernetes Kullanma | https://cloud.redhat.com/blog/top-open-source-ci/cd-tools-for-kubernetes-to-know |
| 12 | Linux Komut Dosyası Sistem yönetimi görevlerini otomatikleştirme Linux Performans Optimizasyonu CPU ve bellek kullanımını anlama Ayarlama ile performansı optimize etme | https://cromwell-intl.com/open-source/performance-tuning/ |
| 13 | Proje Sunumu, Derste anlatılan kavramların gerçek dünya senaryolarına uygulanması | |
| 14 | Final Sınavı |
| Kaynak |
| https://www.linuxfoundation.org https://docker-curriculum.com/ https://kubernetes.io/ |
Dersin Program Yeterliliklerine Katkısı
| Dersin Program Yeterliliklerine Katkısı | |||||||
| No | Program Yeterliliği | Katkı Düzeyi | |||||
| 1 | 2 | 3 | 4 | 5 | |||
| 1 | 1. Matematik, fen bilimleri ve ilgili mühendislik disiplinine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinde kullanabilme becerisi | X | |||||
| 2 | 2. Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi | X | |||||
| 3 | 3. Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi | X | |||||
| 4 | 4. Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi | X | |||||
| 5 | 5. Karmaşık mühendislik problemlerinin veya disipline özgü araştırma konularının incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi | X | |||||
| 6 | 6. Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi | X | |||||
| 7 | 7. Sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi | X | |||||
| 8 | 8. Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi | X | |||||
| 9 | 9. Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi | X | |||||
| 10 | 10. Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi | X | |||||
| 11 | 11. Mühendislik uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın mühendislik alanına yansıyan sorunları hakkında bilgi; mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık | X | |||||
Değerlendirme Sistemi
| Katkı Düzeyi | Mutlak Değerlendirme | |
| Ara Sınavın Başarıya Oranı | 30 | |
| Genel Sınavın Başarıya Oranı | 70 | |
| Toplam | 100 | |
| AKTS / İşyükü Tablosu | ||||||
| Etkinlik | Sayı | Süresi (Saat) | Toplam İş Yükü (Saat) | |||
| Ders Saati | 14 | 3 | 42 | |||
| Rehberli Problem Çözme | 14 | 3 | 42 | |||
| Problem Çözümü / Ödev / Proje / Rapor Tanzimi | 6 | 3 | 18 | |||
| Okul Dışı Diğer Faaliyetler | 10 | 2 | 20 | |||
| Proje Sunumu / Seminer | 2 | 5 | 10 | |||
| Kısa Sınav (QUİZ) ve Hazırlığı | 4 | 3 | 12 | |||
| Ara Sınav ve Hazırlığı | 1 | 10 | 10 | |||
| Genel Sınav ve Hazırlığı | 1 | 10 | 10 | |||
| Performans Görevi, Bakım Planı | 2 | 5 | 10 | |||
| Toplam İş Yükü (Saat) | 174 | |||||
| Dersin AKTS Kredisi = Toplam İş Yükü (Saat)/30*=(174/30) | 6 | |||||
| Dersin AKTS Kredisi: *30 saatlik çalışma 1 AKTS kredisi sayılmaktadır. | ||||||
Dersin Detaylı Bilgileri
Ders Tanımı
| Ders | Kodu | Yarıyıl | T+U Saat | Kredi | AKTS |
|---|---|---|---|---|---|
| DEVOPS | COE3115964 | Güz Dönemi | 3+0 | 3 | 6 |
| Ders Programı |
| Ön Koşul Dersleri | |
| Önerilen Seçmeli Dersler |
| Dersin Dili | İngilizce |
| Dersin Seviyesi | Lisans |
| Dersin Türü | Programa Bağlı Seçmeli |
| Dersin Koordinatörü | Dr.Öğr.Üye. Ahmet KAPLAN |
| Dersi Verenler | Dr.Öğr.Üye. Ahmet KAPLAN |
| Dersin Yardımcıları | |
| Dersin Amacı | Bu dersin amacı, öğrencilere Linux sistem yönetimi konusunda gerekli temel bilgi ve pratik becerileri kazandırmaktır. Teorik kavramlar ve pratik uygulamaların bir kombinasyonu ile öğrenciler, temel Linux komutlarını etkili bir şekilde kullanmayı, sistem performansını izlemeyi, günlükleri yönetmeyi ve Docker ve Kubernetes gibi konteyner teknolojilerini kullanmayı öğreneceklerdir. Bu ders ayrıca, sistem yönetiminde güvenlik en iyi uygulamalarının ve otomasyonun önemini vurgulayarak, öğrencileri gerçek dünya zorluklarıyla başa çıkmaya ve hızla gelişen teknolojilere uyum sağlamaya hazırlamaktadır. |
| Dersin İçeriği | Bu ders; Linux işletim sistemlerine genel bakış Linux dosya sistemini anlamak Linux kabuğuna giriş ve kabuk komutları,Kullanıcı ve grup yönetimi Paket yönetimi Sistem güncellemeleri ve yükseltmeleri,Linux Sistemlerini İzleme Sistemleri izlemek için top, ps ve iostat kullanma , izleme yazılımları,Günlük Yönetimi Sistem günlüğünü anlama Logrotate'i Kullanma ELK ve Grafana kontrol paneli,Süreç yönetimi, Süreçleri ve süreç yönetimini anlamak top, ps ve diğer araçlarla sistem performansını izleme, Dosya Sistemi Yönetimi, Dosya sistemlerini oluşturma, bağlama ve çıkarma Dosya sistemi izinlerini ve güvenliğini anlama,Docker'a Genel Bakış, Docker'ı yükleme ve yapılandırma, Docker container oluşturma ve çalıştırma,Docker Container (Devamı), Docker imaj anlama, İmaj oluşturmak için Dockerfiles kullanma, Çoklu uygulamaları dağıtma,Vize Sınavı,Kubernetes'e Giriş, Kubernetes'e Genel Bakış, Düğümleri ve bölmeleri anlama, Uygulamaları Kubernetes ile dağıtma,Kubernetes Hizmetleri ve yük dengelemeyi anlama, Depolamayı ve birimleri yapılandırma, Kubernetes güvenliğine genel bakış,Gelişmiş Kubernetes Çoğaltma kümelerini ve durum bilgisi olan kümeleri anlama Giriş yapılandırma Sürekli Entegrasyon ve Sürekli Dağıtım (CI/CD) ile Kubernetes Kullanma,Linux Komut Dosyası Sistem yönetimi görevlerini otomatikleştirme Linux Performans Optimizasyonu CPU ve bellek kullanımını anlama Ayarlama ile performansı optimize etme,Proje Sunumu, Derste anlatılan kavramların gerçek dünya senaryolarına uygulanması,Final Sınavı; konularını içermektedir. |
| Dersin Öğrenme Kazanımları | Öğretim Yöntemleri | Ölçme Yöntemleri |
| Temel Linux komutlarını kullanma konusunda yetkinlik gösterir. | 37 | B, E, F |
| Sistem performansı ve kaynak kullanımını etkili bir şekilde izler. | ||
| Docker konteynerleri oluşturmak, yönetmek ve sunuculara yüklemek için gerekli bilgilere sahip olur. | ||
| Konteynerleştirmenin prensiplerini anlar ve Kubernetes mimarisinin ve bileşenlerinin temel kavramlarını açıklar. | ||
| Gerçek dünya senaryolarında pratik projeler ve laboratuvarlar aracılığıyla öğrenilen kavramları uygular | ||
| Linux sistem yönetimi, konteynerleştirme ve orkestrasyondaki yaygın sorunları gidermek ve çözmek konusunda tecrübe sahibi olur. |
| Öğretim Yöntemleri: | 37: Bilgisayar Ve İnternet Destekli Öğretim |
| Ölçme Yöntemleri: | B: Kısa Cevaplı Yazılı Sınav, E: Ödev, F: Proje Görevi |
Ders Akışı
| Sıra | Konular | Ön Hazırlık |
|---|---|---|
| 1 | Linux işletim sistemlerine genel bakış Linux dosya sistemini anlamak Linux kabuğuna giriş ve kabuk komutları | https://linux-dersleri.github.io/ |
| 2 | Kullanıcı ve grup yönetimi Paket yönetimi Sistem güncellemeleri ve yükseltmeleri | https://linux-dersleri.github.io/ |
| 3 | Linux Sistemlerini İzleme Sistemleri izlemek için top, ps ve iostat kullanma , izleme yazılımları | |
| 4 | Günlük Yönetimi Sistem günlüğünü anlama Logrotate'i Kullanma ELK ve Grafana kontrol paneli | https://www.linuxfoundation.org/blog/blog/classic-sysadmin-viewing-linux-logs-from-the-command-line |
| 5 | Süreç yönetimi, Süreçleri ve süreç yönetimini anlamak top, ps ve diğer araçlarla sistem performansını izleme, Dosya Sistemi Yönetimi, Dosya sistemlerini oluşturma, bağlama ve çıkarma Dosya sistemi izinlerini ve güvenliğini anlama | https://www.digitalocean.com/community/tutorials/process-management-in-linux https://www.developer.com/open-source/linux-file-management/ |
| 6 | Docker'a Genel Bakış, Docker'ı yükleme ve yapılandırma, Docker container oluşturma ve çalıştırma | https://docker-curriculum.com/ |
| 7 | Docker Container (Devamı), Docker imaj anlama, İmaj oluşturmak için Dockerfiles kullanma, Çoklu uygulamaları dağıtma | https://docker-curriculum.com/#multi-container-environments |
| 8 | Vize Sınavı | |
| 9 | Kubernetes'e Giriş, Kubernetes'e Genel Bakış, Düğümleri ve bölmeleri anlama, Uygulamaları Kubernetes ile dağıtma | https://kubernetes.io/ |
| 10 | Kubernetes Hizmetleri ve yük dengelemeyi anlama, Depolamayı ve birimleri yapılandırma, Kubernetes güvenliğine genel bakış | https://kubernetes.io/docs/concepts/security/ |
| 11 | Gelişmiş Kubernetes Çoğaltma kümelerini ve durum bilgisi olan kümeleri anlama Giriş yapılandırma Sürekli Entegrasyon ve Sürekli Dağıtım (CI/CD) ile Kubernetes Kullanma | https://cloud.redhat.com/blog/top-open-source-ci/cd-tools-for-kubernetes-to-know |
| 12 | Linux Komut Dosyası Sistem yönetimi görevlerini otomatikleştirme Linux Performans Optimizasyonu CPU ve bellek kullanımını anlama Ayarlama ile performansı optimize etme | https://cromwell-intl.com/open-source/performance-tuning/ |
| 13 | Proje Sunumu, Derste anlatılan kavramların gerçek dünya senaryolarına uygulanması | |
| 14 | Final Sınavı |
| Kaynak |
| https://www.linuxfoundation.org https://docker-curriculum.com/ https://kubernetes.io/ |
Dersin Program Yeterliliklerine Katkısı
| Dersin Program Yeterliliklerine Katkısı | |||||||
| No | Program Yeterliliği | Katkı Düzeyi | |||||
| 1 | 2 | 3 | 4 | 5 | |||
| 1 | 1. Matematik, fen bilimleri ve ilgili mühendislik disiplinine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinde kullanabilme becerisi | X | |||||
| 2 | 2. Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi | X | |||||
| 3 | 3. Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi | X | |||||
| 4 | 4. Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi | X | |||||
| 5 | 5. Karmaşık mühendislik problemlerinin veya disipline özgü araştırma konularının incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi | X | |||||
| 6 | 6. Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi | X | |||||
| 7 | 7. Sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi | X | |||||
| 8 | 8. Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi | X | |||||
| 9 | 9. Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi | X | |||||
| 10 | 10. Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi | X | |||||
| 11 | 11. Mühendislik uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın mühendislik alanına yansıyan sorunları hakkında bilgi; mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık | X | |||||
Değerlendirme Sistemi
| Katkı Düzeyi | Mutlak Değerlendirme | |
| Ara Sınavın Başarıya Oranı | 30 | |
| Genel Sınavın Başarıya Oranı | 70 | |
| Toplam | 100 | |