Azure Container Apps Sandboxes genel bakış

Azure Container Apps Korumalı Alanları, yerleşik askıya alma ve devam ettirme özelliklerine sahip hızlı, güvenli, geçici işlem ortamları sağlar. Korumalı alanlar, Container Apps'te uygulamalar, işler ve dinamik oturumların yanı sıra birinci sınıf bir kaynak türüdür (Microsoft.App/SandboxGroups).

Important

Korumalı alanları yönetmek ve oluşturmak için Azure’da Container Apps SandboxGroup Veri Sahibi rolüne ihtiyacınız vardır. Bu rolü korumalı alanları oluşturan ve yöneten tüm kullanıcılara atayın.

Sandbox ortamları oluşturun ve yönetin

Korumalı alanları Sandboxes portalında veya Azure Container Apps CLI veya SDK’sını kullanarak programlı bir şekilde oluşturabilir ve yönetebilirsiniz.

Container Apps Korumalı Alanlarının temel özellikleri

  • Bir saniyeden kısa sürede başlatma: Korumalı alanlar, neredeyse anında kullanıma sunulmaları için önceden hazırlanmış havuzlardan hazırlanır.

  • Güçlü yalıtım: Her korumalı alan, güvenilir olmayan kodun güvenle çalıştırılabilmesi için kendi güvenli sınırı içinde çalışır.

  • Sıfıra ölçeklendirin: Sandboxlar durdurulduğunda CPU veya bellek ücreti ödemezsiniz.

  • Ölçeklendirme: Hizmet, talep üzerine binlerce eşzamanlı sandbox'a kadar genişlemektedir.

  • OCI konteyner imgesi desteği: Dahil edilen kamu imajını kullanın veya kendi konteyner görsellerinizi sandbox kök dosya sistemleri olarak getirin.

  • Askıya alma ve sürdürme: Bellek ve disk dâhil tüm durumun anlık görüntüsünü alın ve daha sonra bir saniyeden kısa geri yükleme süreleriyle sürdürün.

  • Yaşam döngüsü kontrolü: Durum anlık görüntüleri, kalıcı depolama ve ağ politikaları (hem çıkış hem giriş) dahil olmak üzere tüm sandbox yaşam döngüsünü yönetebilirsiniz.

Korumalı alanların ne zaman kullanılacağı

Açık yaşam döngüsü kontrolü, kalıcı durum veya SDK'lar üzerinden programlanabilir erişime sahip izole hesaplama ortamlarına ihtiyacınız olduğunda sandbox kullanın.

Scenario Korumalı alanlar kullanılsın mı? Neden?
Durum koruması ile yapay zeka kodu yürütme Evet Görevler arasında askıya alın, tüm bağlam korunarak devam edin
Geliştirme ortamları Evet Oturumlar arasında durumu koruyan, isteğe bağlı ve askıya alınabilen ortamlar
Ajan iş akışları Evet Yapay zeka aracılarına görev sınırları boyunca kalıcı, yalıtılmış çalışma alanları verme
Etkileşimli kullanıcı oturumları Evet Her kullanıcı kendi yalıtılmış işlem ortamına sahip olur
Çok kiracılı işlem güvenliğini sağlama Evet Birden fazla kiracıya ait güvenilmeyen iş yüklerini çalıştırmak için güçlü yalıtım
Ani iş yükleri Evet İhtiyaç duyduğunuzda sandbox sayısını sıfırdan binlere ölçeklendirin
CI/CD boru hatları Evet Kullanılmadığında sıfıra kadar ölçeklenen kısa ömürlü derleme ve test ortamları

Doğru Container Apps işlem seçeneğini belirleyin

İş yükünüzle eşleşen Container Apps işlem türünü seçmek için aşağıdaki tabloyu kullanın.

İşlem türü En iyi kullanım alanları Lifecycle State
Apps Uzun süre çalışan hizmetler, API'ler, web uygulamaları Devamlı Durum bilgisi olmayan (dış durum depoları)
İşler Çalıştırma-tamamlama görevleri, toplu işlem Başlat → çalıştır → tamamla Durumsuz
Dinamik oturumlar Yönetilen kod yürütme, LLM tarafından oluşturulan betikler Oturum havuzu tarafından yönetiliyor Geçici
Deneme Alanları Yaşam döngüsü denetimli programlanabilir yalıtılmış bilgi işlem Şunları yönetirsiniz: oluşturma, askıya alma, sürdürme, silme Durum bilgisi içeren (anlık görüntüler, disk birimleri)

Temel kavramlar

Prerequisites

Korumalı alanlar oluşturmak veya yönetmek için Azure'da Container Apps SandboxGroup Data Owner rol atamasına sahip olmanız gerekir. Bu rol olmadan korumalı alan işlemleri gerçekleştiremezsiniz. Bu rolü Azure portalında veya Azure CLI kullanarak istenen kapsamda (abonelik veya Azure Kaynak Grubu Azure) atayın.

Aşağıdaki komutu çalıştırmadan önce, <> ile çevrelenen yer tutucuları kendi değerlerinizle değiştirin.

az role assignment create \
  --assignee "<USER_EMAIL_OR_OBJECT_ID>" \
  --role "Container Apps SandboxGroup Data Owner" \
  --scope "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP_NAME>"

Korumalı alan grupları

Korumalı alan grubu, korumalı alanlar için en üst düzey yönetim sınırıdır. Kaynak grubunda ve bölgede oluşturduğunuz bir Azure Resource Manager (ARM) kaynağıdır. Tüm korumalı alanlar, disk görüntüleri, anlık görüntüler, depolama birimleri ve gizli bilgiler bir korumalı alan grubuyla sınırlıdır.

Korumalı alanları uygulamaya, takıma veya ortama göre düzenlemek için korumalı alan gruplarını kullanın.

Korumalı Alanlar

Korumalı alan, bir korumalı alan grubu içindeki tek bir yalıtılmış işlem örneğidir. Her korumalı alan, bir disk görüntüsü veya anlık görüntü üzerinde çalışır ve kendine ait CPU, bellek, disk ve ağ yalıtımına sahiptir.

Komutları çalıştırarak, dosyaları yöneterek, portları kullanıma açarak ve yaşam döngüsü durumunu kontrol ederek korumalı alanlarla etkileşim kurarsınız.

Disk görüntüleri

Disk görüntüleri, korumalı alan kök dosya sistemleri olarak kullanılmak için dönüştürülmüş OCI kapsayıcı görüntüleridir. Genel görüntüleri kullanabilir veya kendi kapsayıcı kayıt defterlerinizden özel görüntüler oluşturabilirsiniz.

Şu kaynaklardan disk görüntüleri oluşturabilirsiniz:

  • Herkese açık görüntüler: Tüm korumalı alan grupları için kullanılabilen önceden oluşturulmuş görüntüler.
  • Kapsayıcı kayıt defteri görüntüleri: İsteğe bağlı kimlik doğrulamasıyla genel veya özel kayıt defterlerinden çekme.

Snapshots

Anlık görüntüler, bellek ve disk de dahil olmak üzere çalışan bir korumalı alanın tüm durumunu kaydeder. Anlık görüntüleri kullanarak:

  • Askıya alma ve devam ettirme: Korumalı alanı askıya alın ve tüm işlemler ile veriler korunarak daha sonra geri yükleyin.
  • Kopya ortamları: Bilinen iyi durumdan yeni korumalı alanlar oluşturun.
  • Temelleri paylaşma: Önceden yapılandırılmış ortamları ekibinize dağıtın.

Birimler

Microsoft birimleri yönetir ve korumalı alanlara bağlayabileceğiniz kalıcı depolama alanı sağlar. İki birim türü kullanılabilir:

Hacim türü Description
Azure Blob Verileri birden fazla kum kutusu arasında paylaşın (yüklemeler ve indirmeler, kalıcı artefaktlar). Aynı anda birden fazla korumalı alana bağlanabilir.
Veri Diski Veritabanları, derleme önbellekleri ve büyük çalışma kümeleri için yüksek performanslı birim. Aynı anda yalnızca bir korumalı alana bağlanabilir.

Yaşam döngüsü durumları

Korumalı alanlar aşağıdaki durumlardan geçer:

State Description
Koşmak Aktif olarak çalıştırıyor, CPU ve bellek kullanıyor
Durduruldu Kullanıcı, API veya Yaşam Döngüsü politikası tarafından durduruldu

Sandbox durdurulduğunda, işlem Askıya Alma Modu'na dayalı bir anlık görüntü alır ve korur (aşağıdaki bölüme bakınız).

Her kum kutusu için yaşam döngüsü politikalarını yapılandırabilirsiniz:

  • Otomatik askıya alma: Ayarlanabilir bir zaman aşımından sonra boşta bir sandbox'u askıya alın. Bir sandbox, gelen (ingress) trafiği olmadığında, execute API'si aracılığıyla kod yürütülmediğinde, etkileşimli kabuk oturumları bulunmadığında ve dosya işlemleri yapılmadığında boşta olur.
  • Askıya Alma Modu: Bellek modu (tam snapshot - disk + bellek) veya disk modu (sadece disk koruma) arasında seçim yapın.
  • Otomatik silme: Sandbox durdurulduktan sonra belirtilen sayıda günün sonunda sandbox'ları otomatik olarak silin.

Mimarlık

Korumalı alanlar iki katmanlı bir mimari kullanır:

Uçak Bitiş noktası Operations
ARM kontrol düzlemi management.azure.com Korumalı alan grupları oluşturun, güncelleştirin, silin ve listeleyin. Sanal ağ bağlantılarını yönetme.
Veri düzlemi management.azuredevcompute.io Korumalı alanları, disk görüntülerini, anlık görüntüleri, dosyaları, birimleri, gizli anahtarları, bağlantı noktalarını ve çıkış politikalarını yönetin.

ARM denetim düzlemi aracılığıyla korumalı alan grupları oluşturup yönetirsiniz. Bireysel sandbox’lar ve ilgili kaynakları üzerindeki tüm işlemler, belirli bir sandbox grubuyla sınırlı ACA Sandboxes veri düzlemi üzerinden gerçekleştirilir.

Kaynak kademeleri

Her kum havuzuna, CPU, bellek ve disk tahsisini denetleyen bir kaynak katmanı atanır.

Tier İşlemci (CPU) Memory Disk
XS 0,25 çekirdek 0,5 GB 20 GB
S 0,5 çekirdek 1GB 20 GB
M (varsayılan) 1 çekirdek 2GB 20 GB
L 2 çekirdek 4GB 40 GB depolama alanı
XL 4 çekirdek 8GB 80 GB

Considerations

Korumalı alanlarla çalışırken şu noktaları göz önünde bulundurun:

  • Entra ID gerekli: Yalnızca Microsoft Entra ID hesapları korumalı alanlara erişebilir. Kişisel Microsoft hesapları desteklenmez.
  • Ağ kontrolleri: Alan alanı tabanlı izin veya reddetme kuralları, CIDR tabanlı ağ kuralları ve VNet entegrasyonu dahil olmak üzere, kum havuzlarından giden trafiği kontrol edecek şekilde çıkış politikalarını yapılandırabilirsiniz.

Korumalı alanlar ve dinamik oturumlar

Hem korumalı alanlar hem de dinamik oturumlar Container Apps'te yalıtılmış işlem ortamları sağlar, ancak farklı ihtiyaçlara hizmet eder.

Dinamik oturumlar Korumalı Alanlar
Erişim düzeni Oturum havuzu yönetim uç noktası üzerinden HTTP isteği yönlendirme Tek tek korumalı alanlar üzerinde doğrudan SDK ve CLI denetimi
State Kısa ömürlü, bekleme süresi sonrasında yok edildi Askıya alma, sürdürme ve anlık görüntülerle durum bilgisi
Geliştirici denetimi Havuz, kaynak tahsisini ve yaşam döngüsünü yönetir Korumalı alan yaşam döngüsünü, dosyaları, bağlantı noktalarını ve ilkeleri yönetirsiniz
Görüntü modeli Kod yorumlayıcı (yerleşik) veya özel kapsayıcı Disk görüntüleri (OCI), anlık görüntüler, içerik paketleri
Kalıcı depolama Mevcut değil Depolama Birimleri (Azure Blob, Veri Diski)
İletişim Kurma Temel yalıtım Giden trafik ilkeleri, VNet tümleştirmesi, bağlantı noktası yönetimi
SDK'lar Havuz uç noktası üzerinden REST API Python SDK (azure-containerapps-sandbox) ve REST API

Altyapıyı soyutlayan bir yönetilen yürütme deneyimine ihtiyacınız olduğunda dinamik oturumları seçin. Durum kalıcılığı olan yalıtılmış işlem üzerinde programlanabilir denetime ihtiyacınız olduğunda Korumalı Alanlar'ı seçin.