kf_bhdatacontainers_052020.jpg

Een korte geschiedenis van datacontainers

Datacontainers zijn cruciaal geworden voor het efficiënt transporteren van data naar een publieke cloud en terug naar een privaat platform. Containers zijn softwarepakketten die alles bevatten wat nodig is om de software te laten werken. Dit omvat bibliotheken, systeemtools en instellingen, evenals een uitvoerbaar programma. Bovendien bieden containers een extra beveiligingslaag omdat de software geen invloed heeft op hostbesturingssystemen.

EEN container is geïsoleerd van andere containers, hoewel het via goed gedefinieerde kanalen met die containers kan communiceren. Alle containers binnen een systeem werken via een enkele kernel en zijn bijgevolg veel kosteneffectiever dan virtuele machines. Het belangrijkste verschil tussen containers en virtuele machines is dat containers dezelfde kernel van het hostsysteem zullen delen, en virtuele machines zal niet.

EEN kernel is een programma dat fungeert als de kern van het besturingssysteem van een computer en volledige controle biedt over alles in het systeem. Het ondersteunt en versnelt interacties tussen software- en hardwarecomponenten. In de meeste systemen wordt het meestal kort na de bootloader gedownload en vervolgens de opstart- en invoer- / uitvoerverzoeken van de software verwerkt door de verzoeken te vertalen in gegevensverwerkingsopdrachten voor de CPU. De kernel bestuurt ook randapparatuur zoals toetsenborden en printers, en geheugen.

Raghu Kishore Vempati, directeur technologie, onderzoek en innovatie bij Altran, zei:

“In 2020 zullen organisaties enige versnelling zien in de transformatie naar een op microservices gebaseerde architectuur op basis van containers, vanuit een servicegeoriënteerde architectuur (SOA). De acceptatie van Kubernetes als orkestratieplatform zal daarom aanzienlijk toenemen. “

Vroege dagen van datacontainers

De oorsprong van containers komt voort uit het persoonlijke project van een Finse student, Linus Torvalds, die in 1991 een nieuwe kernel van het besturingssysteem creëerde en deze in 1992 gratis maakte voor gebruik. De resulterende “Linux-kernel” is gedurende zijn geschiedenis gekenmerkt door een constante groei. Hij en Shinya Yamanaka werden geëerd met de 2012 Millennium Technology Prize voor “erkenning van zijn creatie van een nieuw open source besturingssysteem voor computers, leidend tot de veelgebruikte Linux-kernel”, door de Technology Academy Finland. (Microsoft, na een grote interne strijd met betrekking tot concurrentie en winst versus open source-technologie en winst, of, meer beknopt, producten versus diensten, begon de open-source Linux-kernel in het jaar 2009 te ondersteunen en te gebruiken.)

In 2000, FreeBSD (een gratis en open-source Unix-achtig besturingssysteem) “gevangenissen”Beschikbaar kwam. Het jail-mechanisme stelt systeembeheerders in staat om een ​​FreeBSD-computersysteem op te splitsen in een aantal onafhankelijke mini-systemen – jails genaamd – die elk dezelfde kernel delen met minimale overheadkosten. De mogelijkheid om meerdere jails op te zetten biedt uitstekende flexibiliteit met betrekking tot softwarebeheer. Een beheerder kan applicatiescheiding bieden door simpelweg verschillende applicaties in elke jail te installeren. Dit kan een jail creëren met alle geïnstalleerde applicaties of mix en match de software die in elke jail is geïnstalleerd.

Opgemerkt moet worden dat gevangenissen nog steeds populair zijn (ze zijn gratis). FreeBSD jails kunnen de beveiliging van een server verhogen door een scheiding te creëren tussen de jail en andere jails, evenals het basissysteem. FreeNAS® biedt twee manieren om een ​​gevangenis te creëren. De Tovenaar van de gevangenis biedt een gemakkelijke manier om creëer een gevangenis, snel. Geavanceerde gevangeniscreatie biedt een alternatief, waarbij elke mogelijke gevangenisoptie configureerbaar is. Deze versie wordt aanbevolen voor meer gevorderde gebruikers met specifieke behoeften.

Solaris-containers

In 2004, Solaris containers zijn uitgebracht door Sun Microsystems. Hoewel Solaris-containers niet zo aanpasbaar of flexibel zijn als Linux-containers, zijn ze redelijk gemakkelijk om mee te werken en bieden ze een aantal krachtige functies. Deze containers combineren systeembronnen met grenzen die ‘zones’ worden genoemd. Elke zone heeft een individuele knooppuntnaam, biedt toegang tot fysieke of virtuele netwerkinterfaces en toegewezen opslag. Zones vereisen geen minimale hoeveelheid speciale hardware, met uitzondering van de benodigde schijfopslag die voor de configuratie wordt gebruikt. Solaris-containers hebben geen speciale CPU, fysieke netwerkinterface, geheugen of HBA nodig. Elke zone is omgeven door een veiligheidsgrens die voorkomt dat een zone de gebeurtenissen in andere zones observeert of ermee communiceert. Individuele zones kunnen worden geconfigureerd met een aparte gebruikerslijst.

Procescontainers

In 2006 hebben Paul Menage en Rohit Seth, die voor Google werken, het cpusets mechanisme in de Linux-kernel. Hun ontwikkeling van proces containers heeft containerisatie aanzienlijk vooruitgeschoven, door te eisen dat wijzigingen minimaal opdringerig zijn en weinig invloed hebben op de complexiteit, prestaties, codekwaliteit en toekomstige compatibiliteit. Eind 2007 is de naam gewijzigd in ‘controlegroepen‘In een mislukte poging om de mogelijke verwarring te vermijden die wordt veroorzaakt door de meervoudige betekenissen van het woord’ container ‘.

2013 was een groot jaar

Laat me dat voor je bevatten werd in 2013 aan het publiek voorgesteld. Het was een open-source-vorm van de containerstapel van Google en leverde Linux ‘applicatiecontainers’. Het ontwerp van de applicatie kan “containerbewustzijn” bevatten, waardoor de applicatie zijn eigen subcontainers kan maken en beheren. LMCTFY werd stopgezet in 2015, toen Google begon met het doneren van kernconcepten van LMCTFY aan een open source-organisatie genaamd libcontainer, nu onderdeel van GitHub.

Het Docker-project begon in Frankrijk als een doel van dotCloud (nu Docker, Inc..), een platform-as-a-service-bedrijf. In maart 2013 werd Docker geïntroduceerd als open source-software voor het publiek en de populariteit van containers explodeerde. Docker bewees zijn superioriteit door een compleet ecosysteem aan te bieden voor het beheer van containers. Momenteel gebruikt Docker een containerplatform dat traditionele applicaties en microservices, en maakt gebruik van Linux- en Windows-gebaseerde applicaties. Docker is momenteel erg populair.

Kubernetes

In 2014 lanceerde Google Kubernetes als een open source-versie van Borg. (Borg is het clusterbeheersysteem van Google, ontwikkeld in 2003.) De beslissing om te lanceren was gedeeltelijk gebaseerd op de filosofie ‘Alles bij Google draait in een container’, die hun verschillende serviceaanbiedingen ondersteunde en hun eigen interne concurrentiestrijd versus open source veroorzaakte gedrag. Kubernetes wordt nu onderhouden door de Cloud Native Computing Foundation. Docker, Microsoft, IBM en RedHat zijn leden van de open source Kubernetes-community. Organisaties en bedrijven blijven in een steeds sneller tempo gecontaineriseerde software gebruiken, wat het succes van Kubernetes stimuleert.

Kubernetes is een systeem voor het indelen van containers. Het automatiseert schaalvergroting, beheer en applicatie-implementatie; ondersteunt een breed scala aan containerhulpmiddelen; en werkt goed met Docker. Het doel is om een ​​”platform te bieden voor het automatiseren van implementatie, schaalvergroting en bewerkingen van applicatiecontainers over clusters van hosts”. Veel openbare clouds bieden Kubernetes aan of bieden infrastructuur als een service.

Josh Komoroske, een senior DevOps-engineer voor StackRox, verklaarde:

“Nu steeds meer organisaties hun gebruik van gecontaineriseerde software blijven uitbreiden, zal Kubernetes in de toekomst steeds meer het de facto implementatie- en orkestratiedoel worden.”

Het container-ecosysteem

rkt (uitgesproken als “raket”) werd aangenomen door de Cloud Native Computing Foundation (CNCF) in 2017. Dit was hetzelfde jaar dat Docker het Containerd project aan de CNCF. rkt is een applicatie container motor ontworpen voor cloud-native omgevingen. Containerd richt zich op looptijd, en wordt beschreven als alles wat nodig is om een ​​containerplatform te bouwen. Het containerecosysteem is een gemeenschapsbrede inspanning geworden met de toewijding om open source-projecten te ondersteunen. Dit heeft op zijn beurt geleid tot meer samenwerking tussen projecten en een gemeenschap die zich richt op het verbeteren van het containergebruik.

Beveiliging is een belangrijk probleem met een open ecosysteem dat gemakkelijk containerafbeeldingen deelt. Een ontwikkeling is het ontstaan ​​van meerdere containerregisters. Een register scant containerimages en containerrepository’s en slaat ze op op zwakke punten in de beveiliging. Docker gebruikt dit als een veiligheidsmaatregel en biedt een alternatief voor openbare repositories van niet-geverifieerde uitgevers, wat een beveiligingsrisico zou kunnen zijn. Dit type beveiliging helpt om vervormde of gemanipuleerde gegevens te minimaliseren, waardoor de gegevenskwaliteit wordt verbeterd.

De meest populaire IaaS-providers bieden hun eigen containerregisters. Dit is vooral handig voor projecten die zwaar zijn geïnvesteerd in AWS-, Azure- of Google Cloud-platforms. Deze worden geleverd met opslag, scannen van standaardrepository’s, monitoring, meer geavanceerde toegangscontroles en verschillende andere tools voor netwerken. Sommige registers van derden, zoals Quay en GitLab, winnen ook aan populariteit. De opties voor registers zijn talrijker dan orkestratietools, en de markt is wijd open. Als alternatief kunnen beveiligingsdiensten van derden voor containers (Draaislot en Aqua Beveiliging) bieden beveiliging die verder gaat dan de standaardinstellingen.

KubeEdge

KubeEdge is een open source-systeem dat is ontworpen voor het gebruik van native gecontaineriseerde applicaties om het internet van dingen (IoT) op het rand. Het staat nog in de kinderschoenen. Het is gebaseerd op Kubernetes en biedt de fundamentele infrastructuurondersteuning die nodig is voor netwerk- en metadatasynchronisatie tussen de cloud en de edge. KubeEdge heeft een licentie onder Apache 2.0 en is gratis voor commercieel en persoonlijk gebruik. Het doel van KubeEdge is om een ​​open platform te creëren dat edge computing ondersteunt en containerized application orchestration services uitbreidt naar hosts aan de edge.

Vempati van Altran merkte op:

“Omdat IoT en edge computing in 2020 aan kracht blijven winnen, zal er meer aandacht komen voor het hosten van Kubernetes op apparaten en omgevingen met een zeer lage resource – CPU, geheugen – footprint.”

Afbeelding gebruikt onder licentie van Shutterstock.com

Add a Comment

Your email address will not be published. Required fields are marked *