Advanced
This presentation is the property of its rightful owner.
Sponsored Links
1 / 25

Advanced Windows Hosting A Dedicated Server Deployment Solution PowerPoint PPT Presentation


  • 60 Views
  • Uploaded on
  • Presentation posted in: General

Advanced Windows Hosting A Dedicated Server Deployment Solution. Bernhard Frank | Mario Briana Web Platform Architect Evangelists Developer Platform and Strategy Group (Germany | CEE ). Dedicated Server Survey Results.

Download Presentation

Advanced Windows Hosting A Dedicated Server Deployment Solution

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Advanced windows hosting a dedicated server deployment solution

  • Advanced Windows Hosting

  • A Dedicated Server Deployment Solution

  • Bernhard Frank | Mario Briana

  • Web PlatformArchitectEvangelists

  • Developer PlatformandStrategy Group (Germany | CEE)


Dedicated server survey results

Dedicated Server Survey Results

Designedfordedicatedservercustomer Web-VAPs (Value Added Provider)

Key Findings:

  • Most Customers usingthe Server forApp Hosting

  • Most Customers callthemselves Developer

  • Most Customer have 1 upto 3 sites on onemachine


Advanced windows hosting a dedicated server deployment solution

Model behindAdvanced Windows Hosting

Price/Hoster

Value/User

Price/Hoster

Value/User

Tiger Duck:Toincreasevalue!!

LAMP Land

WISA Land

Hoster Invest

Hoster Invest

Hoster Invest

Hoster Invest

Windows basevalue

Windows base Price

LAMP basevalue

LAMP base Price

Special Software package + How-to‘sforhosters / WebVAPsandcustomersthatextendsthe Windows Server capabilitiesto a „Value Add Offering“.

Advanced Windows Hosting

- package


Advanced windows hosting stack 1st build a lamp aquivalent

Advanced Windows Hosting Stack(1st:build a LAMP – aquivalent)

value

Web Applications

Control Panel

(Plesk, Confixx, Ensim,…)

SQL Mgr.

PHP

.net 3.0

ASP.net AJAX

SQLExpress

Apache, PHP, MySQL

fastCGI

ASP.NET

IIS

Base OS

Base OS

LINUX (is)

WINDOWS


Scenario

Scenario


Advanced windows hosting stack package manager

Control Panel

(Plesk, Helm)

Umbraco (WebCMS)

Web Application Installer

WSS Membership DB

Windows Sharepoint Services 3.0

.net 3.0

ASP.net AJAX

MS SQL Server Express Manager

Advanced Windows Hosting Stack(Package-Manager)

MS SQL Server Express

PHP

fastCGI

value

Web Applicationen

Control Panel

(Plesk, Confixx, Ensim,…)

SQL Mgr.

PHP

.net 3.0

ASP.net AJAX

SQLExpress

Package-manager

Apache, PHP, MySQL

fastCGI

ASP.NET

IIS

Base OS

Base OS

LINUX (Ist)

WINDOWS


Advanced windows hosting stack 2nd get more value to the user

Advanced Windows Hosting Stack2nd: getmorevaluetotheuser

value

Web Applications

Web Applications

Control Panel

(Plesk, Helm)

Control Panel

(Plesk, Confixx, Ensim,…)

SQL Mgr.

PHP

.net 3.0

ASP.net AJAX

SQLExpress

fastCGI

Apache, PHP, MySQL

Package-manager

ASP.NET

IIS

Base OS

Base OS

LINUX (is)

WINDOWS


The packagemanager value props

The Packagemanagervalueprops

@Hoster:

  • Open-Source (extenableandcustomizable)

  • Packages (extenableandcustomizable) (OS, Language, V- orDedicated Server)

  • Contextspecificinformationaboutthepackages (html)

  • Consistentinstallations. (easierTroubleshooting, moresecure)

    @customer:

  • Reducinginstallationtimes, searchingforusefulcomponents

  • Customer decideswhattoinstall.

  • Requirements / Dependenciesarecheckedandshownbeforeinstalling.

  • Benefitof expert Installation - Know-How

  • Getmorevaluewhattheplatformprovides.


Advanced windows hosting a dedicated server deployment solution

  • Advanced Windows Hosting Stack(Web Application Installer)

value

Web Applicationen

Web Applications

Web Application Installer

Control Panel

(Plesk, Helm)

Control Panel

(Plesk, Confixx, Ensim,…)

SQL Mgr.

PHP

.net 3.0

ASP.net AJAX

SQLExpress

fastCGI

Apache, PHP, MySQL

Package-manager

ASP.NET

IIS

Base OS

Base OS

LINUX (is)

WINDOWS


Advanced windows hosting a dedicated server deployment solution

Web Application Installer:

Open-Source:

0€! vs. InstallShield Express ca. 500€ extensible

@Developer

Create an MSI foryour web app in 30 min

(asp.net/php/perl/(my)sql)

@User

Easy installation in a well knownconsistentmanner

WiXML

MSI Paket


High level architecture overview

High levelarchitectureoverview

Web-Application

(WIX Package)

Web-Application

(WIX Package)

Providedby Hoster

Web-Application

(WIX Package) ProvidedbyCommunity

AWHPackage

….

Advanced Windows Hosting Base (configurable, e.g. ASP.NET AJAX, WSS, SQL Express…)

.net 2.0 (ASP.NET)

HosterVanillaInstall

IIS

Windows Server OS


Usage scenarios

Usage Scenarios

MS Package Server

Install ClientGetpackage List

ISV generatespackage

Hoster generatespackage

Hoster Package Server

Decidewhattoinstall

Community generatespackage

Community Package Server

Download / Install

WAI

Raktajino

MSI Packets

XML Deffiles

MSI Packets


Try it out links

Try it out - Links

Packagemanager:

http://www.codeplex.com/raktajino

Web Application Installer Template:

http://www.codeplex.com/wai

Advanced Windows Hosting Site (German)

http://www.advanced-windows-hosting.net


Advanced windows hosting a dedicated server deployment solution

Demo


Advanced windows hosting a dedicated server deployment solution

Q&A


Backup slides

Backup slides


Advanced windows hosting a dedicated server deployment solution

  • PackagemanagerArchitecture


Project structure

Project Structure

  • App.config

  • Business Logic

    BL.cs

  • Windows Forms

    Raktajino.cs (main UI)

    UserEulaDialog

    UserInputDialog

  • Resources

    Resources folder

    HostingOptions.xml

    InstallationRequirements.xml

    Localization (not planned for 1st release but already on Codeplex)

    WinformStrings.resx

    WinformStrings.de-DE.resx


App config

App.config

HostingOptionsURL

http://localhost/tigerduck/hostingoptions.xml?lang=%language%&OS=%OS%

InstallationRequirementsURL

http://localhost/tigerduck/InstallationRequirements.xml"

Banner

resources\banner.htm

ProductDescriptionURL

resources\raktajino.htm

BackgroundInstallCheck

True/False

SortProductTreeView

True/False

DownloadSubDirectory

Whendownloadingthisistheplacewherestuffgetsstored

TempSubDirectory

Usedtounzipdownloadedpackages

DisableTabControlDuringInstall

True/False

in case a hosterwantthecustomertobeabletoclick on Packageswhileweareinstalling

Culture

de-DE


Hostingoptions xml

HostingOptions.xml

  • Package Definition

    • Title, Description

    • Category

    • Install URL and Eula URL

    • InstallRequirements

      • Referenced in Installrequirements.xml

    • UserInput

    • Action


Installationrequirements xml

InstallationRequirements.xml

  • External Check (expensive regarding resource consumption!)

    • Property="IIS6 configuredwithFastCGIfor PHP" SpecialFolder="%SystemRoot%" SearchPath="system32\" CheckFile="cscript.exe" Arguments="inetsrv/fcgiconfig.js -get -section:"PHP" -ExePath„

    • CompareMethod="ValueContains“ php-cgi

  • Registry Check

    • Property="IIS Version greater 4" Key="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters" Value="MajorVersion“

    • Compare ValueType="Int32“ Method="ValueGreaterThan“ 4

  • File Check

    • Property="ASP.NET version 2.0" SpecialFolder="c:\" SearchPath="Windows\Microsoft.NET\Framework\v2.0.50727" FileName="aspnet_isapi.dll„

    • CompareMethod="ValueExists"

  • MSI Product Check

    • Property="ASP.NET AJAX 1.0 installed" GUID="082BDF7B-4810-4599-BF0D-E3AC44EC8524"

  • In the 1st release we are not supporting WMI check because

    • WMI Product Check is not installed by default on a WS 2003 box

    • actually MSI Product check is doing almost the same

    • there was a bug in Vista (fixed with SP1)


Installationrequirements xml1

InstallationRequirements.xml

  • External Check (expensive regarding resource consumption!)

    • Property="IIS6 configuredwithFastCGIfor PHP" SpecialFolder="%SystemRoot%" SearchPath="system32\" CheckFile="cscript.exe" Arguments="inetsrv/fcgiconfig.js -get -section:"PHP" -ExePath„

    • CompareMethod="ValueContains“ php-cgi

  • Registry Check

    • Property="IIS Version greater 4" Key="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters" Value="MajorVersion“

    • Compare ValueType="Int32“ Method="ValueGreaterThan“ 4

  • File Check

    • Property="ASP.NET version 2.0" SpecialFolder="c:\" SearchPath="Windows\Microsoft.NET\Framework\v2.0.50727" FileName="aspnet_isapi.dll„

    • CompareMethod="ValueExists"

  • MSI Product Check

    • Property="ASP.NET AJAX 1.0 installed" GUID="082BDF7B-4810-4599-BF0D-E3AC44EC8524"

  • In the 1st release we are not supporting WMI check because

    • WMI Product Check is not installed by default on a WS 2003 box

    • actually MSI Product check is doing almost the same

    • there was a bug in Vista (fixed with SP1)


Bl cs business logic

BL.cs – Business Logic

  • Called from UI

  • Classes for

    • Packages

    • InstallationRequirements

    • InstallationAction

    • UserInput

  • DOES NOT INSTALL anything

  • DOES NOT DOWNLOAD anything

    • About to change in next version


Advanced windows hosting a dedicated server deployment solution

Business Logic

HostingOptions.xml

InstallationRequirements.xml

UserInput class omitted for clarity


Raktajino cs ui

Raktajino.cs - UI

  • On Load

    • Create Package structures

      • Add Package Information to the Installation tabs

    • Add Installation Requirements

    • Check Installation Requirements in a background worker thread

      • Update the information in the Installation tabs

        • Installable,

        • Dependent on other Install,

        • Already installed

  • Install Button

    • According to Requirements

      • User will be referred to another Package

      • Package gets installed in background in a separate process

      • If specified

        • User accepts EULA

        • Enters requested input


  • Login