Introducing Microsoft Windows 2000 Clustering • This topic provides a brief overview of each of the Windows 2000 Advanced Server clustering technologies.. Identifying the Application and
Trang 1Contents
Overview 1
Introducing Application Architecture 4
Identifying Availability and Scalability
Trang 2to represent any real individual, company, product, or event, unless otherwise noted Complying with all applicable copyright laws is the responsibility of the user No part of this document may
be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Microsoft Corporation If, however, your only means of access is electronic, permission to print one copy is hereby granted
Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property
2000 Microsoft Corporation All rights reserved
Microsoft, Active Directory, BackOffice, Jscript, PowerPoint, Visual Basic, Visual Studio, Win32, Windows, Windows NT are either registered trademarks or trademarks of Microsoft Corporation
in the U.S.A and/or other countries
Other product and company names mentioned herein may be the trademarks of their respective owners
Program Manager: Don Thompson
Product Manager: Greg Bulette
Instructional Designers: April Andrien, Priscilla Johnston, Diana Jahrling
Subject Matter Experts: Jack Creasey, Jeff Johnson
Technical Contributor: James Cochran
Classroom Automation: Lorrin Smith-Bates
Graphic Designer: Andrea Heuston (Artitudes Layout & Design)
Editing Manager: Lynette Skinner
Editor: Elizabeth Reese
Copy Editor: Bill Jones (S&T Consulting)
Production Manager: Miracle Davis
Build Manager: Julie Challenger
Print Production: Irene Barnett (S&T Consulting)
CD Production: Eric Wagoner
Test Manager: Eric R Myers
Test Lead: Robertson Lee (Volt Technical)
Creative Director: David Mahlmann
Media Consultation: Scott Serna
Illustration: Andrea Heuston (Artitudes Layout & Design)
Localization Manager: Rick Terek
Operations Coordinator: John Williams
Manufacturing Support: Laura King; Kathy Hershey
Lead Product Manager, Release Management: Bo Galford
Lead Technology Manager: Sid Benavente
Lead Product Manager, Content Development: Ken Rosen
Group Manager, Courseware Infrastructure: David Bramble
Group Product Manager, Content Development: Julie Truax
Director, Training & Certification Courseware Development: Dean Murray
General Manager: Robert Stewart
Trang 3After completing this module, students will be able to:
Define clustering features
Define application architecture
Identify clustering technologies that can improve availability and scalability
in an enterprise system
Identify the available Microsoft clustering technologies
Identify the similarities and appropriate use of the clustering technologies
Identify the applications and services that can benefit from clustering technologies
Materials and Preparation
This section provides the materials and preparation tasks that you need to teach this module
Required Materials
To teach this module, you need the Microsoft PowerPoint® file 2087A.01.ppt
Preparation Tasks
To prepare for this module, you should:
Read all of the materials for this module
Complete the labs
Study the review questions and prepare alternative answers to discuss
Anticipate questions that students may ask Write out the questions and provide the answers
Presentation:
90 Minutes
Trang 4Module Strategy
Use the following strategy to present this module:
Defining Clustering Features
• Review and discuss each of the clustering feature definitions and clarify any points of confusion for the students
• Be prepared to discuss the Mean Time Between Failure concepts that are presented in the topic Comparing Reliability and Availability A white board representation of hardware dependencies would be appropriate
Introducing Application Architecture
• This topic is an overview to the application architecture model
Find out how knowledgeable the students are in each of the technologies and identify whether students require more background information on a given technology
• Emphasize that the Application Architecture model is generic in nature Organizations typically customize the model to suit their unique situations Avoid spending time discussing implementation and management philosophies
• Be prepared to expand each level of the slide graphic and discuss the application architecture of each
Identifying Availability and Scalability Solutions
• This topic describes how clustering can provide solutions for scalability and availability issues
• Discuss the importance of completing a risk assessment to determine if clustering is a viable solution
• Emphasize the importance of providing and maintaining a high levels of availability and scalability for applications and data
• Use the example provided to clearly demonstrate the concept of measuring high availability
Introducing Microsoft Windows 2000 Clustering
• This topic provides a brief overview of each of the Windows 2000 Advanced Server clustering technologies
• Emphasize the feature sets for each of the clustering technologies
• Demonstrate where each technology can fit into the network architecture
Comparing Network Load Balancing to Cluster Service
• This topic describes the benefits of both Cluster Service and Network Load Balancing
• Briefly review the benefits for each technology and how that applies to several different business scenarios
Trang 5Identifying the Application and Service Environments
• This topic is an overview of the applications and services that are compatible with a clustering solution
• Emphasize the importance of identifying which applications and services are appropriate for a clustering solution
Discussion: Evaluating Business Scenarios
• Review Scenario one and Scenario two with the students and have them complete both scenarios
• Although Scenario one is the simpler of the two scenarios, explain to the students that they are expected to recognize where problems exist in the scenario
• Scenario two is much more complex Explain to the students that they are expected to consider:
• Use of Network Load Balancing, Component Load Balancing and Cluster Service in both scenarios
• How applications and development processes will influence the possible solutions
• How fault tolerance would be implemented within the applications used
• Students may not have experience at this level Be expected to lead the discussion
Trang 7Overview
Defining Clustering Features
Introducing Application Architecture
Identifying Availability and Scalability Requirements
Introducing Microsoft Windows 2000 Clustering
Comparing Network Load Balancing to Cluster Service
Identifying the Application and Service Environments
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
As your organization’s business needs grow, you must be able to expand your organization’s system capacity economically, avoid single points of failure and quickly restore failed services and applications for users Microsoft®
Windows® 2000 Clustering enables you to provide availability, scalability, and load balancing for applications and services
This module describes the central concepts of Cluster service and Network Load Balancing service, by providing a brief background of clustering technologies and explaining what Windows 2000 Clustering provides
In this course, a cluster is defined as a group of independent computers working
together as a single system Microsoft clustering technologies provide the functionality that is required to enable you to configure multiple computers as a single logical system In this module, you will learn the key benefits of
Microsoft Windows 2000 Clustering and how they apply within single and multiple tier application architectures
After completing this module, you will be able to:
Define clustering features
Define application architectures
Identify clustering technologies that can improve availability and scalability
in an enterprise system
Identify the available Microsoft clustering technologies
Identify the similarities and appropriate use of the clustering technologies
Identify the applications and services that can benefit from clustering technologies
In this module, you will learn
the central concepts of
Windows 2000 Clustering
technologies
Trang 8Defining Clustering Features
High Availability and Fault Tolerance
Manageability
Scalability
Comparing Reliability and Availability
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
A working knowledge of a clustering solution begins with the definitions of clustering features
High Availability and Fault Tolerance
A system that is available whenever users want to use it and provides service that meets a defined organizational standard is considered to have high availability
When a system or component in a cluster fails, the cluster software responds by reallocating the resources from the failed system to the remaining systems in the cluster, thereby ensuring that the system is providing high availability to client/server applications and services
Throughout this process, client communications with applications or services usually continue with minimal interruption in service and Clustering provides a single, virtual image of the server to clients Most client software applications will automatically recover from the broken connections with little or no interruption to the user
A fault tolerant solution is one that addresses performance by offering free, nonstop availability, usually by keeping a backup of the primary system This backup system remains idle and unused until a failure occurs, which makes this an expensive solution
error-Manageability
Although manageability is not a key feature of clustering technologies, it allows system administrators to perform all of the necessary functions of maintaining the system by providing a single point of control Administrators can access a single point of control remotely or run tools that provide a view of the system members, which allows control of the servers as a single logical entity
Cluster service begins by
learning the definitions of
clustering features
Delivery Tip
Emphasize the difference
between fault tolerance and
high availability High
availability does not ensure
that a system is fault
tolerant
Carefully review the Mean
Time Between Failure, use
the example provided to
demonstrate the concept
Be prepared for questions
from the students regarding
geographical high
availability For example,
there are two data centers,
one in Houston, Texas and
the other in San Ramon,
California The students
might want to know how
availability is maintained
between the two data
centers if a catastrophic
event occurred
Trang 9Scalability
A system can be scaled up, scaled out, or scaled down
Scaling up Achieved by adding more resources, such as memory,
processors, and disk drives to a system
Scaling out Achieved by adding additional computers to deliver high
performance when the throughput requirements of an application exceed the capabilities of an individual system
Scaling down Achieved by reducing resources
When the overall load exceeds the capabilities of the systems in a cluster, you may need to add additional systems You will find that clusters are highly scalable; you can add CPU, input/output (I/O) storage, and application resources incrementally to efficiently expand or contract capacity by
implementing one of the three types of scaling architectures
Comparing Reliability and Availability
High availability and high reliability are at times used interchangeably, but when considering complex systems, each can have a different meaning
When designing products, for example a computer motherboard, there is a failure rate defined for each component The reliability number may be expressed as Mean Time Between Failure (MTBF), which shows the measured failure rate based on testing of the individual components
The testing regime is usually a large number of components being tested in a benign environment within their operating parameters, the aggregate run hours without failure are used to ascertain the MTBF Given the reliability figures of all of the components, it is possible to calculate the probability of failure of the motherboard within a given time This MTBF number is a measure of the reliability of the component and recognizes that all components will fail in time For example, disk drives may have an MTBF of 1x106 power hours
A system with high availability is one where you expect that whenever you want to use it, it is available to provide service meeting your defined standard
So a computer system might be expected to be available 24 hours a day, 7 days
a week, 52 weeks a year; in other words, it can never stop working There is a distinct advantage to using high reliability components to build high availability systems, because the probability of a failure is lower However, you can build high availability systems by using unreliable components, provided that you use some fault-tolerant mechanism to maintain operation
Trang 10Introducing Application Architecture
User Services
Business Services
Data Services
Two-Tier Thin Client
Two-Tier Thin Client Fat Client Two-Tier
Two-Tier Fat Client Three-Tier N-Tier User Interface
Microsoft Win32®
User Interface Microsoft Win32®
User Interface Win32 Most Business Logic
User Interface Win32 Most Business Logic
User Interface Win32 Browser
User Interface Win32 Browser
User Interface Win32 Browser DHTML, XML
User Interface Win32 Browser DHTML, XML Business Logic
COM Objects
Business Logic COM Objects User Interface ASP
Business Logic COM Objects
User Interface ASP Business Logic COM Objects Storage
RDBMS All Business Logic (SP)
Storage RDBMS All Business Logic (SP)
Storage RDBMS Min Business Logic (SP)
Storage RDBMS Min Business Logic (SP)
Storage RDBMS Min Business Logic (SP)
Storage RDBMS Min Business Logic (SP)
Storage RDBMS Min Business Logic (SP)
Storage RDBMS Min Business Logic (SP)
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
The application architecture defines how pieces of the application interact with each other, and what functionality each piece is responsible for performing There are three main classes of application architecture that can be
characterized by the number of layers between the user and the data
The three types of application architecture are two-tier, three-tier and n-tier, where n can be three or more The table demonstrates the user, business, and
data services layers in each of the application architectures One of the benefits
of a three-tier or n-tier model is that applications are divided cleanly into
presentation, business logic, and data layers This division results in enhanced scalability and manageability, which can be improved by Windows Clustering technologies
Two-Tier
In a thin client, two-tiered model, the business logic is server-based and typically consists of stored procedures in the database server You must install client code on every client accessing the application; the client code is responsible for the user interface only
In a fat client, two-tiered model, you must install client code on every client accessing the application; the client code is responsible for the user interface and most of the business logic The database can still have stored procedures, but the requirements for these procedures are reduced This model requires that more resources are available on the client
Three-Tier
In a three-tiered model, the business layer or application layer lies between data and client This layer is responsible for both the application's business logic and the overall management of business transactions Often the application layer will utilize object technologies
defines how pieces of the
application interact with
each other, and what
functionality each piece is
responsible for performing
Delivery Tip
Be prepared to expand all
three tiers of the model and
explain the applications and
services in each of them
Key Point
One of the benefits of a
three-tier or n-tier model is
that applications are divided
cleanly into presentation,
business logic, and data
layers; the result will be
enhanced scalability and
manageability
Trang 11N-Tier
In an n-tier model, the user-services tier or first tier handles presentation of
information and interaction with the users Some sources refer to this first tier
as presentation services, because some of the services that are performed in the middle or business services tier of an application, such as authenticating users, are also user services
The business-services tier provides most of an application's functionality This tier handles the bulk of application-specific processing and enforces an application's business rules Business logic built into custom components bridges the client environments and the data-services tier
The data-services tier in an n-tier application can consist of data residing in
several different kinds of stores
Although this split is conceptual, it can be mirrored in a real-world scenario by implementing the data tier on a number of computers running a high
performance database, such as Microsoft SQL Server™; implementing the business tier on a set of separate computers; and implementing the presentation
tier on yet another set of computers When you complete the n-tier
implementation, you achieve redundancy and if a single computer fails, the applications and services are available on the other computers This environment also addresses the need for scalability by allowing users to incorporate different hardware
Application Architecture Development Strategies
Developing applications for a Microsoft platform will typically use Microsoft development tools and strategies Current applications use the Windows Distributed interNet Application Architecture (Windows DNA) strategies for development and future development extend this using Microsoft NET Enterprise Servers
Windows DNA
The Windows DNA model distributes an application in several layers, called tiers, which often reside physically on different machines, emphasizing logical distribution
Microsoft developed Windows DNA as a way to fully integrate the Web with
the n-tier model of development Windows DNA defines a framework for
delivering solutions that meet the demanding requirements of corporate computing, the Internet, intranets, and global electronic commerce, while reducing overall development and deployment costs
Windows DNA architecture employs standard Windows-based services to address the requirements of each tier in the multitiered solution: user interface and navigation, business logic, and data storage
Microsoft NET
The core services of NET are fulfilled by a set of strategies for the development Internet-based applications These core services include services and development strategies for user identification, data storage, calendar management, messaging, database, and many other services
Trang 12Identifying Availability and Scalability Requirements
Assessing Risks
Scalability
High Availability
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
As a system administrator planning to expand your system’s capacity, you may
be required to make commitments to expensive high-end servers that provide space for additional CPUs, drives, and memory By using a clustering technology solution, you will be able to incrementally add smaller, standard systems as needed to meet overall processing power requirements
Clustering solutions are ideal when you need more system processing power or high availability For example, you would consider using a clustering solution for an Internet server-based program supporting mission-critical applications, such as financial transactions, database access, corporate intranets, and other key functions that must run 24 hours a day, 7 days a week
Implementing a clustering solution makes it possible for you to share a computing load over several computer systems, without the users needing to know that more than one computer is involved If any component in the system (hardware or software) fails, the user will not lose access to the service or application
Topic Objective
To identify how clustering is
a solution for availability and
scalability issues
Lead-in
As a system administrator
planning to expand your
system’s capacity, you may
be required to make
commitments to expensive
high-end servers that
provide space for additional
CPUs, drives, and memory
Delivery Tip
This topic is meant to
provide just an overview of
scalability and high
availability Advise the
students that each of these
features will be covered in
much more detail in the
Server Cluster and Network
Load Balancing cluster
modules
Trang 13Power
Performing a Risk Audit
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
A risk audit helps you to identify system risk; it also helps to determine if clustering is an appropriate solution to reduce the risk More specifically it helps to identify where you can use clustering to eliminate single points of failure and maintain availability
Identifying Risks
When you identify risks, you identify the possible failures that can interrupt
access to resources A single point of failure is any component in your
environment that would block data or applications if it failed A single point of failure can be caused by hardware, software, or external dependencies, such as power supplied by a utility company and dedicated wide area network (WAN) lines
In general, you provide improved reliability when you minimize the number of single points of failure in your environment Maximum reliability is provided
by mechanisms that maintain service when a failure occurs by providing fault tolerance
Topic Objective
To identify possible points of
failure before implementing
a clustering solution
Lead-in
A risk audit identifies
network risk and helps to
determine if clustering is an
appropriate solution to
reduce risk
Delivery Tip
Emphasize the importance
of identifying single points of
failure while doing a risk
audit prior to installing the
Network Load Balancing
driver
Trang 14Performing a Risk Audit
The following table lists some of the more commonly encountered points of failure
Point of failure Cluster service solution Possible other solutions
Network component, such
CPU, memory, or network card
Failover process of taking resources offline on one node and bringing them back online on another node
None
Independent Disks (RAID)
Sever software, such as the operating system, a service, or an application
Failover None
Clustering cannot eliminate all possible points of failure It is designed to protect availability to data but it cannot protect the data itself Therefore, it is still important to have a backup strategy
Note
Trang 15Scalability
Enhanced Symmetric Multiprocessing
Cluster Service
Network Load Balancing
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
Microsoft Windows 2000 Advanced Server provides integrated system scalability through enhanced symmetric multiprocessing (SMP), in addition to the two Windows Clustering technologies, Cluster service and Network Load Balancing service
Combined with relatively inexpensive computer hardware, Windows 2000 Advanced Server gives organizations powerful and scalable alternatives to more expensive proprietary solutions
Enhanced Symmetric Multiprocessing Scalability
SMP is a technology that allows software to use multiple processors on a single
server to improve performance, a concept known as hardware scaling, or scaling up
Windows 2000 Advanced Server supports up to 8-way SMP Improvements in the implementation of the SMP code allow for improved scaling linearity, making Windows 2000 Advanced Server an even more powerful platform for business-critical applications, databases, and Web services In an SMP system, several processors share a global memory and I/O subsystem
At the hardware level, the major drawback to SMP systems is that they encounter physical limitations in bus and memory speed that are expensive to overcome As microprocessor speeds increase, shared memory multiprocessors become increasingly expensive There are large cost differences as customers increase their systems from one processor to 2 to 4 processors, and especially when implementing more than 8 processors
Cluster Service
Cluster service is a feature of Windows 2000 Advanced Server that allows a pair of independent servers, referred to as nodes, to be managed as a single entity The objective of Cluster service is to provide high levels of availability and scalability for applications and data
Topic Objective
To identify the clustering
technologies that provide
scalability
Lead-in
Microsoft Windows 2000
Advanced Server provides
integrated system scalability
Trang 16Network Load Balancing
Network Load Balancing service enables organizations to cluster up to 32 servers running Windows 2000 Advanced Server to evenly distribute incoming traffic while also monitoring servers and the network The dual benefits of simple, incremental scalability combined with high-availability make Network Load Balancing service ideal for use with business-critical e-commerce, Internet Service Provider hosting, and Terminal Services applications
Network Load Balancing service introduces the concept of software scaling; or scaling out, where system administrators can add capacity to their server farms
by simply plugging in additional Network Load Balancing service-configured servers as needed
Trang 17High Availability
Measuring High Availability
Cluster Service
Network Load Balancing
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
Windows 2000 Advanced Server provides system services for server clustering
as a standard feature of the product The objective of clustering is to provide very high levels of application and data availability
Availability refers to the percentage of time that a system is available for the users Availability is increased by improving reliability and by reducing the amount of time that a system is down for various reasons, such as planned maintenance or recovery from failure
Measuring High Availability
High availability is a measure of the time during which clients can successfully use a resource, application, or system within design specifications
Availability is normally expressed as a percentage For example, a computer system that is required on a 24x365 basis that is unavailable for 24 hours would have an availability percentage of 99.62% To achieve 99.99% availability this system can only be unavailable for 53 minutes per year To achieve 99.999% availability this system can only be unavailable for 5.3 minutes a year
A computer system with high availability will optimally provide continuous service without interruptions that are caused by software or hardware failures
Topic Objective
To identify the clustering
technologies that provide
high availability
Lead-in
Windows 2000 Advanced
Server provides system
services for server
clustering as a standard
feature of the product The
objective of clustering is to
provide very high levels of
application and data
Ensure that the students
understand that high
availability does not imply
fault tolerance