t3n News Entwicklung

SaaS: Der neue APS-Standard – Einheitliche Pakete für Software-as-a-Service

SaaS: Der neue APS-Standard – Einheitliche Pakete für Software-as-a-Service

Mittels des neuen APS-Standards lassen sich nun auch komplexe Web-Anwendungen einfach als Software-as-a-Service () den Kunden anbieten. Multi-Mandanten-Unterstützung, Lizenzierung und Automatisierung erhält man von den Webhosting-Anbietern auf diesem Weg aus einer Hand. Ein Gastbeitrag von Peter Stutzinger, MESH GmbH.

Im Jahre 2009 entwickelte Parallels den APS-Standard, der seitdem viel Aufmerksamkeit in der Open-Source-Gemeinde erhalten hat. Der Standard eignet sich vor allem für Wiederverkäufer, denn er ermöglicht, bestehende APS-Anwendungen auf Basis von Shared-Hosting in einer Cloud-Umgebung anzubieten. Webanwendungen wie z.B. Open-XChange, SugarCRM, TYPO3, Magento, Oxid, WordPress Joomla, Drupal oder phpBB lassen sich damit schnell und einfach bereitstellen: APS macht es somit möglich, Pakete aus Open-Source-Anwendungen zu schnüren, auf die die Hosting-Anbieter zugreifen können.

Hier einige Beispiel-Anwendungen aus dem APS Application Catalog.

APS: Der Ideale Standard für Webhosting-Anbieter

Webhosting-Anbietern bietet der neue APS-Standard so ideale Voraussetzungen, um den Kunden sowohl Web-Anwendungen als auch Software-as-a-Service anbieten zu können. Setzt der Provider bereits auf den APS-Standard, braucht er keine weiteren Investitionen tätigen, um seinen Kunden die Software-Anpassungen anzubieten. Sollte eine Webanwendung den APS-Standard noch nicht beherrschen, lässt sich diese mit XML leicht anpassen. Kurzum: Der neue APS-Standard ist ein idealer Begleiter für Webhosting-Anbieter.

Multi-Mandanten-Fähigkeit und komplexe Abrechnungsmodelle

Die aktuelle APS-Revision 1.2 bietet neben den bekannten Basisfähigkeiten weitere neue Funktionen. So unterstützt APS jetzt Multi-Mandanten-fähige Web-Anwendungen. Mit diesen sind die Hosting-Anbieter in der Lage, auch komplexe Anwendungen mittels des Software-as-a-Service-Models anzubieten.

Um die Anwendungen automatisiert lizensieren zu können, lässt sich mit dem APS-Standard nun zudem ein Lizensierungs-Server integrieren, somit ist der Weg für komplexe Abrechnungsmodelle geebnet. Außerdem ist es nun für den Kunden sehr einfach, vorhandene APS-Anwendung mit zusätzlicher wie Themes, Plugins oder Übersetzungen auszustatten.

Beim klassischen Webhosting stehen die Kunden oft vor dem Problem, dass eine Webanwendung nicht mehr optimal funktioniert, sobald sie diese auf eine neue Version bringen oder etwas an der bestehenden Konfiguration ändern. Der APS-Standard erlaubt es deshalb seit kurzem, Abbilder – so genannte Snapshots – von einer Installation anzufertigen und somit jederzeit eine voll funktionsfähige Kopie der Web-Anwendung vorzuhalten.

So funktioniert der APS-Standard

Eine XML-Datei legt fest, welche Abhängigkeiten eine Web-Anwendung für die Ausführung benötigt, welche Voraussetzungen, wie beispielsweise Datenbanken, erfüllt sein müssen und wohin die Dateien der Anwendung kopiert werden. Um ein einfaches APS-Paket zu erstellen, muss eine Datei namens APP-META.xml angelegt werden. Im Folgenden werden, anhand der Forum-Anwendung phpBB, die wichtigsten Abschnitte dieser Datei beleuchtet.

Im Header der Datei werden die grundsätzlichen Informationen zu dem APS-Paket, wie Name, Version und Homepage der Web-Anwendungen festgelegt.

<application xmlns="http://apstandard.com/ns/1">
  <name>phpBB</name>
  <packager-uri>uuid:714f0a7b-85d6-4eb8-b68e-40f9acbb3103</packager-uri>
  <version>3.0.4</version>
  <release>4</release>
  <homepage>http://www.phpbb.com/</homepage>
  <package-homepage>http://parallels.com/</package-homepage>
  <default-prefix>/phpbb3/</default-prefix>

Danach wird eine Beschreibung der APS-Anwendung festgelegt und es besteht die Option, eine Lizenz akzeptieren zu lassen.

<license must-accept="true">
    <text>
      <name>GPLv2</name>
      <file>htdocs/docs/COPYING</file>
    </text>
  </license>

Es besteht ebenso die Option, ein Changelog einzufügen, welches vom zugehörigen APS-Controller vor der Installation angezeigt wird.

<changelog>
    <version version="3.0.4" release="3">
		<entry>Administrative interface entry point fixed to conform IIS rules</entry>
	</version>
    <version version="3.0.4" release="2">
		<entry>Requirement for php setting allow-url-fopen is removed</entry>
	</version>

Ein paar Basis-Informationen zu dem APS-Paket, wie Größe und Sprache der Web-Anwendung, werden ebenfalls abgefragt. Zusätzlich muss die Web-Anwendung in bestimmte vordefinierte Kategorien eingeteilt werden.

<installed-size>8018828</installed-size>

  <categories>
	  <category>Web/Forum</category>
  </categories>

  <languages>
    <language>en</language>
  </languages>

Wenn ein APS-Paket von einem APS-Controller zur Installation ausgewählt wird, wird der Benutzer nach bestimmten Daten, wie Benutzernamen, Passwort oder Site-Namen gefragt. Diese Auswahlmöglichkeiten werden hier vorgegeben.

<settings>
    <group>
      <name>Administrator's preferences</name>
      <setting id="admin_name" type="string" default-value="admin" min-length="3" max-length="20" regex="^[a-zA-Z][0-9a-zA-Z_\-]*">
        <name>Administrator's login</name>
        <description>Please enter a username between 3 and 20 characters in length.</description>
        <error-message>Please make sure the text you entered starts with a letter and continues with either numbers, letters, underscores or hyphens.</error-message>
      </setting>
      <setting id="admin_password" type="password" min-length="6" max-length="30" >
        <name>Password</name>
        <description>Please enter a password between 6 and 30 characters in length.</description>
      </setting>
      <setting id="admin_email" type="email">
        <name>Administrator's email</name>
      </setting>
      <setting id="title" type="string" min-length="1" max-length="255">
        <name>Site name</name>
      </setting>
      <setting id="site_desc" type="string" min-length="1" max-length="255">
        <name>Site description</name>
      </setting>
    </group>
  </settings>

Da jede Web-Anwendung andere Voraussetzungen an das Webhosting mitbringt, muss in den Metadaten angegeben werden, auf welche Anforderungen der APS-Controller angesprochen wird.

<requirements xmlns:php="http://apstandard.com/ns/1/php" xmlns:db="http://apstandard.com/ns/1/db" xmlns:apache="http://apstandard.com/ns/1/apache">
    <php:version min="4.3.3"/>

    <php:register-globals>false</php:register-globals>
    <php:extension>mbstring</php:extension>

        <php:extension>mysql</php:extension>
        <db:db>
          <db:id>main</db:id>
          <db:default-name>phpbb</db:default-name>
          <db:can-use-tables-prefix>true</db:can-use-tables-prefix>
          <db:server-type>mysql</db:server-type>
		  <db:server-min-version>3.23</db:server-min-version>
        </db:db>

  </requirements>

Schlussendlich wird noch festgelegt, welche Berechtigungen die Verzeichnisse im Webspace haben müssen, damit die Web-Anwendung korrekt ausgeführt werden kann.

<mapping url="/" path="htdocs" xmlns:php="http://apstandard.com/ns/1/php">
    <php:handler><php:extension>php</php:extension></php:handler>

    <mapping url="config.php"><php:permissions writable="true"/></mapping>
    <mapping url="cache"><php:handler><php:disabled/></php:handler><php:permissions writable="true"/></mapping>
    <mapping url="files"><php:handler><php:disabled/></php:handler><php:permissions writable="true"/></mapping>
    <mapping url="store"><php:handler><php:disabled/></php:handler><php:permissions writable="true"/></mapping>
    <mapping url="images"><php:permissions writable="true"/></mapping>
    <mapping url="language"><php:permissions writable="true"/></mapping>
  </mapping>

Nach der Erstellung dieser Metadaten-Datei legt man die Dateien der Web-Anwendung in bestimmte Verzeichnisse wie htdocs, images oder scripts ab. Innerhalb des scripts-Verzeichnis liegt vordefiniert eine Datei namens configure. Dieses Script ist letztendlich das Installations- und Upgrade-Script, welches die Web-Anwendung installiert.

Über den Gastautor

Peter Stutzinger ist seit 2006 als IT Specialist bei der MESH GmbH angestellt. Dort sind seine Aufgaben die Administration der MESH Whitelabel Cloud Automation und als MCTS die Betreuung des Microsoft Hosted Exchange Setups. In seiner Freizeit betreut er mehrere Sites auf Basis des Gaming CMS EQDKPlus. Die MESH GmbH, gegründet 2001, ist einer der führenden Betreiber von Internet-Rechenzentren. Zum Angebot gehören neben Housing, Colocation sowie IP-Traffic auch Hard- und Software, Router-Technologie, DSL-, SDSL- und Domain-Services. Das Unternehmen hat seinen Sitz in Düsseldorf und betreibt Rechenzentren in vielen deutschen Städten und darüber hinaus unter anderem auch in London, Paris, Moskau, New York, Los Angeles, Shanghai und Singapur. Weitere Informationen unter: www.mesh.eu.

Vorheriger Artikel Zurück zur Startseite Nächster Artikel
Keine Antwort
Deine Meinung

Bitte melde dich an!

Du musst angemeldet sein, um einen Kommentar schreiben zu können.

Jetzt anmelden

Mehr zum Thema Software
Designinspirationen für SaaS-Anbieter: Diese Seite sammelt gelungene Homepages
Designinspirationen für SaaS-Anbieter: Diese Seite sammelt gelungene Homepages

Die Website „SaaS CSS“ versammelt gelungene und weniger gelungene Homepages von SaaS-Anbietern aus aller Welt. Das macht die Seite zu einer tollen Inspirationsquelle. » weiterlesen

7 einfache SaaS-Shopsysteme aus dem Baukasten: Eine Marktübersicht
7 einfache SaaS-Shopsysteme aus dem Baukasten: Eine Marktübersicht

Die wichtigsten SaaS-Shopsysteme aus dem Baukasten, die schnell zu einem betriebsbereiten Shop führen, haben wir für euch in dieser Marktübersicht zusammengefasst: Hilfestellungen zur Auswahl und … » weiterlesen

SaaS, Cloud, ASP: Durchblick durch den Abkürzungsdschungel der Software-Anbieter
SaaS, Cloud, ASP: Durchblick durch den Abkürzungsdschungel der Software-Anbieter

Im Bereich von Unternehmens-Anwendungen wie ERP, CRM, oder E-Commerce-Plattformen trifft man immer wieder auf die Abkürzungen SaaS, Cloud und gelegentlich auch ASP. Wir erklären die Unterschiede … » weiterlesen

Alle Hefte Jetzt abonnieren – für nur 35 €

Kennst Du schon unser t3n Magazin?