Was sind Container und Containerisierung?
Container nutzen Virtualisierung auf Betriebssystemebene für die Portabilität von Anwendungen
Ein Container ist eine Software, die dazu dient, Anwendungen virtuell zu verpacken und zu isolieren, um eine bessere Skalierbarkeit, Verfügbarkeit und Portabilität in verschiedenen Computerumgebungen zu ermöglichen, einschließlich Bare-Metal-Systemen, Cloud-Instanzen, virtuellen Maschinen (VMs), Linux und ausgewählten Windows- und macOS-Betriebssystemen.
Im Gegensatz zu einer virtuellen Maschine, die sowohl ein Laufzeitsystem als auch ein Gastbetriebssystem für ihre Anwendung enthält, enthält ein Container nur ein Laufzeitsystem und stützt sich stattdessen auf das Betriebssystem des Hosts.
Dadurch wird der für den Container erforderliche Arbeitsspeicher, die CPU und der Speicherplatz reduziert, was es ermöglicht, viele weitere Container in derselben Infrastruktur zu unterstützen. Während eine virtuelle Maschine mehrere Gigabyte groß sein kann, kann ein Container nur ein paar Dutzend Megabyte groß sein.
Die Effizienz der Containerisierung, auch bekannt als Virtualisierung auf Betriebssystemebene, macht sie zu einer beliebten Methode, um die Übertragbarkeit von Anwendungen über verschiedene Umgebungen hinweg zu gewährleisten, z. B. von der Entwicklung zum Test, vom Staging zur Produktion oder von einem physischen Server zu einer virtuellen Maschine in der Cloud. Die Geschwindigkeit und Einfachheit, die Container ermöglichen, sind ideal für DevOps geeignet.
Da das eigene Betriebssystem nicht hochgefahren werden muss, kann eine containerisierte Anwendung fast sofort gestartet werden - viel schneller als eine virtuelle Maschine - und ebenso schnell wieder verschwinden, wenn sie nicht mehr benötigt wird, um Host-Ressourcen freizugeben.
Produkte wie die Container-Plattform Docker und das Container-Orchestrierungssystem Kubernetes haben die Einführung der Containerisierung vereinfacht und ihr schnelles Wachstum gefördert. Gleichzeitig sind Sicherheitsprobleme bei der Containerisierung zutage getreten. Dazu gehört die Tatsache, dass Anwendungscontainer nicht vom Host-Betriebssystem auf einer VM abstrahiert sind, was es Sicherheitsbedrohungen erleichtern kann, auf das gesamte System zuzugreifen.
Wie A10 Networks die Container unterstützt
Bei der Bereitstellung von Containern in einem Cluster müssen Unternehmen sicherstellen können, dass die darin ausgeführten Anwendungen stets sicher, verfügbar und funktionsfähig sind. Thunder® Application Delivery Controller (ADC) optimiert die Bereitstellung und Sicherheit von Container-basierten Anwendungen und Diensten, die über Public Clouds oder Private Clouds laufen, indem es Containerausbalanciert, die Kommunikation mit Containern sichert, Container und den Cluster als Ganzes überwacht und kontinuierliche Upgrades für Microservices innerhalb von Containern ermöglicht, ohne den Dienst zu unterbrechen.
Verwandte Ressourcen
- Was ist Kubernetes Ingress?
- Was ist eine Private Cloud?
- Was ist eine public Cloud?
- Was ist eine Hybrid Cloud?
- Die 7 wichtigsten Anforderungen für einen optimierten Verkehrsfluss und Sicherheit in Kubernetes
- Weiterentwicklung der Anwendungsbereitstellung für eine hybride, multiwolkige und containerisierte Welt
- Bereitstellen eines Ingress Controllers in Azure Kubernetes
- Wie funktioniert der Lastausgleich in einer hybriden oder Multi-Cloud-Welt?
- Was sind Container und warum brauchen wir sie?
- Lastausgleich für containerisierte Anwendungen
- Container-basierte Arbeitslasten auf AWS und anderen Clouds
- Vereinfachung des erweiterten Lastenausgleichs in einer Multi-Cloud-Umgebung
- Wie man einen Cloud Load Balancer auswählt