Umbraco auf Windows Azure installieren

Umbraco LogoWie ich Christian Wendler, Vorstandsmitglied der Umbraco User Group Deutschland, versprochen hatte, wollte ich das Open-Source CMSUmbraco auch einmal auf der Windows Azure Plattform ausprobieren…

In diesem Blog Post berichte ich von meinen Erfahrungen, die ich, bei der Installation von Umbraco auf der Windows Azure Plattform, sammeln konnte.

 

Ein Überblick über die Installation

Für die Installation verwende ich den Windows Azure Accelerator für Umbraco, sowie das Umbraco CMS in der Version 4.7.0.

Der Windows Azure Accelerator für Umbraco dient hierbei als Host für eine oder mehrere Umbraco Sites:

Windows Azure Accelerator für Umbraco- Überblick

Genauer gesagt, ist der Windows Azure Accelerator für Umbraco eine Windows Azure Web Rolle.
Diese prüft in regelmäßigen Abständen nach Unterschieden zwischen den lokalen Umbraco Dateien und denen, die im "sites" Container eines Azure Blob Storage Accounts befinden (Dazu später mehr).
Falls Unterschiede bestehen, werden diese synchronisiert. Somit stellt jede Web Rollen Instanz sicher, dass sie immer den aktuellen Stand der Umbraco Dateien hat.
Falls nötig, werden auch weitere Sites hinzugefügt bzw. Sites entfernt.
Des weiteren nutzten die Umbraco Sites SQL Azure für die Umbraco und Session State Datenbanken.

 

Der Windows Azure Accelerator für Umbraco

Nach dem Download des Windows Azure Accelerator für Umbraco und dem entpacken der Dateien, kann die Installationsroutine mit dem StartHere.cmd Skript gestartet werden:

Windows Azure Accelerator für Umbraco - Stammverzeichnis

Das Windows Azure Projekt

Als Erstes wird man nach den Namen und Key des Windows Azure Storage Accounts gefragt.
Das Skript passt daraufhin die Service Configuration Datei des, im "code" Verzeichnis liegenden, Windows Azure Projektes an.

Windows Azure Accelerator für Umbraco - StartHere.cmd Skript (Teil 1)

Da das Starten der Web Rolle in der Windows Azure Plattform eine Weile dauern wird, sollte man das Projekt an dieser Stelle in Visual Studio öffnen und publizieren.

Hinweis
Das mitgelieferte Windows Azure Projekt ist so konfiguriert, dass zwei Instanzen vom Typ "Extra Small" gestartet werden. Wenn dies nicht gewünscht ist, sollte man die Web Rollen Konfiguration vorher anpassen.

 

Die Umbraco Datenbank für SQL Azure

Als Nächstes kann man über das Skript die Umbraco Datenbank in SQL Azure anlegen lassen.
Hierzu müssen der Server- und Datenbankname, sowie der Benutzer und das Passwort, eingegeben werden.

Windows Azure Accelerator für Umbraco - StartHere.cmd Skript (Teil 2)

Windows Azure Accelerator für Umbraco - StartHere.cmd Skript (Teil 3)

Windows Azure Accelerator für Umbraco - StartHere.cmd Skript (Teil 4)

 

Anpassen der Umbraco Web.Config und Erstellen der Session State Datenbank

Nachdem nun die SQL Azure Datenbank angelegt wurde, muss die Web.Config der Umbraco Seite angepasst werden.
Hierzu habe ich ein frisches Umbraco CMS heruntergeladen und entpackt.
Im nächsten Schritt des Skriptes wird man aufgefordert einen Pfad mit den Umbraco Dateien anzugeben.

Windows Azure Accelerator für Umbraco - StartHere.cmd Skript (Teil 5)

Hinweis
Hierbei sollte man den Slash am Ende der Pfadangaben nicht vergessen.

Anschließend muss noch ein Datenbankname für die Session State Datenbank vergeben werden.

Windows Azure Accelerator für Umbraco - StartHere.cmd Skript (Teil 6)

 

Hochladen der Umbraco Dateien

Zu guter Letzt fragt das Skript, ob man nun die Umbraco Dateien hochladen möchte.

Windows Azure Accelerator für Umbraco - StartHere.cmd Skript (Teil 7)

Wenn man dies mit einem "Y", bestätigt muss noch der Host Header angegeben werden.

Windows Azure Accelerator für Umbraco - StartHere.cmd Skript (Teil 8)

Daraufhin startet das mitgelieferte Deployment Tool.
Die Dialogfelder sind bereits mit den Werten aus dem Skript befüllt.

Windows Azure Accelerator für Umbraco - Deployment Tool

Ein Klick auf den Upload Button startet den Vorgang.

Bei dem Upload Vorgang wird jede Datei einzeln im Blob Storage angelegt.
Der Domain Name wird als Prefix für alle Azure Blobs verwendet.
Somit können die Dateien später den einzelnen Umbraco Sites zugeordnet werden.

Nach dem Upload kann das Deployment Tool geschlossen werden.

 

Einrichten der Umbraco Seite

Wenn die Windows Azure Rollen gestartet sind, kann man die neue Umbraco Installation unter der, im Skript verwendeten, URL erreichen.
Hierzu muss allerdings ein CNAME Eintrag im DNS Server angelegt oder (zu Testzwecken) die lokale hosts Datei angepasst werden.

Beim ersten Start der Umbraco Seite, müssen zuerst die wenigen Schritte der Umbraco Installation durchlaufen werden.

In Schritt 1 wird die Willkommensseite der Umbraco Installation angezeigt, die einen Überblick über die kommenden Schritte liefert.
Weiter zu Schritt 2 kommt man mit dem Klick auf "Let's get started!".

Umbraco Installation - Willkommensseite

In Schritt 2 müssen die Lizenzbedingungen gelesen und akzeptiert werden.

Umbraco Installation - Lizenzbedingungen

Der Schritt 3 wird übersprungen, da die Datenbankkonfiguration bereits durch das Windows Azure Accelerator Skript angelegt worden ist.

In Schritt 4 wird das Administratorkonto angelegt.

Umbraco Installation - Benutzerkonto

In Schritt 5 kann aus mehreren Starter Kits und Skins jeweils Eines ausgewählt werden.

Umbraco Installation - Auswahl Starter Kits

Umbraco Installation - Installation des Starter Kits

Umbraco Installation - Auswahl Skin

Mit Schritt 6 ist die Installation der Umbraco Seite fertig.

Umbraco Installation - Ende der Installation

 

Fazit

Mit dem Windows Azure Accelerator für Umbraco können schnell und einfach Umbraco Seite in der Windows Azure Plattform installiert und betrieben werden.

Einem kurzer Blick auf den Synchronisationsmechanismus lässt allerdings vermuten, dass möglicherweise sehr viele Transaktionen für den Azure Blob Storage generiert werden.

 


Download CodePlex Downloads:

 

Videos zu diesem Thema:

 


Check Also

Time Machine Backups nach Microsoft Azure

Seit einigen Jahren verwende ich eine Apple Time Capsule, um meine Time Machine Backups an einem zentralen Ort speichern zu können. Bislang hatte das für mich auch vollkommen ausgereicht. Seitdem ich jedoch immer mehr unterwegs bin, habe ich nach einer Lösung gesucht, die ich auch von unterwegs nutzen kann. In diesem Blog Post zeige ich deshalb, wie man Time Machine Backups nach Microsoft Azure machen kann.