Hızlı Başlangıç: Kod deposundan yeni bir Azure Kubernetes Service (AKS) Otomatik kümesine uygulama dağıtma

Şunlar için geçerlidir: ✔️ AKS Otomatik

Bir kod deposundan yeni veya var olan bir AKS Otomatik kümesine uygulama derlemek ve dağıtmak için otomatik dağıtımları kullanın. Otomatik dağıtımlar, kodunuzu oluşturmak ve dağıtmak için GitHub Eylem iş akışı ayarlama işlemini basitleştirir. Bağlandıktan sonra, yaptığınız her yeni commit işlem hattını başlatır. otomatik dağıtımlar draft.sh üzerinde oluşturulur. Yeni bir dağıtım iş akışı oluşturduğunuzda, mevcut bir Dockerfile kullanabilir, dockerfile oluşturabilir, mevcut Kubernetes bildirimlerini kullanabilir veya Kubernetes bildirimleri oluşturabilirsiniz. Oluşturulan bildirimler, güvenlik ve dayanıklılık en iyi yöntemleri göz önünde bulundurularak oluşturulur. AKS Otomatik ayrıca, 5 dakika içinde tamamlanacağı garanti edilen uygun pod hazır olma işlemlerinin %99,9’unu garanti eden bir pod hazırlık SLA'sı içerir ve bu da uygulamalarınız için güvenilir, kendi kendini iyileştiren bir altyapı sağlar.

Bu hızlı başlangıçta şunları öğreneceksiniz:

  • Bir kod deposuna bağlanın.
  • Uygulamanızı kapsayıcı hale getirin.
  • Kubernetes bildirimlerini yapılandırın.
  • AKS Otomatik küme oluşturma.
  • Uygulamayı bir çekme isteği aracılığıyla dağıtın.

Başlamadan önce

  • Dağıtılacak uygulamayla bir GitHub hesabına sahip olun.
  • AKS Otomatik, AKS kümenizde Azure İlkesi'yi etkinleştirecek, ancak daha sorunsuz bir deneyim için aboneliğinizde kaynak sağlayıcıyı önceden kaydetmeniz gerekir. Daha fazla bilgi için bkz. Azure kaynak sağlayıcıları ve türleri.

Önemli

AKS 1.36’dan itibaren, yeni AKS Otomatik kümeleri, upstream Ingress NGINX retirement nedeniyle, varsayılan olarak uygulama yönlendirme eklentisi aracılığıyla Kubernetes Gateway API’sini, uygulama yönlendirme eklentisiyle Yönetilen NGINX girişi yerine etkinleştirecektir.

Mevcut Otomatik kümeler etkilenmez ancak uygulama yönlendirme eklentisi aracılığıyla Kubernetes Gateway API'sine geçişe başlamalıdır.

Sınırlamalar

AKS Otomatik kümeleri için aşağıdaki sınırlamalar geçerlidir:

  • AKS Automatic şu bölgelerde genel kullanıma sunulmuştur: australiaeast, austriaeast, belgiumcentral, brazilsouth, canadacentral, centralindia, centralus, chilecentral, denmarkeast, eastasia, eastus, eastus2, francecentral, germanywestcentral, indonesiacentral, israelcentral, italynorth, japaneast, japanwest, koreacentral, malaysiawest, mexicocentral, newzealandnorth, northeurope, norwayeast, polandcentral, southafricanorth, southcentralus, southeastasia, spaincentral, swedencentral, switzerlandnorth, uaenorth, uksouth, westeurope, westus2, westus3.
    • Yeni AKS Otomatik kümeleri varsayılan olarak yönetilen sistem düğümü havuzlarını ve LocalDNS'yi etkinleştirir. Hiçbir bölgede yönetilen sistem düğümü havuzları olmadan AKS Otomatik kümeleri oluşturamazsınız.
  • AKS Otomatik kümesinde node kaynak grubu kilitleme önceden yapılandırılmıştır; bu da MC_ kaynak grubunda değişikliklere izin vermez ve varsayılan Özel DNS bölgesinde sanal ağ bağlantılarını engeller. Sanal ağlar arası veya özel DNS senaryoları için Özel bir sanal ağda özel Azure Kubernetes Service (AKS) Otomatik kümesi oluştur izleyerek özel ağ ve özel DNS kullanın.
  • Azure CLI sürüm 2.86.0 veya üzeri gereklidir. Sürümü bulmak için komutunu çalıştırın az --version . Yüklemeniz veya yükseltmeniz gerekiyorsa bkz. Azure CLI'yı yükleme.
  • Aşağıdaki uzantılar desteklenmez:
  • Windows düğümleri desteklenmez.
  • AKS temel SKU'su ile Otomatik SKU arasında geçiş desteklenmez.
  • Yönetilen sistem düğümü havuzları olmayan AKS Otomatik kümeleri ile yönetilen sistem düğümü havuzlarına sahip AKS Otomatik kümeleri arasındaki geçişler desteklenmez.

Uygulama kaynak kodunuzu getirme

Kod deposundan uygulama dağıtmak için Azure portalı giriş sayfasından başlayın.

Kubernetes hizmetleri oluşturma menüsünde 'Uygulamayı dağıt' seçeneğini gösteren ekran görüntüsü.

  1. Üstteki arama çubuğunda Kubernetes hizmetlerini arayın.
  2. Arama sonuçlarında Kubernetes services seçin.
  3. Oluştur düğmesini ve ardından Uygulamayı dağıt'ı seçin.

Kaynak kod deposuna bağlanma

Dağıtım iş akışı oluşturup otomatik hale getirin ve istenen kaynak kodu deposuna bağlanacak şekilde yetkilendirilin.

  1. Temel Bilgiler sekmesinde Uygulamanızı dağıtın'ı seçin.
  2. Project ayrıntıları altında Subscription, Resource Group ve Region seçin.
  3. Repository details altında iş akışı için bir ad girin ve ardından istenen GitHub deposuna bağlanmak için Authorize access öğesini seçin.
  4. Depo ve Dal seçin.
  5. İleri düğmesini seçin.

Kapsayıcı görüntüsü yapılandırmasını seçin

Bir uygulamayı Kubernetes'e hazırlamak için bunu bir kapsayıcı görüntüsünde derlemeniz ve kapsayıcı kayıt defterinde depolamanız gerekir. Kapsayıcı görüntüsünü oluşturma yönergelerini sağlamak için bir Dockerfile kullanırsınız. Kaynak kod deponuzda dockerfile yoksa Otomatik Dağıtımlar sizin için bir dockerfile oluşturabilir, aksi takdirde mevcut bir Dockerfile'ı kullanabilirsiniz.

Go, C#, Node.js, Python, Java, Gradle, Clojure, PHP, Ruby, Erlang, Swift ve Rust gibi birçok dil ve çerçeve için Dockerfile oluşturmak için Otomatik Dağıtımlar'ı kullanın. Dil desteği, draft.sh'da sunulanlar üzerine kurulmuştur.

  1. Kapsayıcı yapılandırması için Otomatik kapsayıcı oluştur (Dockerfile oluştur) seçeneğini belirleyin.
  2. Oluşturulan Dockerfile dosyasının depoya kaydedileceği konumu seçin.
  3. Desteklenen diller ve çerçeveler listesinden uygulama ortamını seçin.
  4. Uygulama bağlantı noktasını girin.
  5. Mevcut bir Azure Container Registry seçin veya yeni bir tane oluşturun. Bu kayıt defteri, yerleşik uygulama görüntüsünü depolamak için kullanılır. AKS Otomatik kümesinin kubelet kimliğine bu kayıt üzerinde AcrPull izinler verilir.

Kubernetes bildirim yapılandırmasını seçin

Kubernetes üzerinde çalışan bir uygulama birçok Kubernetes temel bileşeninden oluşur. Bu bileşenler hangi kapsayıcı görüntüsünün kullanılacağını, kaç çoğaltma çalıştırılacaklarını, uygulamayı kullanıma sunmanın genel IP'sinin gerekli olup olmadığını vb. açıklar. Daha fazla bilgi için resmi Kubernetes belgelerine bakın. Kaynak kod deponuzda dağıtılacak temel Kubernetes bildirimleri yoksa, Otomatik Dağıtımlar bunları sizin için oluşturabilir, aksi takdirde bir dizi mevcut bildirimi kullanabilirsiniz. Ayrıca mevcut Helm şemasını da seçebilirsiniz.

Uygulamanızın çalışır durumda olması için bir dizi temel Kubernetes bildirim dosyası oluşturmak için Otomatik Dağıtımlar'ı kullanın. Şu anda, Otomatik Dağıtımlar bir Deployment, Serviceve ConfigMapoluşturur.

Oluşturulan bildirimler, aşağıdakiler gibi dağıtım koruma önerileri uygulamak için tasarlanmıştır:

Kubernetes bildirimleri oluşturmak için:

  1. Dağıtım seçenekleri için Uygulama dağıtım dosyaları oluştur'a tıklayın.
  2. Uygulama bağlantı noktasını girin. Bu bağlantı noktası, oluşturulan Serviceüzerinde kullanılır.
  3. Oluşturulan Kubernetes bildirimlerini depoya kaydedeceğiniz konumu seçin.
  4. İleri düğmesini seçin.

Uygulamayı dağıtmak istediğiniz yeri seçin

Henüz bir kümeniz yoksa, bu dağıtımın bir parçası olarak yeni bir AKS Otomatik kümesi oluşturabilirsiniz.

  1. Küme yapılandırması için Otomatik Kubernetes kümesi oluştur'u seçin.
  2. Bir küme adı girin.
  3. Otomatik yükseltme bakım zamanlamasını seçin veya varsayılanı seçili bırakın.
  4. Uygulamanın dağıtıldığı Kubernetes ad alanını girin.
  5. İzleme ve günlüğe kaydetme düzeyini seçin veya varsayılan değeri seçili bırakın.
  6. İleri düğmesini seçin.

Yapılandırmayı gözden geçirme ve dağıtma

Küme, uygulama ve Kubernetes bildirimlerinin yapılandırmasını gözden geçirin ve Dağıt'ı seçin. Küme oluşturma işlemi birkaç dakika sürer, dağıtım sayfasından uzaklaşmayın.

Uygulamayı dağıtma işlemini gösteren ekran görüntüsü.

  1. Yeni bir AKS Otomatik kümesi oluşturulur veya var olan bir küme yapılandırılır.
  2. Kapsayıcı kayıt defteri oluşturulur veya var olan bir kayıt defteri kümeyle yapılandırılır.
  3. Federasyon kimlik bilgileri, GitHub Eylem iş akışının kümeye dağıtılmasına izin vermek için oluşturulur.
  4. Kod deposunda oluşturulan dosyalar ve iş akışı ile bir çekme isteği oluşturulur.

Pull isteğini inceleyin ve birleştirin

Dağıtım başarılı olduğunda, kod deponuzda oluşturulan çekme isteğinin ayrıntılarını görüntülemek için Çekme isteğini görüntüle düğmesini seçin.

GitHub'daki çekme isteğinin ekran görüntüsü.

  1. Dosyalar değiştirildi altındaki değişiklikleri gözden geçirin ve istediğiniz düzenlemeleri yapın.
  2. Değişiklikleri kod deponuzla birleştirmek için Çekme isteğini birleştir'i seçin.

Değişikliğin birleştirilmesi, uygulamanızı kapsayıcı görüntüsünde oluşturan, Azure Container Registry'de depolayan ve kümeye dağıtan GitHub Actions iş akışını çalıştırır.

Devam eden GitHub Actions iş akışını gösteren ekran görüntüsü.

Dağıtılan kaynakları denetleme

İşlem hattı tamamlandıktan sonra, Service hizmet menüsü altında Services and ingresses öğesini seçerek Azure portalında oluşturulan Kubernetes gözden geçirebilirsiniz.

Hizmetler ve girişler bölmesinin ekran görüntüsü.

Dış IP'nin seçilmesi, çalışan uygulamayla yeni bir tarayıcı sayfası açmalıdır.

Contoso Air uygulamasının çalıştığını gösteren ekran görüntüsü.

Kaynakları silme

Kümenizle işiniz bittiğinde, Azure ücret yansıtılmasını önlemek için kümenizi silebilirsiniz.

  1. Azure portalında kaynak grubunuza gidin.
  2. Kaynak grubunu sil'i seçin.
  3. Silme işlemini onaylamak için kaynak grubunuzun adını girin ve Sil'i seçin.
  4. Silme onayı iletişim kutusunda Sil'i seçin.

Sonraki adımlar

Bu hızlı başlangıçta AKS Otomatik'i kullanarak kubernetes kümesine bir uygulama dağıttınız ve bir kod deposundan sürekli tümleştirme/sürekli dağıtım (CI/CD) işlem hattı ayarladınız.

AKS Otomatik hakkında daha fazla bilgi edinmek için giriş bölümüne geçin.