Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial Internet of Things >> Internet of Things-technologie

IoT-app-ontwikkeling krijgt een grotere flexibiliteit door containertechnologieën

Voor het grootste deel zijn containertechnologieën ontwikkeld voor traditionele enterprise IT-omgevingen en hebben moderne cloudarchitectuur mogelijk gemaakt. Maar er zijn ook overeenkomsten en voordelen aan het adopteren van containers voor het Industrial Internet of Things (IIoT), volgens Tim Winter, chief technology officer bij Machfu, een leverancier van IIoT-oplossingen.

Een container is een lichtgewicht virtualisatietechnologie die bestaat uit een volledige runtime-omgeving:een applicatie, plus al zijn afhankelijkheden, bibliotheken en andere binaire bestanden, en configuratiebestanden die nodig zijn om het uit te voeren, gebundeld in een enkel pakket. Door een applicatieplatform en zijn afhankelijkheden te containeriseren, worden verschillen in distributie van besturingssystemen en onderliggende infrastructuur weggenomen.

"Een ontwikkelingsproces voor containersoftware creëert een opslagplaats van 'dingen', dat is uw applicatie en de ondersteunende software, en het bouwt een zogenaamde containerimage op - een soort laaggebak van de applicatie en ondersteunende software", zegt Harry Forbes, een analist bij ARC Advisory Group.

Volgens onderzoeksbureau Gartner zal tegen 2022 meer dan 75% van de wereldwijde organisaties gecontaineriseerde apps in productie gebruiken. 

De voordelen van containers 

Omdat alle applicatie-elementen in een pakket zijn "gecontaineriseerd", kan de applicatie worden verzonden om in elke computeromgeving te draaien, waardoor de complexiteit wordt verminderd omdat applicaties in verschillende omgevingen worden geïmplementeerd en bijgewerkt, aldus Forbes.

Containers kunnen ook profiteren van een snel veranderende omgeving door hun isolatie. Modules werken alleen met elkaar via goed gedefinieerde Application Programming Interfaces (API's) en zijn verder onafhankelijk. Zo kunnen modules worden geüpdatet zonder dat dit gevolgen heeft voor anderen, 

Isolatie wordt belangrijk naarmate het tempo van veranderingen en updates van applicaties toeneemt.

Zo maken containers ook de heilige graal van edge computing mogelijk:dat wil zeggen intelligente of AI-compatibele processen aan de edge.

"Met de groeiende vraag om gegevens in realtime te verwerken en de hoge kosten van het overbrengen en opslaan van de onbewerkte telemetriegegevens met hoog volume en met hoge snelheid naar de cloud te vermijden", zegt Ayush Tiwari, senior IoT-productmanager, PTC, een IIoT-oplossing provider, "meer IoT-gebruikers geven er de voorkeur aan de gegevens vooraf te verwerken, te transformeren en hun aangepaste bedrijfslogica direct aan de rand te gebruiken." Vervolgens kunnen modellen met kunstmatige intelligentie en machine learning worden getraind en geïmplementeerd via on-premises, geïsoleerde containers op edge-apparaten.

Bovendien, omdat het van cruciaal belang is om software die aan de edge is geïmplementeerd, te beveiligen en bij te werken met de nieuwste patches en functies, is het belangrijk geworden om gecontaineriseerde workloads uit te voeren die eenvoudig kunnen worden beheerd en bediend vanuit de cloud, zei hij.

"Door bepaalde workloads naar de rand van het netwerk te verplaatsen, besteden verbonden producten minder tijd aan communicatie met de cloud, kunnen ze sneller reageren op lokale veranderingen in de context en betrouwbaar werken, zelfs in gebieden met een lage netwerkbandbreedte", zegt Tiwari.

[Voor meer informatie over Industrial IoT, neem deel aan Industriële IoT-wereld deze december.}

Containers gebruiken voor IIoT-apparaten:partitionering verbetert de beveiliging

Als zodanig zijn containers aantrekkelijk voor niet-zakelijk gebruik als IIoT edge-apparaten. Omdat deze gecontaineriseerde pakketten en hun inhoud van elkaar en van de rest van het systeem zijn gepartitioneerd, kunnen ze volgens Winter afzonderlijk worden bijgewerkt zonder andere gecontaineriseerde applicaties op dezelfde server te beïnvloeden.

Bij het gebruik van containerisatietechnologieën voor IIoT is het belangrijk om na te denken over de partitioneringseigenschappen van een container (bekend als sandboxing), zei hij.

"Dus, in plaats van slechts één container die alle monolithische operaties aan de rand uitvoert, zouden we conceptueel twee containers kunnen hebben? Eén container kan bijvoorbeeld verantwoordelijk zijn voor het verkrijgen van gegevens en een andere container kan verantwoordelijk zijn voor het configureren van het edge-apparaat, "zei Winter.

Door edge-functionaliteiten tussen verschillende containers te partitioneren, kan aan de ene container meer rechten worden verleend dan aan de andere, zei Winter.

"In de nutssector zijn er verschillende stuurprogramma's voor beveiliging en dat soort dingen waarbij het partitioneren van delen van de applicatie ... voordelen zijn," zei hij.

Een applicatiecomponent die bijvoorbeeld periodiek alarmen leest, beoordeelt en rapporteert, zou alleen-lezenrechten kunnen krijgen voor interactie met een edge-apparaat. Een applicatie waarvan de rol het is om een ​​software-upgrade uit te voeren op het edge-apparaat, zou echter meer privileges moeten hebben en op een andere manier worden beveiligd, zei Winter.

"Van de kant van de onderneming kan het een beheerdersrol zijn, in tegenstelling tot een alleen-lezen rol bij het verzamelen van gegevens", zei hij. "Dus de mogelijkheid om de functies aan de rand te partitioneren, komt overeen met moderne best practices op het gebied van beveiliging."

De mogelijkheid om applicatiecomponenten te scheiden verbetert de implementatie door te voorkomen dat het gedrag van de ene applicatie een andere direct beïnvloedt, en stelt ontwikkelaars ook in staat om edge-apparaten gemakkelijker te verbeteren, aldus Winter. Bovendien kunnen ontwikkelaars door het implementeren van controles en beleid op besturingssysteemniveau - door hun ontwerp - het potentiële effect van beveiligingsinbreuken op een systeem beter beperken.

Maar omdat de applicaties gescheiden zijn, moeten ontwikkelaars een inter-process communication (IPC) -schema / remote procedure call (RPC) -schema implementeren, zodat afzonderlijke applicaties binnen het edge-knooppunt kunnen communiceren, zei Winter. Ontwikkelaars moeten deze IPC/RPC-schema's ook verifiëren en controleren, zodat ze alleen goedgekeurde interacties toestaan, voegde hij eraan toe.

"Je kunt echt geen proces op het apparaat zelf uitvoeren in een industriële omgeving, omdat de meeste apparaten heel, heel eenvoudige sensoren zijn en ze hebben een heel kleine CPU [centrale verwerkingseenheid]", zegt Stefano Iannucci, assistent-professor, Department of Computer Wetenschap en techniek, Mississippi State University.

"Dus je moet al deze sensoren en actuatoren echt zo combineren dat ze worden georkestreerd door een proces dat noodzakelijkerwijs door andere componenten wordt uitgevoerd", voegde hij eraan toe.

Deze componenten kunnen in de cloud of aan de rand worden uitgevoerd - en meestal draaien deze componenten in containers.

"Met het Industrial Internet of Things gebruik je containers om functionaliteiten te implementeren die anders niet in de dingen zelf zouden kunnen worden geïmplementeerd", zegt Iannucci.

Een voordeel van containers voor IIoT is dat ontwikkelaars volgens Forbes containerontwikkelings- en implementatieomgevingen kunnen creëren die specifieke werk- en testprocessen afdwingen voordat ze applicaties in productieomgevingen implementeren.

Forbes legde de stappen uit die ontwikkelaars nodig hebben om containers te gebruiken om applicaties voor IIoT te ontwikkelen.

"Er is een ontwikkelingspijplijn ... om de repository te creëren, waar ze alle verschillende versies van de software die ze hebben en het containersysteem bewaren, zoals Docker, de software die al deze dingen verpakt," zei Forbes.

De containerimplementatie haalt vervolgens de elementen uit de repository, bouwt een containerimage op en pusht deze naar een doelsysteem, zei hij.

"En het doelsysteem is waar het IIoT binnenkomt", zei Forbes. “Misschien heb je één doelsysteem, misschien heb je er honderd, misschien heb je er duizend. En [met containers] is het niet veel moeilijker om duizend systemen te updaten dan om er één te updaten. "Containers zijn een zeer voordelige en uitstekende manier om een ​​applicatie te beheren die op honderd of duizend plaatsen draait."

Tegelijkertijd lossen containers niet elk probleem op en nodigen ze er zelfs een paar uit. Containers zijn kortstondig - ze kunnen gemakkelijk worden gemaakt en afgebroken - dus het kan problematisch zijn om ze te zien en te volgen.


Internet of Things-technologie

  1. Waar lezen uw collega's over? Krijg inzichten uit onze beste IoT-berichten van 2019
  2. Waarom edge computing voor IoT?
  3. 5 sleutels tot IoT-productontwikkeling
  4. IoT-gegevens benutten van de edge naar de cloud en terug
  5. Live vanuit IoT World in Santa Clara!
  6. The Edge en IoT:inzichten uit IoT World 2019
  7. Open source IoT-ontwikkeltools versus door leveranciers ondersteunde tools
  8. IoT | Sterk in de ontwikkeling van mobiele apps
  9. Gedachten over opkomende technologieën, Edge en IoT
  10. Edge Computing krijgt eindelijk een framework
  11. 5 essentiële onderdelen van de ontwikkeling van IoT-apps