Conteyner Orkestrasyon Nedir?

Hatice Adıgüzel
2 min readFeb 26, 2024

--

Conteyner Orkestrasyon (Container Orchestration)

Container Orchestration, birden fazla konteynerin (container) hayat döngüsünü yönetme sürecidir. Konteynerlerin oluşturulması, dağıtılması, çalıştırılması, ölçeklendirilmesi ve bakımı gibi işlemleri içerir. Bu süreç, genellikle bir konteyner yönetim sistemi veya platformu (örneğin, Kubernetes, Docker Swarm, Apache Mesos) tarafından gerçekleştirilir. Konteynerlerin aynı anda ve verimli bir şekilde çalışmasını sağlar. Büyük ve karmaşık mikro hizmet mimarilerini yönetmek için yaygın olarak kullanılır.

Örnek Senaryo:

Elimizde bir e-ticaret uygulaması senaryosu var. Uygulama, frontend, backend, cache ve veritabanı olmak üzere dört ayrı modülden oluşuyor.

Her bir modül, üretim ortamında Docker ile dockerize edildi ve container imajları oluşturuldu.

Oluşturulan bu imajlar, sanal makine üzerinde Docker network ile birbirleriyle iletişime geçirildikten sonra ilgili Docker komutları girilerek ayağa kaldırıldı. Uygulama uzun süre sorunsuz bir şekilde çalıştı. Ancak uygulama şu anda sadece tek bir sunucuda çalışıyor.

Sistemde yapılacak olan bir değişiklik, sunucunun işlevsiz hale gelmesine ve kullanıcılara hizmet veremez hale gelmesine neden olabilir. Bu sorunu çözmek için bu sefer iki farklı sunucuyu bir load balancer kullanarak ayağa kaldırdık. Her bir işlem manuel olarak yapılıyor. Her bir sunucu arttırıldığında bu işlemler tekrarlanır. İhtiyaç olduğunda yeni bir sunucu oluşturulur.

Bu konteynerların her birinin kendi özellikleri var ve bunlar bir yerde tutulmalı ve sürekli güncellenmelidir. Başlangıçta 4 olan modül sayısı zamanla artabilir. Bu tür işlemlerin her biri manuel olarak yapılıyor ve çok fazla zaman alıyor.

Bu işlemlerin her birini manuel olarak yapmak yerine, bir konteyner orkestrasyon aracı kullanarak yapılacak işlemleri bildirmemiz sonucunda otomatik olarak yapılabilir. Sistem bilgilerini kendi bünyesinde tutacak, sistemi sürekli olarak izleyecek ve sorun olması durumunda sistemi iyileştirecek bir araçtır. Bu konteyner orkestrasyon aracı olarak Kubernetes kullanılabilir.

--

--