Sdílet prostřednictvím


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

Požadavky

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.

Spusťte Cloud Shell v novém okně.

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 add --name containerapp  --upgrade --yes

Vytvoření skupiny zdrojů

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

GROUP_NAME="my-container-apps-resource-group"
az group create --name $GROUP_NAME --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í .

CUSTOM_LOCATION_GROUP="<RESOURCE_GROUP_CONTAINING_CUSTOM_LOCATION>"
CUSTOM_LOCATION_NAME="<NAME_OF_CUSTOM_LOCATION>"

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

CUSTOM_LOCATION_ID=$(az customlocation show \
    --resource-group $CUSTOM_LOCATION_GROUP \
    --name $CUSTOM_LOCATION_NAME \
    --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 základní cluster Kubernetes s podporou Arc řídí omezení sítě.

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

Vytvořit aplikaci

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

 az containerapp create \
    --resource-group $GROUP_NAME \
    --name $CONTAINER_APP_NAME \
    --environment $CONNECTED_ENVIRONMENT_ID \
    --environment-type connected \
    --image mcr.microsoft.com/k8se/quickstart:latest \
    --target-port 80 \
    --ingress external

az containerapp browse --resource-group $GROUP_NAME --name $CONTAINER_APP_NAME

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