A long time has passed since our last posting
about this topic and DNN (formally DotNetNuke) as well as AWS have updated their services. Not only the continuous improvements of the AWS Management Console (Web UI of Amazon Web Services) changed the look & feel of the IaaS market leader, but DNN has also had a new major Release with Version 7.
One of the big changes for the open source CMS, DNN, is a pretty obvious one. The UI has been completely reworked and now displays a modern interface. There are a lot of other different improvements as well - like a simplified control panel, a better drag-n-drop feature for modules and auto-save during text editing, just to name a few.
The still pushing strong web services from Amazon have matured pretty nicely. There is a lot of information available and it's pretty easy to handle it - even for users who are new to cloud technology. You can set up virtual servers in the Amazon Cloud in minutes, even if you don't yet have an account!
We want to provide you with a simple step by step guide that will swiftly set you up with a working cloud-based DNN 7.
To get things started you'll need an account for the Amazon Web Services. If you have an AWS account already just skip this paragraph. If you don't - head to aws.amazon.com
and sign up. In addition to some personal information you'll need a credit card since most of the services amazon provides are billed by the hour or 'pay as you go'.
After successfully logging in at console.amazon.com
you are confronted with the Dashboard. Navigate to the EC2 service and select it to get to the EC2-Service Dashboard.
Currently a pre-configured .ami-based DNN can only be run in the US East (N. Virginia) or EU (Ireland) Region. So make sure one of these specific regions is selected. Once you're sure that you're in the right region you can advance to the 'Launch Instance'-Button.
: Now we can choose which Amazon Machine Image (.ami) we want to run on our EC2-Server. An AMI usually contains the OS and additional software which is required for the specific use-case. Since we want to run a preconfigured DNN on AWS, select 'Community AMIs' and type 'dnn' into the search-box.
There are currently 5 different AMIs available for DNN. There are slight differences regarding DNN7, IIS and SQL Server depending on the selected option. For our purposes select DNN Platform 07.03.00 with IIS 8.5.
In Step 2
we have a lot of different options to choose an instance type which will host our DNN. A rather small instance
should be selected since this will only be required for testing. A t2.small or t2.medium-type will fit the purpose, which is going to cost
you between USD 27 and USD 49 a month.
We want this guide to be simple and to offer a result as fast as possible. This can be achieved by selecting "Review and Launch" which leads us to the third and final step in our tutorial. (The next step in the Management Console is Step 7 - but don't be confused by this, since this is a possible shortcut within the GUI.)
Our new (almost) created DNN in the AWS-cloud should be available via HTTP for everyone. Now we have to tweak our Security Groups a little. Just click on Edit security groups to define rules such as which protocol, ports and IPs are allowed to access our DNN 7.3.
Remove the rule for RDP on Port 3389 by clicking on the 'x'-Button at the end. RDP is for Remote Desktop Protocol and this would be needed if you wanted to connect to the server via the Remote Desktop Client, but for now we don't want to connect to it. Let's make the server available via TCP on Port 80.
Just click on 'Add Rule', select 'Custom TCP Rule' and define 80 in the 'Port Range'-Box. This opens the server to all internet TCP traffic through port 80. By clicking on Review and Launch we're back at the 'Review'-Step and are ready to launch our EC2-Instance with a running DNN.
(if you have a key pair already):
The last question we're asked is to specify a key pair. This is needed for remote access to the EC2-Machine. We don't currently have one, so we're going to have to create a new pair. Simply select 'Create a new key pair', specify an identifiable name and store it safe for after your download. The click on 'Launch Instances' is going to start your server so pay attention since it's going to cost you real money (it isn't much - but still dineros.)
After you have launched the instance, it will take some time until the machine is up and running. A rough estimate would be 5-10 minutes and then you're able to setup DNN with the familiar setup wizard provided by DNN7. You can check the status of your instance in the Instances context of the EC2-Service.
The 'Status Checks' indicates whether your instance is still initializing or already running. As soon as it shows the 'running' status you can use the public DNS and call it via your web browser. If you did everything accordingly you will be able to setup your DNN. Just enter a host password and a valid e-mail adresse to continue.
cross posted at ITM Labs