Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 41 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
41
Dung lượng
1,15 MB
Nội dung
228 Windows Server 2003 Clustering & Load Balancing OsbNetw / Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 4 Changing Node Names Be careful about changing your node names. Instances might exist where you need to change the name of a cluster node, whether because of company changes or another reason. If you change the name, you could experience loss of the cluster node and the error message shown in the following illustration. The cluster node name I changed wouldn’t let me add it back into the cluster, so be aware that this happens at times. The way to fix this is by changing the name back to what it was (this is why you need to document everything), and then reopen the cluster, and the name will be there. The Network Load Balancing Hot Fix Package The NLB Hot Fix Package is a fairly new hot fix package that you’ll need to apply to keep your server updated. You can find this on the Microsoft.com downloads section of the web site. The NLB Hot Fix is used to resolve the following problems: • The NLB Windows Management Instrumentation (WMI) provider is known to have a severe memory leak in a process called WinMgmt. This leak, 50MB of memory in 17 hours, can cripple your server for memory. • Another problem the hot fix can correct is modifying a node’s load weight setting in the configuration for NLB, which will end all existing client connections to that node through the VIP (virtual IP address). If you don’t want this to happen and cut off all your client connections, then apply this hot fix. Uninstalling Application Center 2000 Doesn’t Remove a Member from the Cluster Another problem I often see is when a client uninstalls Application Center 2000 to remove a server from the cluster group. In other words, the client wants to remove a node from the group and uninstalls Application Center 2000 to do it. This doesn’t work well and isn’t recommended. Often, the client removes the server this way, only to open the MMC again and see the server is still located within the group. (I did this in the lab when I was first learning how to use Application Center 2000.) This is a common error. P:\010Comp\OsbNetw\622-6\ch04.vp Monday, March 24, 2003 2:36:08 PM Color profile: Generic CMYK printer profile Composite Default screen Another problem is when the client makes this mistake, and then tries to re-add the node to the cluster, it won’t work because it’s already there! To remove a server from a cluster group properly, open the MMC and expand the console down to select the node you want to remove. Right-click all tasks and remove the node from the cluster. Note, if this is the cluster controller, you won’t be able to remove it from the cluster until all other cluster nodes have been removed, leaving the cluster controller as the last member of the cluster. When all other nodes are removed first, you’ll have a command listed to disband the cluster. If you made the mistake of not removing the node and uninstalling Application Center 2000, then you can run the Application Center 2000 administration tool so you can connect to the cluster again and remove it properly. This generates an error, but you can safely ignore it, continuing to remove the cluster properly. This is a well-known issue, so it might be included in a future service pack for Application Center 2000. CONCLUSION In this chapter, you learned the fundamentals of Application Center 2000, its basic installation and configuration, how to plan for it, and why to use it. We also get heavily involved with learning how to use Health Monitor to monitor nodes and clusters for optimization. Chapter 4: Designing a Clustered and Load-Balanced Solution with Application Center 2000 229 OsbNetw / Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 4 P:\010Comp\OsbNetw\622-6\ch04.vp Monday, March 24, 2003 2:36:08 PM Color profile: Generic CMYK printer profile Composite Default screen OsbNetw / Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 4 Blind Folio 4:230 P:\010Comp\OsbNetw\622-6\ch04.vp Monday, March 24, 2003 2:36:09 PM Color profile: Generic CMYK printer profile Composite Default screen CHAPTER 5 Designing a Clustered Solution with Windows SQL Server 2000 Enterprise Edition 231 OsbNetw / Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 5 P:\010Comp\OsbNetw\622-6\ch05.vp Monday, March 24, 2003 9:55:24 AM Color profile: Generic CMYK printer profile Composite Default screen Copyright 2003 by The McGraw-Hill Companies, Inc. Click Here for Terms of Use. 232 Windows Server 2003 Clustering & Load Balancing OsbNetw / Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 5 I n this chapter, you build, from scratch, a Windows Cluster solution using Windows Server 2003 and SQL Server. At press time, Microsoft’s newest version of SQL Server, codenamed “Longhorn,” is too far out to be in beta, so we’ll build a clustered solution with Windows Server 2003 and Microsoft SQL Server 2000. We’ll look at all the planning you need to do, the actual installation, and then the configuration of the two-node cluster. After this, you can see many of the things that could go wrong with your new SQL database cluster, as well as some advanced troubleshooting issues. PREDESIGN PLANNING As with everything else covered in this book so far, taking the time to plan and design your solution properly is the key to success. You simply can’t wing it. Every chapter has stressed the importance of preplanning and design work, which is equally important in this chapter. In this section, you install SQL Server 2000 Enterprise Edition (required for clustering) on to a two-node failover cluster using Windows Server 2003. In Chapter 1, you learned the importance of implementing a clustered solution. In the chapters that followed, you also saw how to implement clustered and load-balanced solutions to achieve high availability. Now, you learn how to build a backend database tier into your Highly Available solution. Failover clustering in SQL Server 2000 is built on top of the Clustering Service within either Windows 2000 or Windows Server 2003 servers. You want to have a cluster because, generally, SQL Server is where your company’s data is stored in the form of one or more databases. You can see a typical SQL Cluster topology in Figure 5-1. Not to have access to this data could prove crippling if your company depends on it. The Cluster Service allows a controlled form of access to a shared disk where your databases can reside. In time of failure, the other node can provide access to this shared storage. The same form of reliability (covered in Chapter 2) also goes for designing a RAID solution on the shared storage for redundancy and reliability. You must take everything into consideration before you install SQL Server on to your cluster because without reading and planning, you might make a few mistakes that could cost you time or be damaging to the preexisting cluster. Let’s look at, and find out why, and then learn what the proper steps are for planning. SQL Server Component Planning When designing and planning a SQL Server cluster solution, you must understand what you’re working with to plan for it properly. You need to address many items of importance before installing and you must perform an unbelievable amount of preparation work first to achieve SQL cluster success. P:\010Comp\OsbNetw\622-6\ch05.vp Monday, March 24, 2003 9:55:24 AM Color profile: Generic CMYK printer profile Composite Default screen Chapter 5: Designing a Clustered Solution with Windows SQL Server 2000 Enterprise Edition 233 OsbNetw / Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 5 First, you should know that SQL Server 2000, when clustered, is placed on top of a preexisting cluster solution. This means you first need to read either Chapter 2 or Chapter 3 before you begin this chapter. SQL Server 2000 is built on top of an existing cluster and is a cluster-aware application. The SQL Server 2000 becomes a Virtual Server on top of the existing cluster solution. SQL Server Virtual Server Name The SQL Server Virtual name is the name of the SQL Server you’ll reference. This could be confusing because you’ll be naming your cluster nodes and you might think you’re Figure 5-1. Typical topology of a SQL cluster P:\010Comp\OsbNetw\622-6\ch05.vp Monday, March 24, 2003 9:55:24 AM Color profile: Generic CMYK printer profile Composite Default screen 234 Windows Server 2003 Clustering & Load Balancing naming them to be the actual SQL Server, but this isn’t the case. As you reference a single name for SQL Server shared between two or more nodes, it must be unique to the cluster. This is called the Virtual Name, which is what all applications and clients will use to refer to the SQL Server instance you created. The cluster nodes will only be referenced by their Virtual Names, not by their individual names. SQL Server Virtual Server IP Addressing You have one single IP address the clients need to access between two or more clustered nodes. This is why planning accordingly beforehand is important, so you don’t have a problem during implementation. To reach the SQL Server instance, you need a Virtual Server IP address. SQL Server Virtual Server Administrator Account You need either a preexisting or a new account to serve as the Virtual Server Administrator account. You can, however, use an Administrator Account (or a preexisting account), but remember what you learned earlier: in a test lab environment, this is okay, but when in production, you might want to create a separate service account for this purpose alone. The reason is, eventually, you’ll have to change a password, or delete or disable the account. When this happens, chaos will consume your SQL implementation because it could cease to function for you. The new account you create (or the preexisting one you use) can serve as the SQL Server service account. The account must be a domain administrator, so when you create it, make sure this is a group you select and add to the account. Shared Components of a Clustered SQL Server As just highlighted, you have two or more nodes clustered with a Virtual SQL Server instance, and an IP address and an account they also share. Now, let’s look at some of the other components that must be shared between instances of SQL Server when it’s clustered. The following components in Table 5-1 are the underlying shared components. Remember, while planning your SQL Server cluster, you must understand your limitation on exactly what you can create. For instance, when you install SQL Server as a clustered resource (Virtual Server), then you have one default instance and up to 15 named instances. When discussing instances, you also must look at what kind of failover support to plan for when clustering SQL Server. You have the option of having single instance or multiple instance failover. Single instance clusters replace what you know as an Active/Passive arrangement. Multiple instance clusters replace what you know as an Active/Active arrangement. Single Instance Cluster When designing a single instance cluster, remember, a single instance cluster has one active instance of SQL Server owned by a single node only. OsbNetw / Windows 2000 & Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 5 P:\010Comp\OsbNetw\622-6\ch05.vp Monday, March 24, 2003 9:55:25 AM Color profile: Generic CMYK printer profile Composite Default screen Chapter 5: Designing a Clustered Solution with Windows SQL Server 2000 Enterprise Edition 235 OsbNetw / Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 5 Any other nodes in the cluster are in a wait state. This is the same as saying an Active/ Passive cluster has one node operational to accept client requests, while the other stands idle waiting, but not accepting client requests. Multiple Instance Cluster When building multiple instance clusters, you can build up to four nodes. When you do, you can also have support for up to 16 instances. You’ll want to design for having no more than four instances, though, to keep the ratio one to one . . . or four nodes, four instances. When you design each virtual node, you also want to ensure you have one shared disk resource per virtual node. You can keep physical disks all in one single hardware-based array, but you’ll want to verify that your design allows your logical names to be unique for each instance. You’ll understand more of the terminology as you continue reading this section, so when the time comes to run the setup, your design will be sound and you’ll understand what’s being asked of you. SQL Server Cluster Model SQL Server 2000 has support for the shared nothing cluster model, where each node manages its own resources and provides nonsharing data services. You can set up failover with SQL Server 2000 by configuring one of two models: Active/Active and Active/Passive. Active/Active (Multiple Instance) When using the Active-to-Active configuration, each node in the SQL Cluster has an instance of SQL Server, which is managed by the Cluster Service. Each instance is responsible for its own data set. When a failover does occur, the node that’s still available Full-Text Search Each instance gets its own clustered full-text search resource. This search relies on the underlying Microsoft Search service. This service is shared by all instances. Microsoft Distributed Transaction Coordinator (MSDTC) Only one MSDTC resource exists per cluster. Microsoft Message Queuing (MSMQ) All applications using MSMQ have the same limitation as with MSDTC. All instances share a single resource. Table 5-1. SQL Server Shared Components P:\010Comp\OsbNetw\622-6\ch05.vp Monday, March 24, 2003 9:55:25 AM Color profile: Generic CMYK printer profile Composite Default screen takes over for the failed node. Each node keeps a separate master database, as seen in Figure 5-2 and the following illustration. 236 Windows Server 2003 Clustering & Load Balancing OsbNetw / Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 5 Figure 5-2. Viewing the master database P:\010Comp\OsbNetw\622-6\ch05.vp Monday, March 24, 2003 9:55:25 AM Color profile: Generic CMYK printer profile Composite Default screen One good reason to go with an Active/Active solution is if you want to partition your database. Because nodes in an Active/Active cluster each have their own instance of SQL Server, this design is better for partitioned databases. Partitioning offers the advantage of load distribution and redundancy, but requires more effort to bring online and is, therefore, harder to configure. Active/Passive (Single Instance) With Active/Passive, instead of multiple instances, the cluster runs only one single instance of SQL Server and is managed via the Cluster Service. When a client makes a request, only one node can answer at a time. When that node fails, the other node takes over for it during failover. When using this configuration, the two nodes share a master database. In this chapter, we’ll configure a simple Active/Passive two-node cluster. Everything covered here is only to give you an idea on how to lay out your plan for SQL Server clustering. Most of this terminology is an add-on to Chapters 1, 2, and 3. You should understand the general concepts of clustering, load balancing, and high availability, and you should know the terminology used to explain the same basic concepts when designing a SQL cluster. Let’s look at some cost issues. Planning for Failover-Based Pricing Be careful when you design a solution with SQL Server and clustering. This is because you might get hit with some heavy pricing for the components and software you need. Always visit Microsoft.com for the latest pricing or contact a reseller but, when you license SQL Server, you can do so through paying per processor. Also, specific costs are related to your design. If you plan to go with Active/Passive failover, you could have a price break waiting for you. When you license the SQL product via processor, you can bend the rules when configuring Active/Passive failover. What’s nice is the Passive computer doesn’t require a processor or a server license. Active/Active configurations require licensing both servers because you’re using both servers simultaneously. Another good way to plan your server rollout (and cost analysis) is to plan for more capacity than you think you might use. To be cheap on disk space when designing a database cluster is a mistake. Trying to get by with the bare minimum in the beginning isn’t cost-effective. You end up spending much more money adding more hard drive space than it would have cost to build in extra capacity at the beginning. As a good rule of thumb, you should try to plan for two or three years down the road and determine what you expect to need. If you run low on space, this could cause you bad performance, and then your Highly Available solution will no longer be as highly available as you want. SQL Server 2000 Minimum Requirements When designing a Windows 2000 or Windows Server 2003 cluster with SQL Server 2000, you must take into account the added requirements you’ll need. Now, more than ever, the requirements will either spell success or disaster for you. I can guarantee if you skimp on requirements for a SQL Server implementation, you’ll be unhappy. First, let’s look Chapter 5: Designing a Clustered Solution with Windows SQL Server 2000 Enterprise Edition 237 OsbNetw / Windows Server 2003 Clustering & Load Balancing / Shimonski/ 222622-6 / Chapter 5 P:\010Comp\OsbNetw\622-6\ch05.vp Monday, March 24, 2003 9:55:25 AM Color profile: Generic CMYK printer profile Composite Default screen [...]... 166 MHz or HIgher SQL Server 2000 Enterprise Edition runs on Microsoft Windows 2000 Server and Windows 2000 Advanced Server (and Datacenter Server) , as well as being tested to function on the Windows Server 2003 line of servers Remember, to cluster your server, you need to run Windows 2000 Advanced Server or higher (Server 2003) and you must use SQL’s Enterprise Edition to use the Clustering Functionality... your Virtual SQL Server not successfully binding to port 1433 Here is the possible error: SuperSocket Info: Bind failed on TCP port 1433 2 57 258 Windows Server 2003 Clustering & Load Balancing Again, this is what you could get as an error if you change the Virtual SQL Server IP address with the Cluster Administrator tool If you must change the IP address of the SQL Server Virtual Server, then you must... you want to install to and click Next Make sure you don’t install SQL Server to the quorum because the recommendation is you install to a separate disk on the server If you do, then you can install it, but you’ll also be warned, as shown in the following illustration 2 47 248 Windows Server 2003 Clustering & Load Balancing Figure 5 -7 Configuring failover 8 Next, move to the Remote Information screen,... entering your company isn’t necessary, fill in your name and company if desired, and then click Next 245 246 Windows Server 2003 Clustering & Load Balancing Figure 5-5 No Virtual Server option Figure 5-6 Virtual Server option available Chapter 5: Designing a Clustered Solution with Windows SQL Server 2000 Enterprise Edition 5 You then see the License Agreement and must click Yes to agree with it Remember... just in case your installation didn’t go smoothly Chapter 5: Figure 5-9 Figure 5-10 Designing a Clustered Solution with Windows SQL Server 2000 Enterprise Edition Installing SQL Server 2000 Viewing the SQL resources in Cluster Administrator 253 254 Windows Server 2003 Clustering & Load Balancing ADVANCED TROUBLESHOOTING You’ll find the mechanics of setting up a SQL Cluster are quite easy, but they can... configuration changes (Don’t do this unless you have a lab server or a backup!) 255 256 Windows Server 2003 Clustering & Load Balancing In the next illustration, you can see the Cluster Administrator isn’t allowing me to use the SQL Server Resource Further investigation leads me to the following illustration, where I can see that all the SQL Server resources created during installation have been successfully... the Services Accounts for SQL Server Here, you can specify the Domain User account you want to use for each service Because this is a simple setup, 249 250 Windows Server 2003 Clustering & Load Balancing Figure 5-8 Setup type I chose to have the same account used for each service—this is the administrator account Chapter 5: Designing a Clustered Solution with Windows SQL Server 2000 Enterprise Edition... properties of the IP address resource 259 260 Windows Server 2003 Clustering & Load Balancing Changing Service Accounts on a SQL Virtual Server Other changes you might have to make (and that could damage your SQL installation) might be to the Service Account In SQL Server 2000, you must follow necessary steps to change the service startup accounts for a clustered SQL Server If this account (which you configured... follow for preparing for the SQL Server cluster solution Preinstallation Checklist The following is a detailed check list of points to complete before you install SQL Server on your nodes to create a SQL Cluster 1 Read the beginning of this chapter and make sure you have all your minimum requirements squared away based on hardware 241 242 Windows Server 2003 Clustering & Load Balancing 2 Make sure you have... Clustered Solution with Windows SQL Server 2000 Enterprise Edition Restart the SQL Server installation as previously outlined Start the install, and remember to select and use the SQL Server 2000 Setup program Advanced\Maintain Virtual Server for Failover Clustering option To use this Advanced\Maintain Virtual Server for Failover Clustering option, follow these steps: 1 Insert the SQL Server 2000 Enterprise . screen Copyright 2003 by The McGraw-Hill Companies, Inc. Click Here for Terms of Use. 232 Windows Server 2003 Clustering & Load Balancing OsbNetw / Windows Server 2003 Clustering & Load Balancing. 24, 2003 9:55: 27 AM Color profile: Generic CMYK printer profile Composite Default screen 244 Windows Server 2003 Clustering & Load Balancing OsbNetw / Windows Server 2003 Clustering & Load. 24, 2003 9:55: 27 AM Color profile: Generic CMYK printer profile Composite Default screen 246 Windows Server 2003 Clustering & Load Balancing OsbNetw / Windows Server 2003 Clustering & Load