|
DNN Installation on the CloudThis page presents (without the sales hype) a concise yet deep analysis of the detailed nuances of installing and configuring the Microsoft-centric Dot Net Nuke (DNN) CMS (Content Management System) in today's cloud environment. This is one in a series on DNN: | Topics this page: |
|
Sign up at the http://www.gogrid.com marketing site. Email me about a $100 rather than $50 starting credit.
Don't worry that you won't remember a random set of 32 characters in upper and lower case and with special characters.
Just copy and paste the password and your browser will remember it for you.
In case you forget or clear your cache (whatever comes first), plug in a removeable USB drive, open up Notepad, copy the account name, the passphrase you used to generate the password, and the password change the font to 32 points, put spaces between each character (because w and vv look the same), then print out 2 copies and put them with the USB drive in your fire-proof safe.
I say 2 copies because when you take one out of that safe, you may not remember to put it back.
Saying "I'll just take it out for a minute and put it right back" is easier said than done.
Login at http://my.gogrid.com
Click the Add near the left center of the page.
Instances with "SQL Express" do not require a separate database for development or simple web sites because
Each server costs a minium of $2 per day. This is because charges apply whether or not the web server is being used.
Many people mistakenly think that because a cloud offers "infinite" capacity, no thought is needed about performance or capacity.
But the reality is that GoGrid offers the same machines, just a lot of them and quicker. there is a price to how fast and how much capacity each server holds.
Some have noticed that servers running on GoGrid seem slower. But we dont' know really why.
It also takes a certain amount of time to install and configure a server after GoGrid configures it.
I (Wilson Mar) am performing several benchmark runs using "representative" DNN transactions at various sizes of accumulated data.
For realism, I am looking for sample databases to use. So let me know.
I aim to refine my approach as I go such that the performance of services on GoGrid can be compared over time and against other providers (Amazon, Google Grid, Force.com, etc.).
If you'd like to compare speeds with what you're achieving in your environment, let me know!
How many servers to activate for your app depends on the combination of several metrics:
Please leave a comment below or email me on this about your experience.
I'm working on a Capacity Plan for the DNN Database.
In order to serve more traffic than a single front end web server ("web-head") can handle and to allow a web server to be removed from service without interrupting service for web users browsing the sites, the IIS website root directories of each server in a web farm are mapped to a common UNC share on a remote file server (NAS or SAN) containing the application source code as well as any static content for the individual sites. Additionally, web servers connect to a database server for dynamic application content.
GoGrid Windows servers are reached from Windows client machines (such as Windows XP or Vista) using Remote Desktop Connection (RDP) (rather than SHH on Linux machines).
On your Dev. client machine, click Windows Start and type in the "Start Search" field mstsc, Press Enter. This file is in %SystemRoot%\system32\mstsc.exe.
Subsequently, Windows shows Remote Desktop Connection in the list when Start is clicked.
Passwords for GoGrid's servers are shown by clicking Support at the top, then Passwords on the top left tab.
Here are what my automation scripts do to get GoGrid app servers configured the way I like to run DotNetNuke:
If you plan on doing e-commerce (or care about data security), you will need an SSL certificate for each server. A SSL certificate needs to be purchased for each domain name so that the HTTPS can be used on your site.
I recommend getting sub-domain names such as "mail.mysite.com" for email. This provides you more flexibility in managing server traffic, capacity, and security.
Most large companies also purchase the Top-Level names (.com, .net, .info, .ws, etc.), even country suffixes (such as .de for Germany, etc.)
You then specify to the Registrar's DNS the IP used by a server at GoGrid.
GoGrid automatically assigns each account a "C" range of IP addresses.
The ".1" IP in the range is not listed because that's the Gateway address (specified when setting up a connection to the GoGrid Cloud).
If you have more than one server and a load balancer installed, specify the load balancer's Virtual IP (VIP) address.
GoGrid doesn't want to enable spammers to spam people from their servers.
So GoGrid blocks SMTP traffic by default.
However, since emails are a key part of many applications:
GoGrid will also ask the volume of emails expected in/out of your servers.
FTP get can be typed in from the Run command-line interface to retrieve files.
Internet Explorer is available on each server, so you can address it to a webpage where you can click a download link.
To get files into and out of the Grid within GoGrid from a server (but not from outside) use either FTP, SCP, or create a network share on the server server. This is unlike Amazon, which offers its cloud to the public internet.
Once generic install files are on one server, copy them to the GoGrid Cloud so that they can be transferred into subsequent new servers. That's what's it's there for.
This way, when you extract it, the folder created will match.
In the root (where web.config also resides) create an app_offline.htm to display to users when the website is down.
The app_offiline.htm is shown instead of the "This site is unavailable" displayed by the UnderConstruction.htm file in the DNN default Install folder. DNN dislays this page automatically during upgrades.
Copy in custom work in a zip files stored in the Install folder so that they can be installed once DNN is up (by invoking URL http:// ... /Install/Install.aspx?mode=InstallResources).
This converts html files into .ascx files and copies skins into the Portal/_default/Skins folder.
Changes to core code is necessary in order to use standards-compliant CSS coded to automatically adjust for mobile and large personal computer screens.
Those hosting on a 3rd party data center usually need to make a request to reset permissions on folders.
If you have total admin control (such as on GoGrid web servers), you can/need to set file permissions yourself.
NOTE: Setting permissions on the parent folder before creating any file under it propagates to child folders and files and you'll never have to worry about it.
On Windows 2003, add NETWORK SERVICE. (Previously on IIS5 the ASPNET server machine account was added).
Check "Full Control" (to Allow Modify, Read & Execute, List Folder Contents, Read, Write.)
Click "OK" to dismiss the pop-up.
Trust levels need to be change from from default because:
To make this change within the machine.config file.
If machine.config contains allowOverride="false" (which stops individual web.config file overriding on shared host machines), the change cannot be made.
Otherwise, uncomment <trust level="Medium">. This overrides permission levels granted by the <SecurityPolicy> <trust> at systemroot/Microsoft.NET/Framework/versionNumber/CONFIG.
As with any ASP.NET web application, the web.config XML file for each application contains configuration settings such as:
Each new DNN installer also comes with a release.config file which is merged into localized settings in the existing web.config file.
There are TWO places to specify the database each DNN application server references.
<add name="SiteSqlServer" connectionString="Server=(local);Database=DotNetNuke;uid=;pwd=;" providerName="System.Data.SqlClient" /> </connectionStrings> <appSettings> <!-- Connection String for SQL Server 2005 Express -
kept for backwards compatability - legacy modules --> <add name="SiteSqlServer" connectionString="Data Source=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename=|DataDirectory|Database.mdf;" providerName="System.Data.SqlClient" /> <!-- Connection String for SQL Server 2000/2005 <add name="SiteSqlServer" connectionString="Server=(local);Database=DotNetNuke;uid=;pwd=;" providerName="System.Data.SqlClient" /> -->
NOTICE: The string specifying SQL Server 2005 Express is not commented out, but specs for SQL Server are commented out.
KEY: There can only be one "SiteSqlServer" entry!
If using SQL Server Express 2005 database, nothing needs to be done because it doesn't have the user controls of SQL Server.
This page notes that the <appSettings> element is maintained for backwart compatibility for DNN modules versions prior to 2.0.
If you are operting in a hosted environment, hosting admins usually are the ones to run Member Role install scripts against the database before DNN installation occurs.
This means that the web.config InstallMemberRole setting should be changed to "False".
While you have the web.config file open, there are a few other settings.
To have the application show a custom error page rather than the techy .NET defaul page so common to the internet now,
<customErrors mode="RemoteOnly" defaultRedirect="customepage.htm"/>
The <system.web> section also defines where the sectionGroups above will be implemeted.
<add key="AutoUpgrade" value="false"/>
Assets for each website are contained in a .zip file. Within this are packages created, packaged, and deployed independently:
These are referenced by Pane level skinning specs.
Go to whoever registered your domain name and set their DNS to point to GoGrid's DNS servers.
Run Cmd "ipconfig /all" to see GoGrid's DNS server IPs.
Automatic installation of Modules occur from a binary .resource file for each module in folder Install\Module when the "Install Additional Extensions" link is clicked.
Notice that each module has its own version number.
TIP: Rename .resource to .zip and the module can be installed manually by clicking the "Install New Module" link.
One of the great things about a cloud service is that servers can be created easily.
So now we don't have any good excuse to verify that our backup files can indeed be restored to another server ... quickly.
Many astute customers now ask for proof that this can be done. This is a key part of "disaster recovery planning".
This page was created to present informaton on these pages in an updated, more concise way.
How to Install DotNetNuke 4.3.x from DNN Creative magazine
| ||
|
| Your first name: Your family name: Your location (city, country): Your Email address: |
Top of Page
Thank you!
Human verify: |