Microsoft AZ-400: Azure Pipelines ile CI/CD İşlem Hatları — Çalışma kılavuzu

Şunun bir parçası: Microsoft DevOps Engineer Expert AZ-400 — Çalışma kılavuzu. Doğrulanmış cevaplarla şurada pratik yapın: Microsoft sınav merkezi, veya şurada süreli deneme sınavları çözün: ExamRoll.io.

Genel Bakış

Azure Pipelines, kurumsal denetimleri korurken derleme, test ve yayınlama süreçlerini birleştiren çok aşamalı YAML pipeline’ları ile kod olarak uçtan uca CI/CD sunar. Ölçeklenebilir, güvenli ve tekrarlanabilir teslimat sistemleri oluşturmak için YAML yazma, tetikleyiciler, agent’lar, değişkenler, şablonlar, dağıtım işleri, artifact’ler, önbelleğe alma ve hizmet bağlantıları konularında uzmanlaşmak esastır.

YAML ve Şablonlarla Yazma

Bir YAML pipeline’ı; aşamalar (stages), işler (jobs) ve adımlardan (steps) oluşur. Aşamalar; Derleme (Build), Test, Yayınlama (Release) gibi yaşam döngüsü sınırlarını modeller; işler agent’lar üzerinde yürütülür ve paralel olarak çalışabilir; adımlar ise bir iş içinde yürütülen görevler veya betiklerdir. dependsOn aracılığıyla bağımlılıklar açıkça belirtilir, bu da hassas düzenlemeye (orchestration) ve koşullu yürütmeye olanak tanır. Çok aşamalı YAML, CI ve CD’yi birleştirir, fan-in/fan-out desenlerini destekler ve onayları bağımsız bir yayın yapısı yerine ortamlara bağlar.

Şablonlar, farklı ayrıntı düzeylerinde birleştirme ve yeniden kullanıma olanak tanır:

Şablon değerlendirmesi, çalışma zamanı yürütmesinden önce derleme zamanında (compile-time) gerçekleşir. Pipeline yapısını derleme zamanında dallandırmak için (örneğin, belirli işleri yalnızca main için dahil etmek) şablon ifadeleri için ${{ }} kullanın. Makro sözdizimi $(var) ve çalışma zamanı ifadeleri $[ ] çalışma zamanında (runtime) çözümlenir, bu da gizli anahtarların (secrets) ve değişken gruplarının ne zaman kullanılabilir olduğunu etkiler. Paylaşılan şablonları merkezi bir depoda saklayın ve resources repositories aracılığıyla içe aktarın; deterministik derlemeler için bir dala (branch) veya etikete (tag) sabitleyin.

Tetikleyiciler, Agent’lar, Değişkenler ve İfadeler

Tetikleyiciler (Triggers), otomasyon giriş noktalarını yönetir:

Agent’lar ve agent havuzları (agent pools), işlerin nerede çalışacağını belirler:

Değişkenler (Variables) ve parametreler (parameters), yapılandırılabilirliği sağlar:

Dağıtımlar, Ortamlar, Stratejiler ve Kapılar

Dağıtım işleri, birinci sınıf CD semantiği sağlar. Bir dağıtım işi, bir ortamı hedefler ve dağıtımları (rollouts) ve yaşam döngüsü kancalarını (lifecycle hooks) kontrol eden bir strateji altında çalışır:

Dağıtım mantığını, her ortam aşaması için bir dağıtım işi olarak kodlayın. Geçici (ad-hoc) betik yoklamaları yerine, sağlam kapılar için ortam denetimlerinden yararlanın. Gizli anahtarlar (secret) gerektiğinde, bunları değişkenlere gömmek yerine bir hizmet bağlantısı aracılığıyla Azure Key Vault’tan alın.

Artifact’lar, Önbellekleme ve Hizmet Bağlantıları

Artifact’lar ve önbellekleme, yeniden kullanımı ve performansı artırır:

Hizmet bağlantıları, Azure Pipelines’ın harici sistemlere ulaşmak için kullandığı kimliği tanımlar:

Klasik ve YAML Karşılaştırması ve Geçiş

Klasik işlem hatları, ayrı Derleme (Build) ve Sürüm (Release) kavramlarına sahip görsel tasarımcıyı kullanır. Görev tabanlı yazma, değişken yönetimi, sürüm ortamları ve geçitler (gates) sunarlar. YAML işlem hatları, kod olarak işlem hattı (pipeline-as-code), çok aşamalı birleştirme, şablonlar ve depo ile sağlam sürüm kontrolü sağlar. Özellik denkliği büyük ölçüde sağlanmıştır: ortam onayları ve denetimleri, sürüm geçitlerinin yerini alır; dağıtım işleri (deployment jobs) ortamları modeller; işlem hattı yapıtları (pipeline artifacts), derleme yapıtlarının (build artifacts) yerini alır; ve şablonlar (templates) ile extends, merkezi yönetişimi büyük ölçekte uygular. Geriye kalan farklar genellikle kullanıcı arayüzü tabanlı manuel müdahaleler ve bazı niş sürüm tasarımcısı özellikleri etrafındadır; bunlar YAML’de Manuel Doğrulama (Manual Validation) görevleri ve ortam denetimleri aracılığıyla karşılanır.

Pragmatik bir geçiş yolu şöyledir:

  1. Klasik derleme ve sürüm tanımlarını, görevleri, değişkenleri, ortamları, onayları ve geçitleri envanterleyin.
  2. Asistanı kullanarak veya YAML’e dışa aktararak derlemeyi YAML’e dönüştürün, ardından yeniden kullanım ve sürdürülebilirlik için şablonlara yeniden düzenleyin (refactor).
  3. Her sürüm ortamını, bir ortamı hedefleyen bir dağıtım işi (deployment job) içeren bir YAML aşaması (stage) olarak modelleyin. Sürüm geçitlerini (release gates) ortam onaylarına ve denetimlerine (örneğin, Azure Monitor sorgu denetimleri, iş öğesi sorgu denetimleri) dönüştürün.
  4. Paylaşılan değişkenleri değişken gruplarına (variable groups) taşıyın ve gizli anahtarlar (secrets) için Key Vault’u bağlayın. Service principal gizli anahtarlarını OIDC destekli hizmet bağlantılarıyla (service connections) değiştirin.
  5. Sürüm yapıtı tetikleyicilerini (release artifact triggers) işlem hattı kaynağı tetikleyicileriyle (pipeline resource triggers) değiştirin. CI’da işlem hattı yapıtlarını (pipeline artifacts) yayımlayın ve bunları CD aşamalarında kullanın.
  6. Her iki işlem hattını geçici olarak çalıştırarak denkliği doğrulayın, ardından uygun geri alma planlarıyla klasik tanımları kullanımdan kaldırın ve geçişi tamamlayın.

Uygulamalı Problem Senaryosu

Starbucks, bir mikro hizmet platformu için teslimatı standartlaştırıyor ve performans geçitlerini zorunlu kılarken, kimlik bilgisi riskini azaltırken ve derlemeleri hızlandırırken klasik sürümlerden YAML’e geçiş yapmalıdır.

  1. extends şablonları ile çok aşamalı YAML oluşturma
  1. CI, PR, zamanlama (schedule) ve işlem hattı (pipeline) tetikleyicilerini uygulama
  1. Agent havuzları ile karma agent stratejisi kullanma
  1. Değişken grupları ve çalışma zamanı parametreleri ile değişkenleri yönetme
  1. Ortamlar, onaylar ve denetimler ile dağıtım işlerini tanımlama
  1. Önce canary, sonra blue-green stratejilerini uygulama
  1. İşlem hattı yapıtları ve önbellekleme ile optimize etme
  1. OIDC ve kapsamlı izinlerle hizmet bağlantılarını güvence altına alma

Bu uçtan uca tasarım, YAML-as-code yönetişimini kurumsal düzeyde onaylar ve denetimlerle uyumlu hale getirir, önbellekleme ve yapıtlar aracılığıyla teslimatı hızlandırır ve OIDC ile kapsamlı hizmet bağlantıları aracılığıyla güvenliği güçlendirir.


Kaynak Kontrolü ve Depo Yönetimi · Tüm alanlar · Kod Olarak Altyapı ve Yapılandırma Yönetimi

Bu soruları çözün → · ExamRoll.io’da süreli pratik →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Sınavınızı geçin →

Microsoft'a göz atın →

Related guides

Hepsi bir arada erişim

Tek abonelik. Her sınav.

Her plan, sınırsız cevap aramayı, pratik testlerini, AI açıklamalarını ve tam kaynak kütüphanesini — 20'den fazla dilde — açar.

Aylık
24.87
Just €0.83/day
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

En iyi değer
12 ay
179.87
Just €0.49/daySave 40%
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

✓ Ücretsiz plan dahil · ✓ İstediğiniz zaman iptal edin · ✓ Tüm planlar tam ürünü açar