7 puan yazan lqez001 2021-04-05 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Tada'yı işleten VCNC'den Kim Tae-ho'nun, Kubernetes ortamında canary dağıtımı deneyimini anlattığı yazı.

  • Canary dağıtımı adı, madencilerin gaz sızıntısını tespit etmek için kafeste kanarya kuşu götürdüğü uygulamadan geliyor.

  • Spring Boot'un major sürümünü yükseltirken bağımlı olunan kütüphanelerin sürümleri de zorunlu olarak değiştiği için, bunun yol açabileceği performans sorunlarını veya test edilememiş arızaları en aza indirmek amacıyla canary dağıtımı denendi.

  • Kubernetes'e Helm paket yöneticisi kullanılarak dağıtım yapılıyor; Helm'de paket birimine "chart" deniyor ve chart Kubernetes kümesine kurulduğunda bir release oluşturuluyor.

  • Canary için chart/release tanımlandı ve Ingress controller'a annotation eklenerek yalnızca belirlenen orandaki isteklerin canary Ingress'e gitmesi sağlandı.

Gelecekteki görevler

  • Canary release'te sorun çıktığında, nedenin canary'deki değişikliklerden mi yoksa zaten var olan bir problemden mi kaynaklandığını anlamak zor olduğundan, aynı oranda bir kontrol grubu çalıştırıp metrikleri karşılaştırma yöntemine ihtiyaç var.

  • İsteklerin bir kısmı kullanıcıdan bağımsız olarak canary'ye gönderildiği için, canary'de sorun olsa bile istekler yeniden denendiğinde eski sürüm tarafından işlenip başarılı olabilir; ancak genel olarak bakıldığında canary'nin sorunlarını yaşayan kullanıcı oranı artabilir. Bu yüzden, (LB'de sticky oturum işleme benzeri şekilde) kullanıcı gruplarına göre canary'ye yönlendirme yapılırsa daha iyi kontrol sağlanabilir.

Henüz yorum yok.

Henüz yorum yok.