Share via


AKS için platform otomasyonu ve DevOps

Buluta özel bir yapı olarak Kubernetes, dağıtım ve işlemler için bulutta yerel bir yaklaşım gerektirir. Azure ve Kubernetes, zengin ve iyi tasarlanmış API'lere sahip açık ve genişletilebilir platformlardır ve tam kapsamlı otomatikleştirme olanağı sağlar. Otomasyona ve genel DevOps en iyi yöntemlerine dayanarak DevOps ve yüksek oranda otomatik bir yaklaşım planlayın.

Tasarımla ilgili dikkat edilecek noktalar

AKS platform otomasyonu ve DevOps için tasarımda dikkat edilmesi gereken bazı noktalar şunlardır:

  • Mühendislik ve otomasyon yaklaşımınızı belirlerken Azure hizmet sınırlamalarını ve sürekli tümleştirme ve sürekli teslim (CI/CD) ortamınızı göz önünde bulundurun. Başka bir örnek için bkz . GitHub kullanım sınırlamaları.

  • Geliştirme, test, Soru-Cevap ve üretim ortamlarına erişimin güvenliğini sağlarken ve korurken CI/CD perspektifinden güvenlik seçeneklerini göz önünde bulundurun. Dağıtımlar otomatik olarak gerçekleşir, bu nedenle erişim denetimini uygun şekilde eşleyin.

  • Dağıtılan her kaynağı benzersiz bir şekilde tanımlamak için iyi tanımlanmış kurallarla ön ekleri ve son ekleri kullanmayı göz önünde bulundurun. Bu adlandırma kuralları, çözümlerin yan yana dağıtılmasında çakışmaları önler ve genel ekip çevikliğini ve aktarım hızını geliştirir.

  • Çözümünüzü normal ve Olağanüstü Durum Kurtarma Planı (DRP) rejimlerinde mühendislik, güncelleştirme ve dağıtma konusunda destekleyecek iş akışlarının envanterini oluşturun. İşlem hatlarını bu iş akışlarına göre eşlemeyi göz önünde bulundurarak aşinalığı ve üretkenliği en üst düzeye çıkarabilirsiniz.

    Dikkate alınması gereken bazı örnek senaryolar ve işlem hatları şunlardır:

    • Kümeleri dağıtma, düzeltme eki uygulama ve yükseltme
    • Uygulamaları dağıtma ve yükseltme
    • Eklentileri dağıtma ve sürdürme
    • Olağanüstü durum kurtarma için yük devretme
    • Mavi-yeşil dağıtımlar
    • Kanarya ortamlarını koruma
  • İş yüklerinize daha fazla güvenlik, şifreleme ve günlük özelliği eklemek için bir hizmet ağı kullanmayı göz önünde bulundurun.

  • Dağıtımları ve ilgili yapıtları izleyerek ve izleyerek DevOps deneyiminizi desteklemek için abonelikler, etiketleme ve etiketler gibi diğer kaynakları dağıtmayı göz önünde bulundurun.

  • Sığırların evcil hayvanlara karşı paradigma vardiyasının etkisini düşünün. Kubernetes'in podlarının ve diğer yönlerinin kısa ömürlü olmasını ve otomasyon ile işlem hattı altyapınızı buna uygun şekilde hizalamasını bekleyebilirsiniz. Sabit veya kalıcı olması için IP adreslerine veya diğer kaynaklara güvenmeyin.

Tasarım önerileri

AKS platform otomasyonu ve DevOps için bazı tasarım önerileri şunlardır:

  • İşlem hatlarını veya eylemleri kullanarak:

    • Ekip genelinde uygulanan uygulamaları en üst düzeye çıkarın.
    • Tekerleği yeniden icat etme yükünün büyük bir kısmını kaldırın.
    • Genel kalite ve çeviklik açısından öngörülebilirlik ve içgörüler sağlayın.
  • Tetikleyici tabanlı ve zamanlanmış işlem hatlarını kullanarak erken ve sık dağıtma. Tetikleyici tabanlı işlem hatları değişikliklerin doğru doğrulamadan geçmesine, zamanlanmış işlem hatlarının ise değişen ortamlardaki davranışı yönetmesini sağlar.

  • Altyapı dağıtımlarını uygulama dağıtımından ayırın. Çekirdek altyapı, uygulamalardan daha az değişir. Her dağıtım türünü ayrı bir akış ve işlem hattı olarak değerlendirin.

  • Bulutta yerel seçenekleri kullanarak dağıtma. Denetim düzlemi dahil olmak üzere altyapıyı dağıtmak için kod olarak altyapıyı kullanın ve Kubernetes yerel bileşenlerini dağıtmak ve bakımını yapmak için Kubernetes'te Helm ve Operatör desenini kullanın.

  • Uygulamaları dağıtmak ve bakımını yapmak için GitOps kullanın. GitOps, git deposunu tek bir gerçeklik kaynağı olarak kullanarak yapılandırma kaymasını önler ve geri alma işlemleri ve ilgili yordamlar sırasında üretkenliği ve güvenilirliği artırır.

  • Gizli dizileri, sertifikaları ve bağlantı dizesi korumak için pod ile yönetilen kimlikleri ve Gizli Dizi Deposu CSI Sürücüsü için Azure Key Vault sağlayıcısını kullanın.

  • Sabit kodlanmış yapılandırma öğeleri ve ayarlarından kaçınarak en üst düzeye çıkarılmış dağıtım eşzamanlılığı için çaba gösterin.

  • Altyapı ve uygulamayla ilgili dağıtımlar arasında iyi bilinen kurallardan yararlanır. Diğer tanımlı ilkeler arasında kuralları doğrulamak ve zorunlu kılmak için kubernetes için Azure İlkesi eklentisiyle birlikte erişim denetleyicilerini kullanın.

  • Aşağıdakilerle sürekli sola kaydırmayı benimseyin:

    • İşlem hattının başlarında kapsayıcı tarama gibi güvenlik açığı tarama araçları ekleyerek güvenlik.
    • İlke, ilkeyi kod olarak kullanarak ve erişim denetleyicileri aracılığıyla ilkeleri bulutta yerel bir şekilde zorunlu kılarak.
  • Her hatayı, hatayı veya kesintiyi, genel çözüm kalitesini otomatikleştirme ve iyileştirme fırsatı olarak değerlendirin. Bu yaklaşımı sola kaydırma ve site güvenilirliği mühendisliği (SRE) çerçevenizle tümleştirin.