Azure CLI Nasıl Kurulur: Kurulum, Kimlik Doğrulama ve Kullanım için Pratik Rehber
Azure CLI’yi herhangi bir platforma nasıl kuracağınızı, güvenli şekilde kimlik doğrulaması yapacağınızı ve Azure kaynaklarını verimli yönetebileceğinizi öğrenin. Verimliliğinizi artıracak komutlar, ipuçları ve otomasyon tekniklerini keşfedin.
Bulut altyapısını yönetmek, eskiden web portallarında sayısız tıklama ve bitmeyen menüler arasında gezinmek demekti. Aylarca süren manuel süreç sıkıntısından sonra Azure CLI ile tanışmam, bulut kaynağı yönetimi yaklaşımımı tamamen değiştirdi. Bu sadece bir kurulum rehberi değil; Microsoft’un Azure yönetimi için en güçlü çapraz platform aracını ustalıkla kullanmanız için bir yol haritası.
> Kurulumsuz, anında erişim için Azure Cloud Shell ile başlayın.
Azure CLI, tüm yaygın işletim sistemlerinde Azure kaynaklarını yönetmek için tutarlı ve güçlü bir deneyim sunar.
Azure CLI nedir?
Azure CLI, bulut kaynaklarınızı kontrol etmenin en doğrudan yoludur. Bir web tarayıcısının kısıtlarını, doğrudan temel Azure API’leriyle konuşan güçlü ve betiklenebilir bir arayüzle değiştirir. Bu sayede, işletim sisteminden bağımsız olarak tutarlı ve güvenilir komutlarla ölçekli otomasyon gücü elde edersiniz.
CLI’da sevdiğim şey, öğrenirken servisleri keşfetmeme, gerçek bir şey inşa etmeye hazır olduğumda da aynı adımları bir betiğe dökmeme izin vermesi. Sır, komutları ezberlemek değil— az findveya --help bayraklarıyla yardım istemeyi iyi bilmek.
Azure CLI, Azure Resource Manager modelini kullanır ve birleşik bir komut yapısı üzerinden tüm Azure servislerine tutarlı erişim sağlar. Bu mimari karar, sanal makineleri, depolama hesaplarını veya karmaşık ağ yapılandırmalarını yönetiyor olun, Azure Portal’ı çalıştıran aynı temel API ile çalıştığınız anlamına gelir.
Tüm Azure CLI komutları, Azure Portal’ı da çalıştıran aynı motor olan Azure Resource Manager (ARM) üzerinden birleşik hale getirilir.
Azure CLI ve Azure Portal karşılaştırması
Her iki arayüz üzerinden yüzlerce Azure dağıtımını yönettikten sonra, CLI aşağıdaki konularda vazgeçilmez hale geliyor:
Otomasyon ve ölçeklenebilirlik: Betikler aynı anda onlarca kaynağı yönetebilir; bu, Portaldaki manuel işlemlerle mümkün değildir
Sürüm kontrol entegrasyonu: Altyapı komutlarınız, diğer yazılım yapıtları gibi izlenen ve gözden geçirilen koda dönüşür
Çapraz platform tutarlılığı: Aynı komutlar Windows, Linux ve macOS ortamlarında özdeş şekilde çalışır
Hız ve verimlilik: Deneyimli yöneticiler karmaşık işlemleri dakikalar yerine saniyelerde gerçekleştirebilir
Azure CLI Nasıl Kurulur
İlk adım Azure CLI’yi kurmaktır; ancak birçok kişinin bu noktada takıldığını gördüm. Kişisel bir Mac için doğru yöntem, büyük bir şirketin kilitli Windows makineleri için gerekenden tamamen farklıdır. Seçenekleri birlikte inceleyelim; böylece ilk seferde doğru kurulum yapar, uyumsuz sürümlerle veya hayal kırıklığına uğramış BT yöneticileriyle uğraşmaktan kaçınırsınız.
Farklı platformlarda kurulum
Windows Kurulum Yöntemleri
Windows kullanıcılarının, farklı kurumsal gereksinimlere uygun birden fazla kurulum yolu vardır:
WinGet Paket Yöneticisi (Bireysel geliştiriciler için önerilir):
Yukarıdaki komut, Windows’un modern paket yöneticisini otomatik güncellemeler ve temiz kurulumlar için kullanır.
MSI Yükleyici (Kurumsal dağıtımlar için en iyisi):
En son MSI’ı resmi Azure CLI indirme sayfasından indirip yükleme sihirbazını izleyin. Bu yöntem, kurulum dizinleri ve sistem entegrasyonu üzerinde en fazla kontrolü sağlar.
PowerShell ile MSI Kurulumu (Otomatik kurulum betikleri için ideal):
Azure CLI’yi Docker konteynerlerinde çalıştırmak tam yalıtım sağlar:
docker run -it mcr.microsoft.com/azure-cli:latestAltyapı:
Bu komut, Azure CLI önceden kurulu ve yapılandırılmış etkileşimli bir konteyner başlatır.
Azure Cloud Shell: Sıfır Kurulum Seçeneği
Azure Cloud Shell, herhangi bir yerel kurulum olmadan anında CLI erişimi sağlar. Bu tarayıcı tabanlı ortam, en güncel Azure CLI sürümüyle önceden yapılandırılmış olarak gelir ve terraform, kubectl ve çeşitli metin düzenleyiciler gibi ek araçları içerir.
Bu komut, Azure CLI sürümünü, çekirdek bileşenleri ve yüklü uzantıları gösteren ayrıntılı bir JSON döndürür.
Bu çıktıyı anlamak, uyumluluk sorunlarını gidermeye ve betiklerinizin uygun CLI sürümlerini hedeflediğinden emin olmaya yardımcı olur. Microsoft, kritik değişiklikler ve yeni özellikleri belgeleyen ayrıntılı sürüm notları yayımlar.
> Azure CLI sürümlerini yükseltirken uzantı uyumluluğunu mutlaka kontrol edin.
Azure CLI ile Kimlik Doğrulama
Kimlik doğrulama, Azure CLI deneyiminizin güvenlik temelini oluşturur ve yakın zamandaki politika değişiklikleri, kuruluşların kimlik bilgisi yönetimine yaklaşımını kökten yeniden şekillendirdi. Modern kimlik doğrulama stratejileri, Microsoft tüm Azure hizmetleri genelinde daha güçlü standartlar uygularken, güvenlik gereksinimleri ile operasyonel verimliliği dengede tutmalıdır.
Kimlik doğrulama yöntemleri
Azure Cloud Shell otomatik oturum açma
Cloud Shell, mevcut Azure Portal oturumunuzu kullanarak otomatik kimlik doğrulaması yapar. Bu sorunsuz entegrasyon, etkileşimli kullanım senaryolarında kimlik doğrulama karmaşıklığını ortadan kaldırır; öğrenme ve ad-hoc yönetim görevleri için idealdir.
Etkileşimli oturum açma
Standart kimlik doğrulama yaklaşımı cihaz kodu akışını kullanır:
Bu komut, internet bağlantısı olan herhangi bir cihazdan https://microsoft.com/devicelogin adresinde kimlik doğrulaması için bir cihaz kodu görüntüler.
Yönetilen kimlik ile kimlik doğrulama
Azure kaynakları yönetilen kimlikleri kullanarak kimlik doğrular:
Bu yöntem, Azure içinde çalışan uygulamalar için kimlik bilgisi yönetim yükünü ortadan kaldırır.
Hizmet sorumlusu ile kimlik doğrulama
Eski Kimlik Bilgisi Tabanlı Yaklaşım (Artık iş yükü kimliği federasyonu olmadan uyumsuz):
Bu parola tabanlı kimlik doğrulama yöntemi, Eylül 2025 MFA zorunluluğundan doğrudan etkilenmiştir. Bu yöntemi kullanan betikler büyük olasılıkla başarısız olacaktır ve güncellenmelidir.
az login --service-principal --username<app-id>--password<password>--tenant<tenant-id>Altyapı:
Bu komut, otomatikleştirilmiş senaryolar için uygulama kimlik bilgilerini kullanarak kimlik doğrular.
Ekim 2025 MFA Zorunluluğunu Yönetme
1 Ekim 2025’ten itibaren Microsoft’un zorunlu çok faktörlü kimlik doğrulama (MFA) uygulaması etkin olacaktır. Parola tabanlı hizmet sorumluları kullanıyorsanız, bu tarihten sonra otomasyon betikleriniz başarısız olacaktır. Bu, yıllardır Azure CLI otomasyonundaki en kritik değişikliktir.
Bu güvenlik güncellemesi, kuruluşların Azure CLI otomasyonuna yaklaşımını temelden değiştirir. Hizmet sorumlusu kimlik doğrulama kalıplarını etkiler ve birçok otomasyon senaryosu için iş yükü kimliklerine geçiş gerektirir.
> Otomasyonunuz risk altında. 1 Ekim’de hizmet kesintisini önlemek için iş yükü kimliği federasyonuna geçişe öncelik verin.
Yeni MFA gereksinimlerine uyum sağlamak ve başarısız otomasyonu düzeltmek için dört adımlı eylem planınız.
Bu komut, programatik kullanım için son kullanma ayrıntılarıyla birlikte erişim belirteçlerini döndürür.
Azure CLI Komutlarına Başlangıç
Komut hâkimiyeti, CLI’nin organizasyon felsefesini ve keşif mekanizmalarını anlamakla başlar. Yüzlerce komutu ezberlemek yerine, anahtar nokta; CLI’nin akıllı yardım sistemi aracılığıyla Azure’un geniş hizmet ekosisteminde verimli biçimde gezinmeyi öğrenmektir.
Komut bulma
Azure CLI’nın keşfedilebilirlik özellikleri öğrenme eğrisini önemli ölçüde azaltır:
Bu yardım komutu, anlık başvuru için parametreleri, alt grupları ve pratik örnekleri görüntüler.
İhtiyacınız olan tam komutu keşfetmek ve yapay zekâ destekli öneriler almak için "az find" kullanın.
Komut yapısı
Azure CLI tutarlı bir hiyerarşik yapı izler: az <group> <subgroup> <command> [parameters]
Sanal makine oluşturma örneği:
az vm create --resource-group myResourceGroup --name myVM --image UbuntuLTS --admin-username azureuser --generate-ssh-keysAltyapı:
Bu komut, belirtilen yapılandırma parametreleriyle bir sanal makine oluşturur.
Genel argümanlar
Birçok argüman tüm komutlarda çalışır:
- --output veya -o: Çıktı biçimini kontrol eder (json, table, yaml, jsonc, tsv)
- --query: JMESPath sözdizimi kullanarak sonuçları filtreler
- --verbose: Ayrıntılı yürütme bilgisi sağlar
- --debug: Tam HTTP istek/yanıt ayrıntılarını gösterir
> Okunabilir sonuçlar için --output table, betik işlemesi için --output json kullanın
Etkileşimli Mod ve Verimlilik Özellikleri
Etkileşimli mod, akıllı yardım ve bağlamsal yönlendirme ile komut satırı deneyimini dönüştürür. Bu yaklaşım, yeni komutları öğrenmek ile onları güvenle yürütmek arasındaki boşluğu kapatarak, gerçek zamanlı doğrulama ve öneriler sunar; bu da CLI ustalığının hem keşif hem de yürütme aşamalarını hızlandırır.
Azure CLI etkileşimli mod
Etkileşimli mod gelişmiş bir komut satırı deneyimi sağlar:
Bu komut, Bash’te Azure CLI komutları için sekme tamamlamayı etkinleştirir.
PowerShell:
Register-ArgumentCompleter-Native -CommandName az -ScriptBlock {...}Altyapı:
Bu PowerShell yapılandırması, Azure CLI komutları için sekme tamamlamayı etkinleştirir.
VS Code entegrasyonu
Visual Studio Code için Azure CLI uzantısı, sözdizimi vurgulama, IntelliSense ve entegre terminal desteği sağlar.
Kaynak Yönetimi için Azure CLI Kullanımı
CLI’yi kurup yapılandırdığınıza göre artık işe koyulma zamanı. Bu bölümde teoriden pratiğe geçiyor ve gerçek Azure kaynaklarını yönetmeye başlıyoruz. Tekil komutların ötesine geçip, bulut altyapınızı inşa etmek, bağlamak ve yönetmek için her gün kullanacağınız kalıplara bakacağız.
Kaynak Grubu İşlemleri
Kaynak grupları, Azure kaynakları için mantıksal kaplar görevi görür:
az group create --name myResourceGroup --location eastus
az group list --output table
az group delete --name myResourceGroup --yes --no-waitAltyapı:
Bu komutlar, eşzamanlı olmayan işlemeyle kaynak grupları oluşturur, listeler ve siler.
Yaygın kaynak oluşturma
Sanal Makine Oluşturma:
az vm create \
--resource-group myResourceGroup \--name myVM \--image UbuntuLTS \--size Standard_B2s \
--admin-username azureuser \
--generate-ssh-keysAltyapı:
Bu komut, SSH anahtar kimlik doğrulamasıyla bir Linux sanal makinesi oluşturur.
Bu komut, yerel yedeklemeli depolama ile genel amaçlı v2 bir depolama hesabı oluşturur.
Sorgu ve Çıktı Biçimlendirme
JMESPath sorguları, komut çıktılarını filtreler ve dönüştürür:
az vm list --query"[].{Name:name, PowerState:powerState}"--output table
az vm list --query"[?location=='eastus'].name"--output tsvAltyapı:
Bu JMESPath sorguları, belirli alanları çıkarır ve sonuçları ölçütlere göre filtreler.
> Karmaşık JSON yanıtlardan tam olarak ihtiyacınız olan veriyi çıkarmak için JMESPath sorgularında ustalaşın.
Azure CLI ile Otomasyon
Otomasyon, tekil komutları, manuel işlemlerin ötesine ölçeklenen tekrarlanabilir ve güvenilir iş akışlarına dönüştürür. Asıl sihir, CLI komutlarını tek seferlik görevler olarak görmekten vazgeçip, kaynak sağlama’dan felaket kurtarmaya kadar her şeyi yöneten sistemler inşa etmeye başladığınızda gerçekleşir.
Haftalık geliştirme ortamı yenilememizi ilk kez otomatikleştirdiğimde, eskiden üç saatlik tıklama ve bekleme işi; kahve alırken çalıştırabildiğim 15 dakikalık bir betiğe dönüştü. Bu otomasyon betiği, ekibimize her ay onlarca saat kazandırdı ve manuel süreçlere sızan kaçınılmaz insan hatalarını ortadan kaldırdı.
> Otomasyona küçük başlayın—önce en tekrarlı günlük görevlerinizi otomatikleştirin, ardından tam altyapı iş akışlarına genişleyin
Betik yazma en iyi uygulamaları
Hata yönetimi ve günlüklemeye sahip sağlam betik şablonu:
#!/bin/bashset-euo pipefail # Exit on errors, undefined variables, pipe failuresRESOURCE_GROUP="automation-rg"LOCATION="eastus"VM_NAME="automated-vm"log(){echo"[$(date +'%Y-%m-%d %H:%M:%S')] $1"}cleanup(){
log "Cleaning up resources due to script failure"
az group delete --name"$RESOURCE_GROUP"--yes --no-wait 2>/dev/null ||true}trap cleanup ERR
log "Starting Azure resource provisioning"if! az group show --name"$RESOURCE_GROUP"&>/dev/null;then
log "Creating resource group: $RESOURCE_GROUP"
az group create --name"$RESOURCE_GROUP"--location"$LOCATION"fiVM_RESULT=$(az vm create \
--resource-group "$RESOURCE_GROUP"\--name"$VM_NAME"\--image UbuntuLTS \
--generate-ssh-keys \--output json)PUBLIC_IP=$(echo"$VM_RESULT"| jq -r'.publicIpAddress')
log "VM created successfully. Public IP: $PUBLIC_IP"Altyapı:
Bu betik şablonu kapsamlı hata yönetimi, günlükleme ve temizleme mekanizmalarını uygular.
Otomasyon için güvenlik
Asla kimlik bilgilerini betiklere gömmeyin. Mümkün olduğunda sertifika tabanlı kimlik doğrulama kullanın:
# Certificate-based authentication (recommended)exportARM_CLIENT_ID="your-client-id"exportARM_CERTIFICATE_PATH="/path/to/certificate.pem"exportARM_TENANT_ID="your-tenant-id"
az login --service-principal -u"$ARM_CLIENT_ID" --certificate-path "$ARM_CERTIFICATE_PATH"--tenant"$ARM_TENANT_ID"# Secret-based authentication (use only when certificates aren't feasible)exportARM_CLIENT_ID="your-client-id"exportARM_CLIENT_SECRET="your-client-secret"exportARM_TENANT_ID="your-tenant-id"
az login --service-principal -u"$ARM_CLIENT_ID"-p"$ARM_CLIENT_SECRET"--tenant"$ARM_TENANT_ID"Altyapı:
> Hassas değerleri Azure Key Vault’ta saklayın ve programatik olarak alın. Gelişmiş güvenlik için sırlar yerine sertifikaları tercih edin.
CI/CD boru hattı entegrasyonu
Azure DevOps YAML boru hattı örneği:
steps:-task: AzureCLI@2
displayName:'Deploy Infrastructure'inputs:azureSubscription:'Your-Service-Connection'scriptType:'bash'scriptLocation:'inlineScript'inlineScript:|
set -euo pipefail
echo "Creating resource group"
az group create --name $(resourceGroup) --location $(location)Altyapı:
Bu boru hattı yapılandırması, Azure CLI komutlarını otomatik dağıtım boru hatlarına entegre eder.
Altyapı dağıtımını otomatikleştirmek için Azure CLI komutlarını çalıştıran başarılı bir Azure DevOps boru hattı yürütmesi.
Azure CLI Yaygın Sorunlar ve Sorun Giderme
Deneyimli uygulayıcılar bile kimlik doğrulama hataları, sürüm uyuşmazlıkları ve üretkenliği sekteye uğratabilecek yapılandırma çakışmalarıyla karşılaşır. Yaygın hata kalıplarını ve çözüm stratejilerini anlamak, bu engelleri iş akışınızı durduran problemlerden, hızlı ve güvenle çözebileceğiniz küçük aksaklıklara dönüştürür.
Kimlik doğrulama hataları
Sorun: az login --service-principal kullanan otomasyon betiklerim, Eylül 2025’te kimlik doğrulama hatalarıyla aniden çalışmaz oldu.
Çözüm: Bu, zorunlu MFA uygulamasının doğrudan bir sonucudur. Parola tabanlı hizmet sorumluları artık eski ve daha az güvenli bir yöntem kabul ediliyor. Otomasyonunuzu uyumlu bir kalıba taşımalısınız. Yukarıdaki Eylül 2025 MFA Zorunluluğunu Yönetme bölümümüze bakın; özellikle İş Yükü Kimliği Federasyonu veya Sertifika Tabanlı Kimlik Doğrulama uygulamaya odaklanın.
Sorun: "Lütfen hesabı ayarlamak için 'az login' çalıştırın" hataları, başarılı oturum açmadan sonra da devam ediyor.
Çözüm: Kimlik doğrulama önbelleğini temizleyin ve yeniden kimlik doğrulaması yapın:
Bir hata ayıklama oturumu, kimlik doğrulama gizemlerinde Azure CLI’nin --debug bayrağının değerini öğretti. Rastgele görünen oturum açma hatalarının, belirteç değişimini engelleyen kurumsal proxy sorunlarından kaynaklandığı ortaya çıktı. Hata ayıklama çıktısı, engellenen tam HTTP uç noktalarını gösterdi ve saatler sürecek tahmini kurtaran hızlı bir çözüme yol açtı.
az account clear
az login --debug
az account list --output tableAltyapı:
Bu komutlar, önbelleğe alınmış kimlik bilgilerini temizler ve ağ, sertifika veya ilke sorunlarını ortaya çıkaran ayrıntılı kimlik doğrulama hata ayıklaması sağlar.
Komut bulunamadı sorunları
Sorun: Kurulumdan sonra "az: command not found".
Çözüm: Bu klasik hata, deneyimli geliştiricileri bile gafil avlayabiliyor. Yeni bir Linux VM’de “komut bulunamadı” hatasıyla bir saat kaybettiğimi, kurulumdan sonra source ~/.bashrc çalıştırmayı unuttuğumu fark edince anlamıştım. Ustalara bile olan basit bir hata.
which az
echo'export PATH=$PATH:/usr/local/bin'>> ~/.bashrc
source ~/.bashrcAltyapı:
Bu komutlar, Azure CLI kurulumunu bulur ve kabuk PATH yapılandırmasını günceller.
Sürüm uyumluluğu
Sorun: Betikler "argument not recognized" hatalarıyla başarısız oluyor.
Bu komut, mevcut sürümü görüntüler. Platforma özgü güncelleme komutları için kurulum bölümüne bakın.
Yeni özelliklere ve güvenlik yamalarına erişmek için Azure CLI’yi güncel tutmayı unutmayın.
İleri Seviye Verimlilik İpuçları
Ustalık, temel komut yürütmenin ötesine geçerek, büyük ölçekli Azure ortamlarını yönetirken verimlilik ve hassasiyetin operasyonel başarıyı doğrudan etkilediği durumlarda zorunlu hale gelen gelişmiş sorgu teknikleri, yapılandırma optimizasyonu ve performans iyileştirmelerini kapsar.
JMESPath sorgu ustalığı
Gelişmiş sorgulama, veri çıkarımını dönüştürür:
az vm list --query"[?tags.Environment=='production' && tags.Team=='backend'].{Name:name, Location:location, Size:hardwareProfile.vmSize}"Altyapı:
Bu gelişmiş sorgu, birden çok etiket koşuluna göre VM’leri filtreler ve belirli özellikleri çıkarır.
Tek bir JMESPath sorgusuyla bunaltıcı JSON çıktısını temiz, işe yarar verilere dönüştürün.
Yapılandırma yönetimi
Tekrarlı işlemlerde zaman kazandıran kalıcı ayarlar aracılığıyla CLI davranışını özelleştirin:
az configure --defaultsoutput=table location=eastus group=myDefaultRG
az configure --list-defaultsAltyapı:
Bu komutlar, yaygın parametreler için varsayılan değerler belirler ve mevcut yapılandırmayı görüntüler. Bu ayarlar ~/.azure/config içinde saklanır ve yalnızca kullanıcı profilinize uygulanır; aynı sistemdeki diğer kullanıcıları etkilemeden Azure CLI deneyiminizi kişiselleştirmek için idealdir.
Performans optimizasyonu
Büyük ölçekli işlemler için iyileştirmeler:
az vm list --query"[].name"--output tsv |xargs-I{}-P10 az vm show --name{} --resource-group myRG
az vm start --name myVM --resource-group myRG --no-waitAltyapı:
Bu komutlar, performansı artırmak için işlemleri paralel ve eşzamanlı olmayan biçimde yürütür.
Sonuç
Azure CLI’de ustalaşmak, bulut yönetimini yalınlaştırır; kaynakları verimli şekilde kontrol etmenizi ve iş akışlarını güvenle otomatikleştirmenizi sağlar. Etkileşimli mod veya Azure Cloud Shell ile başlayın, ardından tekrarlanabilir dağıtımlar için kademeli olarak betiklemeye yönelin.
Mutlu otomasyonlar; daha akıllı ve daha hızlı Azure iş akışlarına!
Install Azure CLI FAQs
Kurumsal ağlarda Azure CLI kurulumu sırasında SSL sertifika hatalarını nasıl çözerim?⌄
Kurumsal güvenlik duvarları sıklıkla SSL bağlantılarını keser. Paket yöneticinizi kurumsal sertifikaları kullanacak şekilde yapılandırın veya indirilen paketlerle çevrimdışı yöntemleri kullanarak kurulum yapın.
Windows’ta yönetici ayrıcalıkları olmadan Azure CLI’yi kurabilir miyim?⌄
Evet, kullanıcı dizinine açılan ZIP paket dağıtımını kullanın. Çıkardığınız yolu kullanıcı PATH ortam değişkeninize ekleyin.
Azure CLI kurulumu mevcut Python ortamımı bozarsa ne yapmalıyım?⌄
Azure CLI kendi Python çalışma zamanını içerir. Çakışmalar yaşarsanız Windows’ta MSI yükleyiciyle kaldırıp yeniden kurun ya da diğer platformlarda bağımlılıkları doğru yöneten paket yöneticilerini kullanın.
Azure CLI betikleri Windows PowerShell ve Linux bash’te aynı şekilde çalışır mı?⌄
Azure CLI komutları aynıdır, ancak değişken sözdizimi, yol ayraçları ve satır devamı karakterleri gibi kabuğa özgü özellikler farklıdır. En yüksek taşınabilirlik için Python gibi çapraz platform betik dillerini kullanın.
Betikleri Windows ve Unix sistemleri arasında paylaşırken yol farklarını nasıl ele alırım?⌄
Azure CLI parametrelerinde eğik çizgi kullanın (Azure bunları evrensel olarak kabul eder) ve sisteme özgü yolları ortam değişkenlerinde veya yapılandırma dosyalarında saklayın.
Veri hatları, bulut ve YZ araçları üzerinde çalışan; aynı zamanda DataCamp ve gelişmekte olan geliştiriciler için pratik, yüksek etkili eğiticiler yazan bir veri mühendisi ve topluluk inşacısıyım.
Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Bulut altyapısını yönetmek, eskiden web portallarında sayısız tıklama ve bitmeyen menüler arasında gezinmek demekti. Aylarca süren manuel süreç sıkıntısından sonra Azure CLI ile tanışmam, bulut kaynağı yönetimi yaklaşımımı tamamen değiştirdi. Bu sadece bir kurulum rehberi değil; Microsoft’un Azure yönetimi için en güçlü çapraz platform aracını ustalıkla kullanmanız için bir yol haritası.
> Kurulumsuz, anında erişim için Azure Cloud Shell ile başlayın.
Azure CLI, tüm yaygın işletim sistemlerinde Azure kaynaklarını yönetmek için tutarlı ve güçlü bir deneyim sunar.
Azure CLI nedir?
Azure CLI, bulut kaynaklarınızı kontrol etmenin en doğrudan yoludur. Bir web tarayıcısının kısıtlarını, doğrudan temel Azure API’leriyle konuşan güçlü ve betiklenebilir bir arayüzle değiştirir. Bu sayede, işletim sisteminden bağımsız olarak tutarlı ve güvenilir komutlarla ölçekli otomasyon gücü elde edersiniz.
CLI’da sevdiğim şey, öğrenirken servisleri keşfetmeme, gerçek bir şey inşa etmeye hazır olduğumda da aynı adımları bir betiğe dökmeme izin vermesi. Sır, komutları ezberlemek değil—
az findveya--helpbayraklarıyla yardım istemeyi iyi bilmek.Azure CLI, Azure Resource Manager modelini kullanır ve birleşik bir komut yapısı üzerinden tüm Azure servislerine tutarlı erişim sağlar. Bu mimari karar, sanal makineleri, depolama hesaplarını veya karmaşık ağ yapılandırmalarını yönetiyor olun, Azure Portal’ı çalıştıran aynı temel API ile çalıştığınız anlamına gelir.
Tüm Azure CLI komutları, Azure Portal’ı da çalıştıran aynı motor olan Azure Resource Manager (ARM) üzerinden birleşik hale getirilir.
Azure CLI ve Azure Portal karşılaştırması
Her iki arayüz üzerinden yüzlerce Azure dağıtımını yönettikten sonra, CLI aşağıdaki konularda vazgeçilmez hale geliyor:
Azure CLI Nasıl Kurulur
İlk adım Azure CLI’yi kurmaktır; ancak birçok kişinin bu noktada takıldığını gördüm. Kişisel bir Mac için doğru yöntem, büyük bir şirketin kilitli Windows makineleri için gerekenden tamamen farklıdır. Seçenekleri birlikte inceleyelim; böylece ilk seferde doğru kurulum yapar, uyumsuz sürümlerle veya hayal kırıklığına uğramış BT yöneticileriyle uğraşmaktan kaçınırsınız.
Farklı platformlarda kurulum
Windows Kurulum Yöntemleri
Windows kullanıcılarının, farklı kurumsal gereksinimlere uygun birden fazla kurulum yolu vardır:
WinGet Paket Yöneticisi (Bireysel geliştiriciler için önerilir):
Yukarıdaki komut, Windows’un modern paket yöneticisini otomatik güncellemeler ve temiz kurulumlar için kullanır.
MSI Yükleyici (Kurumsal dağıtımlar için en iyisi):
En son MSI’ı resmi Azure CLI indirme sayfasından indirip yükleme sihirbazını izleyin. Bu yöntem, kurulum dizinleri ve sistem entegrasyonu üzerinde en fazla kontrolü sağlar.
PowerShell ile MSI Kurulumu (Otomatik kurulum betikleri için ideal):
Bu PowerShell betiği MSI paketini indirir, kurar ve otomatik olarak temizler.
> Geliştirme makineleri için WinGet’i, üretim dağıtımları için MSI yükleyicilerini kullanın
Linux ve WSL Kurulumu
Linux dağıtımları farklı paket yöneticileri gerektirir; kendi dağıtımınızı bilmek yaygın kurulum hatalarını önler:
Ubuntu/Debian (apt):
Bu kurulum betiği, Microsoft’un paket deposunu otomatik olarak yapılandırır ve Azure CLI’yi kurar.
Red Hat Enterprise Linux/CentOS Stream (dnf):
Bu komutlar, kurulumdan önce Microsoft’un imzalama anahtarını içe aktarır ve paket deposunu yapılandırır.
Evrensel Kurulum Betiği:
Bu betik dağıtımınızı algılar ve uygun paket yöneticisini otomatik olarak kullanır.
macOS Kurulumu
macOS kullanıcıları Homebrew paket yönetiminden faydalanır:
Bu komut, Homebrew paket listesini günceller ve en son Azure CLI sürümünü kurar.
Homebrew olmayan sistemler için:
Docker Konteyner Yaklaşımı
Azure CLI’yi Docker konteynerlerinde çalıştırmak tam yalıtım sağlar:
Bu komut, Azure CLI önceden kurulu ve yapılandırılmış etkileşimli bir konteyner başlatır.
Azure Cloud Shell: Sıfır Kurulum Seçeneği
Azure Cloud Shell, herhangi bir yerel kurulum olmadan anında CLI erişimi sağlar. Bu tarayıcı tabanlı ortam, en güncel Azure CLI sürümüyle önceden yapılandırılmış olarak gelir ve terraform, kubectl ve çeşitli metin düzenleyiciler gibi ek araçları içerir.
Sürümleri ve Güncellemeleri Kontrol Etme
Kurulum tamamlandığında, ayrıntılı sürüm bilgileriyle yapınızı doğrulayın:
Bu komut, Azure CLI sürümünü, çekirdek bileşenleri ve yüklü uzantıları gösteren ayrıntılı bir JSON döndürür.
Bu çıktıyı anlamak, uyumluluk sorunlarını gidermeye ve betiklerinizin uygun CLI sürümlerini hedeflediğinden emin olmaya yardımcı olur. Microsoft, kritik değişiklikler ve yeni özellikleri belgeleyen ayrıntılı sürüm notları yayımlar.
> Azure CLI sürümlerini yükseltirken uzantı uyumluluğunu mutlaka kontrol edin.
Azure CLI ile Kimlik Doğrulama
Kimlik doğrulama, Azure CLI deneyiminizin güvenlik temelini oluşturur ve yakın zamandaki politika değişiklikleri, kuruluşların kimlik bilgisi yönetimine yaklaşımını kökten yeniden şekillendirdi. Modern kimlik doğrulama stratejileri, Microsoft tüm Azure hizmetleri genelinde daha güçlü standartlar uygularken, güvenlik gereksinimleri ile operasyonel verimliliği dengede tutmalıdır.
Kimlik doğrulama yöntemleri
Azure Cloud Shell otomatik oturum açma
Cloud Shell, mevcut Azure Portal oturumunuzu kullanarak otomatik kimlik doğrulaması yapar. Bu sorunsuz entegrasyon, etkileşimli kullanım senaryolarında kimlik doğrulama karmaşıklığını ortadan kaldırır; öğrenme ve ad-hoc yönetim görevleri için idealdir.
Etkileşimli oturum açma
Standart kimlik doğrulama yaklaşımı cihaz kodu akışını kullanır:
Bu komut, Microsoft Entra ID kimlik doğrulaması ve otomatik MFA işleme için varsayılan tarayıcınızı açar.
Ekransız ortamlar için:
Bu komut, internet bağlantısı olan herhangi bir cihazdan https://microsoft.com/devicelogin adresinde kimlik doğrulaması için bir cihaz kodu görüntüler.
Yönetilen kimlik ile kimlik doğrulama
Azure kaynakları yönetilen kimlikleri kullanarak kimlik doğrular:
Bu yöntem, Azure içinde çalışan uygulamalar için kimlik bilgisi yönetim yükünü ortadan kaldırır.
Hizmet sorumlusu ile kimlik doğrulama
Eski Kimlik Bilgisi Tabanlı Yaklaşım (Artık iş yükü kimliği federasyonu olmadan uyumsuz):
Bu parola tabanlı kimlik doğrulama yöntemi, Eylül 2025 MFA zorunluluğundan doğrudan etkilenmiştir. Bu yöntemi kullanan betikler büyük olasılıkla başarısız olacaktır ve güncellenmelidir.
Bu komut, otomatikleştirilmiş senaryolar için uygulama kimlik bilgilerini kullanarak kimlik doğrular.
Ekim 2025 MFA Zorunluluğunu Yönetme
1 Ekim 2025’ten itibaren Microsoft’un zorunlu çok faktörlü kimlik doğrulama (MFA) uygulaması etkin olacaktır. Parola tabanlı hizmet sorumluları kullanıyorsanız, bu tarihten sonra otomasyon betikleriniz başarısız olacaktır. Bu, yıllardır Azure CLI otomasyonundaki en kritik değişikliktir.
Bu güvenlik güncellemesi, kuruluşların Azure CLI otomasyonuna yaklaşımını temelden değiştirir. Hizmet sorumlusu kimlik doğrulama kalıplarını etkiler ve birçok otomasyon senaryosu için iş yükü kimliklerine geçiş gerektirir.
> Otomasyonunuz risk altında. 1 Ekim’de hizmet kesintisini önlemek için iş yükü kimliği federasyonuna geçişe öncelik verin.
Yeni MFA gereksinimlerine uyum sağlamak ve başarısız otomasyonu düzeltmek için dört adımlı eylem planınız.
Abonelikleri yönetme
Üretim ortamları genellikle açık abonelik yönetimi gerektirir:
Bu komutlar, mevcut abonelikleri listeler ve sonraki komutlar için varsayılanı ayarlar.
Erişim belirteçleri
Gelişmiş senaryolar, doğrudan erişim belirteci işlemeyi gerektirir:
Bu komut, programatik kullanım için son kullanma ayrıntılarıyla birlikte erişim belirteçlerini döndürür.
Azure CLI Komutlarına Başlangıç
Komut hâkimiyeti, CLI’nin organizasyon felsefesini ve keşif mekanizmalarını anlamakla başlar. Yüzlerce komutu ezberlemek yerine, anahtar nokta; CLI’nin akıllı yardım sistemi aracılığıyla Azure’un geniş hizmet ekosisteminde verimli biçimde gezinmeyi öğrenmektir.
Komut bulma
Azure CLI’nın keşfedilebilirlik özellikleri öğrenme eğrisini önemli ölçüde azaltır:
Yapay zekâ destekli arama, kullanım örnekleriyle ilgili komutları bulur.
Belirli bir komut ayrıntısı için:
Bu yardım komutu, anlık başvuru için parametreleri, alt grupları ve pratik örnekleri görüntüler.
İhtiyacınız olan tam komutu keşfetmek ve yapay zekâ destekli öneriler almak için "az find" kullanın.
Komut yapısı
Azure CLI tutarlı bir hiyerarşik yapı izler:
az <group> <subgroup> <command> [parameters]Sanal makine oluşturma örneği:
Bu komut, belirtilen yapılandırma parametreleriyle bir sanal makine oluşturur.
Genel argümanlar
Birçok argüman tüm komutlarda çalışır:
-
--outputveya-o: Çıktı biçimini kontrol eder (json, table, yaml, jsonc, tsv)-
--query: JMESPath sözdizimi kullanarak sonuçları filtreler-
--verbose: Ayrıntılı yürütme bilgisi sağlar-
--debug: Tam HTTP istek/yanıt ayrıntılarını gösterir> Okunabilir sonuçlar için --output table, betik işlemesi için --output json kullanın
Etkileşimli Mod ve Verimlilik Özellikleri
Etkileşimli mod, akıllı yardım ve bağlamsal yönlendirme ile komut satırı deneyimini dönüştürür. Bu yaklaşım, yeni komutları öğrenmek ile onları güvenle yürütmek arasındaki boşluğu kapatarak, gerçek zamanlı doğrulama ve öneriler sunar; bu da CLI ustalığının hem keşif hem de yürütme aşamalarını hızlandırır.
Azure CLI etkileşimli mod
Etkileşimli mod gelişmiş bir komut satırı deneyimi sağlar:
Bu komut, komut tamamlama, parametre ipuçları ve bağlamsal yardımla etkileşimli modu başlatır.
Azure CLI’nin etkileşimli modu, karmaşık komutları yönlendirmeli bir deneyime dönüştüren akıllı öneriler sunar.
Sekme tamamlama
Kabuk entegrasyonu ile artırılmış üretkenlik:
Bash:
Bu komut, Bash’te Azure CLI komutları için sekme tamamlamayı etkinleştirir.
PowerShell:
Bu PowerShell yapılandırması, Azure CLI komutları için sekme tamamlamayı etkinleştirir.
VS Code entegrasyonu
Visual Studio Code için Azure CLI uzantısı, sözdizimi vurgulama, IntelliSense ve entegre terminal desteği sağlar.
Kaynak Yönetimi için Azure CLI Kullanımı
CLI’yi kurup yapılandırdığınıza göre artık işe koyulma zamanı. Bu bölümde teoriden pratiğe geçiyor ve gerçek Azure kaynaklarını yönetmeye başlıyoruz. Tekil komutların ötesine geçip, bulut altyapınızı inşa etmek, bağlamak ve yönetmek için her gün kullanacağınız kalıplara bakacağız.
Kaynak Grubu İşlemleri
Kaynak grupları, Azure kaynakları için mantıksal kaplar görevi görür:
Bu komutlar, eşzamanlı olmayan işlemeyle kaynak grupları oluşturur, listeler ve siler.
Yaygın kaynak oluşturma
Sanal Makine Oluşturma:
Bu komut, SSH anahtar kimlik doğrulamasıyla bir Linux sanal makinesi oluşturur.
Depolama Hesabı Oluşturma:
Bu komut, yerel yedeklemeli depolama ile genel amaçlı v2 bir depolama hesabı oluşturur.
Sorgu ve Çıktı Biçimlendirme
JMESPath sorguları, komut çıktılarını filtreler ve dönüştürür:
Bu JMESPath sorguları, belirli alanları çıkarır ve sonuçları ölçütlere göre filtreler.
> Karmaşık JSON yanıtlardan tam olarak ihtiyacınız olan veriyi çıkarmak için JMESPath sorgularında ustalaşın.
Azure CLI ile Otomasyon
Otomasyon, tekil komutları, manuel işlemlerin ötesine ölçeklenen tekrarlanabilir ve güvenilir iş akışlarına dönüştürür. Asıl sihir, CLI komutlarını tek seferlik görevler olarak görmekten vazgeçip, kaynak sağlama’dan felaket kurtarmaya kadar her şeyi yöneten sistemler inşa etmeye başladığınızda gerçekleşir.
Haftalık geliştirme ortamı yenilememizi ilk kez otomatikleştirdiğimde, eskiden üç saatlik tıklama ve bekleme işi; kahve alırken çalıştırabildiğim 15 dakikalık bir betiğe dönüştü. Bu otomasyon betiği, ekibimize her ay onlarca saat kazandırdı ve manuel süreçlere sızan kaçınılmaz insan hatalarını ortadan kaldırdı.
> Otomasyona küçük başlayın—önce en tekrarlı günlük görevlerinizi otomatikleştirin, ardından tam altyapı iş akışlarına genişleyin
Betik yazma en iyi uygulamaları
Hata yönetimi ve günlüklemeye sahip sağlam betik şablonu:
Bu betik şablonu kapsamlı hata yönetimi, günlükleme ve temizleme mekanizmalarını uygular.
Otomasyon için güvenlik
Asla kimlik bilgilerini betiklere gömmeyin. Mümkün olduğunda sertifika tabanlı kimlik doğrulama kullanın:
> Hassas değerleri Azure Key Vault’ta saklayın ve programatik olarak alın. Gelişmiş güvenlik için sırlar yerine sertifikaları tercih edin.
CI/CD boru hattı entegrasyonu
Azure DevOps YAML boru hattı örneği:
Bu boru hattı yapılandırması, Azure CLI komutlarını otomatik dağıtım boru hatlarına entegre eder.
Altyapı dağıtımını otomatikleştirmek için Azure CLI komutlarını çalıştıran başarılı bir Azure DevOps boru hattı yürütmesi.
Azure CLI Yaygın Sorunlar ve Sorun Giderme
Deneyimli uygulayıcılar bile kimlik doğrulama hataları, sürüm uyuşmazlıkları ve üretkenliği sekteye uğratabilecek yapılandırma çakışmalarıyla karşılaşır. Yaygın hata kalıplarını ve çözüm stratejilerini anlamak, bu engelleri iş akışınızı durduran problemlerden, hızlı ve güvenle çözebileceğiniz küçük aksaklıklara dönüştürür.
Kimlik doğrulama hataları
Sorun:
az login --service-principalkullanan otomasyon betiklerim, Eylül 2025’te kimlik doğrulama hatalarıyla aniden çalışmaz oldu.Çözüm: Bu, zorunlu MFA uygulamasının doğrudan bir sonucudur. Parola tabanlı hizmet sorumluları artık eski ve daha az güvenli bir yöntem kabul ediliyor. Otomasyonunuzu uyumlu bir kalıba taşımalısınız. Yukarıdaki Eylül 2025 MFA Zorunluluğunu Yönetme bölümümüze bakın; özellikle İş Yükü Kimliği Federasyonu veya Sertifika Tabanlı Kimlik Doğrulama uygulamaya odaklanın.
Sorun: "Lütfen hesabı ayarlamak için 'az login' çalıştırın" hataları, başarılı oturum açmadan sonra da devam ediyor.
Çözüm: Kimlik doğrulama önbelleğini temizleyin ve yeniden kimlik doğrulaması yapın:
Bir hata ayıklama oturumu, kimlik doğrulama gizemlerinde Azure CLI’nin
--debugbayrağının değerini öğretti. Rastgele görünen oturum açma hatalarının, belirteç değişimini engelleyen kurumsal proxy sorunlarından kaynaklandığı ortaya çıktı. Hata ayıklama çıktısı, engellenen tam HTTP uç noktalarını gösterdi ve saatler sürecek tahmini kurtaran hızlı bir çözüme yol açtı.Bu komutlar, önbelleğe alınmış kimlik bilgilerini temizler ve ağ, sertifika veya ilke sorunlarını ortaya çıkaran ayrıntılı kimlik doğrulama hata ayıklaması sağlar.
Komut bulunamadı sorunları
Sorun: Kurulumdan sonra "az: command not found".
Çözüm: Bu klasik hata, deneyimli geliştiricileri bile gafil avlayabiliyor. Yeni bir Linux VM’de “komut bulunamadı” hatasıyla bir saat kaybettiğimi, kurulumdan sonra
source ~/.bashrcçalıştırmayı unuttuğumu fark edince anlamıştım. Ustalara bile olan basit bir hata.Bu komutlar, Azure CLI kurulumunu bulur ve kabuk PATH yapılandırmasını günceller.
Sürüm uyumluluğu
Sorun: Betikler "argument not recognized" hatalarıyla başarısız oluyor.
Çözüm: CLI sürüm uyumluluğunu kontrol edin ve sürüm kontrolü bölümümüzde anlatıldığı gibi güncelleyin:
Bu komut, mevcut sürümü görüntüler. Platforma özgü güncelleme komutları için kurulum bölümüne bakın.
Yeni özelliklere ve güvenlik yamalarına erişmek için Azure CLI’yi güncel tutmayı unutmayın.
İleri Seviye Verimlilik İpuçları
Ustalık, temel komut yürütmenin ötesine geçerek, büyük ölçekli Azure ortamlarını yönetirken verimlilik ve hassasiyetin operasyonel başarıyı doğrudan etkilediği durumlarda zorunlu hale gelen gelişmiş sorgu teknikleri, yapılandırma optimizasyonu ve performans iyileştirmelerini kapsar.
JMESPath sorgu ustalığı
Gelişmiş sorgulama, veri çıkarımını dönüştürür:
Bu gelişmiş sorgu, birden çok etiket koşuluna göre VM’leri filtreler ve belirli özellikleri çıkarır.
Tek bir JMESPath sorgusuyla bunaltıcı JSON çıktısını temiz, işe yarar verilere dönüştürün.
Yapılandırma yönetimi
Tekrarlı işlemlerde zaman kazandıran kalıcı ayarlar aracılığıyla CLI davranışını özelleştirin:
Bu komutlar, yaygın parametreler için varsayılan değerler belirler ve mevcut yapılandırmayı görüntüler. Bu ayarlar
~/.azure/configiçinde saklanır ve yalnızca kullanıcı profilinize uygulanır; aynı sistemdeki diğer kullanıcıları etkilemeden Azure CLI deneyiminizi kişiselleştirmek için idealdir.Performans optimizasyonu
Büyük ölçekli işlemler için iyileştirmeler:
Bu komutlar, performansı artırmak için işlemleri paralel ve eşzamanlı olmayan biçimde yürütür.
Sonuç
Azure CLI’de ustalaşmak, bulut yönetimini yalınlaştırır; kaynakları verimli şekilde kontrol etmenizi ve iş akışlarını güvenle otomatikleştirmenizi sağlar. Etkileşimli mod veya Azure Cloud Shell ile başlayın, ardından tekrarlanabilir dağıtımlar için kademeli olarak betiklemeye yönelin.
Becerilerinizi geliştirmek için Understanding Microsoft Azure veya Microsoft Azure Fundamentals (AZ-900) Track içeriklerine göz atın
Mutlu otomasyonlar; daha akıllı ve daha hızlı Azure iş akışlarına!