Azure public multi-access edge compute deployment (Azure public multi-access edge compute deployment)

Azure Virtual Network
Azure Kubernetes Service (AKS)
Azure Machine Learning
Azure AI services

I den här artikeln beskrivs en hybridarkitektur för videoströmning och analys. Den kör svarstidskänsliga program i azure public MEC och kör andra tjänster, till exempel kontrollplan, AI och maskininlärningstjänster, i en Azure-region.

Kommentar

Den strömning med låg latens som den här arkitekturen tillhandahåller för webbanvändare gäller endast för de användare som dirigeras till den offentliga Azure-mec som utför videobearbetningen och är värd för webbappen. I allmänhet omfattar detta inte användare i andra geografiska områden.

Arkitektur

Arkitektur som använder azure public MEC för att vara värd för program på gränsen för att påskynda svar och minska bandbreddskraven.

Ladda ned en Visio-fil med den här arkitekturen.

Arbetsflöde

  1. Kamera video strömmas till tjänstslutpunkten för videobearbetning, som körs i azure public MEC. Ett telco 5G-nätverk bär strömmen.

  2. Pipelinen för videobearbetning körs i ett AKS-kluster (Azure Kubernetes Service) och bearbetar videon. Att ha tjänsten i Azures offentliga MEC minskar nätverkets tur-och-retur-tid och bandbreddskostnader jämfört med att skicka videon till molnet för bearbetning.

    AI-slutsatsdragningstjänsten, som också körs i azure public MEC, analyserar videon när den har bearbetats av bearbetningspipelinen och ger insikter.

  3. När pipelinen för slutsatsdragning analyserar videon tar webbappen videoströmmen från publiceringstjänsten och distribuerar den till webbanvändare. Den kan också distribuera statiska filer med hjälp av Azure Content Delivery Network-profiler.

  4. Videoinsikter och metadata som genereras av inferenstjänsten skickas till molnet där de lagras i Azure SQL Database. Pipelinen för videobearbetning kan lagra den råa videon på ett Azure Blob Storage-konto i molnet för vidare bearbetning.

  5. Data som samlas in i lagringen kan användas i olika syften:

    1. Azure Machine Learning kan köra batchprocesser för maskininlärning för att förbättra sina modeller.
    2. Microsoft Power BI och Azure Notification Hub kan använda data för att skicka meddelanden och fylla i instrumentpaneler.
  6. Machine Learning uppdaterar AI-slutsatsdragningsmodellerna som körs i azure public MEC.

Komponenter

Det finns två listor med komponenter i det här avsnittet, de som finns i Azures offentliga MEC och de som finns i Azure-regionen.

Offentlig MEC i Azure

  • Videobearbetning i azure public MEC: Pipelinen för videobearbetning, AI-slutsatsdragningstjänsten och webbappen är mikrotjänstbaserade program som körs i AKS-klustret (Azure Kubernetes Service). AI-inferenstjänsten använder AI-slutsatsdragningsmodeller för att analysera videoströmmarna och ge insikter. Webbappen distribuerar den bearbetade videon till webbanvändare.
    • Pipeline för videobearbetning: En typisk pipeline för videobearbetning har tjänster som samlar in videofeeds från kameror, bearbetar dem och publicerar dem. Distributionen av dessa tjänster på gränsen minskar svarstiden och bandbreddsanvändningen jämfört med att skicka videon till molnet för bearbetning.
    • AI-inferenstjänst: Den här tjänsten tar som indata den bearbetade videon och ger insikter om den. Du kan distribuera Azure AI-modeller eller AI-modeller från andra källor som kan hjälpa till med uppgifter som identifiering och spårning av objekt och personer, bildklassificering, avvikelseidentifiering och säkerhetsaviseringar.
    • Webbapptjänst: Webbapptjänsten är värd för den webbsida som tillhandahåller videor till användare. Webbappen tar indata från publiceringstjänsten för videobearbetningspipelinen och överför live-flödet.
  • Profiler för Azure Content Delivery Network : Webbappen kan använda nätverksprofiler för innehållsleverans för att överföra statiska bilder av webbappen för att förbättra programmets svarstider.

Azure-region

Alternativ

Ett alternativ till att distribuera AKS är att distribuera Azure IoT Edge i azure public MEC och köra Azure-moduler som tillhandahåller liknande funktioner som de tjänster som redan nämnts. Du kan använda:

Information om scenario

Att vara värd för program på gränsen kan göra dem mer dynamiska och underlätta kraven på nätverksbandbredd. Azure public multi-access edge compute (Azure public MEC) är en gränsberäkningslösning som sammanför en portfölj med Microsofts beräknings-, nätverks- och programtjänster som hanteras från molnet. Du kan använda den för att utnyttja hastigheten på 5G och låsa upp viktiga scenarier med låg svarstid och hög bandbredd.

Men azure public MEC är inte avsett att vara värd för hela programstacken vid gränsen. Det är viktigt att förstå vilka delar av ditt program som ska köras i azure public MEC och vilka som ska köras i stället i en Azure-region eller lokalt.

Liveuppspelning av händelser kräver snabb videobearbetning för att ge användarna en realtidsvy och anpassad vy, så det är en bra kandidat för en gränslösning.

Potentiella användningsfall

Organisationer som behöver snabba programsvar, även i situationer med hög efterfrågan, bör överväga att använda azure public MEC som värd för svarstidskänsliga delar av programmet.

I synnerhet används videoanalyser baserade på modeller för visuellt innehåll av olika branscher, inklusive nästa generations detaljhandel, smarta städer och anslutna fordon. Sådana program är kandidater för den här arkitekturen.

Att tänka på

Dessa överväganden implementerar grundpelarna i Azure Well-Architected Framework, som är en uppsättning vägledande grundsatser som kan användas för att förbättra kvaliteten på en arbetsbelastning. Mer information finns i Microsoft Azure Well-Architected Framework. Ramverket består av fem grundpelare för arkitekturkvalitet:

  • Tillförlitlighet
  • Säkerhet
  • Kostnadsoptimering
  • Driftsäkerhet
  • Prestandaeffektivitet

Distribution

Det finns vanligtvis en prispremie som är associerad med distribution av resurser i azure public MEC. För att hålla kostnaderna nere är det viktigt att du identifierar de svarstidskänsliga och kritiska komponenter som kan dra nytta av att köras i azure public MEC. Alla andra komponenter i programmet ska distribueras i Azure-regionen för att minska kostnaderna.

Skalbarhet

Azure public MEC stöder AKS- och Azure Virtual Machine Scale Sets som du kan använda för att skala dina beräknings- och svarstidskänsliga arbetsbelastningar för att matcha kraven för programmen.

Alternativ för belastningsutjämning

AKS har internt stöd för flera alternativ för att belastningsutjämning av inkommande trafik. NGINX-ingresskontrollanten visas i arkitekturdiagrammet, men det finns andra lastbalanserare som du kan använda med AKS. Mer information finns i Använda en intern lastbalanserare med Azure Kubernetes Service (AKS).

Prestanda

Azure public MEC tillhandahåller olika SKU:er för virtuella datorer, inklusive GPU-specifika SKU:er för beräkningsintensiv videoströmbearbetning.

Lagringsalternativ

Azure public MEC stöder inte Azure Storage-konton, så bloblagringen kan bara finnas i Azure-regionen.

Kostnadsoptimering

Kostnadsoptimering handlar om att titta på sätt att minska onödiga utgifter och förbättra drifteffektiviteten. Mer information finns i Översikt över kostnadsoptimeringspelare.

  • Se Priser för Azure för information om priser.
  • Använd Priskalkylatorn för Azure för att beräkna kostnaden för att implementera den här lösningen.

Deltagare

Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.

Huvudförfattare:

Nästa steg