StatefulSet
Her düğümün kalıcı bir duruma sahip olmasını gerektiren Durum Bilgili Dağıtılmış Uygulamalar ile 'StatefulSet' kullanın . StatefulSet, bir yapılandırma (replikalar = N) aracılığıyla durum bilgisi olan bir uygulama / bileşen için rastgele sayıda düğüm yapılandırma yeteneği sağlar.
İki tür durum bilgili dağıtılmış uygulama vardır: Master-Master ve Master-Slave. Bir Master-Master konfigürasyonundaki tüm düğümler ve Master-Slave konfigürasyonundaki Slave düğümleri bir StatefulSet'i kullanabilir.
Örnekler:
Master-Slave -> Hadoop kümesi
Master-Master içindeki Datanodes (slave) -> Cassandra kümesindeki veritabanı düğümleri (master-master)
Bir StatefulSet'teki her Bölme (çoğaltma / düğüm), Benzersiz ve Kararlı bir ağ kimliğine sahiptir. Örneğin, 'cassandra' adlı bir Cassandra StatefulSet'te ve N olarak çoğaltma düğümlerinin sayısına sahip bir Cassandra StatefulSet'te, her Cassandra bölmesi (düğüm) şunları içerir:
- Her bölme için Sıralı Dizin: 0,1, .., N-1
- Kararlı ağ kimliği: cassandra-0, cassandra-1, .., cassandra-N-1
- Bir birim talep şablonuna karşı her bölme için ayrı bir kalıcı birim, yani her bölme (düğüm) için ayrı bir depolama
- Bölmeler, 0 - N-1 sırasıyla oluşturulur ve N-1 - 0 arasında ters sırada sonlandırılır
Bakın: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/
Dağıtım
Öte yandan 'Dağıtım' , düğümlerin herhangi bir özel kimlik gerektirmediği durumsuz uygulamalar / hizmetler için uygundur . Yük dengeleyici, seçtiği herhangi bir düğüme ulaşabilir. Tüm düğümler eşittir. Bir Dağıtım, bir yapılandırma aracılığıyla herhangi bir sayıda rastgele düğüm oluşturmak için kullanışlıdır (çoğaltma = N).