Managed Docker

Docker Hosting in der Hetzner Cloud

docker

  • Docker Standalone (single-node)
  • Management GUI mit SSO

ab 99.95 € pro Monat (Details)

Kostenlose Erstberatung →

← zurück

Geringer Ressourcenverbrauch

Im Vergleich zu virtuellen Servern sind Container wesentlich ressourcenschonender, da kein komplettes Betriebssystem installiert werden muss.

Ideal für Microservices

Container lassen sich optimal für Microservices nutzen. Wenn eine Anwendung die Aufteilung in Microservices unterstützt, lässt sich diese auf mehrere Container verteilen.

Schnelle Bereitstellung

Container lassen sich sehr schnell bereitstellen. Die Erstellung läuft über Images, die in wenigen Sekunden einsatzbereit sind.

Skalierbar

Container sind sehr skalierbar. Werden für Workloads mehrere Container benötigt, lassen sich diese sehr schnell erstellen und bereitstellen.

Portabel

Ein Container enthält alles, was ein Programm zum Ausführen benötigt. So können Anwendungen problemlos zwischen verschiedenen Umgebungen ausgetauscht werden.

Management GUI

Für die Verwaltung Ihrer Container steht Ihnen eine dedizierte Instanz von Portainer zur Verfügung.

Leistungsumfang

Automatisierte Updates
Self-Service
24/7 Monitoring
Support Basic Support inklusive
Backups 0.10 € / GB / Monat
100 GB inklusive
Consulting & Optimierung nach Aufwand
Mindest-Vertragslaufzeit 12 Monate

Die angegebenen Preise verstehen sich als monatlich fällige Netto-Preise für das Management Ihrer Systeme. Die Kosten für Hardware und Infrastruktur für Ihre Managed Systeme hängen davon ab, ob Sie diese von uns beziehen oder selbst stellen möchten.

ayedo Fleet und ayedo Cruise stehen standardmäßig auf Infrastruktur der Hetzner Online GmbH zur Verfügung. Weitere Informationen zu anfallenden Infrastruktur-Kosten finden Sie hier.

Als Kunden von ayedo Fleet und ayedo Cruise erhalten Sie auf Wunsch ein Freikontingent an Backups sowie Zugang zu unserem Basic Support inklusive.

Jetzt loslegen →

Noch besser mit ayedo Cruise

Bring-Your-Own-App

Bring-Your-Own-App

Ihre Fachanwendung

Containerisiert und paketiert für Kubernetes

ab 299,95 € pro Monat

Mehr erfahren

PostgreSQL

PostgreSQL

Für Ihre Daten nur das Beste

PostgreSQL ist die weltweit fortschrittlichste relationale Open-Source-Datenbank.

ab 99,95 € pro Monat

Mehr erfahren

KeyDB

KeyDB

Der skalierbare Key-Value-Store

Nutzen Sie Redis Enterprise Funktionen wie Multi-Master-Clustering mit KeyDB.

ab 99,95 € pro Monat

Mehr erfahren

MariaDB

MariaDB

SQL Datenbank

MariaDB Server ist eine der beliebtesten relationalen Open-Source-Datenbanken.

ab 99,95 € pro Monat

Mehr erfahren

Minio

Minio

Object Storage

MinIO ist ein s3-kompatibler Open-Source Objektspeicher.

ab 99,95 € pro Monat

Mehr erfahren

NATS

NATS

Continuous Delivery

Argo CD ist ein deklaratives Continuous-Delivery-Tool für Kubernetes.

ab 99,95 € pro Monat

Mehr erfahren

Katalog ansehen →

Was ist Docker?

Als Entwickler haben Sie wahrscheinlich irgendwann in Ihrem Berufsleben von Docker gehört. Und Sie sind sich wahrscheinlich bewusst, dass es für jeden Anwendungsentwickler zu einer wichtigen Technologie geworden ist, die er kennen muss.

Ein wenig Container-Geschichte

Docker ist eine Container-Laufzeitumgebung. Viele Leute denken, dass Docker der erste seiner Art war, aber das stimmt nicht - Linux-Container gibt es schon seit den 1970er Jahren.

Docker ist sowohl für die Entwickler- als auch für die Container-Gemeinschaft wichtig, weil es die Verwendung von Containern so einfach gemacht hat, dass jeder damit angefangen hat.

Was sind Container?

Container oder Linux-Container sind eine Technologie, die es uns ermöglicht, bestimmte Kernel-Prozesse zu isolieren und ihnen vorzugaukeln, dass sie die einzigen sind, die auf einem völlig neuen Computer laufen.

Im Gegensatz zu virtuellen Maschinen kann ein Container den Kernel des Betriebssystems gemeinsam nutzen, wobei nur die verschiedenen Binärdateien/Bibliotheken geladen werden.

Mit anderen Worten: Sie müssen nicht ein ganz anderes Betriebssystem (das so genannte Gastbetriebssystem) in Ihrem Hostbetriebssystem installieren. Sie können mehrere Container innerhalb eines einzigen Betriebssystems laufen lassen, ohne dass mehrere verschiedene Gastbetriebssysteme installiert sein müssen.

Docker

Source: Docker

Dadurch sind Container viel kleiner, schneller und effizienter. Während das Hochfahren einer VM etwa eine Minute dauern und mehrere Gigabyte wiegen kann, wiegt ein Container im Durchschnitt 400 bis 600 MB (die größten).

Außerdem dauert das Hochfahren nur Sekunden. Das liegt vor allem daran, dass kein ganzes Betriebssystem hochgefahren werden muss, bevor der Prozess läuft.

Und das alles begann mit sechs Zeichen.

Die Anfänge von Containern

Die Geschichte der Container beginnt 1979 mit Unix v7. Damals war ich noch nicht einmal geboren, und mein Vater war 15 Jahre alt. Gab es 1979 schon Container? Nein!

1979 wurde mit der Unix-Version 7 ein Systemaufruf namens chroot eingeführt, der den Anfang dessen darstellte, was wir heute als Prozessvirtualisierung kennen.

Der chroot-Aufruf ermöglichte es dem Kernel, das scheinbare Stammverzeichnis eines Prozesses und seiner Kinder zu ändern.

Kurz gesagt, der Prozess denkt, dass er allein auf dem Rechner läuft, weil sein Dateisystem von allen anderen Prozessen getrennt ist. Derselbe Syscall wurde 1982 in BSD eingeführt. Aber erst zwei Jahrzehnte später hatten wir die erste weit verbreitete Anwendung davon.

Im Jahr 2000 suchte ein Hosting-Anbieter nach besseren Möglichkeiten, die Websites seiner Kunden zu verwalten, da sie alle auf demselben Rechner installiert waren und um dieselben Ressourcen konkurrierten.

Diese Lösung wurde Jails genannt und war einer der ersten wirklichen Versuche, Dinge auf der Prozessebene zu isolieren. Jails erlaubten es jedem FreeBSD-Benutzer, das System in mehrere unabhängige, kleinere Systeme zu partitionieren (die Jails genannt werden). Jede Jail kann ihre eigene IP-Konfiguration und Systemkonfiguration haben.

Jails waren die erste Lösung, die den Einsatz von chroot erweiterte und nicht nur die Trennung auf Dateisystemebene ermöglichte, sondern auch die Virtualisierung von Benutzern, Netzwerken, Subsystemen und so weiter.

Im Jahr 2008 wurde LXC (LinuX Containers) eingeführt. Zu dieser Zeit war es die erste und vollständigste Implementierung eines Containerverwaltungssystems. Es verwendete Kontrollgruppen, Namespaces und vieles von dem, was bis dahin entwickelt worden war. Der größte Fortschritt bestand darin, dass es direkt von einem Unix-Kernel verwendet wurde und keine Patches benötigte.

Docker

Im Jahr 2010 wurde Docker schließlich von Solomon Hykes und Sebastien Pahl im Rahmen der Y Combinator-Startup-Inkubatorgruppe entwickelt. Im Jahr 2011 wurde die Plattform eingeführt.

Ursprünglich startete Hykes das Docker-Projekt in Frankreich als Teil eines internen Projekts innerhalb von dotCloud, einem PaaS-Unternehmen, das 2016 geschlossen wurde.

Docker trug damals nicht viel zu den Container-Laufzeiten bei - der größte Beitrag von Docker zum Container-Ökosystem war die Bekanntheit. Seine benutzerfreundliche CLI und seine Konzepte demokratisierten die Verwendung von Containern für gewöhnliche Entwickler und nicht nur für Deep-Hacking-Unternehmen, die aus irgendeinem Grund Container benötigten.

Nach 2013 begannen mehrere Unternehmen, Docker als Standard-Container-Laufzeitumgebung einzuführen, da es die Verwendung von Containern weltweit standardisierte. Im Jahr 2013 kündigte Red Hat eine Zusammenarbeit mit Docker an, 2014 waren Microsoft, AWS, Stratoscale und IBM an der Reihe.

Im Jahr 2016 wurde die erste Version von Docker für ein anderes Betriebssystem als Linux angekündigt. Windocks veröffentlichte eine Portierung des OSS-Projekts von Docker, die auf Windows laufen sollte. Und Ende desselben Jahres gab Microsoft bekannt, dass Docker nun nativ unter Windows durch Hyper-V unterstützt wird.

2019 kündigte Microsoft die WSL2 an, mit der Docker unter Windows ausgeführt werden kann, ohne dass eine virtualisierte Maschine auf Hyper-V erforderlich ist. Docker ist nun nativ plattformübergreifend und nutzt weiterhin den Container-Ansatz von Linux. Im Jahr 2020 wurde Docker schließlich weltweit zur ersten Wahl für Container. Dies geschah nicht unbedingt, weil es besser ist als andere, sondern weil es alle Implementierungen unter einer einzigen, einfach zu verwendenden Plattform mit einer CLI und einem Daemon vereint. Und all dies geschieht mit einfachen Konzepten, die wir in den nächsten Abschnitten erkunden werden.

Wie funktioniert Docker?

Docker packt eine Anwendung und alle ihre Abhängigkeiten in einen virtuellen Container, der auf jedem Linux-Server laufen kann. Aus diesem Grund werden sie auch Container genannt. Denn sie enthalten alle notwendigen Abhängigkeiten in einem einzigen Stück Software.

Docker setzt sich aus den folgenden Elementen zusammen:

Docker-Container

Container sind Abstraktionen der Anwendungsschicht. Sie packen den gesamten Code, die Bibliotheken und die Abhängigkeiten zusammen. Dadurch können mehrere Container auf demselben Host ausgeführt werden, so dass die Ressourcen dieses Hosts effizienter genutzt werden können.

Jeder Container wird als isolierter Prozess im Userspace ausgeführt und benötigt aufgrund seiner geschichteten Architektur weniger Platz als normale VMs.

Diese Schichten werden als Zwischenabbilder bezeichnet, die jedes Mal erstellt werden, wenn Sie einen neuen Befehl in der Dockerdatei ausführen, z. B. wenn Sie eine Dockerdatei wie diese haben:

FROM node:stable
COPY . /usr/src/app
WORKDIR /usr/src/app
RUN npm install grpc
RUN npm install
ENTRYPOINT ["npm", "start"]

Bei jedem Befehl wie COPY oder RUN erstellen Sie eine weitere Schicht über Ihrem Container-Image. Dies ermöglicht es Docker, jeden Befehl in einen separaten Teil aufzuteilen und zu trennen. Wenn Sie also dieses node:stable-Image später wieder verwenden, muss es nicht alle Schichten davon ziehen, da Sie dieses Image bereits installiert haben.

Außerdem sind alle Schichten gehasht, was bedeutet, dass Docker diese Schichten zwischenspeichern und die Erstellungszeiten für Schichten optimieren kann, die sich über mehrere Erstellungen hinweg nicht geändert haben. Sie müssen nicht alle Dateien neu erstellen und kopieren, wenn sich der COPY-Schritt nicht geändert hat, was den Zeitaufwand für die Build-Prozesse erheblich reduziert.

Am Ende des Build-Prozesses erstellt Docker eine neue leere Schicht über allen Schichten, die sogenannte Thin-Writable-Schicht. Auf diese Schicht greifen Sie zu, wenn Sie docker exec -it verwenden. Auf diese Weise können Sie interaktive Änderungen am Image vornehmen und diese mit docker commit übertragen, genau wie bei einer mit Git getrackten Datei.

Diese Architektur mit unterschiedlichen Hash-Ebenen ist dank des AuFS-Dateisystems möglich. Dabei handelt es sich um ein geschichtetes FS, das es erlaubt, Dateien und Verzeichnisse als Schichten übereinander zu legen.

AuFs

Source: Docker

Schichten können zwischen Versionen per Hash-Verfahren unterschieden werden. Auf diese Weise kann Docker bei der Erstellung eines Abbilds prüfen, ob sich eine Schicht geändert hat, und entscheiden, ob sie neu erstellt werden muss, was viel Zeit spart.

Wenn Sie also das Ubuntu-Image bereits auf Ihren Computer heruntergeladen haben und ein neues Image erstellen, das sich auf eine oder mehrere Schichten dieses Images stützt, wird Docker diese nicht erneut erstellen. Es wird einfach dieselben Schichten wiederverwenden.

Layers

Source: Packt

Wenn Sie sich eingehender mit den Layerns befassen möchten, finden Sie in diesem Artikel ausführliche Informationen darüber, wie Sie sie finden, auflisten und verwalten können.

Warum Docker-Container großartig sind

Wahrscheinlich haben Sie schon einmal den kultigen Satz "Das funktioniert auf meinem Rechner" gehört. Nun, warum geben wir diesen Rechner nicht dem Kunden?

Das ist genau das Problem, das Docker und Container im Allgemeinen lösen. Ein Docker-Container ist eine gepackte Sammlung aller Bibliotheken und Abhängigkeiten einer Anwendung, die bereits vordefiniert und zur Ausführung bereit ist.

Viele Unternehmen sind von VMs auf Container umgestiegen, nicht nur, weil diese viel leichter und schneller zu starten sind, sondern auch, weil sie extrem einfach zu warten sind.

Ein einzelner Container kann über sein Dockerfile versioniert werden (zu Images kommen wir im nächsten Abschnitt), so dass es für einen Entwickler (oder sogar ein kleines Entwicklerteam) recht einfach ist, ein ganzes Ökosystem von Containern zu betreiben und zu warten. Auf der anderen Seite bräuchte man eine Person, die sich um die Infrastruktur kümmert, nur um VMs zu betreiben und zu warten.

VPC

Source: Docker

Heißt das, dass wir keine VMs mehr brauchen? Nein, im Gegenteil, VMs werden nach wie vor dringend benötigt, wenn Sie ein komplettes Betriebssystem für jeden Kunden haben wollen oder die gesamte Umgebung nur als Sandkasten benötigen. VMs werden in der Regel als Zwischenschicht verwendet, wenn Sie ein großes Server-Rack haben und mehrere Kunden es nutzen.

Die Benutzerfreundlichkeit und Wartungsfreundlichkeit führt uns zu einem weiteren wichtigen Aspekt, warum Container so großartig sind: Es ist für ein Unternehmen viel billiger, Container zu verwenden als vollwertige VMs.

Das liegt nicht daran, dass die Infrastruktur oder die Hardware billiger ist, sondern daran, dass weniger Mitarbeiter für die Wartung von Containern benötigt werden, was bedeutet, dass Sie Ihr Team besser organisieren können, um sich auf das Produkt zu konzentrieren, anstatt sich um die Wartung zu kümmern.

Was die Einsparungen betrifft, so können auf einer einzigen mittelgroßen VM etwa 3 bis 8 Container laufen. Dies hängt davon ab, wie viele Ressourcen Ihre Container verwenden und wie viel des zugrunde liegenden Betriebssystems gebootet werden muss, bevor die gesamte Anwendung ausgeführt wird.

Bei einigen Sprachen wie Go können Sie ein Image erstellen, das nur die kompilierte Binärdatei enthält und sonst nichts. Das bedeutet, dass der Docker-Container viel weniger zu laden hat und daher weniger Ressourcen verbraucht. Auf diese Weise können Sie mehr Container pro VM aufsetzen und Ihre Hardware effizienter nutzen.

Da Container so konzipiert sind, dass sie kurzlebig sind, gehen alle Daten in ihnen verloren, wenn der Container gelöscht wird. Das ist großartig, denn so können wir Container für ausbaufähige Aufgaben wie CI verwenden.

Die Verwendung von Containern hat eine ganz neue Ebene von DevOps-Fortschritten gebracht. Jetzt können Sie einfach eine Vielzahl von Containern aufsetzen, von denen jeder einen kleinen Schritt in Ihrer Deployment-Pipeline ausführt, und sie dann einfach löschen, ohne sich Gedanken darüber zu machen, ob Sie etwas zurückgelassen haben.

Die zustandslose Natur von Containern macht sie zum perfekten Werkzeug für schnelle Workloads.

Nachdem wir nun gesehen haben, wie großartig Container sind, wollen wir nun verstehen, wie wir einen solchen Container bauen können!

Was sind Docker-Images?

Docker-Images sind Anweisungen, die in einer speziellen Datei namens Dockerfile geschrieben sind. Sie hat eine eigene Syntax und definiert, welche Schritte Docker unternimmt, um Ihren Container zu erstellen.

Da Container nur aus mehreren Schichten von Änderungen bestehen, wird mit jedem neuen Befehl, den Sie in einem Docker-Image erstellen, eine neue Schicht im Container erzeugt.

Die letzte Schicht ist eine so genannte dünne beschreibbare Schicht. Eine leere Schicht, die vom Benutzer geändert und mit dem Befehl docker commit übertragen werden kann.

Hier ein Beispiel für ein einfaches Image für eine Node.js-Anwendung:

FROM node:stable
COPY . /usr/src/app/
RUN npm install && npm run build
EXPOSE 3000
ENTRYPOINT ["npm", "start"]

In diesem einfachen Beispiel erstellen wir ein neues Image. Alle Images basieren auf einem bestehenden Image oder dem Scratch-Image.

Diese Images werden von einer Container Registry heruntergeladen, einem Repository zur Speicherung von Container-Images. Die gängigste davon ist der Docker Hub, aber Sie können auch eine private Registry mit Cloud-Lösungen wie Azure Container Registry erstellen.

Wenn Sie docker build . im selben Verzeichnis wie die Dockerdatei ausführen, beginnt der Docker-Daemon mit der Erstellung des Abbilds und verpackt es, damit Sie es verwenden können. Dann können Sie docker run ausführen, um einen neuen Container zu starten.

Beachten Sie, dass wir bestimmte Ports im Dockerfile freilegen. Docker ermöglicht es uns, Netzwerke innerhalb unseres eigenen Betriebssystems zu trennen, d. h. Sie können Ports von Ihrem Computer auf den Container übertragen und umgekehrt. Außerdem können Sie mit docker exec Befehle innerhalb von Containern ausführen.

Lassen Sie uns dieses Wissen in die Praxis umsetzen.

Wofür wird Docker verwendet?

Nachdem wir nun gesehen haben, wie man einen Docker-Container erstellt, wollen wir uns nun mit einigen praktischen Anwendungen von Docker beschäftigen und wie Sie das Beste daraus machen können.

Kurzlebige Datenbanken

Haben Sie schon einmal versucht, eine Anwendung zu entwickeln, für deren Ausführung eine Datenbank erforderlich ist? Oder schlimmer noch, haben Sie versucht, die Anwendung eines anderen zu starten, die eine Datenbank benötigt, die Sie nicht installiert haben?

Die alte Lösung bestand darin, zuerst die Datenbank zu installieren und dann die Anwendung auszuführen. Mit Docker müssen Sie nur noch den Datenbank-Container ausführen. Lassen Sie uns einen einfachen MongoDB-Container ausführen: docker run -p 27017:27017 --name my-ephemeral-db mongo

Das war's! Jetzt können Sie von Ihrem Computer aus über Port 27017 auf Ihre Datenbank zugreifen, so wie Sie es normalerweise tun würden.

Persistente Datenbanken

Das Problem mit dem vorherigen Beispiel ist, dass alle Daten verloren gehen, wenn Sie den Container entfernen. Was passiert also, wenn Sie eine lokale Datenbank betreiben wollen, ohne sie installieren zu müssen, aber die Daten behalten wollen, nachdem sie gelöscht wurden? Sie können Docker an ein Volume binden!

Wenn Sie Docker an ein lokales Volume binden, binden Sie im Wesentlichen Ihr Dateisystem in den Container ein oder andersherum. Schauen wir mal: docker run -p 27017:27017 -v /home/my/path/to/db:/data/db --name my-persistent-db mongo

Einweg-Tools

Eine andere Sache, die alle Entwickler tun: Wir installieren Anwendungen, die wir nur einmal verwenden. Zum Beispiel diese einfache CLI, um auf die alte Datenbank zuzugreifen, oder diese einfache GUI für einen CI-Server.

Für viele Tools gibt es bereits Docker-Container, die Sie auf diese Weise verwenden können, sodass Sie nicht noch ein weiteres Tool in Ihrem Notebook installieren müssen.

Das beste Beispiel ist Redis. Es hat das redis-cli in einem anderen Container eingebaut, so dass Sie das redis-cli nicht in Ihrer Shell installieren müssen, wenn Sie es kaum benutzen.

Stellen Sie sich vor, Sie richten eine Redis-Instanz mit docker run -d --name redis redis --bind 127.0.0.1 ein, die an die Schnittstelle localhost gebunden ist. Sie können über einen anderen Container darauf zugreifen: docker run --rm -it --network container:redis redis-cli -h 127.0.0.1

Das --rm-Flag teilt Docker mit, dass der Container entfernt werden soll, sobald er gestoppt wird, während das -it-Flag angibt, dass wir eine interaktive Sitzung (mit einer Shell) wünschen und eine TTY benötigen.

Ausführen mehrer Container

Wenn Sie eine Anwendung testen müssen, die von einer anderen Anwendung abhängt, wie würden Sie das tun? Docker macht es Ihnen leicht, indem es docker-compose bereitstellt. Es ist ein weiteres Werkzeug in Ihrem Werkzeugkasten, mit dem Sie eine Datei docker-compose.yml erstellen können, die Ihre Umgebung beschreibt.

Die Datei sieht wie folgt aus:

version: "3.8"
services:
web:
build: .
ports:
- "5000:5000"

redis:
image: "redis:alpine"
ports:
- "6379:6379"

Wie Sie sehen können, definieren wir zwei Dienste, einer heißt web und führt docker build auf dem Pfad web.build aus. Das ist ein Dockerfile.

Danach wird der Port 5000 sowohl auf dem Host als auch im Container freigegeben. Der andere Dienst ist redis, der das redis-Image auf Port 6379 abruft und ausführt.

Das Beste daran ist, dass die Netzwerkschicht gemeinsam genutzt wird, d. h. man kann vom Webdienst aus auf redis zugreifen, indem man einfach redis und den Port eingibt.

Sie können diese Datei mit einem einfachen docker-compose up starten und sehen, wie die Magie passiert.

Was gibt's Neues bei ayedo?

Vom Lernenden zum Profi 🚀

Kennt ihr das? Ihr schließt eure Ausbildung oder Weiterbildung ab, startet voller Vorfreude in euren ersten Job in einem Softwareunternehmen und plötzlich seid ihr umgeben von lauter Profis mit unglaublichen Skills. 😱

Aber hey, erinnert euch daran: Jeder Experte hat mal klein angefangen. Auch sie hatten ihre Anfänge und Herausforderungen und sind heute noch manchmal von kniffligem Code herausgefordert. Das Beste daran? Sie sind immer bereit zu helfen und ihr Wissen zu teilen, wenn ihr mal feststeckt. 🤝

Teilt eure ersten Job-Erlebnisse mit uns! Wie habt ihr euch gefühlt?

#ErsterJob #SoftwareEntwicklerLeben #VomAnfängerZumProfi #weareayedo #saarland #saarbrücken

Check das auf Instagram

Fabian Peter · 04.07.2024 · ⏳ 3 Minuten

ESCRA und ayedo revolutionieren ZTNA mit Kubernetes und Cloud-Hosting

Erfolgreiche Partnerschaft: ESCRA und ayedo revolutionieren ZTNA mit Kubernetes und Cloud-Hosting Strategische Partnerschaften sind entscheidend, um Stärken zu bündeln und gemeinsam zu wachsen. Ein …

Lesen →

ESCRA und ayedo revolutionieren ZTNA mit Kubernetes und Cloud-Hosting
Fabian Peter · 01.07.2024 · ⏳ 4 Minuten

Wie bewältigt man 160 Millionen User im Monat? Mit K8s und Docker!

Hochverfügbare SaaS-Infrastruktur für mehr als 2 Milliarden Requests pro Monat In der heutigen digitalisierten Welt sind Ausfallsicherheit und Skalierbarkeit unverzichtbare Merkmale jeder …

Lesen →

Wie bewältigt man 160 Millionen User im Monat? Mit K8s und Docker!
Fabian Peter · 13.06.2024 · ⏳ 3 Minuten

Schutz vor Cyber-Bedrohungen: Ein umfassender Leitfaden zum Cyber Risiko Check

![Schutz vor Cyber-Bedrohungen: Ein umfassender Leitfaden zum Cyber Risiko Check] (ein-umfassender-leitfaden-zum-cyber-risiko-check.png) Ein effektiver Weg, um diese Risiken zu minimieren, ist der …

Lesen →

Schutz vor Cyber-Bedrohungen: Ein umfassender Leitfaden zum Cyber Risiko Check
Fabian Peter · 10.06.2024 · ⏳ 3 Minuten

Compliance leicht gemacht: Die ISO27001 als Schlüssel zur Einhaltung gesetzlicher Vorschriften

Compliance leicht gemacht: Die ISO27001 als Schlüssel zur Einhaltung gesetzlicher Vorschriften Die Einhaltung gesetzlicher Anforderungen und Datenschutzrichtlinien ist für Unternehmen eine ständige …

Lesen →

Compliance leicht gemacht: Die ISO27001 als Schlüssel zur Einhaltung gesetzlicher Vorschriften

Alle Blogs →

Häufig gestellte Fragen

Warum ayedo Cruise?

Mit ayedo Cruise erhalten Sie Zugriff auf eine wahlweise hochverfügbare SaaS-Anwendung wie z.B. GitLab. Bei Bedarf unterstützt Sie unser Plattfom Team mit indivduellen Lösungen und Managed Services.

Mehr Flexibilität - Starten sie klein und erweitern Sie ihre Ressourcen bei Bedarf. Schnell, kosteneffizient und ohne User-Limit.

Mehr Sicherheit - Alle Ihre SaaS-Anwendungen laufen in Ihrer persönlichen Container Plattform und sind strikt von anderen Tenants getrennt. Individuelle Sicherheitsanpassungen sind jederzeit möglich.

Mehr Möglichkeiten - die Anwendungen in unserem App-Katalog lassen sich miteinander integrieren für mehr Produktivität und Sicherheit.

Mehr Support und Managed Services - Profitieren Sie von der Erfahrung unseres Plattform Teams und zahlreichen Managed Services wie bspw. Kubernetes Cluster, Datenbanken und weiteren Applikationen.

Mehr erfahren →

Wie funktionieren Managed Apps bei ayedo?

Wir stellen Ihre Wunschanwendung wahlweise auf Basis von Kubernetes bereit. Sie erhalten Zugriff auf die Anwendung.

Eventuelle Sonder-Konfigurationen oder Integrationen mit einem SSO-Provider oder einem S3-Backend sind nach Absprache möglich.

Was bedeutet "Durable"?

Standardmäßig werden Cruise-Apps ohne erweiterte Hochverfügbarkeit bereitgestellt. Das heißt es läuft in der Regel nur eine Replika des Anwendungs-Containers und eine Replika des Datenbank-Containers.

In diesem Fall hat die Anwendung bereits durch die Kubernetes-Primitives eine deutlich erhöhte Verfügbarkeit, da im Fehler-Fall oder bei einer Node-Downtime die relevanten Container umgehend neu gescheduled werden. Für die Zeit des Reschedulings stehen aber weder Anwendung noch Datenbank zur Verfügung, was aus User-Sicht einer Downtime gleichkommt.

Manche Apps unterstützen allerdings erhöhte Verfügbarkeit durch App-eigenes Clustering oder ähnliches. Ein gutes Beispiel wäre Postgres wo wir mehrere Datenbank-Pods bereitstellen und diese in einem Postgres-nativen Cluster miteinander synchronisieren können. Das heißt wenn ein Postgres-Container gestoppt werden muss bleibt die Datenbank für ihre Clients weiterhin verfügbar. Das erleichtert Wartungen und ungeplante Downtimes enorm und sorgt für eine deutlich bessere User-Expierence.

"Durable" Apps profitieren also neben den Kubernetes-nativen Hochverfügbarkeits-Mechanismen zusätzlich von eigenen Mechanismen zur Aufrechterhaltung des Betriebs. Das erhöht die Komplexität der Bereitstellung und die Menge an benötigten Ressourcen, reduziert aber mittelfristig den Wartungsaufwand bei Anwendungen die schnell skalieren müssen oder abhängig von ständiger Verfügbarkeit ihrer Dependencies sind.

Warum ayedo Fleet?

Mit ayedo Fleet erhalten Sie Zugriff auf eine sichere und hochverfügbare Container Plattform auf Basis von Kubernetes. Bei Bedarf unterstützt Sie unser Plattfom-Team mit indivduellen Lösungen und Managed Services.

Mehr Flexibilität - Starten sie klein und erweitern Sie ihre Ressourcen bei Bedarf. Schnell und kosteneffizient.

Mehr Sicherheit - Alle Container Plattformen sind durch dedizierte VPCs strikt voneinander getrennt. Individuelle Sicherheitsanpassungen sind jederzeit möglich.

Mehr Kontrolle - Mit jedem Projekt erhalten Sie eine eigene dedizierte Container Plattform. Erstellen Sie Netzwerke, Container und Volumes innerhalb weniger Minuten selbst.

Mehr Support und Managed Services - Profitieren Sie von der Erfahrung unseres Plattform Teams und zahlreichen Managed Services wie bspw. Kubernetes Cluster, Datenbanken und weiteren Applikationen.

Mehr erfahren →

Wie funktioniert Managed Kubernetes bei ayedo?

Wir stellen Ihnen ein Kubernetes Cluster bereit und richten auf Wunsch für Sie Nginx Ingress und Portainer ein, sodass Sie Ihr Kubernetes Cluster über ein graphisches UI verwalten können.

Das Cluster besteht aus mindestens 3 Controlplane und 4 Worker Nodes und wird standardmäßig auf Infrastruktur der Hetzner Online GmbH bereitgestellt.

Im Anschluss sorgen wir für den zuverlässigen Betrieb und kümmern uns um die nachhaltige Aktualisierung von Kubernetes sowie der Betriebssystemen der Nodes und aller Managed Apps.

Teil unseres Services ist auch die kontinuierliche Überwachung Ihrer Anwendungen und das Sichern Ihrer Daten .

Sprechen Sie uns an →
Wie funktionieren Managed Backups bei ayedo?

Wir stellen ein S3-kompatibles Speicher-Backend zur Verfügung auf das Ihre Sicherungen abgelegt werden. Zusammen mit Ihnen implementieren wir die nötigen Scripte und Dienste für die regelmäßige Sicherung Ihrer Daten auf unser Backend.

Wir überwachen die regelmäßige und vollständige Ausführung der Backups und ergreifen Maßnahmen im Fehlerfall. Für Integritätstests sind Sie selbst verantwortlich.

Sprechen Sie uns an →
Unterstützt ayedo auch andere Ziel-Systeme als S3-Storage für Backups?

Ja. Da der Implementierungsaufwand je nach Ziel-System stark variieren kann berechnen wir diesen nach Aufwand. Für eine Übersicht an unterstützten Systemen, sprechen Sie uns bitte an.

Sprechen Sie uns an →
Welche Cloud Provider unterstützt ayedo?

Wir unterstützen die folgenden Provider:

Bitte beachten Sie, dass nicht alle unsere Produkte für all diese Cloud-Provider verfügbar sind. Einzelheiten können Sie den jeweiligen Produktseiten entnehmen.

Was ist wenn ich zusätzlichen Support bei der Implementierung benötige?

ayedo bietet Consulting Services rund um das Thema DevOps, Kubernetes, Container und Cloud Native an. Wir können Ihre Teams hinsichtlich der Umsetzung Ihrer Projekte beraten und durch Support unterstützen.

Sprechen Sie uns an →

Bietet ayedo auch App Entwicklung?

Nein. Unser Fokus liegt auf der Bereitstellung der für den Betrieb von Software nötigen Infrastruktur und Plattformen. Gerne vermitteln wir Sie an unseren Partner avemio.tech.

Sprechen Sie uns an →

Was sind Custom Apps?

Custom Apps sind z.B. Ihre Fachanwendungen oder öffentlich verfügbare Anwendungen die nicht Teil des ayedo Cruise Kataloges sind.

Gerne helfen wir Ihnen bei der Containerisierung und Paketierung Ihrer Anwendungen als Vorbereitung auf den Betrieb als Custom App auf einem ayedo Fleet basierten Kubernetes-Cluster.

Sprechen Sie uns an →

Sind die angebotenen Managed Services auch On-Premise verfügbar?

Ja. Neben den von uns unterstützten Cloud Providern sind ayedo Fleet und ayedo Cruise auch für den Betrieb innerhalb Ihrer Rechenzentren oder IT-Infrastrukturen verfügbar.

Sprechen Sie uns an →

Erhebt ayedo eine Management Pauschale?

Ja. All unsere Managed Services enthalten eine Management Pauschale die alle organisatorischen und zwischenmenschlichen Themen abdeckt.

Die anfallende Pauschale können Sie der jeweiligen Service- oder Produkt-Übersicht entnehmen.

Welche Vertragslaufzeiten bietet ayedo an?

Standardmäßig haben alle Verträge für Managed Services und Support eine Laufzeit von 12 Monaten.

Kunden von ayedo Fleet haben die Möglichkeit gegen eine monatliche Pauschale die Vertragslaufzeit auf 1 Monat zu reduzieren.

Warum Docker?

Ein Vorteil ist, dass durch die Containerisierung so deutlich weniger Ressourcen verbraucht werden, als bei einem herkömmlichen Server oder einer virtuellen Maschine.

Mit Docker können Sie sicherstellen, dass die Funktionalität Ihrer Anwendungen in jeder Umgebung ausgeführt werden kann. Dieser Vorteil entsteht, weil alle Anwendungen und deren Abhängigkeiten in einem Docker-Ausführungscontainer zusammengeführt werden.

Sprechen Sie uns an →

Warum Docker Swarm?

Docker Swarm ist ein Orchestrator für Docker-Container. Mit Docker Swarm können Docker-Cluster erstellt und wie ein einziges virtuelles System verwaltet werden.

Docker Swarm stellt über das Scheduling sicher, dass immer ausreichend Kapazitäten für verteilte Container vorhanden sind und weist Container den zugrundeliegenden Nodes zu.

Docker Swarm wurde im Februar 2015 von Docker vorgestellt und reagiert auf den zunehmenden Orchestrierungsbedarf in Container-Umgebungen. Eine Alternative zu Docker Swarm wäre Kubernetes.

Sprechen Sie uns an →

Warum Kubernetes?

Mit Kubernetes vereinfachen und beschleunigen Sie bereits nach kurzer Zeit Ihre gesamte IT. Gleichzeitig erhöhen Sie die Stabilität und Verfügbarkeit Ihrer Workloads und Applikationen. Profitieren Sie von modernen DevOps Ansätzen und verkürzen Sie Ihre Time To Market. Wir beraten Sie gerne!

Sprechen Sie uns an →

Was bedeutet "Bring Your Own IDP"?

Die meisten Apps aus dem ayedo Cruise Katalog unterstützen OAuth2, OpenID Connect oder SAML als SSO-Mechanismus. Gerne integrieren wir Ihre App mit einem generischen IDP wie z.B. Microsoft 365, Google, GitHub, Keycloak oder Authentik.

Sprechen Sie uns an →

Was bedeutet "Bring Your Own Cloud"?

Auf Wunsch betreiben wir Ihre ayedo Fleet CaaS-Plattform in Ihrem Account, bzw. Ihrer Subscription bei einem unserer unterstützten Cloud Provider.

Sprechen Sie uns an →

Was bedeutet "Bring Your Own Storage"?

Auf Wunsch speichern wir Ihre Backups und Volumes auf einem Ziel-System unter Ihrer Verwaltung. Dabei entfallen die Kosten pro Gigabyte, jedoch übernehmen wir keine Gewährleistung und leisten keinen Support hinsichtlich Restore oder Verfügbarkeit von Daten oder des Ziel-Systems.

Sprechen Sie uns an →

Was bedeutet "Bring Your Own Domain"?

Die meisten unserer Services und Apps im ayedo Cruise Katalog bieten Ihnen die Möglichkeit, Dienste unter Ihrer eigenen Domain zu betreiben.

Sprechen Sie uns an →

Welche Support-Zeitfenster stehen zur Verfügung?
  • Basic: 8x5, Mo-Fr 09:00 - 17:00 Uhr
  • Business: 16x5, Mo-Fr 06:00 - 22:00 Uhr
  • Enterprise: 24x7, Mo-So 00:00 - 23:59 Uhr

Weitere Infos zu unseren Support-Zeitfenstern finden Sie hier.

Mehr erfahren →

Welche Support-Kanäle stehen zur Verfügung?
  • Ticket-System: Web-UI oder E-Mail an support@ayedo.de
  • Telefon: Wir bieten eine Notfall-Hotline (nur für Business- und Enterprise-Support)
  • Chat: Wir bieten Support über Chat über eine Bridge zwischen unserem Chat-System und unterstützten externen Chat-Systemen (nur für Business- und Enterprise-Support)

Weitere Infos zu unseren Support-Kanälen finden Sie hier.

Mehr erfahren →

Was bedeutet "Garantierte Reaktionszeit"?

Je nach Support-Paket garantieren wir verschiedene Fristen für die Erst-Reaktion auf eine Support-Anfrage durch den Kunden. Weitere Infos zu unseren Reaktionszeiten finden Sie hier.

Mehr erfahren →

Kontaktieren Sie uns

Unsere Cloud-Experten beraten Sie gerne und individuell.

Wir antworten in der Regel innerhalb weniger Stunden auf Ihre Nachricht.

Zu Gen-Z für E-Mail? Einfach mal Discord versuchen. Unter +49 800 000 3706 können Sie unter Angabe Ihrer Kontaktdaten auch einen Rückruf vereinbaren. Bitte beachten Sie, dass es keine Möglichkeit gibt, uns telefonisch direkt zu erreichen. Bitte gar nicht erst versuchen. Sollten Sie dennoch Interesse an synchroner Verfügbarkeit via Telefon haben, empfehlen wir Ihnen unseren Priority Support.