Kurz: Vytvoření aplikace kontejneru Azure v Kubernetes s podporou Azure Arc (Preview)

V tomto kurzu vytvoříte aplikaci typu Kontejner do clusteru Kubernetes s podporou Azure Arc (Preview) a naučíte se:

  • Vytvoření aplikace typu kontejner ve službě Azure Arc
  • Zobrazení diagnostiky vaší aplikace

Předpoklady

Než budete pokračovat vytvořením aplikace kontejneru, musíte nejprve nastavit cluster Kubernetes s podporou Azure Arc pro spuštění Azure Container Apps.

Přidání rozšíření Azure CLI

Spusťte prostředí Bash v Azure Cloud Shellu.

Launch Cloud Shell in a new window.

Dále přidejte požadovaná rozšíření Azure CLI.

Upozorňující

Následující příkaz nainstaluje vlastní rozšíření Container Apps, které nejde použít s veřejnou cloudovou službou. Pokud přepnete zpět do veřejného cloudu Azure, musíte rozšíření odinstalovat.

az extension add --upgrade --yes --name customlocation
az extension remove --name containerapp
az extension add -s https://aka.ms/acaarccli/containerapp-latest-py2.py3-none-any.whl --yes

Vytvoření skupiny zdrojů

Vytvořte skupinu prostředků pro služby vytvořené v tomto kurzu.

myResourceGroup="my-container-apps-resource-group"
az group create --name $myResourceGroup --location eastus 

Získání informací o vlastním umístění

Získejte následující skupinu umístění, název a ID od správce clusteru. Podrobnosti najdete v tématu Vytvoření vlastního umístění .

customLocationGroup="<RESOURCE_GROUP_CONTAINING_CUSTOM_LOCATION>"
customLocationName="<NAME_OF_CUSTOM_LOCATION>"

Získejte ID vlastního umístění.

customLocationId=$(az customlocation show \
    --resource-group $customLocationGroup \
    --name $customLocationName \
    --query id \
    --output tsv)

Načtení ID připojeného prostředí

Teď, když máte ID vlastního umístění, můžete zadat dotaz na připojené prostředí.

Připojené prostředí je z velké části stejné jako standardní prostředí Container Apps, ale síťová omezení se řídí základním clusterem Kubernetes s podporou Arc.

myContainerApp="my-container-app"
myConnectedEnvironment=$(az containerapp connected-env list --custom-location $customLocationId -o tsv --query '[].id')

Vytvořit aplikaci

Následující příklad vytvoří aplikaci Node.js.

 az containerapp create \
    --resource-group $myResourceGroup \
    --name $myContainerApp \
    --environment $myConnectedEnvironment \
    --environment-type connected \
    --image mcr.microsoft.com/k8se/quickstart:latest \
    --target-port 80 \
    --ingress 'external'

az containerapp browse --resource-group $myResourceGroup --name $myContainerApp

Získání diagnostických protokolů pomocí Log Analytics

Poznámka:

Konfigurace Log Analytics se vyžaduje při instalaci rozšíření Container Apps k zobrazení diagnostických informací. Pokud jste rozšíření nainstalovali bez Log Analytics, přeskočte tento krok.

Přejděte do pracovního prostoru služby Log Analytics, který je nakonfigurovaný s rozšířením Container Apps, a pak v levém navigačním panelu vyberte Protokoly .

Spuštěním následujícího ukázkového dotazu zobrazte protokoly za posledních 72 hodin.

Pokud při spuštění dotazu dojde k chybě, zkuste to znovu za 10 až 15 minut. Může dojít ke zpoždění, aby služba Log Analytics začala přijímat protokoly z vaší aplikace.

let StartTime = ago(72h);
let EndTime = now();
ContainerAppConsoleLogs_CL
| where TimeGenerated between (StartTime .. EndTime)
| where ContainerAppName_s =~ "my-container-app"

Protokoly aplikací pro všechny aplikace hostované v clusteru Kubernetes se protokolují do pracovního prostoru služby Log Analytics ve vlastní tabulce protokolů s názvem ContainerAppConsoleLogs_CL.

  • Log_s obsahuje protokoly aplikací pro dané rozšíření Container Apps.
  • AppName_s obsahuje název aplikace kontejneru. Kromě protokolů, které píšete prostřednictvím kódu aplikace, obsahuje sloupec Log_s také protokoly o spuštění a vypnutí kontejneru.

Další informace o dotazech protokolu najdete v začátcích s Kusto.

Další kroky