Hierarkitjänst för ansluten fabrik

Kubernetes Service
Azure Active Directory
Digital Twins
App Service
Data Explorer

Med en hierarkitjänst kan dina affärsintressenter centralt definiera hur produktionstillgångar som maskiner organiseras i fabriker, både ur drifts- och underhållssynpunkt. Du kan använda den här informationen som en huvuddatakälla i flera scenarier, till exempel övervakning av anläggningsvillkor eller mätning av övergripande utrustningseffektivitet (OEE).

När du skapar dessa tjänster kan du använda Azure Digital Twins för att skapa en modell av noder (till exempel datorer, datacenter och platser) och deras relationer. Varje nod innehåller metadata, inklusive identifierare från dina ERP-system (Enterprise Resource Management). Du kan använda den här sammanhangsbaserade informationen i underordnade program för att få insikter om produktions tillstånd, aggregera datordata eller identifiera datorer som kan uppfylla en viss order.

Potentiella användningsfall

Vanliga användningsområden för den här arkitekturarbetsbelastningen:

  • Förebyggande underhåll

  • Aktivera anslutning på en anläggning eller fabrik

  • Upprätthålla produktiviteten i en anläggning eller fabrik

  • Övervaka säkerhet och efterlevnad

  • Ge anställda möjligheter på butiksgolvet

Arkitektur

Följande exempelhierarkitjänst utvecklas som en ASP.NET Core REST API som finns på Azure Kubernetes Services (AKS). Data bevaras i Azure Digital Twins och hämtas från antingen Azure Digital Twins eller en minnesbaserad cache för frågor som skulle resultera i långa svarstider när de utfärdas direkt mot Azure Digital Twins. Cacheminnet i minnet förbättrar hastigheten för en 3 000-noddiagrams traversal från ~10 sekunder till under en sekund.

Informationsgrafik för en exempelhierarkitjänst

Utökningsbarhet

Den här systemdesignen är avsiktligt enkel för att undvika införandet av ytterligare tjänster eller beroenden. Du kan dock överväga att utöka stödet för följande funktioner, beroende på dina användningsscenarier och krav:

Komponenter

  • Azure Digital Twins är en IoT-plattform som skapar digitala representationer av verkliga saker, platser, processer och personer i molnet.

  • Azure Digital Twins Explorer är ett utvecklarverktyg för Azure Digital Twins tjänsten. Med den kan du ansluta till Azure Digital Twins instans för att förstå, visualisera och ändra dina digitala tvillingdata.

  • Azure Kubernetes Services AKS) erbjuder serverlösa Kubernetes för att köra mikrotjänster, en integrerad kontinuerlig integrering och kontinuerlig distribution (CI/CD) samt säkerhet och styrning i företagsklass.

  • Azure App Service är en PaaS-tjänst för att skapa och vara värd för appar i hanterade virtuella datorer. Den underliggande beräkningsinfrastrukturen som dina appar körs på hanteras åt dig. App Service övervakning av resursanvändningskvoter och appmått, loggning av diagnostikinformation och aviseringar baserat på mått.

  • Azure Data Explorer är en snabb, fullständigt hanterad dataanalystjänst för realtidsanalys på stora mängder data som strömmas från program, webbplatser, IoT-enheter med mera.

Alternativ

Den här arkitekturen använder AKS för att köra mikrotjänster som kör frågor mot huvuddata från de olika anslutna tjänsterna. Alternativt kan du köra dessa mikrotjänster i Azure Container Instances. Azure Container Instances är det snabbaste och enklaste sättet att köra en container i Azure, utan att behöva använda en tjänst på högre nivå, till exempel AKS.

Webbprogrammet som finns separat från mikrotjänster som körs i AKS kan också distribueras i AKS-klustret. På så sätt behöver du inte införa ytterligare en tjänst, till exempel Azure App Service.

Överväg att SAP på Azure värd för att dra nytta av alla ytterligare fördelar och integreringar som erbjuds med Azure-plattformen och Microsoft 365 ekosystemet.

Överväg också att Azure Monitor för att analysera och optimera prestanda för ditt AKS-kluster och andra resurser, samt för att övervaka och diagnostisera nätverksproblem.

Problem

Produktionstillgångar, till exempel datorer, organiseras i fabriker i kontextspecifika hierarkier. De kan till exempel ordnas efter fysisk plats, underhållskrav eller av de produkter som de producerar.

Eftersom enskilda intressenter, processer och IT-system har olika perspektiv och behov kommer definitionen av hur produktionstillgångar organiseras – och definitionen av motsvarande metadata – från olika källor. Detta kan leda till situationer där hierarkiska strukturer definieras redundant i flera IT-system eller där information från ERP-system replikeras över flera program. Dessa redundanser kan leda till inkonsekvenser, saknade korrelationer mellan huvuddata och programspecifika hierarkier, samt heterogena styrningsbegrepp som implementeras i IT-system och den bredare organisationen.

I sådana situationer är ändringar i hierarkiska strukturer och metadata mycket tidskrävande, vilket påverkar din verksamhets flexibilitet och skalbarhet. Om en ny dator läggs till eller en produktionslinje omorganiseras måste ändringar tillämpas manuellt på flera platser och konsekvensen för dessa ändringar måste också verifieras manuellt. Decentraliserad åtkomstkontroll ökar ytterligare behovet av manuella processer och gör det svårare att upprätta länkar mellan programspecifika hierarkier.

En ytterligare utmaning när man distribuerar program till flera anläggningar är att enskilda platser eller organisationer kan använda olika ERP-system, ofta av historiska skäl som ett förvärv. Även om det är önskvärt att standardisera ERP-system kanske det inte är möjligt att göra det inom rimlig tid. Det här heterogena ERP-landskap ger ännu mer komplexitet och utmaning i processen med att integrera butiksgolvsprogram med ERP-system.

Lösning

En hierarkitjänst löser dessa problem genom att tillhandahålla en centraliserad, konsoliderad och konsekvent definition av den övergripande hierarkin. En underhållsvy och en driftvy stöds för att täcka behoven i båda perspektiven. Det gör att dina affärsintressenter kan definiera och underhålla hierarkin med hjälp av ett grafiskt användargränssnitt (utan inblandning av IT-personal) och ger åtkomstkontroll för att styra ändringar.

När ett program behöver referera till hierarkidata hämtas de senaste definitionerna från hierarkitjänsten. Detta säkerställer att alla ändringar i hierarkin alltid återspeglas i alla program, utan några ytterligare manuella steg.

Varje nod i hierarkin innehåller en systemdefinierad unik identifierare som utfärdats av hierarkitjänsten, vilket gör att du unikt kan identifiera objekt (till exempel en specifik dator i en specifik fabrik) i program i hela organisationen. Detta ID kan också läggas till telemetridata som skickas av datorer, vilket gör att du kan kontextualisera dessa data baserat på hierarkin.

Eftersom det bara finns en definition av hierarkin kan hierarkitjänsten fungera som en enskild integrationspunkt med ERP-system, så att du kan frikoppla livscykeln för ERP-system från hierarkin. Du kan integrera med ERP-system manuellt via grafiskt användargränssnitt, via massimportfunktioner eller via ett API som tillhandahålls av hierarkitjänsten.

För att upprätthålla en ren separation av problem innehåller hierarkitjänsten endast information om noder, relationer och ytterligare metadata som referenser till motsvarande huvuddata (till exempel ERP-ID för en viss dator). Hierarkitjänsten underhåller separat eventuell ytterligare information, till exempel faktiska huvuddataposter eller programspecifika parametrar. Till exempel kan dina huvuddataposter tillhandahållas via en dedikerad huvuddatadokumenttjänst, eller så kan ett butiksgolvsprogram ha parametrar som t.ex. tröskelvärden eller standardvärden för värden för underhåll som definieras på datornivå. Med den här metoden kan du hålla hierarkitjänsten smidig och effektiv och undvika att utveckla den till ett parallellt huvuddatahanteringssystem.

Funktioner

Det här scenariot utforskar ett exempel på implementering av hierarkitjänsten.

Datamodell

Hierarkitjänsten tillhandahåller en konsoliderad datamodell som gör att du kan definiera och fråga hierarkiska vyer över produktionstillgångar i fabriker och andra fysiska platser. Detta omfattar validering av motsvarande affärsregler för att framtvinga konsekvens och dataintegritet i hierarkin.

Informationsgrafik för en hierarkitjänstarkitektur

De viktigaste funktionerna

  • Verksamhetsspecifika frågefunktioner och snabba frågesvarstider vid materialisering av stora grafer

  • Konsekvent modellering av kärnägarstruktur för anläggningstillgångar

  • Skräddarsydd, domänspecifik modell (inklusive validering av affärsregler)

  • Massimport- och exportfunktioner

  • Utökningsbarhet baserat på funktioner som tillhandahålls av Azure Digital Twins och Azure Data Explorer

  • Rollbaserad åtkomstkontroll (RBAC)

Inventering

Dessa funktioner består av följande komponenter:

Komponent Värdeförslag
Admin-API Stöder atomiska affärsåtgärder och validering av affärsregler.
Fråge-API Förbättrar Azure Digital Twins frågeprestanda vid materialisering av stora grafer (med hjälp av en minnescache) och ger frågefunktioner för tillverkningsspecifika databehov.
I/O-API Möjliggör massimport/massexport för tillverkningsspecifika scenarier.

Åtgärder som stöds

Komponenterna ovan stöder följande åtgärder.

En skärmbild av supportåtgärder

Med frågeåtgärder kan du dessutom filtrera efter nodtyper och nodattribut.

Överväganden

Tillgänglighet

Överväg att distribuera AKS i tillgänglighetszoner. Tillgänglighetszoner är unika fysiska platser i Azure-regioner som skyddar virtuella datorer, program och data från datacenterfel.

Ett AKS-kluster distribuerar resurser som noder och lagring över logiska delar av den underliggande Azure-infrastrukturen. Den här distributionsmodellen, när du använder tillgänglighetszoner, ser till att noder i en tillgänglighetszon är fysiskt åtskilda från de som definierats i en annan tillgänglighetszon. AKS-kluster som distribueras med flera tillgänglighetszoner som konfigurerats i ett kluster ger en högre tillgänglighetsnivå genom att minimera risken för ett maskinvarufel eller en planerad underhållshändelse som stör tjänsten.

Skalbarhet

AKS-tjänster är också utformade för att skala upp eller ut manuellt eller automatiskt. För ytterligare skalbarhet kan du överväga att använda autoskalning av AKS-kluster,som automatiskt kan skala ett helt kluster för att uppfylla programkrav på AKS. Autoskalningskomponenten för kluster kan hålla utkik efter poddar i klustret som inte kan schemaläggas på grund av resursbegränsningar. När problem identifieras ökar antalet noder i en nodpool för att uppfylla programbehovet.

Azure App Service kan också skala upp eller ut manuellt eller automatiskt.

Säkerhet

För att förbättra säkerheten för ditt AKS-kluster kan du tillämpa och tillämpa inbyggda säkerhetsprinciper med hjälp av Azure Policy. Azure Policy hjälper till att framtvinga organisationsstandarder och kan utvärdera efterlevnad i stor skala. När du har installerat Azure Policy-tilläggetför AKS kan du tillämpa enskilda principdefinitioner eller grupper av principdefinitioner som kallas initiativ (kallas ibland principuppsättningar) på klustret.

Du bör begränsa vem som kan komma åt och använda de anslutna fabriksresurserna, och du bör också begränsa vilka data som kan nås baserat på användarens identitet eller roll. Använd Azure Active Directory (Azure AD) för identitets- och åtkomstkontroll och använd Azure Key Vault för att hantera nycklar och hemligheter.

DevOps

För att distribuera mikrotjänster till AKS-klustret automatiskt är det bäst att använda CI/CD-processer. Överväg att använda en lösning som Azure DevOps eller GitHub Actions, enligt beskrivningen i dokumentationen för Azure DevOps Starter.

Prissättning

Använd i allmänhet Priskalkylatorn för Azure för att beräkna kostnader och använd AKS-kalkylatorn för att beräkna kostnaderna för att köra AKS i Azure. I avsnittet Kostnad i Microsoft Azure Well-Architected Framework kan du läsa mer om andra överväganden.

Nästa steg

Azure Architecture Center översiktsartiklar:

Produktdokumentation:

Microsoft Learn utbildningsvägar: