Navigation überspringen

Mehr Flexibilität bei der Anpassung von Open-Source-Anwendungen mit Microsoft Azure

Veröffentlicht am 26 Mai, 2021

Azure Distinguished Engineer

„Technologieunternehmen mit einer Open-Source-Mentalität verstehen, worum es geht. Unsere Fähigkeit zur Zusammenarbeit macht unsere Träume greif- und letztendlich erreichbar. Wir müssen lernen, auf den Ideen anderer aufzubauen.“ – Satya Nadella, CEO, Microsoft

Microsoft war schon immer eine auf Entwickler ausgerichtete Organisation, und wir sind bestrebt, unsere Tools und Plattformen für Entwickler noch besser zu machen. Aus diesem Grund ist Azure so gestaltet, dass Entwickler die Kontrolle über ihre Infrastruktur haben, unabhängig vom Betriebssystem, der Datenbank, der Sprache, dem Bereitstellungstool oder der Methodik größtmögliche Flexibilität genießen und diese Optionen auch lokal und am Edge nutzen können. Viele dieser Systeme sind inzwischen Open-Source-Systeme: Linux, Kubernetes, Spark und Python sind nur einige der bekanntesten Beispiele. Azure wurde für die Nutzung dieser Technologien entwickelt – entweder auf IaaS-Ebene (Infrastructure-as-a-Service) oder PaaS-Ebene (Platform-as-a-Service), über Linux auf virtuellen Computern oder über Azure Kubernetes Service (AKS) für die cloudnative Entwicklung und häufig in Kombination mit einem unserer verwalteten Dienste für beliebte Open-Source-Datenbanken.

Open Source ist ein wichtiges Thema für Microsoft. Wir tragen zu Linux in Azure, Kubernetes in Azure und Visual Studio Code bei und engagieren uns in Open-Source-Organisationen wie der Cloud Native Computing Foundation (CNCF) und der Open Source Security Foundation (OpenSSF). Auf der Microsoft Build informieren wir über unsere neuesten Initiativen, die eine flexible Entwicklung und schnelle Innovationen in Azure ermöglichen.

Open Source bei Microsoft

Bei Open Source geht es darum, offen zu sein, durch Zusammenarbeit und den Ausbau von Softwarekenntnissen einen Mehrwert zu schaffen und auf der Arbeit anderer aufzubauen. Wir arbeiten mit Communitys, Kunden und Partnern zusammen, um unseren Kunden das Beste ihrer Technologien zu bieten, und beteiligen uns an Open-Source-Projekten, um deren Fehlerfreiheit zu gewährleisten und unsere Innovationen einzubringen. Unsere Entwickler verwenden Open Source, um ihre Arbeitseffizienz zu steigern. Nahezu jedes Team bei Microsoft nutzt Open Source oder trägt etwas dazu bei: 30.000 Microsoft-Mitarbeiter verfügen über GitHub-Konten, die mit ihrer Microsoft-Identität verknüpft sind.

Flexibilität für Ihre cloudnativen Anwendungen

Zahlreiche Entwickler profitieren bereits von den Vorteilen der cloudnativen Entwicklung – und es werden täglich mehr. Azure hilft Ihnen bei der Modernisierung Ihrer Anwendungen sowie bei der Migration zur Cloud, ohne Ihr Geschäft zu beeinträchtigen. Wir haben Azure entwickelt, um Entwicklern das Leben leichter zu machen und komplizierte Architekturen zu vereinfachen. Da es sich bei Azure um eine äußerst sichere Cloudplattform mit der umfassendsten Complianceabdeckung handelt, können Sie sich darauf verlassen, dass Ihre Workloads und Daten sicher sind. Im Anschluss finden Sie Informationen zu einigen Aspekten in diesem Zusammenhang.

Containerdienste, Microservices in Azure und DevOps-Lösungen in Azure sind die Kerntechnologien für die Entwicklung in der Cloud. Im Jahr 2022 setzen sich 90 Prozent aller neuen Apps aus Microservicearchitekturen zusammen1. Um die Komplexität von Containeranwendungen zu bewältigen, orchestriert Azure Kubernetes Service (AKS) die Container und skaliert nach Bedarf mit einer automatisierten, integrierten CI/CD-Pipeline (Continuous Integration und Continuous Delivery) hoch oder herunter. Der Vorteil der Microservicearchitektur ist eine offene, effiziente, skalierbare und portable Lösung für die agile Entwicklung mit automatisierten Workflows zum Erstellen, Testen und Bereitstellen.

Darüber hinaus arbeiten wir mit Partnern zusammen, um deren cloudnative Technologien für Kunden bereitzustellen. Azure Red Hat OpenShift bietet beispielsweise hochverfügbare, vollständig verwaltete OpenShift-Cluster nach Bedarf, die sowohl von Microsoft als auch von Red Hat überwacht und betrieben werden. Kubernetes ist der Kern von Red Hat OpenShift. OpenShift ergänzt Kubernetes durch weitere nützliche Features, um eine sofort einsatzbereite Containerplattform mit erheblich verbesserter Benutzerfreundlichkeit für Entwickler und Betreiber zu schaffen.

Für viele Kunden bilden serverlose Technologien die Plattform für Anwendungen der nächsten Generation. Sie können die Vorteile von Microservices maximieren, indem Sie eine ereignisgesteuerte Architektur verwenden, um über Ereignisse zwischen entkoppelten Diensten zu kommunizieren, ohne Abstriche bei der Eigenständigkeit, Abstraktion und Flexibilität machen zu müssen. Das Open-Source-Projekt Kubernetes Event-Driven Autoscaling (KEDA) ermöglicht ereignisgesteuerte und serverlose Skalierung für jeden beliebigen Container. Dank der Arbeit der Community werden inzwischen mehr als 35 Ereignisquellen aus allen Clouds unterstützt. KEDA ist auch mit einer serverlosen Runtime wie Azure Functions kombinierbar. Azure Functions basiert auf einer serverlosen Entwicklerumgebung und Runtime für ereignisgesteuerte Architekturen. Azure Functions umfasst zehn separate Open-Source-Projekte auf GitHub mit 60 Mitwirkenden aus der Community und Hunderten von Commits. Serverlose Anwendungen tragen zur Senkung der Kosten und zur Steigerung der Entwicklerproduktivität sowie zur Beschleunigung von Innovationen bei. Entwickler können sich endlich auf die Anwendungsentwicklung konzentrieren und müssen sich nicht mehr mit der Infrastrukturverwaltung befassen. 

Mit dem Open-Source-Projekt Dapr (Distributed Application Runtime) können Sie Ihre Microservicearchitektur noch weiter verbessern. Dieses Projekt hilft Entwicklern dabei, sich auf die Entwicklung ihrer Anwendungen zu konzentrieren, anstatt immer wieder die gleichen Herausforderungen im Zusammenhang mit verteilten Anwendungen bewältigen zu müssen. Dapr bietet eine Sammlung von Bausteinen zur Abstrahierung von Herausforderungen. Hierzu zählen etwa das Speichern des Zustands für die Erstellung zustandsbehafteter Anwendungen sowie Dienstaufrufe und die Verwaltung von Geheimnissen. Durch die Integration in über 70 verschiedene Komponenten, die Entwicklern die Nutzung branchenführender Open-Source-Lösungen und cloudspezifischer Technologien ermöglichen, vereinfacht Dapr die Entwicklung cloudnativer Anwendungen. Dank dieser Vereinfachung können Entwickler ihre Anwendungen schneller erstellen und weiterhin flexibel entscheiden, welche Sprache sie verwenden möchten oder wo die Anwendung ausgeführt wird: lokal, in einer beliebigen Cloud oder auf einem Edgegerät. Da Dapr als Sidecar parallel zur Anwendung ausgeführt wird, bleibt der Anwendungscode unabhängig, und Dapr wird entsprechend skaliert. Mit der kürzlichen Veröffentlichung von Dapr v1.0 ist Dapr jetzt produktionsbereit, und einige Azure-Kunden wie ZEISS und die Ignition Group haben Dapr bereits für die Entwicklung ihrer cloudnativen, in AKS ausgeführten Anwendungen verwendet.

Dank der integrierten Unterstützung von Open-Source-Tools, Sprachen und Frameworks können Sie mit Azure ganz nach Ihren Vorstellungen entwickeln. Für Java-Entwickler wurde vor Kurzem die allgemeine Verfügbarkeit des Microsoft-Builds von OpenJDK angekündigt. Dabei handelt es sich um eine kostenlos verfügbare, Open Source-basierte und überall bereitstellbare LTS-Distribution (Long-Term Support) von OpenJDK. Unsere offene Cloud sorgt für Anwendungsportabilität und Flexibilität, sodass Sie sich ganz darauf konzentrieren können, etwas zu bewirken. Weitere Informationen zum neuen Microsoft-Build von OpenJDK finden Sie in unserem kürzlich veröffentlichten Blogbeitrag Azure ist die Plattform für Ihre Java-Unternehmensanwendungen.

Beschleunigen von Innovationen

Azure bietet auch eine Reihe von Diensten, die Sie bei der Entwicklung KI-basierter Anwendungen unterstützen. Azure Machine Learning ermöglicht das Erstellen, Trainieren und Bereitstellen von Machine Learning-Modellen unter Verwendung von Machine Learning-Bibliotheken und -Plattformen auf der Grundlage von Open-Source-Python. Sie können Ihren gesamten Machine Learning-Lebenszyklus mithilfe von MLflow verwalten und nachverfolgen, Leistungsengpässe mithilfe von PyTorch Profiler beseitigen und ihn per ONNX-Runtime (eine leistungsstarke Rückschluss- und Trainings-Engine) optimieren und an einem beliebigen Ort bereitstellen. Die ONNX-Runtime unterstützt jetzt das beschleunigte Trainieren von Transformatormodellen, was eine Geschwindigkeitssteigerung von bis zu 45 Prozent ermöglicht. Mit PyTorch Enterprise erhalten Sie Expertenunterstützung für Ihre Deep Learning-Projekte und können vollständig Open-Source-basierten PyTorch-Code nutzen. Azure erreicht unsere Entwickler dort, wo sie sich befinden. Für Entwickler ohne spezielle Machine Learning-Kenntnisse bieten wir zudem vortrainierte KI-Modelle an, die sie in ihre Anwendung integrieren können. Azure Bot Services ist ein umfassendes Framework für den Aufbau professioneller dialogorientierter KI-Umgebungen. Mit Bot Framework können Sie Ihren Bot für ein beliebiges Szenario erstellen, testen und veröffentlichen – sei es für den Vertrieb, für den Kundensupport oder zur Steigerung der Mitarbeiterproduktivität.

Im Zusammenhang mit maschinellem Lernen ist es wichtig, Unfairness entgegenzuwirken, Ihre Benutzer mit differenziellem Datenschutz zu schützen und den Machine Learning-Lebenszyklus mit Datenblättern zu dokumentieren. Wir setzen Prinzipien des verantwortungsvollen maschinellen Lernens um und stellen Toolkits für maschinelles Lernen als Open-Source-Toolkits bereit, um Entwicklern und wissenschaftlichen Fachkräften für Daten einen verantwortungsvollen Umgang mit Innovationen zu ermöglichen.

Da eine KI ohne Daten nicht sonderlich hilfreich wäre, haben wir Open-Source-Datasets bereitgestellt, damit Sie Zeit bei der Datenermittlung und -aufbereitung sparen können. Bei Azure Open Datasets handelt es sich um öffentlich verfügbare Datasets, die sofort in Machine Learning-Workflows verwendet werden können, um die Präzision zu verbessern. Der Zugriff auf Datasets erfolgt über eine API, und die Datasets umfassen gemeinfreie Daten zu Wetter, Bevölkerung, Feiertagen, öffentlicher Sicherheit und mehr. Wenn Sie Ihre eigenen Daten verwenden möchten, können Sie sie in unseren vollständig verwalteten Open-Source-Datenbanken speichern. Hierzu zählen Azure Database for PostgreSQL, Azure Database for MySQL, Azure Database for MariaDB und Azure Cache for Redis sowie Azure Cosmos DB – eine vollständig verwaltete NoSQL-Datenbank mit Open-Source-APIs für MongoDB und Cassandra.

Wir ermöglichen es Entwicklern, neue intelligente Anwendungen mit den neuesten Machine Learning-Toolkits zu erstellen, und unterstützen Sie proaktiv beim verantwortungsvollen Umgang mit Innovationen. In unserem kürzlich veröffentlichten Blogbeitrag Potenzial von Daten und KI in Ihren Anwendungen ausschöpfen – mit Azure erfahren Sie mehr darüber, wie Sie von KI in Ihren Anwendungen profitieren können.

Open-Source-Ökosystem von Azure

Das Open-Source-Ökosystem von Azure umfasst Lösungen von zahlreichen Unternehmen und Einzelpersonen. Azure ist nicht zuletzt deshalb eine großartige Plattform für Entwickler, weil sie alle Dienste unterstützt, die Entwickler erwarten – unabhängig von der Quelle. Darüber hinaus ist es unser Ziel, Azure auch zu einer großartigen Plattform für Partner zu machen. Der Azure Red Hat OpenShift-Dienst wurde hier bereits erwähnt. Wir unterhalten aber auch Partnerschaften mit Red Hat, SUSE, Databricks, HashiCorp, VMware und anderen, um deren Lösungen gemeinsam als verwaltete Dienste zu entwickeln und zu unterstützen. Zusammen können wir eine nahtlose übergreifende Umgebung für Vorgänge, Identitäten, Sicherheit und Abrechnung schaffen, die den Benutzern das Leben erleichtert. Um diese Dynamik weiter voranzutreiben, haben wir auf der Microsoft Build eine zusätzliche native Integration für Elastic in Azure angekündigt, mit der Kunden, die Elastic-Dienste in Azure nutzen, Zugang zu integrierter Abrechnung, vollständigem technischem Support und Azure-Portal-Integration erhalten.

Mit Blick auf die Zukunft freuen wir uns darauf, mit Unternehmen zusammenzuarbeiten, die sich ebenso stark für die Entwicklung von Open-Source-Technologien einsetzen wie wir selbst.

Azure: die Cloud für Open-Source-Entwickler

Microsoft möchte jede Person und jede Organisation auf der Welt in die Lage versetzen, mehr zu erreichen. Azure unterstützt Sie bei Ihren aktuellen und zukünftigen Innovationsbemühungen. Unsere Plattform ist eine Art offene Spielwiese mit den besten Tools und Bausteinen, mit denen Entwickler ihre Anwendungen entwickeln und mit innovativen Features ausstatten können. Auch wenn Sie vielleicht noch gar nicht wissen, was Sie entwickeln möchten: Wir sind gespannt auf das Ergebnis. Sehen Sie sich unsere Microsoft Build-Sitzung zur Anpassung von Open-Source-Anwendungen mit Microsoft Azure sowie unsere eindrucksvollen Demos an, um zu erfahren, wie wir Entwickler bei der freien und schnellen Entwicklung von Innovationen unterstützen. Im Blog zu Open Source bei Microsoft erhalten Sie neueste Informationen zur Entwicklung Open Source-basierter Innovationen durch unsere Techniker. Außerdem können Sie uns auf Twitter folgen.


1IDC FutureScape: Weltweite Prognosen für die IT-Branche (2019)

Azure. Erfinden mit dem Ziel im Blick.