Step-By-Step: Migrating Web Servers to Windows Server 2012 R2
In many of my IT Camps over the last 13 years I ask how many people have an updated topology map?
Most of them just look at me with a blank face. Some raise their hands but not many.
“It’s not that IT Administrators plan to fail, it’s that they failed to plan” Just something to keep in mind.
As you’ve been hearing the news about “End of Life” support for Windows XP last April 8th, 2014 of course that would be followed with the retirement of Windows Server 2003 R2 with the end-of-support date set for July 14, 2015. This will include all versions of Windows Server 2003 and R2 - the Itanium and x64 editions, the Windows Server 2003 Cluster Edition, Datacenter Edition, Web Edition, and Enterprise edition. It’s not like your server will seize and stop functioning, but any future attacks around known security holes or volatile components on those platforms won't be patched.
We will continue to make available security updates and paid per-incident support, however, that will all end July 14, 2015. This is an easy date for me to remember as it’s my mother’s birthday. It’s not however a surprise birthday party or an event filled with joy. It might even be painful for some to go through the migration or get the new hardware up and running. The good news is that this is the last time I’ll talk about Windows Server 2003 or Windows XP. I thought the 386 was hip too, but that is so yesterday, not to mention the stale coffee in my cup below.
These days you have to think about things that weren’t around in 2003. How about Hyper-V while at the time was codenamed Viridian.
Think about all of your topology plans around your current model for your web server farm. If you don’t have a current topo, go build one. Start there. Look at all of the components and whether you are going to bring those old workloads into the new world, whether you’ll upload the site with Visual Studio and put them in the cloud., deploy a new server, rip and replace, rebuild.
There are several things to consider when moving your web servers -
· Web Pointers
· Web Page Names
· Web Links
· Web References
· Web Attachments
· Keeping and or changing CSS Style Sheets
· New hardware – moving from X86 to X64
· Virtualization – Hyper-V is here
· Consolidation –Move to cloud within Microsoft Azure
· Security – Patches and Windows Updates
· Application migration – Visual Studio Online and to Microsoft Azure
· Training – Microsoft Virtual Academy – https://aka.ms/go-mva
· Licensing – That’s a whole article in itself.
· Time – Priceless.
· People – Costly.
So what do you do if you’re going to migrate your Web Servers to Windows Server 2012 R2?
If you currently have a server running Windows 2003, you should plan to rebuild/migrate your web roles to new hardware and a new Operating System or put them in Microsoft Azure.
I think a key issue is that Windows Server 2003 is 32-bit and we are now in a whole other world with 64-bit. As the software changes so does the hardware and the capabilities of compute, storage and networking. People seems to think 32-bit Windows Server is good enough, but do you still run 64k of memory and a 5mb hard drive in your computer? Heck no. You want the latest and greatest functionality, responsiveness and pizzazz.
Applications like Exchange 32-bit server which at the time of its release did exist in a 32-bit version, would need to be replaced with a 64-bit version, since no 32-bit editions of Exchange are offered anymore. SQL Server and SharePoint are others. This is covered in my next article.
Azure Websites Migration Assistant
One thing to consider for migrating Windows Server 2003 IIS web sites to Azure Websites, you may want to check out the Azure Websites Migration Assistant tool at https://www.migratetoazure.net
Go to the page and notice there are 3 easy steps,
On Step 1and go to the bottom of the page.
Click on “Web Deploy For Windows 2003 Server”
Download the Web Deploy V3.6 Betaapp.
The Web Deployment Tool simplifies the migration, management and deployment of IIS Web servers, Web applications and Web sites. Administrators can use command-line scripting with the Web Deployment Tool to synchronize IIS 6.0, IIS 7.0 and IIS 8.0 servers or to migrate an IIS 6.0 and IIS 7.0 servers to IIS 8.0. The Web Deployment Tool also enables administrators and delegated users to use IIS Manager to deploy ASP.NET and PHP applications to an IIS 7.0 and later servers. Here’s what you get when you run the tool,
· Migrate Web applications between IIS 6.0, IIS 7.0 and IIS8.0 with ease
· Synchronize your server farm efficiently
· Package, archive and deploy Web applications more easily
You have a couple of more options for migrating Web Servers
1. Migrate and Publish a Web Application to an Azure Cloud Service from Visual Studio
2. Create and migrate your Web Servers to the Cloud under “Platform as a Service - PaaS”. (Just the website without Windows Server as your base OS).
3. FTP the files from the on-premises server to the cloud in Microsoft Azure
4. Create and migrate your Web Servers to the Cloud under Infrastructure as a Service- IaaS” (Windows Server 2012 R2 and ISS)
1. Migrate and Publish a Web Application to an Azure Cloud Service from Visual Studio
To take advantage of the hosting services and scalability of Azure, you might want to migrate and publish your web application to Azure. You can run a web application in Azure with minimal changes to your existing application.
You must first enable your web application for Azure from Visual Studio. The following illustration shows the key steps to publish your existing web application by adding an Azure project to use for deployment.
This process adds an Azure project with the required web role to your solution. Based on the type of web project that you have, the project properties for assemblies are also updated if the service package requires additional assemblies for deployment.
For the full ‘Step-By-Step” go to the rest of this MSDN article “How to: Migrate and Publish a Web Application to an Azure Cloud Service from Visual Studio”
2. Create and migrate your Web Servers to the Cloud under “Platform as a Service - PaaS”. (Just the website without Windows Server as your base OS)
When considering moving websites to Microsoft Azure, you may want to know the advantages of Azure Websites vs. IaaS VMs, in that Websites can support an SLA of 99.9% for basic and standard instances(even if using a single instance) and can also provider stickier load-balancing than VMs for legacy web apps that store state information in the web tier.
Also if you are moving a WordPress site to Microsoft Azure check out this article - “Moving a WordPress Blog to Windows Azure”by Dave Bost
To create a new website, Log into Microsoft Azure Portal to build your new website, it’s very straight forward – Go to the Portal and go to NEW
(Get your Microsoft Azure trial subscription by going to https://aka.ms/try-azure)
Click on Websites and go to FROM GALLERY – then select the option you chose.
You can build out App frameworks, blogs, CMS, Ecommerce, Forums, Galleries, Templates for ASP.NET, Node.JS, PHP as well as tools and Wiki’s.
This way you do not have to manage the hardware ever again while taking full advantage of the platform, without the hardware nightmares. Microsoft Azure from a “Platform as a Service” perspective could save you lots of time and money just building it over again, either on Windows Server 2012 R2 or within the Microsoft Azure environment.
You can then open up the website dashboard within Microsoft Azure and go to the FTP settings. Here you can upload your files to the empty website whether it is WordPress, ASP.NET PHP or others.
3. FTP the files from the on-premises server to the cloud in Microsoft Azure
4. Create and migrate your Web Servers to the Cloud under Infrastructure as a Service- IaaS” (Windows Server 2012 R2 and IIS 8)
Infrastructure as a Service (IaaS) is different if you want to build the whole server in the cloud. This is where you build a virtual machine from the GALLERY.
Go to Virtual Machine
Go to FROM GALLERY
Select Windows Server 2012 R2 Datacenter
When the Virtual Machine boots up and you RDP to it, go to Server Managerand install your Web Server Roles.
So it will depend if you want to build a complete virtual machine in IaaS from the Virtual Machine GALLERY or if you want to build a Platform as a Service (PaaS) and have just the Web Servers without the full blown Windows Server underneath it.
So let’s consider the Web Server (IIS) role in Windows Server 2012 that provides a secure, easy-to-manage, modular and extensible platform for reliably hosting websites, services, and applications.
With IIS 8 you can share information with users on the Internet, an intranet, or an extranet.
IIS 8 is a unified web platform that integrates IIS, ASP.NET, FTP services, PHP, and Windows Communication Foundation (WCF).
You can then add in your website from another source
You’re not going to get this in Windows Server 2003 nor have the hardware to support it.
Here’s a running list that shows some of the benefits for running IIS 8:
· Maximize web security through a reduced server foot print and automatic application isolation.
· Easily deploy and run ASP.NET, classic ASP, and PHP web applications on the same server.
· Achieve application isolation by giving worker processes a unique identity and sandboxed configuration by default, further reducing security risks.
· Easily add, remove, and even replace built-in IIS components with custom modules, suited for customer needs.
· Speed up your website through built-in dynamic caching and enhanced compression.
· Administrators can use the Web Server (IIS) role to set up and manage multiple websites, web applications, and FTP sites. Some of the specific features include the following:
· Use IIS Manager to configure IIS features and administer your websites.
· Use File Transfer Protocol (FTP) to allow website owners to upload and download files.
· Use website isolation to protect against one website from interfering with other sites on your server.
· Configure web applications that are written using various technologies, such as classic ASP, ASP.NET, and PHP.
· Use Windows PowerShell to automate management of most administration tasks for your web server.
· Configure multiple web servers into a server farm that you can manage using IIS.
Check out the MVA sessions below.
Perhaps AppZero can work to migrate some workloads as well.
Developing ASP.NET Web Apps with Jon Galloway and Christopher Harrison
Other news is that Windows Server 2008 will change January 13, 2015 from Mainstream Support to Extended Support. The difference between the two types of support is that Microsoft will continue to make security related patches available free of charge during extended support. They will continue to assist on a pay for incident basis. Non-security patches will require an extended hotfix agreement, purchased within 90 days of mainstream support ending.
Hope this helps give you some ideas about what direction to steer when dealing with your Windows Server 2003 Web Servers.
For more information on Migrating Roles to Windows Server 2012 R2 go to: https://technet.microsoft.com/en-US/windowsserver/jj554790.aspx