For quite some time now Tony Valenti from PowerDNN, has been telling us that we should swing over and take a tour of their operation. They are headquartered in Omaha, Nebraska, which is only a two-hour drive from Des Moines. After what has to be almost a year now, we found the time and met with Tony and a few of his staff members on Saturday August 22nd. After touring their operation both on the data center and support side we were impressed with what we saw; the following is a recount of some of the highlights that we thought would be good to share.
Background
First of all to set the background, PowerDNN is one of our recommended hosting providers, and it just so happens that this site, as well as all other IowaComputerGurus branded sites are hosted on a dedicated server through PowerDNN. We additionally have a number of clients that use various levels of hosting services from PowerDNN.
Therefore, with this in mind, we always like having a good idea of who we are working with and how they run our business since our reputation is on the line if we recommend a hosting provider because many people lean towards IowaComputerGurus for recommendations on other vendors, hosting providers and other professional services. Therefore, with such an opportunity to look “behind the scenes” we jumped at the chance.
Data Center Tour
The first part of our visit involved a tour of the actual data center facility. Now for me this was the first time I’ve been back inside of a data center since I was a very little kid. So in a lot of ways it was like being a kid in a candy store, all of that technology and complexity in one small place. Upon arriving at the facility after a little hiccup with directions I was impressed with the massive generators outside for backup systems. After ID verification and being issued a badge, we were granted physical access to the facility and Tony proceeded to show us the first set of their servers.
The first area, consisted of rack-after-rack of servers, all in my opinion very well organized and secured. I was impressed at the level of neatness and order within each of the cabinets, not to mention the impeccable labeling and naming conventions, where any server could quickly be identified. Tony proceeded to explain that all newer servers were actually in a separate section of the data center, and even more neat and orderly than this area.
We proceeded to the other half of the datacenter, where as Tony promised the servers were even more neatly arranged. We spotted the IowaComputerGurus server on the rack and now can associate a true physical location with all of our hosting. Overall, their network strategy and topology was quite impressive as they put a lot of effort into managing traffic to ensure that both backups and content can flow without limiting each other.
PowerGrid/PowerCache Demo
While still at the data center Tony prepared to demonstrate the true item that we were looking for our of the visit: a demonstration of the PowerGrid and PowerCache systems that they have been talking about. The demonstration was with the big setup that Tony mentioned on the DotNetNuke form about “Is DotNetNuke Scalable?”. Now, we work with many customers that have DotNetNuke configured in a web-farm environment, most commonly these setups include multiple web servers that access a centralized file share for web content. With proper configuration, this method works just fine, , however, in an environment that requires high availability, it introduces a single point of failure to the system.
A while back, when Tony explained that their PowerGrid/PowerCache setup did not utilize this method I was intrigued as their solution appeared to be fully redundant, and they promised to have a replication strategy that would work to quickly replicate and keep copies of content in-sync between the different web servers. For this, there were three items that were demonstrated, the actual physical file sync from server to server, cache synchronization, and SQL Server failover.
Physical File Sync
The first part of the demonstration involved a demonstration of how they configure file moves from server to server. To demonstrate this they used a remote desktop connection to two of the 8 web servers in the configuration. Tony then created a file on the first web server; by the time he saved the file, and ALT + TAB’ed to switch to the other server the file was already present. A very impressive file sync process to replicate across all file servers. Although very good for regular content upgrades I did pose the question regarding the installation of modules, and other items, that if completed on only 1 server that might cause problems if replication was not 100% instant. For this it was recommended that items be done during a maintenance window to reduce the risk of any potential issues. Although a very minor issue considering that sites needing this type of architecture will not be deploying module updates mid-day anyway!
Cache Synchronization
Next up for the demonstration was how PowerCache actually worked to maintain the cache between servers. In our experience this has been by far the hardest part of a web-farm configuration with DotNetNuke, as the default providers each have their own advantages and disadvantages. For this demonstration Tony navigated directly to two different web servers as well as brought up a diagnostic screen that showed the specific items being handled by PowerCache. He deleted a page from the one web server and right away refreshed the other browser window that was pointing to one of the other servers - instantly the content updated, just like you would want it to be. Very impressive, very responsive, and best of all, hands off! He proceeded to also show what happens if there is a temporary connection issue between servers. Each server continued to function as you would expect, until the connection was restored then all cache items were updated and normal operation resumed. Again, a very smooth transition and seamless to end users.
Database Failover (SQL Server Mirroring)
When talking about a fully redundant setup, PowerDNN demonstrated almost all of the parts necessary with load balancers, dual web servers with all content local, the final piece was a SQL Server configuration that supported failover. For this their solution is to use a SQL Mirroring configuration with a primary server, a hot failover server and a witness server to manage the toggling between primary and secondary. For this Tony demonstrated a total shutdown of the SQL Server process on one database server, the other server came online right away and the entire DNN installation continued to function as one would expect. Quite impressive, and no visible downtime, although they noted that a 10-15 second lapse might occur, but a simple refresh of the page would resolve the issue.
Overall Thoughts
For the sake of brevity we will cut the story off here, we additionally toured the PowerDNN offices, which were very nice, but not over done. Overall though we had a great tour and demonstration and I have to say that the solutions they showed us do provide for a very unique, redundant, and easy to manage DotNetNuke solution for large scale implementations. In fact, we are looking to move one of our web farm customers from their current host over to a PowerGrid configuration with PowerDNN.
Feel free to share you feedback below, if you have any specific questions feel free to post those as well, or e-mail Mitchel directly at msellers@iowacomputergurus.com.