Kubernetes Kalıcı Birim Denetleyicisi
Genel Bakış
- Kubernetes Kalıcı Birimlerini (PersistentVolume, PV) ve Kalıcı Birim Taleplerini (PersistentVolumeClaim, PVC) senkronize eden denetleyici
- Veri kaybını önlemek için PVC ile PV arasındaki çift yönlü "işaretçileri" yönetir
- Yüksek erişilebilirlik modunda çalışır; PVC'nin belirli bir PV talep ettiği veya bir PV'nin belirli bir PVC için rezerve edildiği durumları destekler
Başlıca İşlevler
- PVC ve PV durumlarını periyodik olarak senkronize eder
- PVC belirli bir PV talep etmediyse, en uygun PV'yi bulup bağlar
- PVC belirli bir PV talep ettiyse, ilgili PV'nin var olup olmadığını ve koşulları karşılayıp karşılamadığını kontrol ettikten sonra bağlar
- PVC zaten bağlandıysa, durumu kontrol eder ve gerekirse düzeltir
Çalışma Şekli
- PVC oluşturulduğunda veya güncellendiğinde
syncClaim metodu çağrılır
- PVC bağlı değilse
syncUnboundClaim metodu çağrılır
- PVC bağlıysa
syncBoundClaim metodu çağrılır
- PV oluşturulduğunda veya güncellendiğinde
syncVolume metodu çağrılır
Başlıca Metotlar
syncClaim
- PVC'nin durumuna göre
syncUnboundClaim veya syncBoundClaim çağrılır
syncUnboundClaim
- PVC belirli bir PV talep etmediyse, en uygun PV bulunur ve bağlama denenir
- PVC belirli bir PV talep ettiyse, ilgili PV'nin var olup olmadığı ve koşulları karşılayıp karşılamadığı kontrol edildikten sonra bağlanır
syncBoundClaim
- PVC zaten bağlandıysa, durumu kontrol edilir ve gerekirse düzeltilir
syncVolume
- PV'nin durumuna göre uygun işlem yapılır
- PV kullanılmıyorsa, durumu "Available" olarak güncellenir
- PV belirli bir PVC'ye bağlandıysa, ilgili PVC'nin durumu kontrol edilir ve gerekirse düzeltilir
GN⁺ Özeti
- Bu belge, Kubernetes kalıcı birim denetleyicisine dair ayrıntılı bir açıklama sunar
- Kalıcı Birim ile Kalıcı Birim Talebi arasındaki bağlama mantığını anlamaya yardımcı olur
- Yüksek erişilebilirlik modundaki çalışma biçimini ve çeşitli istisna durumlarının nasıl ele alındığını kapsar
- Kubernetes depolama yönetimiyle ilgilenen geliştiriciler için faydalı bir kaynaktır
- Benzer işlevler sunan diğer projeler arasında OpenEBS ve Rook bulunur
1 yorum
Hacker News yorumu
Space Shuttle yazılımı son derece kararlıdır ve neredeyse hiç hata içermez
Kod genel amaçlıdır ve Go diliyle yazıldığı için biraz ayrıntılıdır
Yeni şirketin kod tabanı iyi düzenlenmiş olduğu için içinde gezinmek keyifli
Space Shuttle'ın güvenlik geçmişi iyi değildi, bu yüzden artık işletilmiyor
Yapısal desen eşleme kullanılırsa
if/elseblokları basitleştirilebilirKod kötü değil ve tek bir kurala uyuyor
2018'deki tartışmaya ait bağlantı paylaşılmış
Kubernetes CSI sürücüsü yazmak keyifliydi
Her
ififadesi için birelseifadesi bulunması güvenli bir uygulama olarak görülüyorGitHub dosya bağlantılarında belirli satır aralıklarına nasıl bağlantı verileceği anlatılıyor