Kurzfassung: Das Zusammenspiel und mögliche Synergieeffekte der beiden Konzepte Cloud Computing und Open-Source-Software werden in diesem Beitrag untersucht. Dabei wird Cloud Computing definiert und die organisatorische sowie technische Cloud-Architektur erläutert. Im Anschluss werden vorhandene Open-Source-Lösungen im Bereich Cloud Computing vorgestellt und deren Rolle zur Erhöhung der Akzeptanz von Cloud Computing untersucht.
Über den Autor: Markus Hummel hat Wirtschaftsinformatik an der DHBW Stuttgart studiert und mit „Bachelor of Science“ abgeschlossen. Danach erreichte er den Abschluss „Master of Science in Information Systems“ an der Universität Hohenheim und Universität Stuttgart. Im Anschluss ist er als wissenschaftlicher Mitarbeiter am Lehrstuhl für „Information Systems Engineering“ der Goethe-Universität Frankfurt am Main tätig.
Einleitung
Der öffentliche Sektor sieht sich genauso wie am Markt tätige Unternehmen einem zunehmenden Kostendruck ausgesetzt (Walter 2007). Für die Reduktion von Kosten wird eine Auslagerung der IT von Führungskräften in Betracht gezogen, da die Bereitstellung von IT-Diensten nicht zu den Kernkompetenzen des öffentlichen Sektors zählt und der strategische Nutzen nur schwer nachweisbar ist (Krcmar 2005; Carr 2003). IT-Dienstleistungen können seit einigen Jahren mit Cloud Computing „aus der Wolke“ bezogen werden und müssen nicht intern bereitgestellt werden. Eine weitere Möglichkeit zur Kostenreduktion ist die Nutzung von Open-Source-Software, für die keine Lizenzkosten bezahlt werden müssen (Mertens 2005).
Das Zusammenspiel und mögliche Synergieeffekte der beiden Konzepte Cloud Computing und Open-Source-Software werden in diesem Beitrag untersucht. Zunächst werden die Grundlagen von Cloud Computing erläutert, gefolgt von einer Untersuchung der vorhandenen Open-Source-Lösungen im Bereich Cloud Computing. Anschließend wird die Rolle von Open-Source-Software im Zusammenhang mit Cloud Computing erläutert.
Trotz der Vorteile von Cloud Computing wie potenzielle Kostenersparnisse und eine hohe Flexibilität erfolgt die Umsetzung in der Praxis aufgrund fehlender Akzeptanz nur zögerlich. Die komplexe Gesetzeslage bei einer Auslagerung von Daten in die Cloud wird als Haupthinderungsgrund angesehen. Das Ziel dieser Ausarbeitung ist die Untersuchung des Beitrags, den Open-Source-Software zur Erhöhung der Akzeptanz von Cloud Computing im öffentlichen Sektor leisten kann.
Cloud Computing
Aufgrund der Einfachheit und der Standardisierung der Dienste ermöglicht Cloud Computing die Industrialisierung der IT. Sowohl für Anwender als auch für Anbieter ändert sich das Geschäftsmodell durch Cloud Computing grundlegend. Bei Cloud Computing ist keine eigene Hardware notwendig, da benötigte Dienste in sehr kurzer Zeit über das Internet bezogen werden können und der Kunde lediglich einen Web-Login benötigt. Die Abrechnung erfolgt im „Pay-as-you-go“-Modell, sodass nur für die tatsächlich in Anspruch genommenen Leistungen ein Entgelt entrichtet werden muss (Jaekel/ Pott 2010).
Aus den beschriebenen Eigenschaften lässt sich folgende Definition ableiten, die das Verständnis von Cloud Computing für den weiteren Verlauf dieses Beitrags festlegt: Cloud Computing bezeichnet die Nutzung und Bereitstellung virtualisierter IT-Infrastrukturen, Plattformen und Anwendungen, die ausgehend von einer skalierbaren Plattform einer Vielzahl von Anwendern nutzungsabhängig über ein Netzwerk wie beispielsweise das Internet zur Verfügung gestellt werden.
Aus organisatorischer Sicht wird Cloud Computing in Public Clouds, Private Clouds und Hybrid Clouds eingeteilt:
- Die Public Cloud ist die am weitesten verbreitete Architekturvariante von Cloud Computing (Jin 2010). Bei Public Clouds werden die Services von einem externen Dienstleister betrieben, der seine Ressourcen vielen unterschiedlichen Kunden zu einem einheitlichen Preis über das Internet nutzungsabhängig zur Verfügung gestellt (Lin/Devine 2010). In dieser Variante müssen die Anwender dem Anbieter wichtige Geschäftsdaten anvertrauen (Rimal et al. 2011).
- Im Gegensatz zur Public Cloud gehören Anbieter und Nutzer der Cloud-Dienste bei einer Private Cloud derselben Organisation an (Baun 2011). Die Cloud-Dienste werden nur einem einzigen Unternehmen zur Verfügung gestellt und von dem Unternehmen selbst oder von einem Drittanbieter betrieben (Mell/Grance 2011). In diesem Modell verbleiben die kritischen Daten und Applikationen im eigenen Unternehmen (Baun et al. 2011). Demgegenüber stehen höhere Kosten und eine eingeschränkte Skalierbarkeit im Vergleich zur Public Cloud (Jin et al. 2010).
- Eine Kombination aus Public und Private Cloud wird als Hybrid Cloud bezeichnet (Repschläger 2010). Der Anwender kann in dieser Organisationsform selbst entscheiden, welche Dienste intern zur Verfügung gestellt werden und welche Aufgabenbereiche zu externen Dienstleistern ausgelagert werden (Lin/Devine 2010).
Nachdem die Cloud-Architektur aus organisatorischer Sicht betrachtet wurde, wird im nächsten Schritt die technische Sicht betrachtet. Eine Zusammenfassung der Architektur ist Abbildung 1 zu entnehmen.
Abb. 1 Technische Cloud-Architektur
Infrastructure-as-a-Service (IaaS) ist die unterste Schicht der technischen Cloud-Architektur und bezeichnet die abstrakte Bereitstellung sämtlicher technischer Basisdienste eines Rechenzentrums (Vogel 2010). Folgende Dienste werden in dieser Schicht unterschieden:
- Computation-as-a-Service (CaaS): Mit CaaS wird Rechenkapazität vermietet und nach Bedarf zur Verfügung gestellt (Jin 2010). Das bekannteste Angebot für CaaS ist Amazon Elastic Compute Cloud (EC2)[1].
- Storage-as-a-Service (StaaS): Durch StaaS kann ein Anwender je nach Bedarf auf (aus seiner Sicht) nahezu unbegrenzte Speicherkapazitäten zugreifen (Jin 2010). Beispiele für StaaS sind Amazon Simple Storage Service (S3)[2] und Amazon Elastic Block Storage (EBS)[3].
- Network-as-a-Service (NaaS): Ein NaaS-Dienstleister bietet Netzwerkressourcen an, die ein Kunde als Service beziehen kann (Ciuffoletti 2010). Klassische NaaS-Anbieter wie Verizon oder AT&T bieten ihren Kunden Internetverbindungen an, die sich an die benötigte Bandbreite dynamisch anpassen (Zhou 2010).
Platform-as-a-Service (PaaS) richtet sich an Anwendungsentwickler und gliedert sich in Entwicklungs- und Laufzeitumgebungen, die auf der IaaS-Schicht aufbauen (Lenk 2009). PaaS wird als Brücke zwischen der Hardware und der Anwendung angesehen (Gong 2010). Die drei wichtigsten PaaS-Angebote sind Salesforce Force.com[4], Google AppEngine[5] und Microsoft Windows Azure[6].
Unter Software-as-a-Service (SaaS) wird die Nutzung bzw. die Bereitstellung einer Software als Dienstleistung verstanden (Benlian/Hess 2010). Eine vertragliche Vereinbarung legt fest, dass der Anbieter für Betrieb und Wartung der Software zuständig ist, wohingegen der Anwender eine Nutzungsgebühr entrichtet (Buxmann 2008). Charakteristisch für SaaS ist die Bereitstellung einer Standardsoftware, die nur in begrenztem Rahmen an die individuellen Bedürfnisse der Kunden angepasst werden kann (Stahlknecht/ Hasenkamp 2005). Eine der erfolgreichsten Anwendungen am Markt ist das SaaS-CRM von Salesforce[7].
Open-Source-Lösungen im Bereich Cloud Computing
Es existieren bereits viele Lösungen im Open-Source-Bereich, die in der Cloud-Architektur eines Anwenders eingesetzt werden können. Angelehnt an die technische Cloud-Architektur aus dem vorigen Abschnitt werden im Folgenden exemplarisch Open-Source-Lösungen auf den verschiedenen Ebenen vorgestellt.
Beispiele für Infrastrukturdienste auf der IaaS-Schicht sind Eucalyptus[8], OpenNebula[9] und Nimbus[10]. Eucalyptus ist der bekannteste Open-Source-Vertreter auf der IaaS-Schicht ist. Die Software erlaubt den Betrieb und die Kontrolle von virtuellen Maschinen, die aus physikalischen Ressourcen zusammengesetzt sind (Nurmi 2009). Die typische Architektur der Infrastrukturdienste besteht aus Software, die auf allen Rechenknoten installiert ist und die in regelmäßigen Abständen Systeminformationen wie den freien Arbeitsspeicher oder Festplattenspeicher an einen zentralen Zugriffsknoten für die Anwender weiterleitet. Die Software auf dem zentralen Zugriffsknoten verteilt basierend auf den Systeminformationen die anfallenden Aufgaben auf die Rechenknoten.
Wichtige Open-Source-Projekte auf der PaaS-Schicht sind AppScale[11] und typhoonAE[12]. Bei beiden Projekten handelt es sich um Reimplementierungen der Funktionalitäten von Google AppEngine, die es erlauben, Applikationen der Google AppEngine innerhalb des eigenen Unternehmens auszuführen (Baun 2011). Die Nutzung bietet sich an, wenn eine Applikation zunächst im eigenen Unternehmen entwickelt und getestet werden soll, sodass keine nutzungsabhängigen Gebühren für diese Zwecke an Google entrichtet werden müssen. Zudem wird die Zukunftssicherheit gefördert, da die Anwendungen im eigenen Unternehmen weiter verwendet werden können, falls Google die AppEngine-Plattform in Zukunft nicht mehr anbietet (Urquhart 2009).
Auf der SaaS-Schicht ist in jedem unternehmerischen Anwendungsgebiet eine Vielzahl von Open-Source-Projekten vertreten, die teilweise durch jahrelange Entwicklung ein hohes Reifestadium erreicht haben und sich für den Einsatz im öffentlichen Sektor eignen. In Tabelle 1 sind ausgereifte Beispiele von Open-Source-Projekten in den Anwendungsgebieten Customer Relationship Management (CRM), Enterprise Resource Planning (ERP), Business Intelligence (BI), Groupware und Document-Management-Systeme (DMS) aufgeführt:
Tabelle 1: Open-Source-Software auf der Anwendungsschicht
Anwendungs-gebiet | Name | Homepage |
CRM | SugarCRM | http://www.sugarcrm.com/crm/ |
Vtiger | http://www.vtiger.de/de/ | |
XRMS | http://sourceforge.net/projects/xrms/ | |
ERP | Adempiere | http://adempiere.org/home/ |
Compiere | http://www.compiere.com/ | |
OpenBravo | http://www.openbravo.com/ | |
BI | Jaspersoft BI Suite | http://www.jaspersoft.com/ |
Jedox Palo | http://www.jedox.com/de/home/uebersicht.html | |
Pentaho BI Suite | http://www.pentaho.com/ | |
Groupware | EGroupware | http://www.egroupware.org/ |
Group-E | http://www.group-e.info/ | |
Open-Xchange | http://www.open-xchange.com/ | |
DMS | Alfresco | http://www.alfresco.com/ |
Agorum | http://www.agorum.com/ | |
OpenDocMan | http://www.opendocman.com/ |
Besonders der Groupware-Bereich eignet sich durch die Reife der Software und der unkritischen Prozesse für eine Umsetzung mit Open Source. Andere Anwendungsbereiche wie ERP oder BI eignen sich aufgrund der hohen Komplexität und Bedeutung des Aufgabengebiets nur bedingt für den Einsatz als Open Source.
Die Rolle von Open-Source-Software für Cloud Computing
Open-Source-Software wird in Zukunft eine wichtige Rolle spielen, da die Projekte als Chance zur Weiterentwicklung von Cloud Computing angesehen werden. Besonders als Alternative zu einem externen Bezug der Dienste aus der Public Cloud bietet sich eine unternehmensinterne Cloud-Architektur im Rahmen einer Private Cloud mit Open-Source-Software an. Der Bezug von Open-Source-Software aus der Public Cloud stellt ein weiteres Geschäftsmodell dar, das im Jahr 2011 nur wenige Dienstleister verfolgen. Wenn sich die großen Anbieter im PaaS-Markt weiterhin voneinander abschotten, wird Open-Source-Software als lizenzkostenfreie Alternative eine große Zukunft im Bereich Cloud Computing haben.
Open-Source-Software kann folgenden Beitrag zur Erhöhung der Akzeptanz von Cloud Computing leisten:
- Niedrigere Kosten aufgrund fehlender Lizenzgebühren: Die Nutzung von Open-Source-Software in der Cloud-Architektur hat das Potenzial, aufgrund fehlender Lizenzkosten billiger als proprietäre Lösungen zu sein.
- Reduktion der Abhängigkeit: Open-Source-Software ermöglicht im Vergleich zu proprietären Lösungen durch offene Standards und offene Dateiformate einen einfacheren Wechsel des Cloud-Anbieters.
- Erhöhung der Sicherheit: Durch den offenen Quellcode kann bei Open-Source-Software verhindert werden, dass Hintertüren von Unternehmen oder Staaten in den Quellcode eingebaut werden.
- Anpassung der standardisierten Cloud-Services: Das entsprechende Know-how vorausgesetzt, ermöglicht Open-Source-Software die Anpassung der Software an individuelle Bedürfnisse. Eine Anpassung ist nur in gewissem Maße sinnvoll, da bei einer zu starken Anpassung wichtige Vorteile wie die Skalierbarkeit der Cloud-Dienste außer Kraft gesetzt werden.
- Interoperabilität: Open-Source-Software kann die Zusammenarbeit von verschiedenen Cloud-Diensten erleichtern, sodass monolithische Insellösungen vermieden werden können. Zur Verbindung der verschiedenen Dienste kann ein Enterprise Service Bus (ESB) auf Open-Source-Basis verwendet werden.
Die Rolle von Open-Source-Software wird im Zusammenhang mit Cloud Computing nicht nur positiv bewertet:
- Eingeschränkter Support: Die Herausforderungen beim Einsatz von Open-Source-Software sind die eingeschränkten Wartungs- und Supportmöglichkeiten. Für den Einsatz von kostenloser Open-Source-Software in der Cloud-Architektur ist technisches Know-How notwendig, das im öffentlichen Sektor nicht vorhanden ist und extern eingekauft werden muss. Zunehmend sind auch Unternehmen am Markt vertreten, die Support für Open-Source-Software gegen Bezahlung anbieten.
- Interoperabilität mit proprietärer Software: Problematisch kann sich die Zusammenarbeit von Open-Source-Software mit proprietärer Software erweisen, da bei kommerziellen Produkten die Schnittstellen in vielen Fällen nicht offengelegt sind.
Fazit
Als Ergebnis kann festgehalten werden, dass in allen Schichten der technischen Cloud-Architektur Open-Source-Software vorhanden ist und viele der Lösungen hinsichtlich der Funktionalität mit kommerziellen Produkten konkurrieren können. Open-Source-Software kann zum Abbau der Risiken und zur Erhöhung der Akzeptanz von Cloud Computing beitragen. Besonders zur weiteren Reduzierung der Abhängigkeit von einem Anbieter leistet Open-Source-Software durch den frei verfügbaren Quellcode und durch die offenen Standards einen wertvollen Beitrag. Zudem erlaubt Open-Source-Software eine Anpassung der standardisierten Cloud-Dienste und die Abschwächung der Sicherheitsproblematik durch transparenten Quellcode. Zukünftig wird Open-Source-Software für die Interoperabilität der verschiedenen Cloud-Dienste eine wichtige Rolle spielen. Wer auf die kostenlosen Open-Source-Lösungen setzen will, benötigt technisches Know-How und muss akzeptieren, dass bestimmte Funktionalitäten den kostenpflichtigen Versionen vorenthalten sind. Alternativ kann Open-Source-Software auch in einer kostenpflichtigen Version mit Wartung, Support und weitergehenden Funktionalitäten von einem Unternehmen gegen Bezahlung bezogen werden. Für den öffentlichen Sektor, der den sehr hohen Funktionsumfang von komplexer proprietärer Software oftmals nicht benötigt, eignet sich die Nutzung von Open-Source-Software in der Cloud-Architektur. Was die Kostenfrage angeht, muss jeder Einzelfall individuell untersucht werden: Besonders für den öffentlichen Sektor, der eingeschränkte IT-Ressourcen zur Verfügung haben, bietet die Nutzung von Open-Source-Software in der Cloud-Architektur aufgrund der fehlenden Lizenzkosten das Potenzial für Kosteneinsparungen. Es darf aber nicht davon ausgegangen werden, dass Cloud Computing in Verbindung mit Open-Source-Software prinzipiell günstiger als traditionelle Lösungen ist.
Cloud Computing aus der Public Cloud wird sich in Zukunft durchsetzen, da grundlegende Anforderungen an die elektronische Datenverarbeitung erfüllt werden: Die Nutzung von IT-Diensten wird durch Cloud Computing aus der Public Cloud sowohl einfach als auch bequem. Massiv skalierbare Dienste können über das Internet bezogen und nutzungsabhängig abgerechnet werden, ohne eigene Hardware aufsetzen zu müssen. Dieser Komfort ist mit traditionellen Lösungen nicht realisierbar, da eine entsprechende Infrastruktur nur mit hohem Aufwand umgesetzt werden kann. Aus diesem Grund wird Cloud Computing die IT-Landschaften im öffentlichen Sektor in Zukunft verstärkt prägen. Open-Source-Software hat das Potenzial, eine wichtige Rolle zur Erhöhung der Akzeptanz von Cloud Computing zu spielen.
Quellen
Baun, C.; Kunze, M.; Nimis, J.; Tai, S. (2011): Cloud Computing. Web-basierte dynamische IT-Services. Berlin und Heidelberg.
Benlian, A.; Hess, T. (2010): Chancen und Risiken des Einsatzes von SaaS – Die Sicht der Anwender, in: Benlian, A.; Hess, T.; Buxmann, P. (Hrsg.): Software-as-a-Service. Anbieterstrategien, Kundenbedürfnisse und Wertschöpfungsstrukturen. Wiesbaden, S. 173–188
Buxmann, P.; Lehmann, S.; Hess, T. (2008): Software as a Service, in: Wirtschaftsinformatik 50: 6, 500–503.
Carr, N. (2003): IT doesn’t Matter, in: Harvard Business Review 83: 5, 41–49.
Ciuffoletti, A. (2010): Network Monitoring in the age of the Cloud, in: Desprez, F.; Getov, V.; Priol, T.; Yahyapour, R. (Hrsg.): Grids, P2P and Services Computing. New York, Dordrecht, Heidelberg, London, S. 157–170.
Eucalyptus Systems, Inc. (2009): Eucalyptus Open Source Cloud Computing Infrastructure – An Overview; http://www.eucalyptus.com/whitepapers, 8. August 2011.
Gartner, Inc. (2010): Gartner Identifies the Top 10 Strategic Technologies for 2011; http://www.gartner.com/it/page.jsp?id=1454221, 16. April 2011.
Gong, C.; Liu, J.; Zhang, Q.; Chen, H.; Gong, Z. (2010): The Characteristics of Cloud Computing, in: IEEE (Hrsg.): 39th International Conference on Parallel Processing Workshops (ICPPW), San Diego, S. 275–279.
Jaekel, M.; Pott, H. (2010): Cloud Computing Software as a Service. White Paper. München.
Jin, H.; Ibrahim, S.; Bell, T.; Gao, W.; Huang, D.; Wu, S. (2010): Cloud Types and Services, in: Furht, B.; Escalante, A. (Hrsg.): Handbook of Cloud Computing. New York, Dordrecht, Heidelberg, London, S. 335–356.
Krcmar, H. (2005): Informationsmanagement. Berlin, Heidelberg, New York.
Lenk, A.; Klems, M.; Nimis, J.; Tai, S.; Sandholm, T. (2009): What’s Inside the Cloud? An Architectural Map of the Cloud Landscape, in: IEEE (Hrsg.): CLOUD ’09 Proceedings of the 2009 ICSE Workshop on Software Engineering Challenges of Cloud Computing. Washington, S. 23–31.
Lin, G.; Devine, M. (2010): The Role of Networks in Cloud Computing, in: Furht, B.; Escalante, A. (Hrsg.): Handbook of Cloud Computing. New York, Dordrecht, Heidelberg, London, S. 65–82.
Mell, P.; Grance, T. (2011): The NIST Definition of Cloud Computing (Draft); http://csrc.nist.gov/publications/drafts/800-145/Draft-SP-800-145_cloud-definition.pdf, 6. Mai 2011.
Mertens, P.; Bodendorf, F.; König, W.; Picot, A.; Schuhmann, M.; Hess, T. (2005): Grundzüge der Wirtschaftsinformatik. Berlin, Heidelberg, New York.
Nurmi, D.; Wolski, R.; Grzegorczyk, C.; Obertelli, G.; Soman, S.; Youseff, L.; Zagorodnov, D. (2009): The Eucalyptus Open-source Cloud-computing System, in: IEEE (Hrsg.): Proceedings of the 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid. Washington, S. 124–131.
Repschläger, J.; Pannicke, D.; Zarnekow, R. (2010): Cloud Computing: Definitionen, Geschäftsmodelle und Entwicklungspotenziale, in: HMD – Praxis der Wirtschaftsinformatik o.Jg.: 275, 6–15.
Rimal, B. P.; Jukan, A.; Katsaros, D.; Goeleven, Y. (2011): Architectural Requirements for Cloud Computing Systems: An Enterprise Cloud Approach, in: Journal of Grid Computing 9: 1, 3–26.
Stahlknecht, P.; Hasenkamp, U. (2005): Einführung in die Wirtschaftsinformatik. Heidelberg.
Urquhart, J. (2009): The new generation of cloud-development platforms; http://news.cnet.com/8301-19413_3-10270365-240.html, 8. April 2011.
Vogel, R.; Koçoğlu, T.; Berger, T. (2010): Desktopvirtualisierung. Wiesbaden: Vieweg+Teubner.
Walter, S. M.; Böhmann, T.; Krcmar, H. (2007): Industrialisierung der IT – Grundlagen. Merkmale und Ausprägungen eines Trends, in: HMD – Praxis der Wirtschaftsinformatik o.Jg.: 256, 6–16.
Zhou, M.; Zhang, R.; Zeng, D.; Qian, W. (2010): Services in the Cloud Computing era: A survey, in: IEEE (Hrsg.): Proceedings of the 4th International Universal Communication Symposium (IUCS). Beijing, 40–46.
Pingback: Kapitel 2: Anwendbarkeit, Dimensionen und Einsparpotenziale von Open Source | Open Source Public Sector