Přehled Azure Container Apps Sandboxes

Azure Container Apps sandboxy poskytují rychlá, zabezpečená a dočasné výpočetní prostředí s integrovanými možnostmi pozastavení a obnovení. Sandboxy jsou v Container Apps plnohodnotným typem prostředku (Microsoft.App/SandboxGroups) vedle aplikací, úloh a dynamických relací.

Important

Ke správě a vytváření sandboxů potřebujete roli Azure Container Apps SandboxGroup Data Owner. Přiřaďte tuto roli všem uživatelům, kteří vytvářejí a spravují sandboxy.

Vytváření a správa prostředí sandboxu

Sandboxy můžete vytvářet a spravovat na portálu Sandboxes nebo programově pomocí rozhraní příkazového řádku Azure Container Apps cli nebo sady SDK.

Klíčové charakteristiky sandboxů Container Apps

  • Spuštění za méně než sekundu: Sandboxy se poskytují z předem připravených fondů, aby byly k dispozici téměř okamžitě.

  • Silná izolace: Každý sandbox běží ve vlastním zabezpečeném odděleném prostředí, které je bezpečné pro spouštění nedůvěryhodného kódu.

  • Škálujte na nulu: Neplatíte žádné poplatky za CPU ani paměť, když jsou sandboxy zastaveny.

  • Horizontální škálování: Služba se podle potřeby může rychle škálovat až na tisíce souběžných sandboxů.

  • Podpora OCI obrazů kontejnerů: Použijte přiložený veřejný obrázek nebo přineste vlastní obrazy kontejnerů jako kořenové souborové systémy v sandboxu.

  • Pozastavení a obnovení: Vytvořte snímek úplného stavu včetně paměti a disku a později jej obnovte s dobou obnovení kratší než sekunda.

  • Řízení životního cyklu: Můžete spravovat celý sandboxový životní cyklus, včetně stavových snímků, trvalého úložiště a síťových politik (jak výstupní, tak vstupní).

Kdy použít sandboxy

Používejte sandboxy, když potřebujete izolovaná výpočetní prostředí s explicitním řízením životního cyklu, persistentním stavem nebo programovatelným přístupem přes SDK.

Scenario Používáte sandboxy? Proč
Provádění kódu AI s zachováním stavu Ano Pozastavte mezi úkoly, pokračujte se zcela zachovaným kontextem
Vývojová prostředí Ano Prostředí dostupná na vyžádání, která lze pozastavit a která zachovávají stav mezi relacemi
Pracovní postupy agenta Ano Poskytněte agentům AI trvalé izolované pracovní prostory napříč hranicemi mezi úlohami
Interaktivní uživatelské relace Ano Každý uživatel získá vlastní izolované výpočetní prostředí.
Zabezpečení víceklientských výpočetních prostředků Ano Silná izolace pro spouštění nedůvěryhodných úloh z více tenantů
Nárazové úlohy Ano Škálujte od nuly až po tisíce sandboxů podle potřeby
Kanály CI/CD Ano Dočasně vytvářená prostředí pro sestavení a testování, která se při nečinnosti škálují na nulu

Volba správné výpočetní možnosti Container Apps

Pomocí následující tabulky vyberte výpočetní typ Container Apps, který odpovídá vaší úloze.

Typ výpočetních prostředků Nejlepší pro Životní cyklus Kraj
Apps Dlouhotrvající služby, rozhraní API, webové aplikace Nepřetržité Bezstavové (externí úložiště stavu)
Úlohy Úlohy zpracovávané až do dokončení, dávkové zpracování Začít → spustit → dokončit Bezstavové
Dynamické relace Spouštění spravovaného kódu, skripty generované LLM Spravováno pomocí fondu relací Dočasní
Pískovišť Programovatelné izolované výpočty s řízením životního cyklu Spravujete: vytvoření, pozastavení, obnovení, odstranění Stavové (snímky, svazky)

Klíčové koncepty

Předpoklady

Abyste mohli vytvářet nebo spravovat sandboxy, potřebujete přiřazenou roli Azure Container Apps SandboxGroup Data Owner. Bez této role nemůžete provádět operace v sandboxu. Přiřaďte tuto roli v požadovaném oboru (Azure Předplatné nebo skupina prostředků Azure) na portálu Azure nebo pomocí Azure CLI.

Před spuštěním následujícího příkazu nahraďte zástupné symboly ohraničené <> vlastními hodnotami.

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

Skupiny v sandboxu

Skupina sandboxů představuje nejvyšší úroveň správy sandboxů. Jedná se o prostředek Azure Resource Manager (ARM), který vytvoříte ve skupině prostředků a oblasti. Všechny sandboxy, obrazy disků, snímky, svazky a tajné údaje spadají do skupiny sandboxů.

Skupiny sandboxu slouží k uspořádání sandboxů podle aplikací, týmu nebo prostředí.

Pískoviště

Sandbox je individuální izolovaná výpočetní instance v rámci skupiny sandboxu. Každý sandbox běží z image disku nebo snímku a má vlastní procesor, paměť, disk a hranice sítě.

S sandboxy pracujete spuštěním příkazů, správou souborů, vystavením portů a řízením stavu životního cyklu.

Diskové image

Obrazy disků jsou obrazy kontejnerů OCI převedené pro použití jako kořenové souborové systémy sandboxu. Můžete použít veřejné image nebo vytvořit privátní image z vlastních registrů kontejnerů.

Image disků můžete vytvářet z:

  • Veřejné image: Předem připravené image dostupné pro všechny skupiny sandboxu.
  • Image registru kontejnerů: Vyžádání z veřejných nebo privátních registrů s volitelným ověřováním

Snapshots

Snímky zachycují úplný stav spuštěného sandboxu, včetně paměti a disku. Snímky můžete použít k:

  • Pozastavení a obnovení: Pozastavte sandbox a obnovte ho později se všemi procesy a daty zachovanými.
  • Klonovací prostředí: Vytvořte nové sandboxy ze známého dobrého stavu.
  • Sdílení standardních hodnot: Distribuce předkonfigurovaných prostředí napříč týmem

Volumes

Microsoft spravuje svazky a poskytuje trvalé úložiště, které můžete připojit k sandboxům. K dispozici jsou dva typy svazků:

Typ svazku Description
Azure Blob Sdílejte data mezi více sandboxy (nahrávání a stahování, perzistentní artefakty). Připojitelné k několika sandboxům najednou.
Datový disk Vysoce výkonný svazek pro databáze, sestavení mezipamětí a velké pracovní sady Lze připojit pouze k jednomu sandboxu najednou.

Stavy životního cyklu

Sandboxy mají následující stavy:

Kraj Description
Running Aktivní spouštění, využití CPU a paměti
Zastavený Zastaveno uživatelem, API nebo politikou životního cyklu

Když je sandbox zastaven, operace pořídí a uchová snímky založené na režimu pozastavení (viz následující sekce).

Pro každý sandbox můžete nastavit politiky životního cyklu:

  • Automatické pozastavení: Pozastavte nečinný sandbox po nastavitelném timeoutu. Sandbox se stává nečinným, když nemá žádný příchozí (příchozí) provoz, žádné spuštění kódu (přes execute API), žádné interaktivní shell relace a žádné operace se soubory.
  • Režim pozastavení: Vyberte mezi režimem paměti (plný snímek – disk + paměť) nebo režimem disku (pouze zachování disku).
  • Automatické mazání: Automaticky mazání sandboxů po stanoveném počtu dní po zastavení sandboxu.

Architecture

Sandboxy používají dvouúrovňovou architekturu:

Letadlo Endpoint Operations
Řídicí rovina ARM management.azure.com Vytvořte, aktualizujte, odstraňte a vypiste skupiny sandboxu. Správa připojení virtuální sítě
Datová rovina management.azuredevcompute.io Správa sandboxů, imagí disků, snímků, souborů, svazků, tajných kódů, portů a zásad výchozího přenosu dat

Skupiny sandboxu můžete vytvářet a spravovat prostřednictvím řídicí roviny ARM. Všechny operace na jednotlivých sandboxech a jejich zdrojích probíhají přes datovou rovinu ACA sandboxů, zaměřenou na konkrétní skupinu sandboxů.

Úrovně zdrojů

Každému sandboxu je přiřazena úroveň prostředků, která kontroluje přidělení procesoru, paměti a disku.

Vrstvy CPU Memory Disk
XS 0,25 jader 0,5 GB 20 GB
S 0,5 jader 1 GB 20 GB
M (výchozí) 1 jádro 2 GB 20 GB
L 2 jádra 4 GB 40 GB
XL 4 jádra 8 GB 80 GB

Considerations

Při práci se sandboxy mějte na paměti tyto body:

  • Entra ID required: Přístup k sandboxům mají jenom účty Microsoft Entra ID. Osobní účty Microsoft se nepodporují.
  • Síťové řízení: Můžete nastavit odchodové politiky pro řízení odchozího provozu ze sandboxů, včetně doménových pravidel povolení nebo zamítnutí, CIDR síťových pravidel a integrace VNet.

Sandboxy vs. dynamické relace

Sandboxy i dynamické relace poskytují v Container Apps izolovaná výpočetní prostředí, ale slouží k různým účelům.

Dynamické relace Pískoviště
Vzor přístupu Směrování požadavků HTTP prostřednictvím koncového bodu pro správu poolu relací Přímá kontrola sady SDK a rozhraní příkazového řádku nad jednotlivými sandboxy
State Dočasný, zničený po ochladnutí Stavové ukládání s funkcemi pozastavení, obnovení a snímků
Ovládací prvek pro vývojáře Pool spravuje alokaci a životní cyklus Spravujete životní cyklus sandboxu, soubory, porty a zásady.
Model obrázku Interpret kódu (integrovaný) nebo vlastní kontejner Bitové kopie disků (OCI), snímky, balíčky obsahu
Trvalé úložiště Není k dispozici Svazky (Azure Blob, Data Disk)
Síťování Základní izolace Zásady výchozího přenosu dat, integrace virtuální sítě, správa portů
SDK Rozhraní REST API přes koncový bod fondu Python SDK (azure-containerapps-sandbox) a REST API

Vyberte dynamické relace, když potřebujete spravované prostředí spouštění, které abstrahuje infrastrukturu. Zvolte sandboxy, když potřebujete programové řízení izolovaného výpočetního výkonu se zachováním stavu.