Bewerken

Share via


Geautomatiseerde voertuigen vlootcontrole

Azure App Service
Azure Container Apps
Azure Container Registry
Azure IoT Hub
Azure Virtual Network

In deze voorbeeldarchitectuur ziet u een end-to-end benadering voor een oem (original equipment manufacturer) voor auto's en bevat een referentiearchitectuur en verschillende gepubliceerde, opensource-bibliotheken die opnieuw kunnen worden gebruikt. Microsoft heeft de vlootbeheersoftware opnieuw gearchitecteerd om maximaal beschikbaar, geografisch redundant en leverancierneutraal te zijn en te worden uitgevoerd in een hybride cloudcontext.

Architectuur

Georedundantie met failover zonder downtime voor 99,9% beschikbaarheid en herstel na noodgevallen

Schermopname van een exemplaar van de back-end, bestaande uit de volgende onderdelen, wordt geïmplementeerd in twee Azure-regio's: Azure IoT Hub, Opname, RabbitMQ, Mission State, Vehicle State, Job Manager en Geo DB.

Een Visio-bestand van deze architectuur downloaden.

Workflow

  • Een exemplaar van de back-end, bestaande uit de volgende onderdelen, wordt geïmplementeerd in twee Azure-regio's: Azure IoT Hub, Opname, RabbitMQ, Mission State, Vehicle State, Job Manager en Geo DB. IoT Hub maakt verbinding met de set toepassingen die zijn gebouwd met behulp van een microservicearchitectuur die kan worden geïmplementeerd op Azure-app Service met behulp van de functie Web Apps van Azure-app Service, Web App for Containers of Kubernetes.
  • Een verkiezingssysteem voor leiders bepaalt welke back-end AGV's op de werkplaats op een bepaald moment controleert. Als de leiding van de back-end mislukt, brengt de leidersverkiezingen onmiddellijk de controle over naar de back-end in de andere regio.
  • Dankzij deze geografisch redundante en zero-downtime failover-architectuur bereikt de AGV-beheersoftware die wordt uitgevoerd in Azure 99,9% beschikbaarheid, mits de internetverbinding en externe subsystemen, zoals SAP, geen beperkingen vormen.

Kubernetes en RabbitMQ voor datacenteragnostische implementaties

Schermopname van Kubernetes en RabbitMQ geïmplementeerd op een Azure IoT Edge-apparaat.

Een Visio-bestand van deze architectuur downloaden.

In scenario's waarin de internetverbinding tussen een productieinstallatie en Azure een beperkende factor is, kan onze AGV-controlesoftware ook worden geïmplementeerd op on-premises rekenknooppunten. Door Kubernetes en RabbitMQ te gebruiken als platformagnostische technologieën, wordt de toepassingslaag die in de vorige sectie wordt beschreven, geïmplementeerd op een Azure IoT Edge-apparaat.

Implementatie van de VDA 5050-specificatie voor AGV-vendor-agnostische communicatie

Schermopname van de back-endoplossing voor AGV-vlootbeheer in Azure.

Een Visio-bestand van deze architectuur downloaden.

Dankzij de naleving van de VDA 5050 voertuigconnectorspecificatie kan onze AGV-controlesoftware communiceren met alle soorten AGV's van verschillende leveranciers die ook voldoen aan VDA 5050.

Workflow

In deze architectuur ziet u een overzicht van de verschillende services en onderdelen die worden gebruikt voor het uitvoeren van de back-endoplossing voor AGV-vlootbeheer in Azure:

  • Wanneer ontwikkelaars nieuwe code doorvoeren, scant GitHub Actions de code automatisch om snel beveiligingsproblemen en coderingsfouten te vinden. Het kan ook worden gebruikt om automatisch toepassingen en infrastructuuronderdelen te implementeren.
  • In een containerregister worden de containerinstallatiekopieën opgeslagen die worden gebruikt voor de verschillende services van de back-end van de AGV-vloot.
  • Back-endservices worden geïmplementeerd in Web App for Containers.
  • Deze back-endservices kunnen verbinding maken met externe systemen met behulp van het VDA 5050-protocol. Ze kunnen ook verbinding maken met een beheerd streamingplatform, zoals Kafka, en kunnen voertuiggegevens opslaan in een Azure SQL-database.
  • Azure Key Vault slaat wachtwoorden, sleutels en certificaten op.
  • Application Insights implementeert logboekregistratie en bewaking voor de toepassingen die als back-endservices worden uitgevoerd.
  • Beheerde identiteiten maken verbinding met de verschillende services en resources in Azure, waardoor ontwikkelaars geen referenties meer hoeven te beheren. Ze bieden een identiteit voor toepassingen die moeten worden gebruikt bij het maken van verbinding met resources die ondersteuning bieden voor Microsoft Entra-verificatie.

Onderdelen

Azure-app Service is een PaaS (Platform as a Service) voor het bouwen en hosten van apps in beheerde virtuele machines (VM's). Hiermee beheert u de onderliggende rekeninfrastructuur waarop uw apps worden uitgevoerd. App Service biedt bewaking van quota voor resourcegebruik en metrische gegevens van apps, logboekregistratie van diagnostische gegevens en waarschuwingen op basis van metrische gegevens.

Azure Virtual Network is de fundamentele bouwsteen voor uw privénetwerk in Azure. Met deze service kunnen veel soorten Azure-resources, zoals Azure Virtual Machines, veilig met elkaar communiceren, internet en on-premises netwerken.

IoT Hub is een door PaaS beheerde service, gehost in de cloud, die fungeert als een centrale berichtenhub voor bidirectionele communicatie tussen een IoT-toepassing en de apparaten die worden beheerd.

Azure Container Apps is een volledig beheerde serverloze containerservice voor het bouwen en implementeren van containers op schaal.

Azure Container Registry is een beheerde, persoonlijke Docker-registerservice op basis van de opensource Docker Registry 2.0. U kunt Azure-containerregisters gebruiken met uw bestaande pijplijnen voor containerontwikkeling en -implementatie, of u kunt Azure Container Registry Tasks gebruiken om containerinstallatiekopieën in Azure te bouwen. Bouw op aanvraag of automatiseer builds volledig met triggers, zoals doorvoeringen van broncode en updates van basisinstallatiekopieën.

Microsoft Entra ID is de cloudservice voor identiteits- en toegangsbeheer waarmee gebruikers, services en toepassingen worden geverifieerd.

Azure Storage biedt een duurzame, maximaal beschikbare en zeer schaalbare cloudopslagoplossing. Het bevat mogelijkheden voor object-, bestands-, schijf-, wachtrij- en tabelopslag.

RabbitMQ is een opensource message-broker-software die oorspronkelijk het Advanced Message Queuing Protocol heeft geïmplementeerd en sindsdien is uitgebreid met een invoegtoepassingsarchitectuur ter ondersteuning van Streaming Text Oriented Messaging Protocol, MQ Telemetry Transport en andere protocollen.

Azure Virtual Machines biedt on-demand, schaalbare computingresources die u de flexibiliteit van virtualisatie bieden, zonder dat u de fysieke hardware hoeft aan te schaffen en te onderhouden.

Azure SQL Database is een volledig beheerde PaaS-database-engine die de meeste databasebeheerfuncties verwerkt, zoals upgraden, patchen, back-ups en bewaking, zonder tussenkomst van de gebruiker.

Azure Key Vault is een cloudservice voor het veilig opslaan en openen van geheimen. Een geheim is alles waartoe u de toegang strikt wilt beheren, zoals API-sleutels, wachtwoorden, certificaten of cryptografische sleutels.

Application Insights, een functie van Azure Monitor, is een uitbreidbare APM-service (Application Performance Management) voor ontwikkelaars en DevOps-professionals. U kunt deze gebruiken om livetoepassingen te bewaken. Het detecteert automatisch prestatieafwijkingen en bevat krachtige analysehulpprogramma's om u te helpen bij het diagnosticeren van problemen en om te begrijpen wat gebruikers daadwerkelijk met uw app doen.

Alternatieven

Deze architectuur maakt gebruik van kubernetes en de functie Web Apps van Azure-app Service voor het uitvoeren van de toepassingen voor deze oplossing. Als alternatief kunt u deze microservices uitvoeren in Azure Container Instances, die de snelste en eenvoudigste manier biedt om een container in Azure uit te voeren, zonder dat u een service op een hoger niveau hoeft te gebruiken, zoals Azure Kubernetes Service (AKS).

In het on-premises voorbeeld worden virtuele Azure-machines gebruikt, die ook kunnen worden vervangen door containertechnologieën.

Een andere optie om deze services uit te voeren, is in AKS (Azure Kubernetes Service). Dit biedt serverloze Kubernetes voor het uitvoeren van microservices, een geïntegreerde CI/CD-ervaring (continue integratie en continue implementatie) en beveiliging en governance op bedrijfsniveau.

Overweeg ook om Azure Monitor te gebruiken in combinatie met Application Insights om de prestaties van uw toepassingen, containers, databases en andere resources te analyseren en te optimaliseren en netwerkproblemen te bewaken en diagnosticeren.

Deze architectuur gebruikt RabbitMQ als berichtbroker. Microsoft Azure biedt ook systeemeigen ondersteuning voor berichtenoplossingen, zoals Azure Queue Storage of Azure Service Bus. Zie Azure Storage-wachtrijen en Service Bus-wachtrijen voor een vergelijking , vergeleken en gecontrast.

De toepassingen en services in Azure worden geïmplementeerd met behulp van Terraform-scripts . Overweeg om systeemeigen Azure Resource Manager-sjablonen (ARM-sjablonen) of Bicep te gebruiken voor het maken van scripts.

Scenariodetails

Autoproductie is afhankelijk van geautomatiseerde begeleide voertuigen (AGV's) om onderdelen aan assemblagelijnen te leveren. AGV's zijn een essentieel onderdeel van Just-In-Time productie en geautomatiseerde logistiek op de winkelvloer. Winkelvloeren met AGV's hebben vaak te maken met drie uitdagingen:

  • Beschikbaarheid. Elke serviceonderbreking verstoort de productie.
  • Connectiviteit. Winkelvloeren hebben vaak geen betrouwbare verbinding met de openbare cloud.
  • Vergrendeling van leverancier. Traditionele AGV-oplossingen zijn afhankelijk van eigen communicatieprotocollen.

Deze voorbeeldarchitectuur is onderverdeeld in drie operationele gebieden:

  • Een referentiearchitectuur voor vlootbeheer op basis van Azure met georedundantie, failover zonder downtime, beschikbaarheid van 99,9% en efficiënt herstel na noodgevallen.
  • Een datacenteragnostische en on-premises implementatie die is gebouwd op Kubernetes en RabbitMQ.
  • Leverancierneutrale AGV-communicatie gebouwd op basis van de algemene VDA 5050-specificatie.

Potentiële gebruikscases

Deze oplossing is ideaal voor de productie-, automobiel- en transportindustrie. Dit is van toepassing op de volgende scenario's:

  • De klant gebruikt momenteel AGV's in het productieproces.
  • De klant heeft een lage beschikbaarheid met de AGV's, wat van invloed is op hun rendement op investering (ROI).
  • De winkel heeft een inconsistente verbinding met de openbare cloud.
  • De klant is lid van het Open Manufacturing Platform (OMP).
  • De klant is lid van de OMP Autonomous Transport System (OMP ATS) werkgroep.

Belangrijkste problemen

Lage productie van goederen is afhankelijk van automatisering van het productieproces en just-in-time levering van onderdelen aan assemblagelijnen. Door automatisch onderdelen naar assemblagelijnen te transporteren, dragen geautomatiseerde begeleide voertuigen zowel bij aan just-in-time productie als aan automatisering van logistiek op de winkelvloer. In een typische massaproductiefabriek van personenauto's wordt bijvoorbeeld elke minuut één passagiersauto uitgerold. Daarom veroorzaakt elke minuut onderbreking van een assemblagelijn in een productiefabriek een financieel verlies, in de volgorde van tienduizenden Amerikaanse dollars. Oem's voor auto's vereisen een hoge mate van betrouwbaarheid en beschikbaarheid voor hun geautomatiseerde systemen, en ze hebben een aantal uitdagingen:

  • Beschikbaarheidsprobleem. Bestaande AGV fleet control software voldoet niet aan de beschikbaarheidsvereiste van 99,9%.
  • Verbinding maken iviteitsprobleem. Sommige productiebedrijven hebben geen voldoende stabiele internetverbinding met de vereiste bandbreedte om de communicatie mogelijk te maken tussen de AGV vlootbeheersoftware die wordt gehost in de openbare Azure-cloud en de AGV's op de winkelvloer. Daarom was het hosten van de AGV fleet control software in een datacenter dat zich buiten het intranet van een dergelijke productiefabriek bevindt geen optie.
  • Probleem met vergrendeling van AGV-leverancier. Het was niet mogelijk om de bestaande AGV's te verwisselen met nieuwe AGV's van een andere leverancier, omdat de AGV-controlesoftware afhankelijk was van het eigen communicatieprotocol van de bestaande AGV's.

Een architectuur die georedundantie ondersteunt met failover zonder downtime voor een beschikbaarheid van 99,9% en herstel na noodgevallen kan deze problemen oplossen.

Overwegingen

Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die kunnen worden gebruikt om de kwaliteit van een workload te verbeteren. Zie Microsoft Azure Well-Architected Framework voor meer informatie.

Beschikbaarheid en schaalbaarheid

De toepassingen en services waaruit de AGV Fleet Control-oplossing bestaat, worden geïmplementeerd in twee Azure-regio's met behulp van beschikbaarheidszones. Dit zijn unieke fysieke locaties binnen Azure-regio's die helpen vm's, toepassingen en gegevens te beschermen tegen storingen in datacenters. Azure-app Service en AKS kan ook worden geïmplementeerd in beschikbaarheidszones. IoT Hub biedt hoge beschikbaarheid binnen regio's door redundantie in bijna alle lagen van de service te implementeren.

Beveiliging

Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie Overzicht van de beveiligingspijler voor meer informatie.

Gebruik Microsoft Entra ID voor identiteits- en toegangsbeheer en gebruik Azure Key Vault om sleutels en geheimen te beheren.

DevOps

Voor het automatisch implementeren van de microservices in Kubernetes of Azure-app Service kunt u het beste CI/CD-processen gebruiken. Overweeg het gebruik van een oplossing, zoals Azure DevOps of GitHub Actions.

Kostenoptimalisatie

Kostenoptimalisatie gaat over manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie Overzicht van de pijler kostenoptimalisatie voor meer informatie.

In het algemeen gebruikt u de Azure-prijscalculator om de kosten te schatten en gebruikt u de AKS-calculator om de kosten voor het uitvoeren van AKS in Azure te schatten. Zie de sectie Kostenoptimalisatie in Microsoft Azure Well-Architected Framework voor meer informatie over andere overwegingen.

Medewerkers

Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.

Hoofdauteur:

Volgende stappen

Productdocumentatie:

Microsoft-leertrajecten:

Overzichtsartikelen van Azure Architecture Center:

Gerelateerde architecturen: