İlginizi Çekebilir
  1. Ana Sayfa
  2. Container
  3. Yazılım Geliştiriciler için Azure: Azure Kubernetes Service (AKS) – Bölüm 1

Yazılım Geliştiriciler için Azure: Azure Kubernetes Service (AKS) – Bölüm 1

Yazılım Geliştiriciler için Azure: Azure Kubernetes Service (AKS) – Bölüm 1

Azure VM Üzerine Kubernetes (MicroK8s) Kurulumu yazısında bahsettiğim üzerindeki yönetilebilen servisi yani Azure Service (), sistemin sağlık takibi ve bakımı gibi kritik görevler ile master node yönetiminin Azure tarafından yapıldığı bir hizmet olarak tanımlanabilir. Size kalan kısım ise agent node’ların yönetimini ve bakımını sağlamak.

NOT: Eğer Kubernetes ile ilgili bir bilgim yok ya da sadece duydum diyorsanız; okumaya başlamadan önce Onur Yüksektepeli’nin Kubernetes Nedir? yazısını okumanızı tavsiye ediyorum.

Hemen konuya girelim ve AKS nedir bize ne gibi özellikler sunuyor üzerinden inceleyelim. ’ı açtıktan sonra Resim-1‘de göreceğiniz gibi Kubernetes Services dikkatinizi çekecektir.

Resim-1

Kubernetes service’i seçtikten sonra standart servis tanımlama ekranı karşımıza çıkıyor. Buradan da Create Kubernetes service butonuna tıklıyoruz (Resim-2).

Resim-2

Şimdi ise servisimizle ilgili detaylı olarak tanımlamaları yapacağımız ekrandayız. İlk adımda Basics yani cluster adı, bölge, gibi temel Azure servis bilgilerini giriyoruz (Resim-3). Basit bir örnek yapacağımız için Node size’ı Standard A1 v2 yani 1 vcpu ve 2 GB RAM olarak seçmemiz yeterli olacaktır. 2 Node da bu örnek için yeterli. Henüz preview olan Virtual Nodes özelliği ise; Kubernetes cluster autoscaler’ın ekstra podları çalıştırması için yeni VM compute node’ları deploy etmesini beklemeden hızlı deployment’lar yapmanıza imkân sağlıyor. Bunun için de arka planda serverless servisini kullanıyor. Bu örnekte kullanmayacağımız için aktifleştirmiyoruz.

Resim-3

2. adım Authentication ise bize Kubernetes cluster’a erişim için gerekli service principal tanımı yapıyoruz. Ayrıca rol bazlı erişim kontrolü (Role Based Access Control-RBAC) de kullanabilirsiniz (Resim-4).

Resim-4

3. adımda ise Networking ayarlarını yapacağız (Resim-5). HTTP application endpoint, uygulama endpoint’leri için public olarak erişilebilecek DNS isimleri oluşturarak cluster içerisindeki uygulamalarınıza daha kolay erişmenizi sağlıyor. Ingress controller’lar ile hızlı başlangıç yapmak için tasarlanmış ancak production için önerilen bir özellik olmadığını da belirtmekte fayda var.

Resim-5

4. adımda Monitoring ile ilgili olarak container’ları izlemek isteyip istemediğimizi ve Log Analytics için gerekli workspace tanımını yapıyoruz (Resim-6).

Resim-6

5. adımda Tags yani etiketleme işlemi var. Bu konuda da sözü Fırat Yaşar’a bırakıyorum ve Designing Azure Tags Nedir? yazısını okumanızı tavsiye ediyorum. Burada herhangi etiketleme yapmadan devam ediyoruz (Resim-7).

Resim-7

Son adımda (Resim-8) ise yaptığımız ayarları gözden geçirebiliyoruz. Ekranın üstünde de göreceğimiz gibi yaptığımız konfigürasyonda herhangi bir sorun görünmüyor. Create‘e bastıktan sonra da servisimiz için gerekli kaynakların oluşturulmasını bekleyebiliriz.

Resim-8

Kubernetes servisimiz oluşturduktan sonra karşımıza Resim-9‘da göreceğiniz Overview ekranı çıkacak. Burada servis ile ilgili yer, Kubernetes versiyonu gibi genel bilgiler yanında Monitor ile Azure Monitor Insights kullanarak container’ların performans ve sağlık izlemelerini yapabilirsiniz.

Resim-9

Peki bize neler sağlıyor? Resim-10‘da göreceğiniz gibi Cluster genelinde CPU, memory, node ve aktif podları görebiliyoruz.

Resim-10

Nodes sekmesinde ise node’ların durumunu detaylı olarak inceleyebilirsiniz (Resim-11).

Resim-11

Controllers sekmesinde cluster üzerindeki controller’ları görebiliyorsunuz. Nodes sekmesinde de olduğu gibi her bir satırda solda yer alan ok işaretine tıklayarak alt detaylara da ulaşabiliyorsunuz (Resim-12).

Resim-12

Son olarak da Containers sekmesinde de mevcut container’lar ile ilgili bilgilere ulaşmanız mümkün (Resim-13).

Resim-13

AKS oluştururken mshowto_rg adında yeni bir de resource group oluşturmuştuk. Servis oluşturulduktan sonra Azure Portal üzerinden mevcut resource group’lara bakarsanız (Resim-14) gibi mshowto_rg dışında resource group’ların da oluşturulduğunu göreceksiniz (Cloud-shell için olan hariç). Bunlardan ilki Container Insights ve Log Analytics workspace için oluşturulan DefaultResourceGroup-WEU (Resim-14).

Resim-14

Bir diğer resource group ise availability set, VM, disk, network interface, network security group ve route table içeren MC_mshowto_rg_mshowtok8s_westeurope (Resim-15).

Resim-15

Servis tanımında belirttiğimiz resource group mshowto_rg içerisinde ise Kubernetes service yer alıyor. Resim-16‘da gördüğünüz Container registry’yi ayrıca oluşturdum. Network Watcher servisi için ise NetworkWatcherRG isimli bir resource group oluşturulmuş.

Resim-16

Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

Referanslar

www.mshowto.org

https://docs.microsoft.com/en-gb/azure/aks

TAGs: Azure, Azure Portal, , , AKS, Containers, Kubernetes, Resource Group, Container Monitoring, Azure Container Instance,

Yorum Yap

Yazar Hakkında

Mert Yeter, lisans eğitimini Yıldız Teknik Üniversitesi Gemi İnşaatı Mühendisliği bölümünde, yüksek lisans eğitimini ise Bahçeşehir Üniversitesi Bilgi Teknolojileri bölümünde tamamlamıştır. Yazılım dünyasına üniversitenin ilk yıllarında aldığı QBasic ile başlayan Mert, .NET ve SQL Server gibi Microsoft teknolojileri ile devam etmiş; yüksek lisans tezini ise Linux konusunda yapmıştır. Netaş ve Ziraat Teknoloji gibi sektörün önde gelen firmalarında C#, .NET, SQL Server, Cisco Contact Center ürünleri ve Linux üzerine çalışmış, bir çok firmaya da bu konularda danışmanlık vermiştir. Şu anda da Done'de Cloud Development Manager olarak Azure, .NET Core, SQL Server, Docker vb güncel teknolojiler üzerinde çalışmaktadır.

Yorum Yap