1. Planning and Designing IIS 8
Two of the most important tasks to accomplish
before implementing IIS 8 are thorough planning and designing. Planning
and designing are the beginning phases to properly implementing IIS,
and they can consist of the following:
• Defining goals and objectives of the IIS 8 project
• Identifying and reviewing IIS application types and requirements
• Designing the IIS infrastructure to support the goals and objectives
• Deciding on which IIS 8 features will be utilized during the installation process to meet the goals of the organization
• Defining fault-tolerance requirements
• Designing the back-end infrastructure, such as the database or application tier
• Defining security requirements to
meet the goals and objectives and balancing the security methodologies
between risks and end-user experience
• Examining and designing disaster recovery plans, and monitoring requirements and maintenance practices
• Documenting the current or new IIS infrastructure and the IIS design decisions
Determining Server Requirements
Hardware and software requirements are
usually based on the information gathered and the requirements set
forth in the design and planning stages of a project. The necessary
hardware and software requirements should always match the goals and
objectives of the project. This information is very detailed and
describes all the resources necessary for hardware and software.
IIS 8 does not have specific minimum
server requirements tailored toward running IIS on Windows Server 2012.
The minimum server requirements are based on Windows Server 2012. It is
a best practice, however, to stick with multiple dual- or quad-core
processors; to use fault-tolerant disks such as RAID 1, RAID 5, or RAID
10; and to use as much RAM as needed, depending on how many sites and
users you will be hosting as well as the complexity of the web
applications.
Determining Fault-Tolerance Requirements
Fault tolerance is a key aspect of any web
infrastructure and should be addressed during planning and designing
phases, regardless of whether an organization can afford downtime of
its websites or requires 99.999% uptime. In view of this, service-level
agreements (SLAs) are highly recommended and should be determined from
the operational goals during the design and planning phase. After an
SLA is in place, it will be easy to apply the appropriate fault
tolerance to the web infrastructure because expectations and tolerances
are clearly defined and previously agreed upon by everyone involved in
the process.
Various technologies can be applied to a
Windows Server 2012 web infrastructure to support even the most
demanding SLAs. For example, Windows Server 2012 web servers can use
Network Load Balancing (NLB) to distribute the load and client requests
among multiple web servers and to provide fault tolerance. This is also
known as scaling IIS by creating a web server farm. NLB is more suited
to provide fault tolerance for scaling web servers than Windows
failover clusters because the IIS components are not cluster aware.
NLB on Windows
Server 2012 also offers many advanced features and functionality, which
makes it more appealing. For instance, NLB offers support for multiple
dedicated IP addresses per node.
2. Installing and Upgrading IIS 8
The installation process and architecture for
many recent and upcoming Microsoft product families are completely
modularized like Internet Information Services 8 on Windows Server
2012. By providing a modularized approach, web administrators have
complete control over the footprint of IIS when customizing the
installation. This results in the surface area being reduced, which, in
turn, drastically minimizes the chances of a security compromise.
Note
As part of the Microsoft Trustworthy security
campaign, IIS 8, as was the case with IIS 7 and 7.5, is not installed
on Windows Server 2012 by default. You have to add the Web Server (IIS)
role via Server Manager if you want IIS installed.
Before installing or upgrading IIS, it is a
best practice to fully understand the new modular installation process,
including the features associated with the installation.