OpenShift - Mimari

OpenShift, her katmanın Kubernetes ve Docker kümesi kullanılarak diğer katmanla sıkı bir şekilde bağlandığı katmanlı bir sistemdir. OpenShift'in mimarisi, Kubernetes kullanılarak tüm katmanların üstünde barındırılan Docker konteynerlerini destekleyebilecek ve yönetebilecek şekilde tasarlanmıştır. OpenShift V2'nin önceki sürümünden farklı olarak, OpenShift V3'ün yeni sürümü kapsayıcıya alınmış altyapıyı destekler. Bu modelde Docker, hafif Linux tabanlı kapsayıcıların oluşturulmasına yardımcı olur ve Kubernetes, birden çok ana bilgisayarda kapsayıcıları düzenleme ve yönetme görevini destekler.

OpenShift Bileşenleri

OpenShift mimarisinin temel bileşenlerinden biri, Kubernetes'te konteynerli altyapıyı yönetmektir. Kubernetes, altyapının Dağıtımı ve Yönetiminden sorumludur. Herhangi bir Kubernetes kümesinde, birden fazla ana ve birden çok düğüme sahip olabiliriz, bu da kurulumda hiçbir hata noktası olmamasını sağlar.

Kubernetes Master Makine Bileşenleri

Etcd- Kümedeki düğümlerin her biri tarafından kullanılabilen yapılandırma bilgilerini depolar. Birden çok düğüm arasında dağıtılabilen yüksek kullanılabilirlikli bir anahtar değeri deposu. Hassas bilgilere sahip olabileceği için yalnızca Kubernetes API sunucusu tarafından erişilebilir olmalıdır. Herkes tarafından erişilebilen, dağıtılmış bir anahtar değeri Mağazasıdır.

API Server- Kubernetes, API'yi kullanarak küme üzerindeki tüm işlemleri sağlayan bir API sunucusudur. API sunucusu, farklı araçların ve kitaplıkların onunla kolayca iletişim kurabileceği anlamına gelen bir arabirim uygular. Kubeconfig, iletişim için kullanılabilen sunucu tarafı araçlarının yanı sıra bir pakettir. Kubernetes API'yi ortaya çıkarır ”.

Controller Manager- Bu bileşen, kümenin durumunu düzenleyen ve bir görevi yerine getiren koleksiyoncuların çoğundan sorumludur. Sonlandırılmayan bir döngüde çalışan ve API sunucusuna bilgi toplamak ve göndermekle sorumlu olan bir arka plan programı olarak düşünülebilir. Kümenin paylaşılan durumunu elde etmeye ve ardından sunucunun mevcut durumunu istenen duruma getirmek için değişiklikler yapmaya çalışır. Anahtar denetleyiciler, çoğaltma denetleyicisi, uç nokta denetleyicisi, ad alanı denetleyicisi ve hizmet hesabı denetleyicisidir. Denetleyici yöneticisi, düğümleri, uç noktaları vb. İşlemek için farklı türde denetleyiciler çalıştırır.

Scheduler- Kubernetes ana bileşeninin önemli bir bileşenidir. İş yükünü dağıtmaktan sorumlu olan bir ana hizmettir. Küme düğümlerinde çalışma yükünün kullanımını izlemekten ve ardından kaynakların mevcut olduğu iş yükünü yerleştirmekten ve iş yükünü kabul etmekten sorumludur. Başka bir deyişle, bu, kapsülleri mevcut düğümlere tahsis etmekten sorumlu mekanizmadır. Programlayıcı, iş yükü kullanımından ve yeni bir düğüme bir kapsül tahsis etmekten sorumludur.

Kubernetes Düğüm Bileşenleri

Aşağıda, Kubernetes yöneticisi ile iletişim kurmak için gerekli olan Düğüm sunucusunun temel bileşenleri verilmiştir.

Docker - Her düğümün ilk gereksinimi, kapsüllenmiş uygulama konteynerlerini nispeten izole edilmiş ancak hafif bir işletim ortamında çalıştırmaya yardımcı olan Docker'dır.

Kubelet Service- Bu, her düğümdeki küçük bir hizmettir ve kontrol düzlemi hizmetine ve bu hizmetten bilgi aktarmaktan sorumludur. Yapılandırma ayrıntılarını ve Wright değerlerini okumak için etcd deposuyla etkileşime girer. Bu, komutları almak ve çalışmak için ana bileşenle iletişim kurar. Kubelet işlemi daha sonra çalışma durumunu ve düğüm sunucusunu koruma sorumluluğunu üstlenir. Ağ kurallarını, bağlantı noktası iletimini vb. Yönetir.

Kubernetes Proxy Service- Bu, her düğümde çalışan bir proxy hizmetidir ve hizmetlerin harici ana bilgisayarda kullanılabilir hale getirilmesine yardımcı olur. İsteğin doğru kapsayıcılara iletilmesine yardımcı olur. Kubernetes Proxy Hizmeti, ilkel yük dengeleme gerçekleştirebilir. Ağ ortamının öngörülebilir ve erişilebilir olmasını sağlar, ancak aynı zamanda izole edilir. Düğümdeki kapsülleri, birimleri, sırları yönetir, yeni kapsayıcı sağlık kontrolü oluşturur vb.

Entegre OpenShift Container Registry

OpenShift konteyner kaydı, Docker görüntülerini depolamak için kullanılan dahili bir Red Hat depolama birimidir. OpenShift'in en son entegre sürümü ile, OpenShift dahili depolamasındaki görüntüleri görüntülemek için bir kullanıcı arayüzü geliştirdi. Bu kayıtlar, daha sonra bunlardan konteynerler oluşturmak için kullanılacak olan belirli etiketlerle görüntüleri tutabilir.

Sık Kullanılan Terimler

Image- Kubernetes (Docker) görüntüleri, Containerized Infrastructure'ın temel yapı taşlarıdır. Şu an itibariyle Kubernetes yalnızca Docker görüntülerini desteklemektedir. Bir bölmedeki her konteynerin içinde çalışan Docker görüntüsü vardır. Bir bölmeyi yapılandırırken, yapılandırma dosyasındaki image özelliği Docker komutuyla aynı sözdizimine sahiptir.

Project - OpenShift V2'nin önceki sürümünde bulunan etki alanının yeniden adlandırılmış sürümü olarak tanımlanabilirler.

Container - Görüntü bir Kubernetes küme düğümünde konuşlandırıldıktan sonra oluşturulanlardır.

Node- Bir düğüm, usta için minion olarak da bilinen Kubernetes kümesinde çalışan bir makinedir. Fiziksel, sanal makine veya bulut örneği olabilen çalışma birimleridir.

Pod- Kapsül, bir kapsayıcılar koleksiyonudur ve bir Kubernetes kümesinin bir düğümü içindeki depolanmasıdır. İçerisinde birden fazla kap bulunan bir bölme oluşturmak mümkündür. Örneğin, veritabanı kapsayıcısını ve web sunucusu kabını bölmenin içinde tutmak.