İçeriğe geç
parazade

Orkestrasyon Ne Demek?

İngilizce: Container Orchestration

Yayın: · Son güncelleme:

Orkestrasyon Ne Demek? Kısaca

Orkestrasyon, yazılımda çok sayıda konteynerin ya da servisin sunuculara dağıtılması, ölçeklendirilmesi, birbirine bağlanması ve arıza durumunda yeniden başlatılması gibi işlerin otomatik olarak koordine edilmesidir.

Orkestrasyon nedir?
İçindekiler
  1. Orkestrasyon ne demek?
  2. Orkestrasyon aracı ne yapar?
  3. Örnek
  4. Nelere dikkat etmeli?

Orkestrasyon ne demek?

Orkestrasyon kelimesi müzikten gelir: şef, farklı enstrümanların doğru zamanda ve uyum içinde çalmasını sağlar. Yazılımda da orkestrasyon araçları, çok sayıda konteynerin ve servisin birlikte düzenli çalışmasını yönetir. Hangi konteynerin hangi sunucuda çalışacağı, kaç kopya olacağı ve birbirleriyle nasıl haberleşeceği bu araçlarca belirlenir.

Bu madde konteyner orkestrasyonunu anlatır. "Orkestrasyon" ifadesi bulut altyapısı ya da iş akışı yönetimi bağlamında da kullanılabilir.

Orkestrasyon aracı ne yapar?

Bir orkestrasyon aracının üstlendiği başlıca işler şunlardır:

  • Konteynerleri uygun kaynağı olan sunuculara yerleştirmek
  • Trafiğe göre kopya sayısını artırıp azaltmak
  • Çöken konteyneri otomatik olarak yeniden başlatmak
  • Servislerin birbirini bulmasını ve yük dengelemeyi sağlamak
  • Yeni sürümü kesintisiz yayına almak, sorun olursa geri dönmek

En yaygın araç Kubernetes'tir. Docker Swarm, HashiCorp Nomad ve Amazon ECS de kullanılan alternatiflerdir.

Örnek

Varsayımsal bir online bilet satış platformu; ödeme, kullanıcı, bildirim ve arama olmak üzere dört servisten oluşuyor ve her servis ayrı konteynerlerde çalışıyor. Konser biletleri satışa açıldığında arama ve ödeme servislerine yük biniyor. Orkestrasyon aracı bu iki servisin kopyalarını artırıyor, bildirim servisine dokunmuyor. Bir sunucu arızalandığında üzerindeki konteynerler birkaç saniye içinde başka sunuculara taşınıyor.

Nelere dikkat etmeli?

Orkestrasyon, az sayıda konteynerle çalışan küçük projelerde gereksiz karmaşıklık getirebilir. İhtiyaç arttıkça geçmek daha sağlıklıdır. Geçiş yaparken izleme, merkezi kayıt (log) ve kaynak sınırı ayarlarını baştan kurmak, sorun çıktığında nedeni bulmayı kolaylaştırır.

Sıkça Sorulan Sorular

Orkestrasyon ile otomasyon aynı şey mi?

Yakın ama farklı kavramlardır. Otomasyon tek bir görevin elle yapılmadan çalıştırılmasıdır. Orkestrasyon ise birçok otomatik görevin ve bileşenin birbiriyle uyumlu biçimde koordine edilmesidir.

Orkestrasyon için mutlaka Kubernetes mi gerekir?

Hayır. Docker Swarm, Nomad ya da bulut sağlayıcıların yönetilen konteyner hizmetleri de orkestrasyon sağlar. Kubernetes en yaygın seçenektir ama ihtiyaca göre daha basit araçlar yeterli olabilir.

İlgili terimler

KubernetesKubernetes (kısaca K8s), çok sayıda konteynerin sunucular üzerinde dağıtılmasını, ölçeklendirilmesini, güncellenmesini ve arıza durumunda yeniden başlatılmasını otomatik olarak yöneten açık kaynak orkestrasyon platformudur.Konteyner(Container)Konteyner (container), bir uygulamayı çalışması için gereken kütüphane, ayar ve bağımlılıklarla birlikte tek bir pakette toplayan ve ana makinenin işletim sistemi çekirdeğini paylaşarak yalıtılmış biçimde çalıştıran hafif yazılım ortamıdır.DockerDocker, uygulamaları tüm bağımlılıklarıyla birlikte konteyner adı verilen taşınabilir paketlere dönüştüren ve bu konteynerleri çalıştıran açık kaynak kodlu bir platformdur. Uygulamanın her ortamda aynı şekilde çalışmasını sağlar.Mikroservis(Microservices)Mikroservis, bir uygulamanın her biri tek bir işe odaklanan, kendi başına geliştirilip dağıtılabilen ve birbiriyle genellikle API ya da mesaj kuyruğu üzerinden haberleşen küçük servislere bölündüğü mimari yaklaşımdır.İş Akışı(Workflow)İş akışı (workflow), bir işin başlangıçtan bitişe kadar hangi adımlardan geçtiğini, her adımı kimin yaptığını ve adımlar arasındaki geçiş kurallarını tanımlayan süreç yapısıdır. Elle ya da yazılımla yürütülebilir.Sunucu(Server)Sunucu (server), ağ üzerinden başka bilgisayarlara ve cihazlara veri, dosya, web sayfası ya da uygulama hizmeti sağlayan bilgisayar veya yazılımdır. İstek gönderen tarafa istemci denir.