Documente Academic
Documente Profesional
Documente Cultură
Copyright 1997-2010. Blackboard, the Blackboard logo, BbWorld, Blackboard Learn, Blackboard Transact, Blackboard Connect, the Blackboard Outcomes System, Behind the Blackboard, and Connect-ED are trademarks or registered trademarks of Blackboard Inc. or its subsidiaries in the United States and other countries. U.S. Patent Numbers: 6,988,138; 7,493,396; 6,816,878. Dell and PowerEdge are trademarks of Dell Inc. Java is a registered trademark of Sun Microsystems, Inc. in the United States and other countries. Microsoft, Windows, and SQL Server are registered trademarks of Microsoft Corporation in the United States and other countries. Oracle is a registered trademark of Oracle Corporation and its affiliates. UNIX is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company Ltd. Other product and company names mentioned herein may be the trademarks of their respective owners. No part of the contents of this manual may be reproduced or transmitted in any form or by any means without the written permission of the publisher, Blackboard Inc.
Page 2
Contents
Introduction .................................................................................................................................... 4 About Blackboard Learn............................................................................................................ 4 About this Guide ........................................................................................................................ 4 Recommended Configurations .................................................................................................... 5 Deploying Blackboard Learn ........................................................................................................ 6 Virtualization at the Application Layer ........................................................................................ 7 Sizing the Application Server ....................................................................................................... 8 Dell Configuration Information .................................................................................................. 8 Will Hyper-Threading Make a Difference? ................................................................................ 8 Will Tomcat Clustering Make a Difference? .............................................................................. 9 Sizing by CPU and Memory ...................................................................................................... 9 Bare-Metal or Virtual Configurations ....................................................................................... 10 Preparing for the Westmere EP-Processor and R910 Nehalem ............................................ 10 Dell Configurations for Blackboard Learn Release 9.1 ........................................................... 11 Sizing the Database ..................................................................................................................... 13 Sizing Storage .............................................................................................................................. 14 Media and Content Storage .................................................................................................... 14 Database Data File Storage .................................................................................................... 14 Storage Performance .............................................................................................................. 15 Appendix A: Sizing Methodology .............................................................................................. 16
Page 3
Introduction
Introduction
A paradigm shift is underway in online learning. Online learning tools that were once used primarily to augment classroom learning have matured to support an online model in which the Course Management System serves as the primary medium for teaching and learning. As the prevalence of high-speed Internet connections and home computer ownership has grown, so too has the demand for distance learning. Today's learners are turning to web-based distance learning programs as a means to balance other obligations with the desire to further their education, or because they are too far away from the institutions that can best serve their needs. The movement toward fully online learning models creates new demands for the IT environment and opens up new opportunities for institutions to use technology as a competitive tool. Demand for higher performance and faster response times are being driven by two key factors: greater numbers of users, and increased activity by users. Not only are institutions growing and supporting greater numbers of online users, but users are also interacting with the system in new ways that generate substantially greater system load. Users tend to stay online for much longer periods of time and have greater interactivity with their online courses. The technology must therefore support large numbers of users who concurrently access the system and require rapid response times so that they can interact without noticeable delays. When users have consistent and responsive page load times, online learning is easier and more effective, new forms of teaching and learning can also evolve when interaction has the feeling of being real-time. Traditional online lectures and online documents can be blended with interactive media, allowing students to share experiences with each other across geographical boundaries. This can increase the effectiveness of the learning environment and expand the available market the institution serves. Institutions want their online learning technology infrastructure to support these new forms of teaching and learning on a scale that allows many more students than could traditionally participate in a classroom approach. The online learning architecture must therefore be highly scalable as well as cost-effective to maintain so that institutions can focus on teaching instead of technology. The right technology infrastructure for online learning can create a competitive advantage for the institution.
Page 4
Recommended Configurations
Recommended Configurations
Blackboards recommended configuration is based on a scalable reference architecture that takes advantage of todays latest technologies to support a rich online learning or distance learning model. In addition, this architecture offers superior performance and scalability as well as predictable service levels. This information is based on joint performance testing and benchmarking between Blackboard and Dell to achieve maximum performance throughput for each configuration.
Page 5
Most often these systems contain 2-4 sockets, each with 2, 4, and 6 cores per socket and 8GB to 96GB of memory. Throughput performance increases depending on which CPU model is chosen. At the time of this publishing, the Quad Core Intel Xeon 5520 2.26GHz processor with the Hyper-Threading option turned on offers the best overall price performance. The Quad Core Intel Xeon 55700, 8MB Cache, 2.93GHz processor offers the best throughput performance. Blackboard recommends leveraging both physical and virtual configurations. For years, the Blackboard products have been deployed in distributed manner across multiple physical servers. This configuration remains as the primary option for availability and scalability. In recent releases, many Blackboard customers have introduced virtualized configurations within a physical server using technology such as VMWare, Citrix XenServer, and Red Hat Xen. The combination of both physical and virtualized configurations has introduced resiliency, scalability, and high performance. In Blackboard Learn Release 9.1, Blackboard introduced a 100% 64-bit offering for all certified and supported operating systems (OSs) as an additional deployment approach to integrate with physical and virtual configurations.
Page 6
Many customers have made virtualization part of their deployment approach. Virtualization enables multiple instances of Guest OS to be deployed on each physical server. Server processor, memory, storage, and networking resources are shared across multiple virtual machines, yet each virtual machine (VM) and OS instance can have direct control over specific system resources. Blackboard Learn can then be installed and operated on each VM in much the same way as running each instance on a separate physical server. Following are the two key reasons exist for implementing virtualization in the application tier: Modern CPUs such as the Intel 5500 series processors are so powerful that a single instance of the OS and its application software components typically cannot fully utilize the CPU. It is more cost-effective to add additional memory to a server and divide the server resources into multiple virtual machines than it is to buy more servers. Virtualization greatly simplifies provisioning and management of the Blackboard Learn environment.
Most of the virtualization packages deployed in Blackboard production environments include software tools to enable administrators to quickly and easily clone an image of a VM, including the OS and all application instances. This cloned VM image can then be quickly provisioned to a new VM when, for example, greater capacity is needed. Cloning also helps to ensure that all instances of the application are deployed in identical configurations, greatly simplifying ongoing maintenance of the environment.
Page 7
Page 8
CPU utilization is a topic argued by many as to what percentage value is optimal for a production system. The goal should be to use as much of the CPU available. So, an obvious goal is to identify a workload that will fully utilize the CPU, but not at the expense of having a high run queue. For every request that is stuck in the run queue, latency will be added until the CPU can service the request. CPU utilization of 100% is only one factor that will force a request into a wait state. A 2 CPU thread deployment is acceptable for a 32-bit deployment and would be the minimum configuration requirement for a 2GB JVM in a 64-bit address space. Customers seeking larger JVMs in the range of 4GB to 16GB should consider a 4 CPU thread deployment approach because of better throughput processing of Java garbage collection in parallel. Response times will improve with a larger heap and more available CPU threads for processing. Allocations of more than 4 CPUs did not yield major performance improvements and, therefore, are not recommended. Customers should be aware of their run queue for capacity management. A run queue equal or slightly above the CPU count is acceptable at normal times and during peak. When the run queue is double or even greater the CPU count, customers should strongly consider allocating more CPUs to the configuration or increasing the number of instances of the application. Special care and attention should be applied to the database when making the decision to introduce additional application servers. Impact can be seen on the memory footprint of the database, as well as the load average of the system because of the need for more remote connections and processes.
Page 9
Allocations of memory should be based on need and rate of collection. The application is 100% Java-based and thus has a greater demand for memory within the JVM than in previous versions of the application. A 32-bit 1.7GB JVM simply will not satisfy the performance demands of the user community as it was capable of doing in past releases with a hybrid technology stack that included PERL. Therefore, customers deploying with a 32-bit configuration will require greater amounts of equipment to support faster responsiveness and larger concurrency. A 64-bit JVM sized between 4GB and 16GB will provide serviceable response times with less latency. Memory tends to be the primary resource constraint. As a result, Blackboard recommends using a larger JVM with the performance options defined in the Release Notes for a given release.
Page 10
Ap p l i c a t i o n S e r v e r C o n f i g u r a t i o n Number of OS Instances (Physical or Virtual) Minimum CPU Configuration Per OS Instance 2 CPU Virtualization Collapse Ratio (VMs to Physical Server) Ideal CPU Configuration Per OS Instance 4 CPU Virtualization Collapse Ratio (VMs to Physical Server) 32-bit Memory Requirements Per OS Instance 64-bit Memory Requirements Per OS Instance I/O Workload at Peak Hour Hits/Hour at Peak Hour Characteristics 2 to 4 2 CPU Threads Intel Xeon 5520 series (2.26Ghz, 8M Cache, Turbo, HT, 1066MHz Max Memory) 4:1 with Hyper-Threading OFF 4 CPU Threads Intel Xeon X5550 (2.66Ghz, 8M Cache, Turbo, HT, 1333MHz Max Memory) 2:1 with Hyper-Threading OFF -or4:1 with Hyper-Threading ON 4GB to 8GB 8GB to 16GB recommended 300 to 500 I/Os Up to 4 Million Hits/Hour With 4 CPU threads per instance and a 64-bit deployment across 4 instances, this configuration will support as many as 20,000 concurrent sessions for a peak hour. A concurrent session is a user who has logged into the application within the last hour. With 2 CPU threads per instance and a 32-bit deployment across 4 instances, this configuration will support approximately 2,000 concurrent sessions. Results will vary depending on the use of memory intensive areas of the application, such as Assessment and Grade Center. Memory has the greatest impact on the session concurrency and responsiveness of the application, followed by CPU capacity. Consider a larger memory footprint for even smaller workloads to deliver faster page responsiveness. Blackboard Learn Hardware Sizing Guide for Dell Deployments
2010 Blackboard Inc. Proprietary and Confidential
4 to 8 2 CPU Threads Intel Xeon 5520 series (2.26Ghz, 8M Cache, Turbo, HT, 1066MHz Max Memory) 4:1 with Hyper-Threading OFF 4 CPU Threads Intel Xeon X5550 (2.66Ghz, 8M Cache, Turbo, HT, 1333MHz Max Memory) 2:1 with Hyper-Threading OFF -or4:1 with Hyper-Threading ON 4GB to 8GB 8GB to 16GB recommended 500 to 1000 I/Os Up to 8 Million Hits/Hour With 4 CPU threads per instance and a 64-bit deployment across 4 instances, this configuration will support as many as 40,000 concurrent sessions for a peak hour. A concurrent session is a user who has logged into the application within the last hour. With 2 CPU threads per instance and a 32-bit deployment across 4 instances, this configuration will support approximately 4,000 concurrent sessions. Results will vary depending on the use of memory intensive areas of the application, such as Assessment and Grade Center. Memory has the greatest impact on the session concurrency and responsiveness of the application, followed by CPU capacity. Consider a larger memory footprint for even smaller workloads to deliver faster page responsiveness.
8 to 16 2 CPU Threads Intel Xeon 5520 series (2.26Ghz, 8M Cache, Turbo, HT, 1066MHz Max Memory) 4:1 with Hyper-Threading OFF 4 CPU Threads Intel Xeon X5550 (2.66Ghz, 8M Cache, Turbo, HT, 1333MHz Max Memory) 2:1 with Hyper-Threading OFF -or4:1 with Hyper-Threading ON 4GB to 8GB 8GB to 16GB recommended 1000 to 2000 I/Os Up to 12 Million Hits/Hour With 4 CPU threads per instance and a 64-bit deployment across 4 instances, this configuration will support as many as 80,000 concurrent sessions for a peak hour. A concurrent session is a user who has logged into the application within the last hour. With 2 CPU threads per instance and a 32-bit deployment across 4 instances, this configuration will support approximately 8,000 concurrent sessions. Results will vary depending on the use of memory intensive areas of the application such as Assessment and Grade Center. Memory has the greatest impact on the session concurrency and responsiveness of the application, followed by CPU capacity. Consider a larger memory footprint for even smaller workloads to deliver faster page responsiveness. Page 11
Database Server Configuration Minimum CPU Configuration 4 to 8 CPU Threads Intel Xeon 5520 series (2.26Ghz, 8M Cache, Turbo, HT, 1066MHz Max Memory) Ideal CPU Configuration 8 CPU Threads Intel Xeon X5570 (2.93Ghz, 8M Cache, Turbo, HT, 1333MHz Max Memory) Memory Requirements I/O Workload at Peak Hour Availability Approach 8GB to 16GB 600 to 1,200 I/Os Failover clustering approaches that leverage Active/Passive database configurations should be considered for this deployment. 8 to 16 CPU Threads Intel Xeon 5520 series (2.26Ghz, 8M Cache, Turbo, HT, 1066MHz Max Memory) 16 CPU Threads Intel Xeon X5570 (2.93Ghz , 8M Cache, Turbo, HT, 1333MHz Max Memory) 16GB to 48GB 1,500 to 3,000 I/Os Failover clustering approaches that leverage Active/Passive database configurations should be considered for this deployment. Linux deployments may consider Oracle Real Application Clusters (Oracle RAC). 16 to 24 CPU Threads Intel Xeon 5520 series (2.26Ghz, 8M Cache, Turbo, HT, 1066MHz Max Memory) 24+ CPU Threads Intel Xeon X7460 (2.67GHz, 16M Cache, 1066Mhz FSB) 48GB to 96GB 4,500 to 10,000 I/Os Failover clustering approaches that leverage Active/Passive database configurations should be considered for this deployment. Linux deployments should consider Oracle Real Application Clusters (Oracle RAC).
Oracle Memory Requirements Estimated SGA Size Processes Estimated Process Size Estimated PGA Memory 1GB to 4GB 600 to 1,200 3M to 7M 2GB to 8GB 4GB to 16GB 2,000 to 4,000 3M to 7M 10GB to 20GB 16GB to 32GB 5,000 to 10,000 3M to 7M 25GB to 50GB
Page 12
Page 13
Sizing Storage
Sizing Storage
Media and Content Storage
Blackboard Learn uses a non-relational file system for the storage of multi-media and binary files such as text files, images, word processing documents, spreadsheets, and other file types used in teaching and learning. Blackboard recommends that clients on UNIX platforms use a network file share (NFS). Blackboard recommends that clients on Windows use a common internet file system (CIFS). Both of these network-based file system protocols allow for simplified management, ease of data expansion, and multiple access points from applications servers. Load balanced installations can use both file system types. Deploying storage on a local application server can also be implemented, but Blackboard does not recommend doing so. File system content can range from 5100 times the size of the database content. File system content from a block perspective is touched less frequently than the database file system. Clients can opt to configure their systems to a lesser performing RAID configuration with slower spindles because I/O performance is less of a concern. Blackboard recommends that clients determine a storage quota per student and faculty member as well as account for passive users that require less storage quota. Assume that faculty will have greater storage requirements. Following is a simple example:
Profile Faculty Student Other Quota 5GB 500MB 20MB Users 500 10,000 1,000 Storage Needs 2.5 TB + RAID Considerations 5TB + RAID Considerations 20GB + RAID Considerations
Sizing the file system depends on archival strategies, data management policies, RAID configuration, and I/O performance standards. Blackboard typically assumes that the file system will require about 100+ I/O per second per application server at peak. To calculate your I/O per second needs, multiply this metric against the number of application servers in your deployment.
Clients on Windows SQL Server may use one of the following: ISCSI (networked block-level) Direct attached storage (block-level)
Page 14
Sizing Storage
The database storage requirements of institutions can vary. Typically, database content can range from 5100 times less than file system content. Sizing the database depends on archival strategies, data management policies, RAID configuration, and, most importantly, I/O performance standards. Blackboard typically assumes that the file system will require between 350 to 600 I/O per second per application server at peak. To calculate your I/O per second needs, multiply this metric against the number of application servers in your deployment. The primary driver for database storage should be performance.
Storage Performance
The database tier has variable I/O performance needs, therefore, Blackboard recommends using fibre channel drives with 10,000 to 15,000 RPM capacity. To deliver adequate I/O throughput, Blackboard also recommends using smaller capacity drives so that there will be more spindles to reduce seek times and improve data transfer rates. The I/O performance requirements are not the same for the shared file system. Slower, condensed storage options using SATA or SAS disks in the range of 7,200 or 10,000 RPM are more than adequate. The configurations defined in this guide have been validated to support adequate I/O throughput for the user loads defined for each configuration. When sizing storage, be sure to do the following: 1. Determine how much storage your institution will need. 2. Determine how this storage can be spread across multiple trays and disks to optimize performance throughput. Remember that the shared file system can require upwards of 5100 times the amount of storage of the database. However, the database can use 520 times the number of I/O operations per second than the shared file system.
Description Content Storage Tier Standard UNIX: Network Attached Storage Architecture Windows: CIFS Architecture Up to 2.2 TB of usable storage 7.2k to 10k RPM SATA or SAS disks Database Storage Tier UNIX: Network Attached Storage Architecture, ISCSI, or FC-SAN Windows: ISCSI or FC-SAN Up to 500 GB of usable storage 10k to 15k RPM FC A d va n c e d UNIX: Network Attached Storage Architecture Windows: CIFS Architecture Up to 5 TB of usable storage 7.2k to 10k RPM SATA or SAS disks UNIX: Network Attached Storage Architecture, ISCSI, or FC-SAN Windows: ISCSI or FC-SAN Up to 1 TB of usable storage 10k to 15k RPM FC Complex UNIX: Network Attached Storage Architecture Windows: CIFS Architecture Up to 10 TB of usable storage 7.2k to 10k RPM SATA or SAS disks UNIX: Network Attached Storage Architecture, ISCSI, or FC-SAN Windows: ISCSI or FC-SAN Up to 2 TB of usable storage 10k to 15k RPM FC
Page 15
Predictive modeling is used for new performance testing new features. Little information can be collected about a feature that has not been built. Because of this, Blackboard hypothesizes user interactions with these new features. The data collected from both modeling exercises is then used for performance testing and benchmarking. Performance benchmarking is conducted by Blackboard with a selected partner of choice (such as Sun Microsystems, Dell, Microsoft, or Oracle) at the Blackboard Performance Laboratory using a combination of purchased and donated equipment from a partner. Performance testing and benchmark activities focus primarily on the performance (response times exhibited by users) and scalability of the system (utilization of system resources such as CPU, memory, and I/O). HP/Mercury LoadRunner is the simulation tool of choice for generating workload.
Page 16