Im Alltag nutzen wir bewusst oder unbewusst Software aus der Cloud. Was im privaten Umfeld schon länger als selbstverständlich gilt, ist auch im geschäftlichen Umfeld immer öfter die valable Alternative zum Betrieb von Software-Lösungen in der eigenen IT-Infrastruktur. Im folgenden Blogbeitrag beleuchten wir die Eigenschaften der Microsoft Azure Cloud und welche Vor- und Nachteile sich daraus ergeben.
Prinzipielle Funktionsweise
Im Cloud-Computing werden Rechenleistung, Speicherplatz, Datenbanken, Software-Lösungen, Analysefunktionen und Services über das Internet – also die «Cloud» – nutzbar gemacht. Die Nutzung der Cloud-Angebote erfolgt dabei ausschliesslich über Intenet-Technologie. Die Spannweite der Angebote umfasst dabei die gesamte Breite der IT und kann Infrastruktur, Software und Plattformen umfassen. Vielleicht sind Ihnen schon Begriffe wie IaaS (Infrastructure-as-a-Service), PaaS (Platform-as-a-Service), SaaS (Software-as-a-Service) und Serverloses Computing über den Weg gelaufen. Lassen Sie sich hier von weiteren Begriffen überraschen…
Anbieter von Cloud-Lösungen
Auf dem Markt tummeln sich viele Cloud-Anbieter. Der Begriff «Cloud Computing» fördert bei Google eine Unmenge von Ressourcen im Web zutage. Darunter sind auch kleine und kleinste Anbieter, solche die schon können oder noch wollen, daneben nationale und internationale Player mit ihren teils unübersichtlichen Angeboten. Als Unternehmer, der einfach eine robuste, sichere und bezahlbare Cloud-Lösung für sein Unternehmen sucht, ist eine schnelle Übersicht fast unmöglich.
Als Herstellerin von individuellen Software-Lösungen basierend auf Microsoft-Technologie haben wir uns schon früh mit den Angeboten der Microsoft Azure Cloud auseinandergesetzt. Alle unsere Lösungen sind so konzipiert und entwickelt, dass sie die Möglichkeiten in der Azure Cloud ausnutzen können. Weitere uns bekannte Anbieter sind Swisscom und Oracle.
Software-Lösungen und Security in der Cloud
Im Prinzip kann fast jede Software-Lösung in der (Azure) Cloud betrieben werden – spezifische Cloud-Produkte stellen dies sicher. Um jedoch von den Vorteilen der Cloud (siehe weiter unten) zu profitieren und das Maximum aus der Technologie zu holen, eignet sich die Architektur am besten, welche App-, Database-, IoT- und andere Services konsequent nutzt.
Viel höhere Anforderungen werden an die Sicherheit der Lösung gestellt, als wenn sie in einer abgeschotteten IT-Infrastruktur betrieben wird. Eine Web-App so zu bauen, dass sie höchsten Sicherheitsansprüchen gerecht wird, kann mit Hilfe von Tests durch spezialisierte Firmen erreicht werden. Die Cloud-Angebote selber sind bereits so gestaltet, dass sie den höchsten Anforderungen genügen, wie folgendes Video zeigt:
Wir hören die folgende Aussage immer noch: «Die Cloud ist nicht so sicher!» Doch das Gegenteil ist der Fall – die Cloud verfügt über professionelle Daten- und Netzwerksicherheit, welche bei Pen Tests die höchsten Gütesiegel erreicht. Professionelle Cloud-Anbieter können es sich schlicht nicht leisten, ein Sicherheitsleck aufzuweisen.
«Noch nie hatten wir bei eine Security-Audit so gute Noten wie mit eurer Software-Lösung in der Cloud.»
Aussage des IT-Leiters nach dem Pen Test unserer Lösung in der Azure Cloud.
Vorteile der Cloud
- Skalierbarkeit: Einer der grossen Vorteile einer Software-Lösung in der Cloud ist die Skalierbarkeit. Wenn Sie beispielsweise eine Fachanwendung in der Cloud betreiben, die immer nur am Monatsende eine hohe Last aufweist und dazwischen kaum gebraucht wird, können die Rechenleistung und der Speicherbedarf temporär auf die hohe Last erhöht werden. Während der Zeit mit tiefer Last wird die Leistung heruntergeschraubt. Sie bezahlen die hohe Leistung somit nur, wenn sie wirklich gebraucht wird.
Die Skalierung kann übrigens innert Minuten angepasst werden und es ist immer transparent, welches die Kosten sind. - Time-to-Market: Durch aufeinander abgestimmte Architekturen und Deployment-Prozesse können neue Versionen von Software-Lösungen per Mausklick ausgeliefert und live geschaltet werden. Soll beispielsweise eine laufende Software-Lösung für bestimmte Zwecke in eine Demo-Umgebung kopiert werden, ist dies auch innerhalb weniger Minuten realisiert.
- Verfügbarkeit/Co-Location: Die Rechenzentren von Cloud-Anbietern wie Microsoft Azure sind miteinander verbunden. So können beispielsweise die Daten einer Fachanwendung an zwei Standorten (in der Schweiz oder im Ausland) gespiegelt werden. Für den Anwender ist nicht spürbar, wenn ein Standort während Wartungsarbeiten nicht oder eingeschränkt zur Verfügung steht, er kann wie gewohnt mit der Fachanwendung arbeiten.
- Kosten: Eine eigene Software-Lösung in der Cloud zu betreiben ist oft kostengünstiger, flexibler, zuverlässiger und sicherer als auf eigenen, lokalen Servern. Wer seine eigene TCO (Total Cost of Ownership) kennt, kann mit dem TCO-Rechner von Azure etwas herumspielen und Vergleiche anstellen.
Nachteile der Cloud
- Bandbreite: Dadurch, dass ausschliesslich via Internet auf die Cloud zugegriffen wird, werden hohe Anforderungen an die Bandbreite und Verfügbarkeit der Internet-Anbindung gestellt. Fällt die Internet-Verbindung aus, kann auch nicht mehr gearbeitet werden.
- Single Sign-on SSO: Die Integration einer in der Cloud betriebenen Software-Lösung in ein Single Sign-on ist aufwändiger, als wenn alles Inhouse betrieben wird.
- Datenspeicherort: Die Daten verlassen beim Cloud-Computing das Haus und liegen bei einem anderen Anbieter im Rechenzentrum. Auch wenn die Daten beim Cloud-Anbieter vermutlich sicherer aufbewahrt sind als auf dem lokalen Server, bleibt unter Umständen ein letztes Unbehagen bestehen.
Fazit
Seit ein paar Jahren entwickeln wir individuelle Softwarelösungen für den Betrieb in der Cloud. Aus grosser Skepsis und Ungewissheit, welcher Anbieter am Markt bestehen wird, sind wir nun mit der Wahl von Microsoft Azure sehr zufrieden und überzeugt, auf das richtige Pferd gesetzt zu haben. Azure wird mit hohem Tempo ausgebaut und global erweitert – seit Anfang 2020 sind sie nun auch mit zwei Locations in der Schweiz vertreten. Wenn wir vor die Wahl gestellt werden, wie eine von uns entwickelte Software-Lösung betrieben werden soll, bevorzugen wir unterdessen die Cloud.
Aus der Vielzahl von Möglichkeiten mit Azure haben wir bisher folgende eingesetzt:
- Services
- Web App Services
- App Service Certificates
- SQL Database Services
- SQL Elastic Pools
- Storage Accounts
- Active Directory
- Automation Jobs
- SendGrid
- Time Series Insights
- Logging, Monitoring
- App Insights
- Azure Dashboards
- IoT
- IoT Hub, IoT Hub Service .NET SDK, Device Configuration
- IoT Edge, Deployment Sets, IoT Edge Runtime (Linux)
- Device Provisioning Service, Azure Provisioning Service .NET SDK, Trusted Platform Module Enrollments
- Wartung und Support
- Kudu
- DevOps
- Cloud Shell
- Azure CLI
- Azure PowerShell
- Azure Container Registry