Performance Netbackup
Performance Netbackup
Performance Netbackup
Release 6.5
Legal Notice
Copyright 2009 Symantec Corporation. All rights reserved. Symantec, the Symantec Logo and NetBackup are trademarks or registered trademarks of Symantec Corporation or its affiliates in the U.S. and other countries. Other names may be trademarks of their respective owners. Portions of this software are derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. Copyright 1991-92, RSA Data Security, Inc. Created 1991. All rights reserved. This Symantec product may contain third party software for which Symantec is required to provide attribution to the third party (Third Party Programs). Some of the Third Party Programs are available under open source or free software licenses. The License Agreement accompanying the Software does not alter any rights or obligations you may have under those open source or free software licenses. Please see the Third Party Legal Notice Appendix to this Documentation or TPIP ReadMe File accompanying this Symantec product for more information on the Third Party Programs. The product described in this document is distributed under licenses restricting its use, copying, distribution, and decompilation/reverse engineering. No part of this document may be reproduced in any form by any means without prior written authorization of Symantec Corporation and its licensors, if any. THE DOCUMENTATION IS PROVIDED "AS IS" AND ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. SYMANTEC CORPORATION SHALL NOT BE LIABLE FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES IN CONNECTION WITH THE FURNISHING, PERFORMANCE, OR USE OF THIS DOCUMENTATION. THE INFORMATION CONTAINED IN THIS DOCUMENTATION IS SUBJECT TO CHANGE WITHOUT NOTICE. The Licensed Software and Documentation are deemed to be commercial computer software as defined in FAR 12.212 and subject to restricted rights as defined in FAR Section 52.227-19 "Commercial Computer Software - Restricted Rights" and DFARS 227.7202, "Rights in Commercial Computer Software or Commercial Computer Software Documentation", as applicable, and any successor regulations. Any use, modification, reproduction release, performance, display or disclosure of the Licensed Software and Documentation by the U.S. Government shall be solely in accordance with the terms of this Agreement.
Technical Support
Symantec Technical Support maintains support centers globally. Technical Supports primary role is to respond to specific queries about product features and functionality. The Technical Support group also creates content for our online Knowledge Base. The Technical Support group works collaboratively with the other functional areas within Symantec to answer your questions in a timely fashion. For example, the Technical Support group works with Product Engineering and Symantec Security Response to provide alerting services and virus definition updates. Symantecs maintenance offerings include the following:
A range of support options that give you the flexibility to select the right amount of service for any size organization Telephone and Web-based support that provides rapid response and up-to-the-minute information Upgrade assurance that delivers automatic software upgrade protection Global support that is available 24 hours a day, 7 days a week Advanced features, including Account Management Services
For information about Symantecs Maintenance Programs, you can visit our Web site at the following URL: www.symantec.com/techsupp/
Product release level Hardware information Available memory, disk space, and NIC information Operating system
Version and patch level Network topology Router, gateway, and IP address information Problem description:
Error messages and log files Troubleshooting that was performed before contacting Symantec Recent software configuration changes and network changes
Customer service
Customer service information is available at the following URL: www.symantec.com/techsupp/ Customer Service is available to assist with the following types of issues:
Questions regarding product licensing or serialization Product registration updates, such as address or name changes General product information (features, language availability, local dealers) Latest information about product updates and upgrades Information about upgrade assurance and maintenance contracts Information about the Symantec Buying Programs Advice about Symantec's technical support options Nontechnical presales questions Issues that are related to CD-ROMs or manuals
Consulting Services
Educational Services
To access more information about Enterprise services, please visit our Web site at the following URL: www.symantec.com Select your country or language from the site index.
Contents
Section 1
Chapter 1
Chapter 2
Contents
Delays in shared disk jobs becoming active ................................. Job delays caused by unavailable media ...................................... Delays after removing a media server ........................................ Limiting factors for job scheduling ............................................ Staggering the submission of jobs for better load distribution ..................................................................... Adjusting the servers network connection options ...................... Using NOM to monitor jobs ...................................................... Testing for disaster recovery .................................................... Miscellaneous considerations ......................................................... Selection of storage units ........................................................ Disk staging .......................................................................... File system capacity ............................................................... NetBackup catalog strategies .......................................................... Catalog backup types .............................................................. Guidelines for managing the catalog .......................................... Catalog backup not finishing in the available window ................... Catalog compression ............................................................... Merging, splitting, or moving servers ............................................... Guidelines for policies ................................................................... Include and exclude lists ......................................................... Critical policies ...................................................................... Schedule frequency ................................................................ Managing logs ............................................................................. Optimizing the performance of vxlogview .................................. Interpreting legacy error logs ...................................................
55 55 55 56 57 57 58 59 60 60 63 63 63 64 65 65 66 66 67 67 68 68 68 68 69
Chapter 3
Chapter 4
Contents
Chapter 5
Section 2
Chapter 6
Chapter 7
10
Contents
Tuning suggestions ............................................................... NetBackup client performance ...................................................... NetBackup network performance .................................................. Network interface settings ..................................................... Network load ....................................................................... Setting the network buffer size for the NetBackup media server ........................................................................... Setting the NetBackup client communications buffer size ............ Using socket communications (the NOSHM file) ......................... Using multiple interfaces ....................................................... NetBackup server performance ..................................................... Shared memory (number and size of data buffers) ...................... Changing parent and child delay values .................................... Using NetBackup wait and delay counters ................................. Understanding the two-part communication process .................. Estimating the impact of Inline copy on backup performance .................................................................. Fragment size and NetBackup restores ..................................... Other restore performance issues ............................................ NetBackup storage device performance ..........................................
113 115 117 117 118 118 120 121 123 123 124 134 135 135 147 148 152 156
Chapter 8
Contents
11
Adjusting the read buffer for raw partition backup ........................... Adjusting the allocation size of the snapshot mount point volume for NetBackup for VMware .......................................................... NetBackup Operations Manager (NOM) .......................................... Adjusting the NOM server heap size ......................................... Adjusting the NOM web server heap size ................................... Adjusting the Sybase cache size .............................................. Saving NOM databases and database logs on separate hard disks ............................................................................ Defragmenting NOM databases ............................................... Purge data periodically .......................................................... NOM performance and floating-point calculations ......................
174 174 174 174 175 176 178 181 182 182
Chapter 9
Chapter 10
12
Contents
Appendix A
Section
Chapter 1. NetBackup capacity planning Chapter 2. Master server configuration guidelines Chapter 3. Media server configuration guidelines Chapter 4. Media configuration guidelines Chapter 5. Best practices
14
Chapter
Purpose of this guide Disclaimer Introduction Analyzing your backup requirements Designing your backup system Questionnaire for capacity planning
16
Note: Most critical factors in performance are based in hardware rather than software. Compared to software, hardware and its configuration have roughly four times greater effect on performance. Although this guide provides some hardware configuration assistance, it is assumed for the most part that your devices are correctly configured.
Disclaimer
It is assumed you are familiar with NetBackup and your applications, operating systems, and hardware. The information in this manual is advisory only, presented in the form of guidelines. Changes to an installation that are undertaken as a result of the information in this guide should be verified in advance for appropriateness and accuracy. Some of the information that is contained herein may apply only to certain hardware or operating system architectures. Note: The information in this manual is subject to change.
Introduction
To estimate your backup requirements, the first step is to understand your environment. Many performance issues can be traced to hardware or environmental issues. An understanding of the entire backup data path is important to determine the maximum performance you can expect from your installation. Every backup environment has a bottleneck. It may be a fast bottleneck, but it determines the maximum performance obtainable with your system. Example: In this environment, backups run slowly (in other words, they do not complete in the scheduled backup window). Total throughput is 80 MB per second. What makes the backups run slowly? How can NetBackup or the environment be configured to increase backup performance in this situation? Figure 1-1 shows this environment.
17
Figure 1-1
LAN
The explanation is the following: the 4 LTO gen 3 tape drives have a combined throughput of 320 MB (megabytes) per second. And the 2 Gbit SAN connection from the server to the tape drives has a theoretical throughput of 200 MB per second. The LAN, however, having a speed of 1 gigabit per second, has a theoretical throughput of 125 MB per second. In practice, 1-gigabit throughput is unlikely to exceed 70% utilization. Therefore, the best delivered data rate is about 90 MB per second to the NetBackup server. The throughput may be even lower when you consider the following:
TCP/IP packet headers TCP-window size constraints Router hops (packet latency for ACK packets delays the sending of the next data packet) Host CPU utilization File system overhead Other LAN users' activity
Since the LAN is the slowest element in the configuration, it is the first place to look to increase backup performance.
18
Which systems need to be backed up? Identify all systems that need to be backed up. List each system separately so that you can identify any that require more resources to back up. Document which computers have disk drives or tape drives or libraries attached and write down the model type of each drive or library. Identify any applications on these computers that need to be backed up, such as Oracle, DB2, or MS-Exchange. In addition, record each host name, operating system and version, database type and version, network technology (for example, 1000BaseT), and location. How much data is to be backed up? Calculate how much data you need to back up. Include the total disk space on each individual system, including that for databases. Remember to add the space on mirrored disks only once. By calculating the total size for all disks, you can design a system that takes future growth into account. Consider the future by estimating how much data you will need to back up in six months to a few years from now. Consider the following:
Do you plan to back up databases or raw partitions? If you plan to back up databases, identify the database engines, their version numbers, and the method to back them up. NetBackup can back up several database engines and raw file systems, and databases can be backed up while they are online or offline. To back up any database while it is online, you need a NetBackup database agent for your particular database engine. With a Snapshot Client backup of databases using raw partitions, you back up as much data as the total size of your raw partition. Also, remember to add the size of your database backups to your final calculations when figuring out how much data you need to back up. Do you plan to back up special application servers such as MS-Exchange or Lotus Notes? If you plan on backing up any application servers, you must identify their types and application release numbers. As previously mentioned, you may need a special NetBackup agent to properly back up your particular servers.
What types of backups are needed and how often should they take place?
19
To properly size your backup system, you must decide on the type and frequency of your backups. Will you perform daily incremental and weekly full backups? Monthly or bi-weekly full backups?
How much time is available to run each backup? What is the window of time that is available to complete each backup? The length of a window dictates several aspects of your backup strategy. For example, you may want a larger window of time to back up multiple, high-capacity servers. Or you may consider the use of advanced NetBackup features such as synthetic backups, a local snapshot method, or FlashBackup. How long should backups be retained? An important factor while designing your backup strategy is to consider your policy for backup expiration. The amount of time a backup is kept is also known as the "retention period." A fairly common policy is to expire your incremental backups after one month and your full backups after six months. With this policy, you can restore any daily file change from the previous month and restore data from full backups for the previous six months. The length of the retention period depends on your own unique requirements and business needs, and perhaps regulatory requirements. However, the length of your retention period is directly proportional to the number of tapes you need and the size of your NetBackup catalog database. Your NetBackup catalog database keeps track of all the information on all your disk drives and tapes. The catalog size is tightly tied in to your retention period and the frequency of your backups. Also, database management daemons and services may become bottlenecks. If backups are sent off site, how long must they remain off site? If you plan to send tapes off-site as a disaster recovery option, identify which tapes to send off site and how long they remain off site. You might decide to duplicate all your full backups, or only a select few. You might also decide to duplicate certain systems and exclude others. As tapes are sent off site, you must buy new tapes to replace them until they are recycled back from off site storage. If you forget this detail, you may run out of tapes when you most need them. What is your network technology? If you plan to back up any system over a network, note the network types. The next section explains how to calculate the amount of data you can transfer over those networks in a given time.
20
See Designing your backup system on page 20. Based on the amount of data that you want to back up and the frequency of those backups, consider installing a private network for backups.
What new systems do you expect to add in the next six months? Plan for future growth when designing your backup system. Analyze the potential growth of your system to ensure that your current backup solution can accommodate future requirements. Remember to add any resulting growth factor that you incur to your total backup solution. Will user-directed backups or restores be allowed? Allow users to do their own backups and restores, to reduce the time it takes to initiate certain operations. However, user-directed operations can also result in higher support costs and the loss of some flexibility. User-directed operations can monopolize media and tape drives when you most need them. They can also generate more support calls and training issues while the users become familiar with the new backup system. Decide whether user access to some of your backup systems functions is worth the potential costs.
Data type What are the types of data: text, graphics, database? How compressible is the data? How many files are involved? Will the data be encrypted? (Note that encrypted backups may run slower.) See Encryption on page 168. Data location Is the data local or remote? What are the characteristics of the storage subsystem? What is the exact data path? How busy is the storage subsystem? Change management Because hardware and software infrastructure change over time, create an independent test-backup environment to ensure your production environment works with the changed components.
21
Calculate the required data transfer rate for your backups Calculate how long it takes to back up to tape Calculate how many tape drives are needed Calculate the required data transfer rate for your network(s) Calculate the size of your NetBackup catalog Calculate the size of the EMM database Calculate media needed for full and incremental backups Calculate the size of the tape library needed to store your backups Estimate your SharedDisk storage requirements Based on your previous findings, design your master server Estimate the number of master servers needed Design your media server Estimate the number of media servers needed Design your NOM server Summary
Example: Calculating your ideal data transfer rate during the week
Assumptions: Amount of data to back up during a full backup = 500 gigabytes
22
Amount of data to back up during an incremental backup = 20% of a full backup Daily backup window = 8 hours Solution 1: Full backup = 500 gigabytes Ideal data transfer rate = 500 gigabytes per 8 hours = 62.5 gigabytes per hour Solution 2: Incremental backup = 100 gigabytes Ideal data transfer rate = 100 gigabytes per 8 hours = 12.5 gigabytes per hour For your ideal weekend transfer rate, divide the amount of data that must be backed up by the length of the weekend backup window.
Tape drive data transfer rates Gigabytes per hour (no compression)
54 105 288 57 422 129 108 422 350
The values are those published by their individual manufacturers and observed in real-life situations. Keep in mind that device manufacturers list optimum rates
23
for their devices. In reality, it is quite rare to achieve those values when a system has to deal with the following: the overhead of the operating system, CPU loads, bus architecture, data types, and other hardware and software issues. The gigabytes per hour values from Table 1-1 represent transfer rates for several devices, with and without compression. When you design your backup system, consider the nature of both your data and your environment. Estimate on the conservative side when planning capacity. To calculate the length of your backups using a particular tape drive, use the formula: Actual data transfer rate = (Amount of data to back up)/((Number of drives) * (Tape drive transfer rate))
24
Ideal transfer rate (data/(backup window)) = 1000 gigabytes per 8 hours = 125 gigabytes per hour Solution 1: Tape drive = 1 drive, LTO gen 2 Tape drive transfer rate = 105 gigabytes per hour Actual data transfer rate = 1000 gigabytes/((1 drive) * (105 gigabytes per hour)) = 9.52 hours At 105 gigabytes per hour, an LTO gen 2 tape drive takes 9.52 hours to perform a 1000-gigabyte backup. A single LTO gen 2 tape drive cannot perform the backup in eight hours. You need a faster tape drive or another LTO gen 2 tape drive. Solution 2: Tape drive = 1 drive, LTO gen 3 Tape drive transfer rate = 288 gigabytes per hour Actual data transfer rate = 1000 gigabytes/((1 drive) * (288 gigabytes per hour)) = 3.47 hours With a data transfer rate of 288 gigabytes per hour, a single LTO gen 3 tape drive takes 3.47 hours to perform a 1000-gigabyte backup. Depending on the several factors that can influence the transfer rates of your tape drives, you can obtain higher or lower transfer rates. These example solutions are approximations of what you can expect. Note also that a backup of encrypted data may take more time. See Encryption on page 168.
25
Tape drive type = LTO gen 2 Tape drive transfer rate = 105 gigabytes per hour Number of drives = 1000 gigabytes/ ((8 hours) * (105 gigabytes per hour)) = 1.19 = 2 drives Solution 2: Tape drive type = LTO gen 3 Tape drive transfer rate = 288 gigabytes per hour Number of drives = 1000 gigabytes/((8 hours) * (288 gigabytes per hour)) = 0.43 = 1 drive You can calculate the number of drives that are needed to perform a backup. It is difficult, however, to spread the data streams evenly across all drives. To spread your data, experiment with various backup schedules, NetBackup policies, and your hardware configuration. See Basic tuning suggestions for the data path on page 112. To calculate how many tape devices you need, you must calculate how many tape devices you can attach to a drive controller. To calculate the maximum number of drives that you can attach to a controller, you need the manufacturers maximum transfer rates for drives and controllers. Failure to use maximum transfer rates for your calculations can result in saturated controllers and unpredictable results. Table 1-2 displays the transfer rates for several drive controllers. Table 1-2 Drive Controller
ATA-5 (ATA/ATAPI-5) Wide Ultra 2 SCSI iSCSI 1 gigabit Fibre Channel SATA/150 Ultra-3 SCSI 2 gigabit Fibre Channel SATA/300
Drive controller data transfer rates Theoretical megabytes per Theoretical gigabytes per second hour
66 80 100 100 150 160 200 300 237.6 288 360 360 540 576 720 1080
26
Drive controller data transfer rates (continued) Theoretical megabytes per Theoretical gigabytes per second hour
320 400 1152 1440
In practice, your transfer rates might be slower because of the inherent overhead of several variables. Variables include your file system layout, system CPU load, and memory usage.
Network Technology
100BaseT (switched) 1000BaseT (switched) 10000BaseT (switched)
Additional information is available on the importance of matching network bandwidth to your tape drives. See Network and SCSI/FC bus bandwidth on page 73.
27
Typical transfer rate = 25 gigabytes per hour A single 100BaseT network has a transfer rate of 25 gigabytes per hour. This network cannot handle your required data transfer rate of 62.5 gigabytes per hour. In this case, you would have to explore other options, such as the following:
Backing up your data over a faster network (1000BaseT) Backing up large servers to dedicated tape drives (SAN media servers) Backing up over SAN connections by means of SAN Client Performing off-host backups using Snapshot Client to present a snapshot directly to a media server Performing your backups during a longer time window Performing your backups over faster dedicated networks
Solution 2: Network Technology = 1000BaseT (switched) Typical transfer rate = 250 gigabytes per hour Based on Table 1-3, a single 1000BaseT network has a transfer rate of 250 gigabytes per hour. This network technology can handle your backups with room to spare. Calculate the data transfer rates for your networks to help you identify your potential bottlenecks. Several solutions for dealing with multiple networks and bottlenecks are available. See Basic tuning suggestions for the data path on page 112.
The number of files being backed up The frequency and the retention period of the backups
You can use either of two methods to calculate the NetBackup catalog size. In both cases, since data volumes grow over time, you should factor in expected growth when calculating total disk space used. Note that catalog compression can reduce the size of your catalog. NetBackup automatically decompresses the catalog only for the images and time period that
28
are needed for the restore. You can also use catalog archiving to reduce the space requirements for the catalog. More information is available on catalog compression and catalog archiving. See the NetBackup Administrator's Guide, Volume I. Note: If you select NetBackup's True Image Restore option, your catalog becomes larger than a catalog without this option selected. True Image Restore collects the information that is required to restore directories to their contents at the time of any selected full or incremental backup. The additional information that NetBackup collects for incremental backups is the same as the information that is collected for full backups. As a result, incremental backups take much more disk space when you collect True Image Restore information.
First method
This method for calculating catalog size can be quite precise. It requires certain details: the number of files that are held online and the number of backups (full and incremental) that are retained at any time. To calculate the size in gigabytes for a particular backup, use the following formula: Catalog size = (120 * number of files in all backups)/ 1GB To use this method, you must determine the approximate number of copies of each file that is held in backups and the typical file size. The number of copies can usually be estimated as follows: Number of copies of each file that is held in backups = number of full backups + 10% of the number of incremental backups held Example: Calculating the size of your NetBackup catalog Assumptions: Number of full backups per month: 4 Retention period for full backups: 6 months Total number of full backups retained: 24 Number of incremental backups per month: 25 Total number of files that are held online (total number of files in a full backup): 17,500,000 Solution: Number of copies of each file retained: 24 + (25 * 10%) = 26.5
29
NetBackup catalog size for each file retained: (120 * 26.5 copies) = 3180 bytes Total catalog space required: (3180 * 17,500,000 files) /1 GB = 54 GB
Second method
An alternative method for calculating the catalog size is the following: multiply by a small percentage (such as 2%) the total amount of data in the production environment (not the total size of all backups). Note that 2% is an example; this section helps you calculate a percentage that is appropriate for your environment. Note: You can calculate catalog size by means of a small percentage only for environments in which it is easy to determine the following: the typical file size, typical retention policies, and typical incremental change rates. In some cases, the catalog size that is obtained using this method may vary significantly from the eventual catalog size. To use this method, you must determine the approximate number of copies of each file that is held in backups and the typical file size. The number of copies can usually be estimated as follows: Number of copies of each file that is held in backups = number of full backups + 10% of the number of incremental backups held The multiplying percentage can be calculated as follows: Multiplying percentage = (120 * number of files that are held in backups / average file size) * 100% Then, the size of the catalog can be estimated as: Size of the catalog = total disk space used * multiplying percentage Example: Calculating the size of your NetBackup catalog Assumptions: Number of full backups per month: 4 Retention period for full backups: 6 months Total number of full backups retained: 24 Number of incremental backups per month: 25 Average file size: 70 KB Total disk space that is used on all servers in the domain: 1.4 TB
30
Solution: Number of copies of each file retained: 24 + (25 * 10%) = 26.5 NetBackup catalog size for each file retained: (120 * 26.5 copies) = 3180 bytes Multiplying percentage: (3180/70000) * 100% = 4.5% Total catalog space required: (1,400 GB * 4.5%) = 63 GB
The amount of data that is held in the online catalog should not exceed 750 GB. Catalog archiving can be used to keep the online portion of the catalog below this value. The total number of catalog entries should not exceed 1,000,000. This number equals the total of all retained copies of all backups from all clients held both online and in the catalog archive.
Note that the actual limits of acceptable catalog performance are influenced by the speed of the storage and the power of the server. Your performance may vary significantly from the guideline figures provided in this section.
31
Note: If you expect your catalog to exceed these limits, consider deploying multiple NetBackup domains in your environment. More information on catalog archiving is available in the NetBackup Administrators Guide, Volume I.
Windows
install_path\NetBackupDB\data install_path\NetBackupDB\staging
Calculate the required space for the NBDB in each of the two directories, as follows: 60 MB + (2 KB * number of volumes that are configured for EMM) + (number of images in disk storage other than BasicDisk * 5 KB) + (number of disk volumes * number of media severs * 5 KB) where EMM is the Enterprise Media Manager, and volumes are NetBackup (EMM) media volumes. Note that 60 MB is the default amount of space that is needed for the NBDB database that the EMM database uses. It includes pre-allocated space for configuration information for devices and storage units. Note: During NetBackup installation, the install script looks for 60 MB of free space in the /data directory. If the directory has insufficient space, the installation fails. The space in /staging is only required when a hot catalog backup is run.
32
The EMM transaction log occupies a portion of the space in the /data directory that NBDB requires. This transaction log is only truncated (not removed) when a hot catalog backup is performed. The log continues to grow indefinitely if a hot catalog backup is not made at regular intervals.
The amount of data that you back up The frequency of your backups The planned retention periods The capacity of the media that is used to store your backups.
If you expect your site's workload to increase over time, you can ease the pain of future upgrades by planning for expansion. Design your initial backup architecture so it can evolve to support more clients and servers. Invest in the faster, higher-capacity components that can serve your needs beyond the present. A formula for calculating your tape needs is shown here: Number of tapes = (Amount of data to back up) / (Tape capacity)
33
To calculate how many tapes are needed based on all your requirements, the previous formula can be expanded to the following: Number of tapes = ((Amount of data to back up) * (Frequency of backups) * (Retention period)) / (Tape capacity) Table 1-4 lists some common tape capacities. Table 1-4 Drive
LTO gen 1 LTO gen 2 LTO gen 3 LTO gen 4 SDLT 320 SDLT 600 STK 9940B STK T10000 STK T10000B TS1120
Tape capacities Theoretical gigabytes (no Theoretical gigabytes (2:1 compression) compression)
100 200 400 800 160 300 200 500 1000 700 200 400 800 1600 320 600 400 1000 2000 1400
Example: Calculating how many tapes are needed to store all your backups
Preliminary calculations: Size of full backups = 500 gigabytes * 4 (per month) * 6 months = 12 terabytes Size of incremental backups = (20% of 500 gigabytes) * 30 * 1 month = 3 terabytes Total data tracked = 12 terabytes + 3 terabytes = 15 terabytes Solution 1: Tape drive type = LTO gen 2 Tape capacity without compression = 200 gigabytes Tape capacity with compression = 400 gigabytes Without compression:
34
Tapes that are needed for full backups = 12 terabytes/200 gigabytes = 60 Tapes that are needed for incremental backups = 3 terabytes/200 gigabytes = 15 Total tapes needed = 60 + 15 = 75 tapes With 2:1 compression: Tapes that are needed for full backups = 12 terabytes/400 gigabytes = 30 Tapes that are needed for incremental backups = 3 terabytes/400 gigabytes = 7.5 Total tapes needed = 30 + 7.5 = 37.5 tapes Solution 2: Tape drive type = LTO gen 3 Tape capacity without compression = 400 gigabytes Tape capacity with compression = 800 gigabytes Without compression: Tapes that are needed for full backups = 12 terabytes/400 gigabytes = 30 Tapes that are needed for incremental backups = 3 terabytes/400 gigabytes = 7.5 ~= 8 Total tapes needed = 30 + 8 = 38 tapes With 2:1 compression: Tapes that are needed for full backups = 12 terabytes/800 gigabytes = 15 Tapes that are needed for incremental backups = 3 terabytes/800 gigabytes = 3.75 ~= 4 Total tapes needed = 15 + 4 = 19 tapes
Calculate the size of the tape library needed to store your backups
To calculate how many robotic library tape slots are needed to store all your backups, do the following: take the number of backup tapes that was calculated in a previous section and add tapes for catalog backup and for cleaning. See Calculate media needed for full and incremental backups on page 32. The formula is the following: Tape slots needed = (the number of tapes that are needed for backups) + (the number of tapes that are needed for catalog backups) + 1 (for a cleaning tape) For tapes for catalog backup, a typical example is 2. Additional tapes may be needed for the following:
35
If you plan to duplicate tapes or to reserve some media for special (non-backup) use, add those tapes to the formula. Add the tapes that are needed for future data growth. Make sure your system has a viable upgrade path as new tape drives become available.
The number of media servers to use as storage servers in each SharedDisk disk pool. A storage server mounts the storage, and writes data to and reads data from disk storage. A SharedDisk disk pool is the storage destination of a NetBackup storage unit. See the NetBackup Shared Storage Guide. The number of disk volumes to use in each SharedDisk disk pool.
The more clients that use the disk pool, the more storage servers that are needed per disk pool. The more Fibre Channel connections that are configured on the media servers, the more storage servers that are needed. Client data has to be transferred both in and out of the media server. The lower the average bandwidth of each media server, the more storage servers that are needed. The more often backups are run, and the larger each backup is, the greater the number of storage servers that are needed.
NetBackup device selection takes longer with a larger number of storage servers, especially for the backups that use Multiple copies option (Inline Copy). As the number of storage servers increases, they may consume more resources from the disk arrays. The hardware and software of the arrays may have to be adjusted accordingly. As the number of storage servers increases, background monitoring communication traffic also increases, which causes more database activities. The communication traffic consists of the following:
36
The Disk Polling Service and the Media Performance Monitor Service within nbrmms on the media server. The Resource Event Manager service and the Disk Service Manager within nbemm on the EMM server.
Limitations in the disk volume size that the disk array imposes. If the arrays maximum volume size is relatively small, more volumes may be required. Limitations in file system-size imposed by the operating system of the media server that is used as a storage server. A volume cannot exceed the size of the file system. The smaller each file system, the more volumes that are required to store a given amount of data. Number of storage servers in each SharedDisk disk pool. The more storage servers, the more disk volumes that are needed.
You can use the following to determineroughlythe minimum and the maximum number of disk volumes that are needed in each SharedDisk disk pool:
Minimum You should have at least two disk volumes per storage server. (Note that a disk volume can only be used by one storage server at a time.) If the total number of disk volumes is smaller than the number of storage servers, NetBackup runs out of disk volumes to mount. if all clients on the storage servers use Fibre Channel, the number of disk volumes in a SharedDisk disk pool need not exceed the total number of Fibre Channel connections available. That is, NetBackup does not require more SharedDisk disk volumes than the total number of Fibre Channel connections available. Other site requirements, however, may suggest a higher number of disk volumes.
Maximum
37
Image fragmentation
Mount time
Note: The length of the mount time is not related to the size of
the backup. The longer the backup job, the less noticeable is the delay due to mount time. Media and device selection As with a larger number of storage servers, a larger number of disk volumes makes media and device selection more time consuming. Media and device selection is especially time consuming for the backups that use Multiple copies option (Inline Copy). Disk pool monitoring and administration activities increase with the number of disk volumes in a disk pool. Fewer disk volumes require less time to monitor or administer.
Recommendation
The recommended number of disk volumes to have in a disk pool depends on the following: whether the NetBackup clients are connected to the storage server by means of a LAN (potentially slow) or Fibre Channel (considerably faster). Consider the following:
NetBackup clients that are connected to the storage server on the LAN
38
The number of disk volumes should be between two and four times the number of storage servers.
NetBackup clients that are connected to the storage server on Fibre Channel (SAN clients) You should have at least one disk volume per logical client connection on the Fibre Channel. If four SAN clients use two Fibre Channel connections (two clients per FC connection), then four disk volumes are recommended.
Further information
Further information is available on SharedDisk performance considerations and best practices. See the tech note Best practices for disk layout with the NetBackup Flexible Disk option. http://seer.entsupport.symantec.com/docs/305161.htm Further information on how to configure SharedDisk is available. See the NetBackup Shared Storage Guide.
Perform an analysis of your initial backup requirements. See Analyzing your backup requirements on page 18. Perform the calculations that are outlined in the previous sections of the current chapter.
You can design a master server when the following design constraints are known:
Amount of data to back up Size of the NetBackup catalog Number of tape drives needed Number of disk drives needed Number of networks needed
39
1 2 3 4 5 6
Acquire a dedicated server. Add tape drives and controllers, for saving your backups. Add disk drives and controllers, for saving your backups, and for OS and NetBackup catalog. Add network cards. Add memory. Add CPUs.
40
CPUs needed for OS = 1 Total CPUs needed = 1 + 1 + 1 = 3 Memory for network cards = 16 megabytes Memory for tape drives = 256 megabytes Memory for OS and NetBackup = 1 gigabyte Total memory needed = 16 + 256 + 1000 = 1.272 gigabytes More information is available on the values used in this solution. See Design your media server on page 42. In this solution, your master server needs 3 CPUs and 1.272 gigabytes of memory. In addition, you need 60 gigabytes of disk space to store your NetBackup catalog. You also need the disks and drive controllers to install your operating system and NetBackup (2 gigabytes should be ample for most installations). This server also requires the following: one SCSI card, or another faster adapter for use with the tape drive (and robot arm), and a single 100BaseT card for network backups. When designing your master server, begin with a dedicated server for optimum performance. In addition, consult with your servers hardware manufacturer to ensure that the server can handle your other components. In most cases, servers have specific restrictions on the number and mixture of hardware components that can be supported concurrently. If you overlook this last detail, it can cripple the best of plans.
The master server must be able to periodically communicate with all its media servers. If you have too many media servers, the master server may be overloaded. Consider business-related requirements. For example, if an installation has different applications that require different backup windows, a single master may have to run backups continually. As a result, resources for catalog cleaning, catalog backup, or other maintenance activity may be insufficient. If you use the legacy offline catalog backup feature, the time window for the catalog backup may not be adequate. If possible, design your configuration with one master server per firewall domain. In addition, do not share robotic tape libraries between firewall domains.
41
As a rule, the number of clients (separate physical hosts) per master server is not a critical factor for NetBackup. The backup processing that clients perform has little or no impact on the NetBackup server. Exceptions do exist. For example, if all clients have database extensions, or all clients run ALL_LOCAL_DRIVES backups at the same time, server performance may be affected. Plan your configuration so that it contains no single point of failure. Provide sufficient redundancy to ensure high availability of the backup process. More tape drives or media may reduce the number of media servers that are needed per master server. Do not plan to run more than about 10,000 jobs per 12-hour period on a single master server. See Limits to scalability on page 42. Consider limiting the number of media servers that are handled by a master to the lower end of the estimates in the following table. A well-managed NetBackup environment may be able to handle more media servers than the numbers that are listed in this table. Your backup operations, however, may be more efficient and manageable with fewer, larger media servers. The variation in the number of media servers per master server for each scenario in the table depends on the following: number of jobs submitted, multiplexing, multiple data streams, and network capacity.
Table 1-5 provides estimates of processor and memory requirements for a master server. Table 1-5 Number of processors
1 2 4 8
Number of media servers for a master server Minimum RAM Maximum number Maximum number of jobs per day of media servers per master server
500 2000 5000 10000 5 20 50 100
2 GB 4 GB 8 GB 16 GB
These estimates are based on the number of media servers and the number of jobs the master server must support. This table is for guidance only; it is based on test data and customer experiences. The amount of RAM and number of processors may need to be increased based on other site-specific factors.
42
In this table, a processor is defined as a state-of-the-art CPU. An example is a 3 GHz processor for an x86 system, or the equivalent on a RISC platform such as Sun SPARC.
Type of processor
For a NetBackup master server, Symantec recommends using multiple discrete processors instead of a single multi-core processor. The individual cores in a multi-core processor lack the resources to support some of the CPU-intensive processes that run on a master server. Two physical dual-core processors (for a total of four processors) are better than a single quad-core processor.
Definition of a job
For the purposes of Table 1-5, a job is defined as an individual backup stream. Database and application backup policies, and policies that use the ALL_LOCAL_DRIVES directive, usually launch multiple backup streams (thus multiple jobs) at the same time.
Limits to scalability
Note the following limits to scalability, regardless of the size of the master server:
The maximum rate at which jobs can be launched is about 1 job every 4 seconds. Therefore, a domain cannot run much more than 10,000 jobs in a 12 hour backup window. A single domain cannot support significantly more than 100 media servers and SAN media servers.
CPUs per master server or media server component How many and what kind Number of CPUs per of component component
2-3 100BaseT cards 1
43
CPUs per master server or media server component (continued) How many and what kind Number of CPUs per of component component
1 ATM card 1-2 gigabit Ethernet cards with coprocessor 1 1
Tape drives
2 LTO gen 3 drives 2-3 SDLT 600 drives 2-3 LTO gen 2 drives
1 1 1 1
OS and NetBackup
Memory per master server or media server component Type of component Memory per component
16 MB LTO gen 3 drive SDLT 600 drive LTO gen 2 drive 256 MB 128 MB 128 MB 1 GB 1 or more GB 8 MB * (# streams) * (# drives)
I/O performance is generally more important than CPU performance. Consider CPU, I/O, and memory expandability when choosing a server. Consider how many CPUs are needed. See Table 1-6 on page 42. Here are some general guidelines: Experiments (with Sun Microsystems) indicate that a useful, conservative estimate is the following: 5MHz of CPU capacity per 1MB per second of data movement in and out of the NetBackup media server. Keep in mind that the
44
operating system and other applications also use the CPU. This estimate is for the power available to NetBackup itself. Example: A system that backs up clients to tape at 10 MB per second needs 100 MHz of CPU power, as follows:
50MHz to move data from the network to the NetBackup server. 50MHz to move data from the NetBackup server to tape.
Consider how much memory is needed. See Table 1-7 on page 43. At least 512 megabytes of RAM is recommended if the server is running a Java GUI. NetBackup uses shared memory for local backups. NetBackup buffer usage affects how much memory is needed. Keep in mind that non-NetBackup processes need memory in addition to what NetBackup needs. A media server moves data from disk (on relevant clients) to storage (usually disk or tape). The server must be carefully sized to maximize throughput. Maximum throughput is attained when the server keeps its tape devices streaming. More information is available on tape streaming. See NetBackup storage device performance on page 156.
Disk storage access time Number of SharedDisk storage servers Adapter (for example, SCSI) speed Bus (for example, PCI) speed Tape or disk device speed Network interface (for example, 100BaseT) speed Amount of system RAM Other applications, if the host is non-dedicated
Your platform must be able to drive all network interfaces and keep all tape devices streaming.
45
The NOM server should be configured as a fixed host with a static IP address. Symantec recommends that you not install the NOM server software on the same server as NetBackup master or media server software. Installing NOM on a master server may affect security and performance.
Sizing considerations
The size of your NOM server depends largely on the number of NetBackup objects that NOM manages. The NetBackup objects that determine the NOM server size are the following:
Number of master servers to manage Number of policies Number of jobs that are run per day Number of media
Based on these factors, the following NOM server components should be sized accordingly:
Disk space (for installed NOM binary + NOM database) Type and number of CPUs RAM
The next section describes the NOM database and how it affects disk space requirements, followed by sizing guidelines for NOM.
NOM database
The Sybase database that NOM uses is similar to the database that NetBackup uses. The database is installed as part of the NOM server installation. Note the following:
After you configure NOM, NOM disk space depends on the volume of data initially loaded on the NOM server from the managed NetBackup servers. The initial data load on the NOM server is in turn dependent on the following data present in the managed master servers:
46
Number of policy data records Number of job data records Number of media data records
The rate of NOM database growth depends on the quantity of managed data. This data can be policy data, job data, or media data.
For optimal performance and scalability, Symantec recommends that you manage approximately a month of historical data. Information is available on how to adjust database values for better NOM performance. See NetBackup Operations Manager (NOM) on page 174.
Sizing guidelines
The following guidelines are presented in groups according to the number of objects that your NOM server manages. The guidelines are intended for planning purposes, and do not represent fixed recommendations or restrictions. The guidelines assume that your NOM server is a stand-alone host (the host does not act as a NetBackup master server). Note: Installation of NOM server software on the NetBackup master server is not recommended.
NetBackup installation categories for NOM 6.5 Maximum number of jobs in the database
100000 500000
Maximum policies
Maximum alerts
Maximum media
1000 10000
5000 50000
1000 10000
10000 300000
47
NetBackup installation categories for NOM 6.5 (continued) Maximum number of jobs in the database
1000000
Maximum policies
Maximum alerts
Maximum media
75000
50000
200000
300000
Table 1-9 applies to NOM 6.5.2. Table 1-9 NetBackup Installation Category
A B C
NetBackup installation categories for NOM 6.5.2 Maximum number of jobs in the database
100000 500000 1000000
Maximum policies
Maximum alerts
Maximum media
Table 1-10 applies to NOM 6.5.4. Table 1-10 NetBackup Installation Category
A B C
NetBackup installation categories for NOM 6.5.4 Maximum number of jobs in the database
100000 500000 5000000
Maximum policies
Maximum alerts
Maximum media
Note: If your NetBackup installation is larger than installations listed here, the behavior of NOM is unpredictable. In this case, Symantec recommends using multiple NOM servers. Table 1-11 lists the minimum hardware requirements and recommended settings for installing NOM based on your NetBackup installation category (A, B, or C).
48
Table 1-11
Minimum hardware requirements and recommended settings for NOM Average Recommended Recommended database cache size heap size growth rate for Sybase (Web server per day and NOM server)
3 MB 512 MB 512 MB
OS
Windows 2000/2003
2 GB
2 GB 2 GB
3 MB 3 MB
512 MB 512 MB
512 MB 512 MB
4 GB
30 MB
1 GB
1 GB
4 GB 2 GB
30 MB 30 MB
1 GB 1 GB
1 GB 1 GB
8 GB
150 MB
2 GB
8 GB 8 GB
150 MB 150 MB
2 GB 2 GB
2 GB 2 GB
Note: For improved performance, Symantec recommends installing NOM in a 64 bit environment. NOM has been tested on 64 bit platforms (Solaris, Windows, RHEL) with NetBackup 6.5.4. For example, if your NetBackup setup falls in installation category B (Windows environment), your NOM system must meet the following requirements:
49
RAM 4 GB
For optimal performance, the average database growth rate per day on your NOM system should be 30 MB per day or lower. The recommended Sybase cache size is 1 GB. The recommended heap size for the NOM server and Web server is 1 GB. Related topics: See Adjusting the NOM server heap size on page 174. See Adjusting the NOM web server heap size on page 175. Symantec recommends that you adjust the Sybase cache size after installing NOM. After you install NOM, the database size can grow rapidly as you add more master servers. See Adjusting the Sybase cache size on page 176.
Summary
Design a solution that can do a full backup and incremental backups of your largest system within your time window. The remainder of the backups can happen over successive days. Eventually, your site may outgrow its initial backup solution. By following the guidelines in this chapter, you can add more capacity at a future date without having to redesign your strategy. With proper design, you can create a backup strategy that can grow with your environment. The number and location of the backup devices are dependent on factors such as the following:
The amount of data on the target systems The available backup and restore windows The available network bandwidth The speed of the backup devices
If one drive causes backup-window time conflicts, another can be added, providing an aggregate rate of two drives. The trade-off is that the second drive imposes extra CPU, memory, and I/O loads on the media server. If backups do not complete in the allocated window, increase your backup window or decrease the frequency of your full and incremental backups. Another approach is to reconfigure your site to speed up overall backup performance. Before you make any such change, you should understand what
50
determines your current backup performance. List or diagram your site network and systems configuration. Note the maximum data transfer rates for all the components of your backup configuration and compare these against the required rate for your backup window. This approach helps you identify the slowest components and, consequently, the cause of your bottlenecks. Some likely areas for bottlenecks include the networks, tape drives, client OS load, and file system fragmentation.
Vendor
51
Backup window
Retention policy
52
Chapter
Managing NetBackup job scheduling Miscellaneous considerations NetBackup catalog strategies Merging, splitting, or moving servers Guidelines for policies Managing logs
54
The explanation is the following: NetBackup receives and queues policy change events as they happen, but processes them periodically as configured in the Policy Update Interval setting. (The Policy Update Interval is set under Host Properties > Master Server > Properties > Global Settings. The default is 10 minutes.) The backup does not start until the first time NetBackup processes policy changes after the policy definition is completed at 5:55 PM. NetBackup may not process the changes until 6:05 PM. For each policy change, NetBackup determines what needs to be done and updates its work list accordingly.
Host Properties > Master Server > Properties > Global Attributes > Maximum jobs per client (should be greater than 1). Policy attribute Limit jobs per policy (should be greater than 1). Policy schedule attribute Media multiplexing (should be greater than 1). Check storage unit properties. Check the following:
Is the storage unit enabled to use multiple drives (Maximum concurrent write drives)? If you want to increase this value, remember to set it to fewer than the number of drives available to this storage unit. Otherwise, restores and other non-backup activities cannot run while backups to the storage unit are running. Is the storage unit enabled for multiplexing (Maximum streams per drive)? You can write a maximum of 32 jobs to one tape at the same time.
For example, you can run multiple jobs to a single storage unit if you have multiple drives. (Maximum concurrent write drives set to greater than 1.) Or, you can set up multiplexing to a single drive if Maximum streams per drive is set to greater than 1. If both Maximum concurrent write drives and Maximum streams per drive are greater than 1: you can run multiple streams to multiple drives, assuming Maximum jobs per client is set high enough.
55
Tape jobs
The NetBackup Job Manager (nbjm) requests resources from the NetBackup Resource Broker (nbrb) for the job. nbrb allocates the resources and gives the resources to nbjm. nbjm makes the job active. nbjm starts bpbrm which in turn starts bptm; bptm mounts the tape medium in the drive.
Shared disks
The NetBackup Job Manager (nbjm) requests job resources from nbrb. nbrb allocates the resources and initiates the shared disk mount. When the mount completes, nbrb gives the resources to nbjm. nbjm makes the job active.
If the media in a storage unit are not configured or are unusable (such as expired) The maximum mounts setting was exceeded The wrong pool was selected
Add new media Or change the media configuration to make media available (such as changing the volume pool or the maximum mounts).
If the media in a storage unit are usable but are busy, the job is queued. In the NetBackup Activity Monitor, the "State Details" column indicates why the job is queued, such as "media are in use." (The same information is available in the Job Details display. Right-click on the job and select "Details.") If the media are in use, the media eventually stop being used and the job runs.
56
because EMM knows the media server is down and the NetBackup Resource Broker (nbrb) queues the request to be retried later. If no other media servers are available, EMM queues the job under the following circumstances:
If a media server is configured in EMM but the server has been physically removed, turned off, or disconnected from the network If the network is down
The Activity Monitor should display the reason for the job queuing, such as "media server is offline." Once the media server is online again in EMM, the job starts. In the meantime, if other media servers are available, the job runs on another media server. If a media server is not configured in EMM, regardless of the physical state of the media server, EMM does not select that media server for use. If no other media servers are available, the job fails. To permanently remove a media server from the system, consult the "Decommissioning a media server" section in the NetBackup Administrators Guide, Volume II.
57
58
In the NetBackup Administration Console, use the Host Properties > Master Server > Master Server Properties > Firewall dialog box.
For an explanation of the CONNECT_OPTIONS values, refer to the NetBackup Administrators Guide for UNIX and Linux, Volume II. The NetBackup Troubleshooting Guide also provides information on network connectivity issues.
Web-based interface for efficient, remote administration across multiple NetBackup servers from a single, centralized console.
59
Policy-based alert notification, using predefined alert conditions to specify typical issues or thresholds within NetBackup. Operational reporting, on issues such as backup performance, media utilization, and rates of job success. Consolidated job and job policy views per server (or group of servers), for filtering and sorting job activity.
For more information on the capabilities of NOM, click Help from the title bar of the NOM console. Or see the NetBackup Operations Manager Guide.
Windows
install_path\NetBackup\bin
60
Windows
cd install_path\NetBackup
Windows
echo 0 > NOexpire
See Remove the NOexpire file when it is not needed on page 60. To prevent backups from starting
Turn off bprd (NetBackup Request Manager), to suspend scheduling of new jobs by nbpem. You can use the Activity Monitor in the NetBackup Administration Console.
Miscellaneous considerations
Consider the following issues when planning for or troubleshooting NetBackup.
61
storage, you can tell NetBackup how to select a storage unit or let NetBackup choose the storage unit. The following sections discuss the pros and cons of specifying a particular storage unit versus allowing NetBackup to choose from a group. The more narrowly defined the storage unit designation is, the faster NetBackup can assign a storage unit, and the sooner the job starts.
Configurations with many storage units and media servers. Any Available is not recommended. Configurations with more sophisticated disk technologies (such as SharedDisk, AdvancedDisk, PureDisk, OpenStorage). With these newer disk technologies, Any Available causes NetBackup to analyze all options to choose the best one available. Any Available is not recommended.
In general, if the configuration includes many storage units, many volumes within many disk pools, and many media servers, note: the deep analysis that Any Available requires can delay job initiation when many jobs (backup or duplication) are requested during busy periods of the day. Instead, specify a particular storage unit, or narrow NetBackups search by means of storage unit groups (depending on how storage units and groups are defined). For more details on Any Available, see the NetBackup Administrators Guide, Volume I. In addition, note the following about Any Available:
When Any Available is specified, NetBackup operates in prioritized mode, as described in the next section. In other words, NetBackup selects the first available storage unit in the order in which they were originally defined. Do not specify "Any Available" for multiple copies (Inline Copy) from a backup or from any method of duplication. The methods of duplication include Vault, staging disk storage units, lifecycle policies, or manual duplication through the Administration Console or command line. Instead, specify a particular storage unit.
62
Prioritized Choose the first storage unit in the list that is not busy, down, or out of media. Failover Choose the first storage unit in the list that is not down or out of media. Round robin Choose the storage unit that is the least recently selected. Media server load balancing NetBackup avoids sending jobs to busy media servers. This option is not available for the storage unit groups that contain a BasicDisk storage unit.
You can use the New or Change Storage Unit Group dialog in the NetBackup Administration Console. For these options, NetBackup gives preference to a storage unit that a local media server can access. More information on these options is available. See the NetBackup online Help for storage unit groups. See the NetBackup Administrators Guide, Volume I. In addition, note the following about storage unit groups: the more narrowly defined your storage units and storage unit groups are, the less time it takes NetBackup to select a resource to start a job. In complex environments with large numbers of jobs required, the following are good choices:
Fewer storage units per storage unit group. Fewer media servers per storage unit. In the storage unit definition, avoid using "Any Available" media server when drives are shared among multiple media servers. Fewer disk volumes in a disk pool. Fewer concurrent jobs. Examples are the following:
Less multiplexing
63
Disk staging
With disk staging, images can be created on disk initially, then copied later to another media type (as determined in the disk staging schedule). The media type for the final destination is typically tape, but can be disk. This two-stage process leverages the advantages of disk-based backups in the near term, while preserving the advantages of tape-based backups for long term. Note that disk staging can be used to increase backup speed. For more information, refer to the NetBackup Administrators Guide, Volume I.
NetBackup data in relational This data includes the media and volume data describing databases media usage and volume information that is used during the backups. NetBackup configuration files Policy, schedule, and other flat files that are used by NetBackup.
For more information on the catalog, refer to "Catalog Maintenance and Performance Optimization" in the NetBackup Administrator's Guide Volume 1. The NetBackup catalogs on the master server tend to grow large over time and eventually fail to fit on a single tape. Figure 2-1 shows the layout of the first few directory levels of the NetBackup catalogs on the master server.
64
Figure 2-1
/usr/openv/
/db/data
/Netbackup/db
/Netbackup/vault
/var/global
server.conf databases.conf
/error
/vault
Image databaase
65
NetBackup catalog pathnames (cold catalog backups) In the file list, use absolute pathnames for the locations of the NetBackup and Media Manager catalog paths. Include the server name in the path. Take this precaution in case the media server that performs the backup is changed. Back up the catalog using online, hot catalog backup This type of catalog backup is for highly active NetBackup environments in which continual backup activity occurs. It is considered an online, hot method because it can be performed while regular backup activity takes place. This type of catalog is policy-based and can span more than one tape. It also allows for incremental backups, which can significantly reduce catalog backup times for large catalogs. Store the catalog on a separate file system (UNIX systems only) The NetBackup catalog can grow quickly depending on backup frequency, retention periods, and the number of files being backed up. With the NetBackup catalog data on its own file system, catalog growth does not affect other disk resources, root file systems, or the operating system. Information is available on how to move the catalog (UNIX systems only). See Catalog compression on page 66. Change the location of the NetBackup relational database files The location of the NetBackup relational database files can be changed or split into multiple directories, for better performance. For example, by placing the transaction log file (NBDB.log) on a physically separate drive, you gain the following: better protection against disk failure, and increased efficiency in writing to the log file. Refer to the procedure in the "NetBackup relational database" appendix of the NetBackup Administrators Guide, Volume I. Delay to compress catalog The default value for this parameter is 0, which means that NetBackup does not compress the catalog. As your catalog increases in size, you may want to use a value between 10 and 30 days for this parameter. When you restore old backups, NetBackup automatically uncompresses the files as needed, with minimal performance impact. See Catalog compression on page 66.
66
Catalog archiving reduces the size of online catalog data by relocating the large catalog .f files to secondary storage. NetBackup administration continues to require regularly scheduled catalog backups, but without the large amount of online catalog data, the backups are faster. Off load some policies, clients, and backup images from the current master server to a master in one of the new domains. Make sure that each master has a window large enough to allow its catalog backup to finish. Since a media server can be connected to one master server only, additional media servers may be needed. For assistance in splitting the current NetBackup domain, contact Symantec Consulting.
Split the NetBackup domain to form two or more smaller domains, each with its own master server and media servers.
If the domain includes That the media servers still exist. NetBackup 5.x media servers That the media servers are online and reachable from (or has included any since the the master server. Unreachable 5.x media servers can master server was upgraded cause the image cleaning operation to time out to NetBackup 6.x), verify the repeatedly. These timeouts slow down the backup. following: You should upgrade all media servers to NetBackup 6.x as soon as possible after upgrading the master server, to avoid such issues.
Catalog compression
When the NetBackup image catalog becomes too large for the available disk space, you can manage this situation in either of the following ways:
Compress the image catalog Move the image catalog (UNIX systems only).
For details, refer to "Moving the image catalog" and "Compressing and uncompressing the Image Catalog" in the NetBackup Administrators Guide, Volume I. Note that NetBackup compresses images after each backup session, regardless of whether any backups were successful. The compressesion happens right before the execution of the session_notify script and the backup of the catalog. The actual backup session is extended until compression is complete.
67
centralized device and media-related information for all servers that are part of the configuration. By default, the EMM server and the NetBackup Relational Database (NBDB) that contains the EMM data are located on the master server. A large and dynamic datacenter can expect to periodically reconfigure the number and organization of its backup servers. Centralized management, reporting, and maintenance are the benefits of a centralized NetBackup environment. When a master server has been established, it is possible to merge its databases with another master server. Merging databases gives control over its server backups to the new master server. If the backup load on a master server has grown and backups do not finish in the backup window, consider splitting the master server into two master servers. You can merge or split NetBackup master servers or EMM servers. You can also convert a media server to a master server or a master server to a media server. However, the procedures are complex and require a detailed knowledge of NetBackup database interactions. Merging or splitting NetBackup and EMM databases to another server is not recommended without a Symantec consultant. A consultant can determine the changes needed, based on your specific configuration and requirements.
Do not use excessive wild cards in file lists. When wildcards are used, NetBackup compares every file name against the wild cards. This decreases NetBackup performance. Instead of placing /tmp/* (UNIX) or C:\Temp\* (Windows) in an include or exclude list, use /tmp/ or C:\Temp. Use exclude files to exclude large useless files. Reduce the size of your backups by using exclude lists for the files your installation does not need to preserve. For instance, you may decide to exclude temporary files. Use absolute paths for your exclude list entries, so that valuable files are not inadvertently excluded. Before adding files to the exclude list, confirm with the affected users that their files can be safely excluded. Should disaster (or user error) strike, not being able to recover files costs much more than backing up extra data.
68
When a policy specifies that all local drives be backed up (ALL_LOCAL_DRIVES), nbpem initiates a parent job (nbgenjob). nbgenjob connects to the client and runs bpmount -i to get a list of mount points. Then nbpem initiates a job with its own unique job identification number for each mount point. Next the client bpbkar starts a stream for each job. Only then does Netbackup read the exclude list. When the entire job is excluded, bpbkar exits with status 0, stating that it sent 0 of 0 files to back up. The resulting image files are treated the same as the images from any other successful backup. The images expire in the normal fashion when the expiration date in the image header files specifies they are to expire.
Critical policies
For online hot catalog backups, identify the policies that are crucial to recovering your site in the event of a disaster. For more information on hot catalog backup and critical policies, refer to the NetBackup Administrators Guide, Volume I.
Schedule frequency
Minimize how often you back up the files that have not changed, and minimize your consumption of bandwidth, media, and other resources. To do so, limit full backups to monthly or quarterly, followed by weekly cumulative incremental backups and daily incremental backups.
Managing logs
Consider the following issues related to logging.
In this example, -i nbrb specifies the file ID for the NetBackup Resource Broker process (originator ID 118). vxlogview searches only the log files that were created by nbrb. That is, it searches only the files that contain 118 as the originator ID in the log file name. By limiting the log files that it has to search, vxlogview can return a result faster.
69
Note: The -i option works only for NetBackup processes that create unified log files with an originator ID in the file name. Such processes are referred to as services. The following is an example of such a log file name: UNIX:
/usr/openv/logs/51216-118-2201360136-041029-0000000000.log
Windows:
install_path\logs\51216-118-2201360136-041029-0000000000.log
where -118- is the originator ID of nbrb. As a rule, a NetBackup process is a service if it appears in the Activity Monitor of the NetBackup Administration Console, under the Daemons tab (UNIX) or Services tab (Windows). Important note: If the process named on the vxlogview -i option is not a service (does not write log files with an originator ID in the file name), vxlogview returns "No log files found." In that case, use the -o option instead of -i. For example:
vxlogview -o mds -n 0
In this example, vxlogview searches all unified log files for messages logged by mds (the EMM Media and Device Selection component). More vxlogview examples are available in the NetBackup Troubleshooting Guide.
Windows
install_path\NetBackup\db\error
On UNIX, there is a link to the most current file in the error directory. The link is called daily_messages.log. The information in these logs provides the basis for the NetBackup ALL LOG ENTRIES report. For more information on legacy logging and unified logging (VxUL), refer to the NetBackup Troubleshooting Guide. Here is a sample message from an error log:
70
Table 2-1 defines the various fields in this message (the fields are delimited by blanks). Table 2-1 Field
1
Value
1021419793 (= number of seconds since 1970) 1 2 4
2 3 4
Error database entry version Type of message Severity of error: 1: Unknown 2: Debug 4: Informational 8: Warning 16: Error 32: Critical
5 6
Server on which error was reported nabob Job ID (included if pertinent to the log entry) (optional entry) (optional entry) Client on which error occurred, if applicable. Otherwise *NULL* Process which generated the error message Text of error message 0
7 8 9
0 0 *NULL*
10
bpjobd
11
TERMINATED bpjobd
Table 2-2 lists the values for the message type, which is the third field in the log message.
71
72
Chapter
Network and SCSI/FC bus bandwidth How to change the threshold for media errors Reloading the st driver without restarting Solaris Media Manager drive selection
74
Media server configuration guidelines How to change the threshold for media errors
Windows
install_path\NetBackup\bin\goodies\available_media
The NetBackup Media List report may show that some media is frozen and therefore cannot be used for backups. I/O errors that recur can cause NetBackup to freeze media. The NetBackup Troubleshooting Guide describes how to deal with this issue. For example, see under NetBackup error code 96. You can also configure the NetBackup error threshold value, as described in this section. Each time a read, write, or position error occurs, NetBackup records the time, media ID, type of error, and drive index in the EMM database. Then NetBackup scans to see whether that media has had "m" of the same errors within the past "n" hours. The variable "m" is a tunable parameter known as media_error_threshold. The default value of media_error_threshold is 2 errors. The variable "n" is known as time_window. The default value of time_window is 12 hours. If a tape volume has more than media_error_threshold errors, NetBackup takes the appropriate action. If the volume has not been previously assigned for backups, NetBackup does the following:
Sets the volume status to FROZEN Selects a different volume Logs an error
If the volume is in the NetBackup media catalog and was previously selected for backups, NetBackup does the following:
Sets the volume to SUSPENDED Aborts the current backup Logs an error
Media server configuration guidelines How to change the threshold for media errors
75
Adjusting media_error_threshold
You can adjust the NetBackup media error threshold as follows. To adjust the NetBackup media error thresholds
Windows
install_path\NetBackup\bin\admincmd\nbemmcmd.exe -changesetting -time_window unsigned integer -machinename string -media_error_threshold unsigned integer -drive_error_threshold unsigned integer
For example, if the -drive_error_threshold is set to the default value of 2, the drive is downed after 3 errors in 12 hours. If the -drive_error_threshold is set to 6, it takes 7 errors in the same 12 hour period before the drive is downed. NetBackup freezes a tape volume or downs a drive for which these values are exceeded. For more detail on the nbemmcmd command, refer to the man page or to the NetBackup Commands Guide.
Each time an I/O error occurs on a read/write/position, bptm logs the error in the following file. UNIX
76
Media server configuration guidelines How to change the threshold for media errors
/usr/openv/netbackup/db/media/errors
Windows
install_path\NetBackup\db\media\errors
The error message includes the time of the error, media ID, drive index, and type of error. Examples of the entries in this file are the following:
07/21/96 04:15:17 A00167 4 WRITE_ERROR 07/26/96 12:37:47 A00168 4 READ_ERROR
Each time an entry is made, the past entries are scanned. The scan determines whether the same media ID or drive has had this type of error in the past "n" hours. "n" is known as the time_window. The default time window is 12 hours. During the history search for the time_window entries, EMM notes the past errors that match the media ID, the drive, or both. The purpose is to determine the cause of the error. For example: if a media ID gets write errors on more than one drive, the tape volume may be bad and NetBackup freezes the volume. If more than one media ID gets a particular error on the same drive, the drive goes to a "down" state. If only past errors are found on the same drive with the same media ID, EMM assumes that the volume is bad and freezes it. The freeze or down operation is not performed on the first error. Note two other parameters: media_error_threshold and drive_error_threshold. For both of these parameters the default is 2. For a freeze or down to happen, more than the threshold number of errors must occur. By default, at least three errors must occur in the time window for the same drive or media ID. If either media_error_threshold or drive_error_threshold is 0, a freeze or down occurs the first time an I/O error occurs. media_error_threshold is looked at first, so if both values are 0, a freeze overrides a down. Symantec does not recommend that these values be set to 0. A change to the default values is not recommended without good reason. One obvious change would be to put very large numbers in the threshold files. Large numbers in that file would disable the mechanism, such that to "freeze" a tape or "down" a drive should never occur. Freezing and downing is primarily intended to benefit backups. If read errors occur on a restore, a freeze of media has little effect. NetBackup still accesses the tape to perform the restore. In the restore case, downing a bad drive may help.
Media server configuration guidelines Reloading the st driver without restarting Solaris
77
1 2
Turn off the NetBackup and Media Manager daemons. Obtain the module ID for the st driver in kernel:
/usr/sbin/modinfo | grep SCSI
The module ID is the first field in the line that corresponds to the SCSI tape driver.
(Use the last command to enforce cleanup if dangling logical links are present in /dev.) The devfsadm command recreates the device nodes in /devices and the device links in /dev for tape devices.
78
Chapter
Dedicated or shared backup environment Suggestions for pooling Disk versus tape
Configure a scratch pool for management of scratch tapes. If a scratch pool exists, EMM can move volumes from that pool to other pools that do not have volumes available. Use the available_media script in the goodies directory. You can put the available_media report into a script. The script redirects the report output to a file and emails the file to the administrators daily or weekly. The script helps track the tapes that are full, frozen, suspended, and so on. By means of a script,
80
you can also filter the output of the available_media report to generate custom reports. To monitor media, you can also use the NetBackup Operations Manager (NOM). For instance, NOM can be configured to issue an alert if: fewer than X number of media are available, or if more than X% of the media is frozen or suspended.
Use the none pool for cleaning tapes. Do not create more pools than you need. In most cases, you need only 6 to 8 pools. The pools include a global scratch pool, catalog backup pool, and the default pools that are created by the installation. The existence of too many pools causes the library capacity to become fragmented across the pools. Consequently, the library becomes filled with many tapes that are partially full.
Short or long retention period Disk is well suited for short retention periods; tape is better suited for longer retention periods. Intermediate (staging) or long-term storage Disk is suited for staging; tape for long-term storage. Incremental or full backup Disk is better suited to low volume incremental backups. Synthetic backups Synthetic full backups are faster when incremental backups are stored on disk. Data recovery time Restore from disk is usually faster than from tape.
81
Multi-streamed restore Must a restore of the data be multi-streamed from tape? If so, do not stage the multi-streamed backup to disk before writing it to tape. Speed of the backups If client backups are too slow to keep the tape in motion, send the backups to disk. Later, staging or lifecycle policies can move the backup images to tape. Size of the backups If the backups are too small to keep the tape in motion, send the backups to disk. Small backups may include incrementals and frequent backups of small database log files. Staging or lifecycle policies can later move the backup images to tape.
The following are some benefits of backing up to disk rather than tape:
No need to multiplex Backups to disk do not need to be multiplexed. Multiplexing is important with tape because it creates a steady flow of data which keeps the tape in motion efficiently (tape streaming). However, multiplexing to tape slows down a subsequent restore. More information is available on tape streaming. See NetBackup storage device performance on page 156. Instant access to data Most tape drives have a "time to data" of close to two minutes. Time is required to move the tape from its slot, load it into the drive, and seek to an appropriate place on the tape. Disk has an effective time to data of 0 seconds. Restoring a large file system from 30 different tapes can add almost two hours to the restore: a two-minute delay per tape for load and seek, and a possible two-minute delay per tape for rewind and unload. Fewer full backups With tape-based systems, full backups must be done regularly because of the "time to data" issue. If full backups are not done regularly, a restore may require too many tapes from incremental backups. As a result, the time to restore increases, as does the chance that a single tape may cause the restore to fail.
82
Chapter
Best practices
This chapter includes the following topics:
Best practices: SAN Client Best practices: Flexible Disk Option Best practices: new tape drive technologies Best practices: tape drive cleaning Best practices: storing tape cartridges Best practices: recoverability Best practices: naming conventions Best practices: duplication
Contains critical data that requires high bandwidth for backups Is not a candidate for converting to a media server
A SAN Client performs a fast backup over a Fibre Channel SAN to a media server. Media servers that have been enabled for SAN Client backups are called Fibre Transport Media Servers.
84
Note: The FlashBackup option should not be used with SAN Clients. Restores of FlashBackup backups use the LAN path rather than the SAN path from media server to the client. The LAN may not be fast enough to handle a full volume (raw partition) restore of a FlashBackup backup. A Symantec technote contains information on SAN Client performance parameters and best practices:
http://entsupport.symantec.com/docs/293110
The main point of the technote is the following: that effective use of a SAN Client depends on the proper configuration of the correct hardware. (Refer to the technote for in-depth details.) In brief, the technote contains the following information:
A list of the HBAs that NetBackup 6.5 supports. Further information is available on supported hardware. See the NetBackup 6.5 hardware compatibility list: http://entsupport.symantec.com/docs/284599 Tips on how to deploy a Fibre Channel SAN between the SAN Client and the Fibre Transport Media Server. A list of supported operating systems and HBAs for the Fibre Transport Media Server. Also a list of tuning parameters that affect the media server performance. A similar list of supported operating systems and tuning parameters for the SAN Client. A description of recommended architectures as a set of best practices The document includes the following:
To make best use of high-speed disk storage, or to manage a pool of SAN Clients for maximum backup speed: dedicate Fibre Transport Media Servers for SAN Client backup only. Do not share media servers for LAN-based backups. For a more cost-effective use of media servers, Fibre Transport Media Servers can be shared for both SAN Client and LAN-based backups. Use multiple data streams for higher data transfer speed from the SAN Client to the Fibre Transport Media Server. Multiple data streams can be combined with multiple HBA ports on the Fibre Transport Media Server. The maximum number of simultaneous connections to the Fibre Transport Media Server is 16.
85
Further information is available on SAN Client. See the NetBackup SAN Client and Fibre Transport Troubleshooting Guide: http://entsupport.symantec.com/docs/288437
Frequency-based cleaning
86
Refer to the NetBackup Administrators Guide, Volume II, for details on how to use these methods. Following are brief summaries of each method.
Frequency-based cleaning
NetBackup does frequency-based cleaning by tracking the number of hours a drive has been in use. When this time reaches a configurable parameter, NetBackup creates a job that mounts and exercises a cleaning tape. This practice cleans the drive in a preventive fashion. The advantage of this method is that typically there are no drives unavailable awaiting cleaning. No limitation exists as to the platform type or robot type. On the downside, cleaning is done more often than necessary. Frequency-based cleaning adds system wear and takes time that can be used to write to the drive. This method is also hard to tune. When new tapes are used, drive cleaning is needed less frequently; the need for cleaning increases as the tape inventory ages. This increases the amount of tuning administration that is needed and, consequently, the margin of error.
87
The configuration of the Log Sense page is by means of a Mode Select page. The Mode Sense/Select configuration of the TapeAlert interface is compatible with the SMART diagnostic standard for disk drives. NetBackup reads the TapeAlert Log Sense page at the beginning and end of a write or read job. TapeAlert flags 20 to 25 are used for cleaning management, although some drive vendors implementations vary. NetBackup uses TapeAlert flag 20 (Clean Now) and TapeAlert flag 21 (Clean Periodic) to determine when to clean a drive. When NetBackup selects a drive for a backup, bptm reviews the Log Sense page for status. If one of the clean flags is set, the drive is cleaned before the job starts. If a backup is in progress and a clean flag is set, the flag is not read until a tape is dismounted from the drive. If a job spans media and, during the first tape, one of the clean flags is set, the following occurs: the cleaning light comes on and the drive is cleaned before the second piece of media is mounted in the drive. The implication is that the present job concludes its ongoing write despite a TapeAlert Clean Now or Clean Periodic message. That is, the TapeAlert does not require the loss of what has been written to tape so far. This is true regardless of the number of NetBackup jobs that are involved in writing out the rest of the media. If a large number of media become FROZEN as a result of having implemented TapeAlert, other media or tape drive issues are likely to exist.
Disabling TapeAlert
Use the following procedure. To disable TapeAlert
Windows:
install_path\volmgr\database\NO_TAPEALERT
Robotic cleaning
Robotic cleaning is not proactive, and is not subject to the limitations in the previous section. By being reactive, unnecessary cleanings are eliminated, and
88
frequency tuning is not an issue. The drive can spend more time moving data, rather than in maintenance operations. EMM does not support library-based cleaning for most robots, because robotic library and operating systems vendors implement this type of cleaning in different ways.
Yes Yes
Yes Yes
Yes
89
Additional material may be found in the following books: The Resilient Enterprise, Recovering Information Services from Disasters, by Symantec and industry authors. Published by Symantec Software Corporation. Blueprints for High Availability, Designing Resilient Distributed Systems, by Evan Marcus and Hal Stern. Published by John Wiley and Sons. Implementing Backup and Recovery: The Readiness Guide for the Enterprise, by David B. Little and David A. Chapa. Published by Wiley Technology Publishing.
Always use a scheduled hot catalog backup Refer to "Catalog Recovery from an Online Backup" in the NetBackup Troubleshooting Guide. Review the disaster recovery plan often Review your site-specific recovery procedures and verify that they are accurate and up-to-date. Also, verify that the more complex systems, such as the NetBackup master and media servers, have procedures for rebuilding the computers with the latest software. Perform test recoveries on a regular basis Implement a plan to perform restores of various systems to alternate locations. This plan should include selecting random production backups and restoring the data to a non-production system. A checksum can then be performed on one or many of the restored files and compared to the actual production data. Be sure to include off-site storage as part of this testing. The end-user or application administrator can also help determine the integrity of the restored data. Use and protect the NetBackup catalog Do the following:
Back up the NetBackup catalog to two tapes. The catalog contains information vital for NetBackup recovery. Its loss can result in hours or days of recovery time using manual processes. The cost
90
of a single tape is a small price to pay for the added insurance of rapid recovery in the event of an emergency.
Back up the catalog after each backup. If a hot catalog backup is used, an incremental catalog backup can be done after each backup session. Busy backup environments should also use a scheduled hot catalog backup, because their backup sessions end infrequently. In the event of a catastrophic failure, the recovery of images is slow if some images are not available. If a manual backup occurs shortly before the master server or the drive that contains the backed-up files crashes, note: the manual backup must be imported to recover the most recent version of the files. Record the IDs of catalog backup tapes. Record the catalog tapes in the site run book or another public location to ensure rapid identification in the event of an emergency. If the catalog tapes are not identified, time may be lost by scanning every tape in a library to find them. The utility vmphyinv can be used to mount all tapes in a robotic library and identify the catalog tape(s). The vmphyinv utility identifies cold catalog tapes. Designate label prefixes for catalog backups. Make it easy to identify the NetBackup catalog data in times of emergency. Label the catalog tapes with a unique prefix such as "DB" on the tape bar code, so your operators can find the catalog tapes without delay. Place NetBackup catalogs in specific robot slots. Place a catalog backup tape in the first or last slot of a robot to identify the tape in an emergency. This practice also allows for easy tape movement if manual tape handling is necessary. Put the NetBackup catalog on different online storage than the data being backed up. Your catalogs should not reside on the same disks as production data. If a disk drive loses production data, it can also lose any catalog data that resides on it, resulting in increased downtime. Regularly confirm the integrity of the NetBackup catalog. On a regular basis, such as quarterly or after major operations or personnel changes, walk through the process of recovering a catalog from tape. This essential part of NetBackup administration can save hours in the event of a catastrophe.
91
Policy names
One good naming convention for policies is platform_datatype_server(s). Example 1: w2k_filesystems_trundle This policy name designates a policy for a single Windows server doing file system backups. Example 2: w2k_sql_servers This policy name designates a policy for backing up a set of Windows 2000 SQL servers. Several servers may be backed up by this policy. Servers that are candidates for being included in a single policy are those running the same operating system and with the same backup requirements. Grouping servers within a single policy reduces the number of policies and eases the management of NetBackup.
Schedule names
Create a generic scheme for schedule names. One recommended set of schedule names is daily, weekly, and monthly. Another recommended set of names is incremental, cumulative, and full. This convention keeps the management of NetBackup at a minimum. It also helps with the implementation of Vault, if your site uses Vault.
92
When duplicating an image, specify a volume pool that is different from the volume pool of the original image. (Use the Setup Duplication Variables dialog of the NetBackup Administration Console.) If multiple duplication jobs are active simultaneously (such as duplication jobs for Vault), specify a different storage unit or volume pool for each job. Using different destinations may prevent media swapping among the duplication jobs.
Section
Performance tuning
Chapter 6. Measuring performance Chapter 7. Tuning the NetBackup data transfer path Chapter 8. Tuning other NetBackup components Chapter 9. Tuning disk I/O performance Chapter 10. OS-related tuning factors Appendix A. Additional resources
94
Chapter
Measuring performance
This chapter includes the following topics:
Measuring performance: overview Controlling system variables for consistent testing conditions Evaluating performance Evaluating UNIX system components Evaluating Windows system components
The length of time that is required for backup operations to complete (usually known as the backup window) Or the length of time that is required for a critical restore operation to complete
However, to measure and improve performance calls for performance metrics more reliable and reproducible than wall clock time. This chapter discusses these metrics in more detail. After establishing accurate metrics as described here, you can measure the current performance of NetBackup and your system components to compile a baseline performance benchmark. With a baseline, you can apply changes in a controlled way. By measuring performance after each change, you can accurately measure the effect of each change on NetBackup performance.
96
Server variables
Eliminate all other NetBackup activity from your environment when you measure the performance of a particular NetBackup operation. One area to consider is the automatic scheduling of backup jobs by the NetBackup scheduler. When policies are created, they are usually set up to allow the NetBackup scheduler to initiate the backups. The NetBackup scheduler initiates backups according to the following: traditional NetBackup frequency-based scheduling, or on certain days of the week, month, or other time interval. This process is called calendar-based scheduling. As part of the backup policy, the Start Window indicates when the NetBackup scheduler can start backups using either frequency-based or calendar-based scheduling. When you perform backups to test performance, this scheduling might interfere. The NetBackup scheduler may initiate backups unexpectedly, especially if the operations you intend to measure run for an extended period of time.
1 2
Create a policy specifically for performance testing. Leave the schedules Start Window field blank. This policy prevents the NetBackup scheduler from initiating any backups automatically for that policy.
To prevent the NetBackup scheduler from running backup jobs unrelated to the performance test, consider setting all other backup policies to inactive. You can use the Deactivate command from the NetBackup Administration Console. You must reactivate the policies after the test, when you want to start running backups again.
97
4 5
Before you start the performance test, check the Activity Monitor to make sure no NetBackup jobs are in progress. To gather more logging information, set the legacy and unified logging levels higher and create the appropriate legacy logging directories. By default, NetBackup logging is set to a minimum level. For details on how to use NetBackup logging, refer to the logging chapter of the NetBackup Troubleshooting Guide. Keep in mind that higher logging levels consume more disk space.
From the policy you created for testing, run a backup on demand. Click Actions > Manual Backup in the NetBackup Administration Console. Or, you can use a user-directed backup to run the performance test. However, the Manual Backup option is preferred. With a manual backup, the policy contains the entire definition of the backup job. The policy includes the clients and files that are part of the performance test. If you run the backup manually from the policy, you can be certain which policy is used for the backup. This approach makes it easier to change and test individual backup settings, from the policy dialog.
7 8
During the performance test, check for non-NetBackup activity on the server and try to reduce or eliminate it. Check the NetBackup Activity Monitor after the performance test for any unexpected activity that may have occurred during the test, such as a restore job.
Network variables
Network performance is key to optimum performance with NetBackup. Ideally, you should use a separate network for testing, to prevent unrelated network activity from skewing the results. In many cases, a separate network is not available. If not, ensure that non-NetBackup activity is kept to a minimum during the test. If possible, schedule the test when backups are not active. Even occasional bursts of network activity may be enough to skew the test results. If you share the network with production backups occurring for other systems, you must account for this activity during the test. Another network variable is host name resolution. NetBackup depends heavily upon a timely resolution of host names to operate correctly. If you have any delays in host name resolution, try to eliminate that delay. An example of such a delay is a reverse name lookup to identify a server name from an incoming connection
98
from an IP address. You can use the HOSTS (Windows) or /etc/hosts (UNIX) file for host name resolution on systems in your test environment.
Client variables
Make sure the client system is relatively quiescent during performance testing. A lot of activity, especially disk-intensive activity such as Windows virus scanning, can limit the data transfer rate and skew the test results. Do not allow another NetBackup server, such as a production server, to access the client during the test. NetBackup may attempt to back up the same client to two different servers at the same time. The results of a performance test that is in progress can be severely affected. Different file systems have different performance characteristics. It may not be valid to compare data throughput on UNIX VxFS or Windows FAT file systems to UNIX NFS or Windows NTFS systems. For such a comparison, factor the difference between the file systems into your performance tests and into any conclusions.
Data variables
Monitoring the data you back up improves the repeatability of performance testing. If possible, move the data you use for testing to its own drive or logical partition (not a mirrored drive). Defragment the drive before you begin performance testing. For testing restores, start with an empty disk drive or a recently defragmented disk drive with ample empty space. For testing backups to tape, always start each test with an empty piece of media, as follows:
Expire existing images for that piece of media through the Catalog node of the NetBackup Administration Console, or run the bpexpdate command. Another approach is to use the bpmedia command to freeze any media containing existing backup images so that NetBackup selects a new piece of media for the backup operation. This step reduce the impact of tape positioning on the performance test and yields more consistent results between tests. It also reduces mounting and unmounting of media that has NetBackup catalog images and that cannot be used for normal backups.
When you test restores from tape, always restore from the same backup image on the tape to achieve consistent results between tests. A large set of data generates a more reliable, reproducible test than a small set of data. A performance test with a small data set would probably be skewed by startup and shutdown overhead within the NetBackup operation. These variables are difficult to keep consistent between test runs and are therefore likely to produce
99
inconsistent test results. A large set of data minimizes the effect of startup and shutdown times. Design the dataset to represent the makeup of the data in the intended production environment. If the data set in the production environment contains many small files on file servers, the data set for the tests should also contain many small files. A representative data set can more accurately predict the NetBackup performance that can be expected in a production environment. The type of data can help reveal bottlenecks in the system. Files that contain non-compressible (random) data cause the tape drive to run at its lower rated speed. As long as the other components of the data transfer path can keep up, you can identify the tape drive as the bottleneck. On the other hand, files containing highly-compressible data can be processed at higher rates by the tape drive when hardware compression is enabled. The result may be a higher overall throughput and may expose the network as the bottleneck. Many values in NetBackup provide data amounts in kilobytes and rates in kilobytes per second. For greater accuracy, divide by 1024 rather than rounding off to 1000 when you convert from kilobytes to megabytes or kilobytes per second to megabytes per second.
Evaluating performance
You can obtain NetBackup data throughput statistics from two locations: the NetBackup Activity Monitor and the NetBackup All Log Entries report. Select the location according to the type of NetBackup operation you want to measure: non-multiplexed backup, restore, or multiplexed backup. You can obtain statistics for all three types of operations from the NetBackup All Log Entries report. You can obtain statistics for non-multiplexed backup or restore operations from the NetBackup Activity Monitor. For multiplexed backups, obtain the overall statistics from the All Log Entries report. Wait until all the individual backup operations which are part of the multiplexed backup are complete. In this case, the statistics available in the Activity Monitor for each of the individual backup operations are relative only to that operation. The statistics do not reflect the total data throughput to the tape drive. The statistics from these two locations may differ, because of differences in rounding techniques in the Activity Monitor versus the All Logs report. For a given type of operation, choose the Activity Monitor or the All Log Entries report. Consistently record your statistics only from that location. In both the Activity Monitor and the All Logs report, the data-streaming speed is reported in kilobytes per second. If a backup or restore is repeated, the reported speed can vary between repetitions depending on many factors. Factors include the availability of system
100
resources and system utilization. The reported speed can be used to assess the performance of the data-streaming process. The statistics from the NetBackup error logs show the actual amount of time reading and writing data to and from tape. The statistics do not include the time for mounting and positioning the tape. You should cross-reference the information from the error logs with data from the bpbkar log on the NetBackup client. (The bpbkar log shows the end-to-end elapsed time of the entire process.) Such cross referenes can indicate how much time was spent on operations unrelated to reading and writing tape. To evaluate performance through the NetBackup Activity Monitor
1 2 3
Run the backup or restore job. Open the NetBackup Activity Monitor. Verify that the backup or restore completed successfully. The Status column should contain a zero (0).
View the log details for the job by selecting the Actions > Details menu option, or by double-clicking on the entry for the job.
101
5 6
Select the Detailed Status tab. Obtain the NetBackup performance statistics from the following fields in the Activity Monitor:
Start Time/End Time Elapsed Time These fields show the time window during which the backup or restore job took place. This field shows the total elapsed time from when the job was initiated to job completion. It can be used as an indication of total wall clock time for the operation. The data throughput rate. Compare this value to the amount of data. Although it should be comparable, the NetBackup data amount is slightly higher because of administrative information (metadata) that is saved for the backed up data.
For example, if you display properties for a directory that contains 500 files, each 1 megabyte in size, the directory shows a size of 500 megabytes. (500 megabytes is 524,288,000 bytes, or 512,000 kilobytes.) The NetBackup report may show 513,255 kilobytes written, reporting 1255 kilobytes more than the file size of the directory. This report is true for a flat directory. Subdirectory structures may diverge due to the way the operating system tracks used and available space on the disk. Note that the operating system may report how much space was allocated for the files in question, not only how much data is present. If the allocation block size is 1 kilobyte, 1000 1-byte files report a total size of 1 megabyte, although 1 kilobyte of data is all that exists. The greater the number of files, the larger this discrepancy may become. To evaluate performance through the All Log Entries report
1 2
Run the backup or restore job. Run the All Log Entries report from the NetBackup reports node in the NetBackup Administrative Console. Be sure that the Date/Time Range that you select covers the time period during which the job was run. Verify that the job completed successfully by searching for entries such as the following: For a backup: "the requested operation was successfully completed" For a restore: "successfully read (restore) backup id..."
Obtain the NetBackup performance statistics from the messages in the report. See Table of All Log Entries report on page 102.
102
started backup job for client The Date and Time fields for this entry show the time at which the backup job started. <name>, policy <name>, schedule <name> on storage unit <name> successfully wrote backup id <name>, copy <number>, <number> Kbytes For a multiplexed backup, this entry shows the size of the individual backup job. The Date and Time fields indicate when the job finished writing to the storage device. The overall statistics for the multiplexed backup group, which include the data throughput rate to the storage device, are found in a subsequent entry.
successfully wrote <number> For multiplexed backups, this entry shows the overall statistics for the multiplexed backup group of <number> multiplexed backups, total Kbytes <number> including the data throughput rate. at Kbytes/sec successfully wrote backup id <name>, copy <number>, fragment <number>, <number> Kbytes at <number> Kbytes/sec For non-multiplexed backups, this entry combines the information in the previous two entries for multiplexed backups. The single entry shows the following:
The size of the backup job The data throughput rate When the job finished writing to the storage device (in the Date and Time fields).
The Date and Time fields for this entry show the time at which the backup job completed. This value is later than the "successfully wrote" entry (in a previous message): it includes extra processing time at the end of the job for tasks such as NetBackup image validation.
103
begin reading backup id <name>, (restore), copy <number>, fragment <number> from media id <name> on drive index <number> successfully restored from backup id <name>, copy <number>, <number> Kbytes
successfully restored <number> For multiplexed restores, this entry shows the of <number> requests <name>, overall statistics for the multiplexed restore read total of <number> Kbytes group, including the data throughput rate. at <number> Kbytes/sec successfully read (restore) backup id media <number>, copy <number>, fragment <number>, <number> Kbytes at <number> Kbytes/sec For non-multiplexed restores, this entry combines the information from the previous two entries for multiplexed restores. The single entry shows the following:
The size of the restore job The data throughput rate When the job finished reading from the storage device (in the Date and Time fields)
Additional information
For other NetBackup operations, the NetBackup All Log Entries report has entries that are similar to those in Table 6-1. For example, it has entries for image duplication operations that create additional copies of a backup image. The entries may be useful for analyzing the performance of NetBackup. The bptm debug log file for tape backups (or bpdm log file for disk backups) contains the entries that are in the All Log Entries report. The log also has additional detail
104
about the operation that may be useful. One example is the message on intermediate data throughput rate for multiplexed backups:
... intermediate after number successful, number Kbytes at number Kbytes/sec
This message is generated whenever an individual backup job completes that is part of a multiplexed backup group. For example, the debug log file for a multiplexed backup group (that consists of three individual backup jobs) may include the following: two intermediate status lines, then the final (overall) throughput rate. For a backup operation, the bpbkar debug log file also contains additional detail about the operation that may be useful. Note that writing the debug log files during the NetBackup operation introduces overhead that may not be present in a production environment. Factor that additional overhead into your calculations. The information in the All Logs report is also found in /usr/openv/netbackup/db/error (UNIX) or install_path\NetBackup\db\error (Windows). See the NetBackup Troubleshooting Guide to learn how to set up NetBackup to write these debug log files.
105
Using bpbkar
Try this procedure. To measure disk I/O using bpbkar
Turn on the legacy bpbkar log by ensuring that the bpbkar directory exists. UNIX
/usr/openv/netbackup/logs/bpbkar
Windows
install_path\NetBackup\logs\bpbkar
2 3
Check how long it took NetBackup to move the data from the client disk: UNIX: The start time is the first PrintFile entry in the bpbkar log. The end time is the entry "Client completed sending data for backup." The amount of data is given in the entry "Total Size." Windows: Check the bpbkar log for the entry "Elapsed time."
106
process and the server bpdm process. The problem may involve the network, or shared memory (such as not enough buffers, or buffers that are too small). You can change shared memory settings. See Shared memory (number and size of data buffers) on page 124. Caution: If not used correctly, the following procedure can lead to data loss. Touching the bpdm_dev_null file redirects all disk backups to /dev/null, not only those backups using the storage unit that is created by this procedure. You should disable active production policies for the duration of this test and remove /dev/null as soon as this test is complete. To measure disk I/O using the bpdm_dev_null touch file (UNIX only)
The bpdm_dev_null file re-directs any backup that uses a disk storage unit to /dev/null.
2 3 4
Create a new disk storage unit, using /tmp or some other directory as the image directory path. Create a policy that uses the new disk storage unit. Run a backup from this policy. NetBackup creates a file in the storage unit directory as if this backup was a real backup to disk. This image file is 0 bytes long.
To remove the zero-length file and clear the NetBackup catalog of a backup that cannot be restored, run this command:
/usr/openv/netbackup/bin/admincmd/bpexpdate -backupid backupid -d 0
where backupid is the name of the file that resides in the storage unit directory.
107
An object is a system resource category, such as a processor or physical disk. Properties of an object are counters. Counters for the Processor object include %Processor Time, which is the default counter, and Interrupts/sec. Duplicate counters are handled by instances. For example, to monitor the %Processor Time of a specific CPU on a multiple CPU system, the Processor object is selected. Then the %Processor Time counter for that object is selected, followed by the specific CPU instance for the counter. In the Performance Monitor, you can view data in real-time format or collect the data in a log for future analysis. Specific components to evaluate include CPU load, memory use, and disk load. Note: You should use a remote host for monitoring of the test host, to reduce load that might otherwise skew results.
108
Page Faults/sec
109
Use the %Disk Time counter for the PhysicalDisk object. Track the percentage of elapsed time that the selected disk drive is servicing read or write requests.
Monitor the Avg. Disk Queue Length counter and watch for values greater than 1 that last for more than one second. Values greater than 1 for more than a second indicate that multiple processes are waiting for the disk to service their requests.
Check the fragmentation level of the data. A highly fragmented disk limits throughput levels. Use a disk maintenance utility to defragment the disk. Consider adding additional disks to the system to increase performance. If multiple processes attempt to log data simultaneously, divide the data among multiple physical disks. Determine if the data transfer involves a compressed disk. Windows drive compression adds overhead to disk read or write operations, with adverse effects on NetBackup performance. Use Windows compression only if it is needed to avoid a disk full condition. Consider converting to a system with a Redundant Array of Inexpensive Disks (RAID). Though more expensive, RAID devices offer greater throughput and (depending on the RAID level) improved reliability. Determine what type of controller technology drives the disk. A different system might yield better results. See Example: Calculating the number of tape drives needed to perform a backup on page 24.
110
Chapter
Tuning the data transfer path: overview The data transfer path Basic tuning suggestions for the data path NetBackup client performance NetBackup network performance NetBackup server performance NetBackup storage device performance
112
Tuning the NetBackup data transfer path The data transfer path
often the result of poor planning, which results from unrealistic expectations of components of the transfer path.
Tuning the NetBackup data transfer path Basic tuning suggestions for the data path
113
Tuning suggestions
Consider the following:
Use multiplexing. Multiplexing writes multiple data streams from several clients to a single tape drive or several tape drives. Multiplexing can improve the backup performance of slow clients, multiple slow networks, and many small backups (such as incremental backups). Multiplexing reduces the time each job waits for a device to become available. It thereby makes the best use of the transfer rate of your storage devices. See Restore of a multiplexed image on page 150. Refer also to the NetBackup Administrators Guide, Volume II, for more information about using multiplexing. Stripe a disk volume across drives. A striped set of disks can pull data from all drives concurrently, to allow faster data transfers between disk drives and tape drives. Maximize the use of your backup windows. You can configure all your incremental backups to happen at the same time every day. You can also stagger the execution of your full backups across multiple days. Large systems can be backed up over the weekend while smaller systems are spread over the week. You can start full backups earlier than the incremental backups. They might finish before the incremental backups and return all or most of your backup window to finish the incremental backups. Convert large clients to SAN Clients or SAN Media Servers A SAN Client is a client that is backed up over a SAN connection to a media server rather than over a LAN. SAN Client technology is for large databases and application servers where large data files are rapidly read from disk and streamed across the SAN. SAN Client is not suitable for file servers where the disk read speed is relatively slow. See Best practices: SAN Client on page 83. Use dedicated private networks to decrease backup times and network traffic. Dedicate one or more networks to backups, to reduce backup time and reduce or eliminate network traffic on your enterprise networks. In addition, you can convert to faster technologies and back up your systems at any time without affecting the enterprise networks performance. This approach assumes that users do not mind the system loads while backups take place. Avoid a concentration of servers on one network.
114
Tuning the NetBackup data transfer path Basic tuning suggestions for the data path
If many large servers back up over the same network, convert some of them to media servers or attach them to private backup networks. Either approach decreases backup times and reduces network traffic for your other backups.
Use dedicated backup servers to perform your backups. For a backup server, use a dedicated system for backups only. Using a server that also runs several applications unrelated to backups can severely affect your performance and maintenance windows. Consider the requirements of backing up your catalog. Remember that the NetBackup catalog needs to be backed up. To facilitate NetBackup catalog recovery, the master server should have access to a dedicated tape drive, either stand-alone or within a robotic library. Try to level the backup load. You can use multiple drives to reduce backup times. To spread the load across multiple drives, you may need to reconfigure the streams or the NetBackup policies. Consider bandwidth limiting. Bandwidth limiting lets you restrict the network bandwidth that is consumed by one or more NetBackup clients on a network. The bandwidth setting appears under Host Properties > Master Servers, Properties. The actual limiting occurs on the client side of the backup connection. This feature only restricts bandwidth during backups. Restores are unaffected. When a backup starts, NetBackup reads the bandwidth limit configuration and then determines the appropriate bandwidth value and passes it to the client. As the number of active backups increases or decreases on a subnet, NetBackup dynamically adjusts the bandwidth limiting on that subnet. If additional backups are started, the NetBackup server instructs the other NetBackup clients that run on that subnet to decrease their bandwidth setting. Similarly, bandwidth per client is increased if the number of clients decreases. Changes to the bandwidth value occur on a periodic basis rather than as backups stop and start. This characteristic can reduce the number of bandwidth value changes. Try load balancing NetBackup provides ways to balance loads between servers, clients, policies, and devices. Note that these settings may interact with each other: compensating for one issue can cause another. The best approach is to use the defaults unless you anticipate or encounter an issue. Try one or more of the following:
Adjust the backup load on the server. Change the Limit jobs per policy attribute for one or more of the policies that the server backs up. For example, you can decrease Limit jobs per
115
policy to reduce the load on a server on a specific subnetwork. Reconfigure policies or schedules to use storage units on other servers. Use bandwidth limiting on one or more clients.
Adjust the backup load on the server during specific time periods only. Reconfigure schedules to use storage units on the servers that can handle the load (if you use media servers). Adjust the backup load on the clients. Change the Maximum jobs per client global attribute. An increase to Maximum jobs per client can increase the number of concurrent jobs that any one client can process and therefore increase the load. Reduce the time to back up clients. Increase the number of jobs that clients can perform concurrently, or use multiplexing. Increase the number of jobs that the server can perform concurrently for the policies that back up the clients. Give preference to a policy. Increase the Limit jobs per policy attribute value for the preferred policy relative to other policies. Alternatively, increase the priority for the policy. Adjust the load between fast and slow networks. Increase the values of Limit jobs per policy and Maximum jobs per client for the policies and clients on a faster network. Decrease these values for slower networks. Another solution is to use bandwidth limiting. Limit the backup load that one or more clients produce. Use bandwidth limiting to reduce the bandwidth that the clients use. Maximize the use of devices Use multiplexing. Also, allow as many concurrent jobs per storage unit, policy, and client as possible without causing server, client, or network performance issues. Prevent backups from monopolizing devices. Limit the number of devices that NetBackup can use concurrently for each policy or limit the number of drives per storage unit. Another approach is to exclude some of your devices from Media Manager control.
116
Disk fragmentation Fragmentation severely affects the data transfer rate from the disk. Fragmentation can be repaired using disk management utility software. Number of disks Add disks to the system to increase performance. If multiple processes attempt to log data simultaneously, divide the data among multiple physical disks. Disk arrays Convert to a system that is based on a Redundant Array of Inexpensive Disks (RAID). RAID devices generally offer greater throughput and (depending on the RAID level) improved reliability. SAN client For critical data that requires high bandwidth for backups, consider the SAN client feature. Refer to the following documents for more information:
NetBackup Shared Storage Guide "SAN Client Deployment, Best Practices and Performance Metrics" tech note. http://entsupport.symantec.com/docs/293110
The type of controller technology being used to drive the disk Consider if a different system would yield better results. Virus scanning Virus scanning can severely affect the performance of the NetBackup client, especially for systems such as large Windows file servers. Consider disabling virus scans during backup or restore. NetBackup notify scripts The bpstart_notify.bat and bpend_notify.bat scripts are very useful in certain situations, such as shutting down a running application to back up its data. However, these scripts must be written with care to avoid any unnecessary lengthy delays at the start or end of the backup. If the scripts do not perform tasks essential to the backup, remove them. NetBackup software location If the data being backed up is on the same physical disk as the NetBackup installation, note: performance may be adversely affected, especially if NetBackup debug log files are generated. If logs are used, the extent of the degradation is greatly influenced by the logs verbose setting. If possible, install NetBackup on a separate physical disk to avoid disk drive contention.
117
Snapshots (hardware or software) If snapshots are taken before the backup of data, the time that is needed to take the snapshot can affect the performance. Job tracker If the Job Tracker is running on the client, NetBackup gathers an estimate of the data to be backed up before the backup. Gathering this estimate affects the startup time and the data throughput rate, because no data is written to the NetBackup server during this estimation. You may want to avoid running the NetBackup Client Job Tracker. Determine the theoretical performance of the NetBackup client software Use the NetBackup client command bpbkar (UNIX) or bpbkar32 (Windows) to determine how fast the NetBackup client can read the data to be backed up. You may be able to eliminate data read speed as a performance bottleneck. See Measuring performance independent of tape or disk output on page 104.
Network interface cards (NICs) for NetBackup servers and clients must be set to full-duplex. Both ends of each network cable (the NIC card and the switch) must be set identically as to speed and mode. (Both NIC and switch must be at full duplex.) Otherwise, link down, excessive or late collisions, and errors result. If auto-negotiate is used, make sure that both ends of the connection are set at the same mode and speed. The higher the speed, the better. In addition to NICs and switches, all routers must be set to full duplex. Using AUTOSENSE may cause network problems and performance issues. Consult the operating system documentation for instructions on how to determine and change the NIC settings.
118
Network load
To evaluate remote backup performance, consider the following:
The amount of network traffic The amount of time that network traffic is high
Small bursts of high network traffic for short durations can decrease data throughput rate. However, if the network traffic remains high, the network is probably the bottleneck. Try to schedule backups when network traffic is low. If your network is loaded, you may want to implement a secondary network which is dedicated to backup and restore traffic.
Setting the network buffer size for the NetBackup media server
The NetBackup media server has a tunable parameter that you can use to adjust the size of the network buffer. This buffer either receives data from the network (a backup) or writes data to the network (a restore). The parameter sets the value for the network buffer size for backups and restores. UNIX The default value for this parameter is 32032. Windows The default value for this parameter is derived from the NetBackup data buffer size using the following formula: For backup jobs: (<data_buffer_size> * 4) + 1024 For restore jobs: (<data_buffer_size> * 2) + 1024 For tape: Because the default value for the NetBackup data buffer size is 65536 bytes, the formula results in the following: a default NetBackup network buffer size of 263168 bytes for backups and 132096 bytes for restores. For disk: Because the default value for the NetBackup data buffer size is 262144 bytes, the formula results in the following: a default NetBackup network buffer size of 1049600 bytes for backups and 525312 bytes for restores. To set the network buffer size
119
Windows
install_path\NetBackup\NET_BUFFER_SZ install_path\NetBackup\NET_BUFFER_SZ_REST
Note the following about the buffer files: These files contain a single integer that specifies the network buffer size in bytes. For example, to use a network buffer size of 64 kilobytes, the file would contain 65536. If the files contain the integer 0 (zero), the default value for the network buffer size is used. If the NET_BUFFER_SZ file exists, and the NET_BUFFER_SZ_REST file does not exist, NET_BUFFER_SZ specifies the network buffer size for backup and restores. If the NET_BUFFER_SZ_REST file exists, its contents specify the network buffer size for restores. If both files exist, the NET_BUFFER_SZ file specifies the network buffer size for backups. The NET_BUFFER_SZ_REST file specifies the network buffer size for restores. Because local backup or restore jobs on the media server do not send data over the network, this parameter has no effect on those operations. It is used only by the NetBackup media server processes which read from or write to the network, specifically, the bptm or bpdm processes. It is not used by any other NetBackup processes on a master server, media server, or client.
120
The two buffers are separately tunable parameters. However, setting the network buffer size to a substantially larger value than the data buffer has achieved the best performance in many NetBackup installations.
Increasing the network buffer size on AIX for synthetic full backups
If synthetic full backups on AIX are running slowly, increase the NET_BUFFER_SZ network buffer to 262144 (256KB). To increase the network buffer size on AIX
To change the default setting from 32032 to 262144, enter the number 262144 in the file. This file is unformatted, and should contain only the size in bytes:
$ cat /usr/openv/netbackup/NET_BUFFER_SZ 262144 $
A change in this value can affect backup and restore operations on the media servers. Test backups and restores to ensure that the change you make does not negatively affect performance.
121
Create the /usr/openv/netbackup/NET_BUFFER_SZ file. As with the media server, the file should contain a single integer that specifies the communications buffer size. Generally, performance is better when the value in the NET_BUFFER_SZ file on the client matches the value in the NET_BUFFER_SZ file on the media server. The NET_BUFFER_SZ_REST file is not used on the client. The value in the NET_BUFFER_SZ file is used for both backups and restores.
From Host Properties in the NetBackup Administration Console, do the following: expand Clients and open the Client Properties > Windows Client > Client Settings dialog for the client on which the parameter is to be changed. Enter the new value in the Communications buffer field. This parameter is specified in number of kilobytes. The default value is 32. An extra kilobyte is added internally for backup operations. Therefore, the default network buffer size for backups is 33792 bytes. In some NetBackup installations, this default value is too small. A value of 128 improves performance in these installations. Because local backup jobs on the media server do not send data over the network, this parameter has no effect on these local operations. Only the NetBackup bpbkar32 process uses this parameter. It is not used by any other NetBackup processes on a master server, media server, or client.
If you modify the NetBackup buffer settings, test the performance of restores with the new settings.
122
Windows
install_path\NetBackup\NOSHM
To touch a file means to change the files modification and access times. The file name should not contain any extension.
123
Note: NOSHM does not affect the shared memory that bptm uses to buffer data that is written to tape. bptm uses shared memory for any backup, local or otherwise.
In the servers bp.conf file, add one entry for each network interface:
SERVER=server-neta SERVER=server-netb SERVER=server-netc
A client can have an entry for a server that is not currently on the same network. For more information on how to set network interfaces, refer to the NetBackup Administrators Guide, Volume I.
Shared memory (number and size of data buffers) Changing parent and child delay values Using NetBackup wait and delay counters Fragment size and NetBackup restores Other restore performance issues
124
NetBackup operation
12
12
30 30 30 30
30 30 30 30
125
NetBackup operation
Duplicate
On Windows, a single tape I/O operation is performed for each shared data buffer. Therefore, this size must not exceed the maximum block size for the tape device or operating system. For Windows systems, the maximum block size is generally 64K, although in some cases customers use a larger value successfully. For this reason, the terms "tape block size" and "shared data buffer size" are synonymous in this context.
126
The value specified by NUMBER_DATA_BUFFERS determines the number of shared memory buffers for all types of backups if none of the following NUMBER_DATA_BUFFERS_xxxx files exists. For disk:
/usr/openv/netbackup/db/config/NUMBER_DATA_BUFFERS_DISK
Note: NUMBER_DATA_BUFFERS_DISK requires NetBackup 6.5.1 or later. For multiple copies (Inline Copy):
/usr/openv/netbackup/db/config/NUMBER_DATA_BUFFERS_MULTCOPY
The value specified by NUMBER_DATA_BUFFERS determines the number of shared memory buffers for all types of backups if none of the following NUMBER_DATA_BUFFERS_xxxx files exists. For disk:
install_path\NetBackup\db\config\NUMBER_DATA_BUFFERS_DISK
Note: NUMBER_DATA_BUFFERS_DISK requires NetBackup 6.5.1 or later. For multiple copies (Inline Copy):
127
install_path\NetBackup\db\config\NUMBER_DATA_BUFFERS_MULTCOPY
The various number data buffers files must contain a single integer that specifies the number of shared data buffers NetBackup uses. If the NUMBER_DATA_BUFFERS file exists, its contents determine the number of shared data buffers to be used for multiplexed and non-multiplexed backups. The other NUMBER_DATA_BUFFERS files (NUMBER_DATA_BUFFERS_DISK, NUMBER_DATA_BUFFERS_MULTCOPY, NUMBER_DATA_BUFFERS_FT) allow buffer settings for particular types of backups. The values specified in these files override either the NetBackup default number or the value that is specified in NUMBER_DATA_BUFFERS. For example, NUMBER_DATA_BUFFERS_DISK allows for a different value when you back up to disk instead of tape. If NUMBER_DATA_BUFFERS exists but NUMBER_DATA_BUFFERS_DISK does not, NUMBER_DATA_BUFFERS applies to tape and disk backups. If both files exist, NUMBER_DATA_BUFFERS applies to tape backups and NUMBER_DATA_BUFFERS_DISK applies to disk backups. If only NUMBER_DATA_BUFFERS_DISK is present, it applies to disk backups only. Note: NUMBER_DATA_BUFFERS_DISK requires NetBackup 6.5.1 or later.
The NUMBER_DATA_BUFFERS file also applies to remote NDMP backups, but does not apply to local NDMP backups or to NDMP three-way backups. See Note on shared memory and NetBackup for NDMP on page 131. The NUMBER_DATA_BUFFERS_RESTORE file is only used for restore from tape, not from disk. If the NUMBER_DATA_BUFFERS_RESTORE file exists, its contents determine the number of shared data buffers for multiplexed restores from tape. The NetBackup daemons do not have to be restarted for the new buffer values to be used. Each time a new job starts, bptm checks the configuration file and adjusts its behavior. For a recommendation for setting NUMBER_DATA_BUFFERS_FT, refer to the following topic: See Recommended number of data buffers for SAN Client and FT media server on page 133.
128
The value specified by SIZE_DATA_BUFFERS determines the shared memory buffer size for all types of backups if none of the following SIZE_DATA_BUFFERS_xxxx files exists. For tape (NDMP storage units):
/usr/openv/netbackup/db/config/SIZE_DATA_BUFFERS_NDMP
For disk:
/usr/openv/netbackup/db/config/SIZE_DATA_BUFFERS_DISK
The SIZE_DATA_BUFFERS_DISK file also affects NDMP to disk backups. For multiple copies (Inline Copy):
/usr/openv/netbackup/db/config/SIZE_DATA_BUFFERS_MULTCOPY
The value specified by SIZE_DATA_BUFFERS determines the shared memory buffer size for all types of backups if none of the following SIZE_DATA_BUFFERS_xxxx files exists. For tape (NDMP storage units):
install_path\NetBackup\db\config\SIZE_DATA_BUFFERS_NDMP
For disk:
install_path\NetBackup\db\config\SIZE_DATA_BUFFERS_DISK
129
The SIZE_DATA_BUFFERS_DISK file also affects NDMP to disk backups. For multiple copies (Inline Copy):
install_path\NetBackup\db\config\SIZE_DATA_BUFFERS_MULTCOPY
The various size data buffers files contain a single integer that specifies the size of each shared data buffer in bytes. The integer should be a multiple of 1024 (a multiple of 32 kilobytes is recommended). See Size values for shared data buffers on page 130. If the SIZE_DATA_BUFFERS file exists, its contents determine the size of shared data buffers to be used for multiplexed and non-multiplexed backups. The other SIZE_DATA_BUFFERS files (SIZE_DATA_BUFFERS_DISK, SIZE_DATA_BUFFERS_MULTCOPY, SIZE_DATA_BUFFERS_FT) allow buffer settings for particular types of backups. The values specified in these files override either the NetBackup default size or the value that is specified in SIZE_DATA_BUFFERS. For example, SIZE_DATA_BUFFERS_DISK allows for a different value when you back up to disk instead of tape. If SIZE_DATA_BUFFERS exists but SIZE_DATA_BUFFERS_DISK does not, SIZE_DATA_BUFFERS applies to all backups. If both files exist, SIZE_DATA_BUFFERS applies to tape backups and SIZE_DATA_BUFFERS_DISK applies to disk backups. If only SIZE_DATA_BUFFERS_DISK is present, it applies to disk backups only.
The SIZE_DATA_BUFFERS_DISK file also affects NDMP to disk backups. Perform backup and restore testing if the shared data buffer size is changed. If NetBackup media servers are not running the same operating system, test restores on each media server that may be involved in a restore operation. If a UNIX media server writes a backup to tape with a shared data buffer of 256 kilobytes, a Windows media server may not be able to read that tape. Warning: Test restore as well as backup operations, to avoid the potential for data loss. See Testing changes made to shared memory on page 133.
130
Important: the data buffer size equals the tape I/O size. Therefore the SIZE_DATA_BUFFERS value must not exceed the maximum tape I/O size that the tape drive or operating system supports. This value is usually 256 or 128 kilobytes. Check your operating system and hardware documentation for the maximum values. Take into consideration the total system resources and the entire network. The Maximum Transmission Unit (MTU) for the LAN network may also have to be changed. NetBackup expects the value for NET_BUFFER_SZ and SIZE_DATA_BUFFERS to be in bytes. For 32K, use 32768 (32 x 1024).
131
Note: Some Windows tape devices cannot write with block sizes higher than 65536 (64 kilobytes). Some Windows media servers cannot read backups on a UNIX media server with SIZE_DATA_BUFFERS set to more than 65536. The Windows media server would not be able to import or restore images from media that were written with SIZE_DATA_BUFFERS greater than 65536.
Note: The size of the shared data buffers for a restore is determined by the size of the shared data buffers in use at the time the backup was written. Restores do not use the SIZE_DATA_BUFFERS files.
Table 7-5 shows the effect of SIZE_DATA_BUFFERS_NDMP according to the type of NDMP backup. Table 7-5 NetBackup for NDMP and size of data buffers Use of shared memory
NetBackup does not use shared memory (no data buffers). You can use SIZE_DATA_BUFFERS_NDMP to change the size of the records that are written to tape. Use SIZE_DATA_BUFFERS_DISK to change record size for NDMP disk backup.
132
Table 7-5
NetBackup for NDMP and size of data buffers (continued) Use of shared memory
NetBackup uses shared memory. You can use SIZE_DATA_BUFFERS_NDMP to change the size of the memory buffers and the size of the records that are written to tape. Use SIZE_DATA_BUFFERS_DISK to change buffer size and record size for NDMP disk backup.
The following is a brief description of NDMP three-way backup and remote NDMP backup:
In an NDMP three-way backup, the backup is written to an NDMP storage unit on a different NAS filer. In remote NDMP backup, the backup is written to a NetBackup Media Manager-type storage device.
More information is available on these backup types. See the NetBackup for NDMP Administrators Guide.
133
Note: Note that AIX media servers do not need to tune shared memory because AIX uses dynamic memory allocation. Make changes carefully, monitoring for performance changes with each modification. For example, an increase in the tape buffer size can cause some backups to run slower. Also, there have been cases with restore issues. After any changes, be sure to include restores as part of your validation testing.
Recommended number of data buffers for SAN Client and FT media server
For SAN Client Fibre Transport, the effective total number of data buffers is approximately twice the number of buffers specified for non-multiplexed backups. The reason is that the specified number of buffers are present on both the SAN Client and on the FT media server. Note: It usually does not improve performance to increase memory buffers to a number that is significantly more than the SAN Client Fibre Transport default (16). Such an increase usually causes the majority of the buffers on either the client or server side to be empty.
1 2
134
3 4
Restore data from a backup that was created before the changes to the SIZE_DATA_BUFFERS_xxxx and NUMBER_DATA_BUFFERS_xxxx files. Before and after altering the size or number of data buffers, examine the buffer usage information in the bptm debug log file. The values in the log should match your buffer settings. The relevant bptm log entries are similar to the following:
12:02:55 [28551] <2> io_init: using 65536 data buffer size 12:02:55 [28551] <2> io_init: CINDEX 0, sched bytes for monitoring = 200 12:02:55 [28551] <2> io_init: using 8 data buffers
or
15:26:01 [21544] <2> mpx_setup_restore_shm: using 12 data buffers, buffer size is 65536
When you change these settings, take into consideration the total system resources and the entire network. The Maximum Transmission Unit (MTU) for the local area network (LAN) may also have to be changed.
Windows
install_path\NetBackup\db\config\PARENT_DELAY install_path\NetBackup\db\config\CHILD_DELAY
These files contain a single integer that specifies the value in milliseconds for the delay corresponding to the name of the file.
For example, for a parent delay of 50 milliseconds, enter 50 in the PARENT_DELAY file. See Using NetBackup wait and delay counters on page 135.
135
NetBackup Client
Network Consumer
Shared buffers
Producer
Tape or disk
Whether the operation is a backup or restore Whether the operation involves a local client or a remote client
Local clients
When the NetBackup media server and the NetBackup client are part of the same system, the NetBackup client is referred to as a local client.
136
For a local client, the bpbkar (UNIX) or bpbkar32 (Windows) process reads data from the disk during backup and places it in shared buffers. The bptm process reads the data from the shared buffer and writes it to tape or disk. During a restore of a local client, the bptm process reads data from the tape or disk and places it in the shared buffers. The tar (UNIX) or tar32 (Windows) process reads the data from the shared buffers and writes it to disk.
Remote clients
When the NetBackup media server and the NetBackup client are part of two different systems, the NetBackup client is referred to as a remote client.
Backup of remote client The bpbkar (UNIX) or bpbkar32 (Windows) process on the remote client reads data from the disk and writes it to the network. Then a child bptm process on the media server receives data from the network and places it in the shared buffers. The parent bptm process on the media server reads the data from the shared buffers and writes it to tape or disk. During the restore of the remote client, the parent bptm process reads data from the tape or disk and places it into the shared buffers. The child bptm process reads the data from the shared buffers and writes it to the network. The tar (UNIX) or tar32 (Windows) process on the remote client receives the data from the network and writes it to disk.
Data consumer
bptm
137
Data consumer
bptm (parent) tar (UNIX) or tar32 (Windows) bptm (child)
If the data consumer lacks a full buffer, it increments the wait and delay counters to indicate that it had to wait for a full buffer. After a delay, the data consumer checks again for a full buffer. If a full buffer is still not available, the data consumer increments the delay counter to indicate that it had to wait (delay) for a full buffer. The data consumer repeats the delay and full buffer check steps until a full buffer is available. This sequence is summarized in the following algorithm:
while (Buffer_Is_Not_Full) { ++Wait_Counter; while (Buffer_Is_Not_Full) { ++Delay_Counter; delay (DELAY_DURATION); } }
If the data producer lacks an empty buffer, it increments the wait and delay counter to indicate that it had to wait for an empty buffer. After a delay, the data producer checks again for an empty buffer. If an empty buffer is still not available, the data producer increments the delay counter to indicate that it had to delay again while waiting for an empty buffer. The data producer relates the delay and empty buffer check steps until an empty buffer is available. The algorithm for a data producer has a similar structure:
while (Buffer_Is_Not_Empty) { ++Wait_Counter; while (Buffer_Is_Not_Empty) { ++Delay_Counter; delay (DELAY_DURATION); } }
Analysis of the wait and delay counter values indicates which process, producer or consumer, has had to wait most often and for how long. Four wait and delay counter relationships exist, as follows:
138
The data producer has substantially larger wait and delay counter values than the data consumer. The data consumer is unable to receive data fast enough to keep the data producer busy. Investigate means to improve the performance of the data consumer. For a backup, check if the data buffer size is appropriate for the tape or disk drive being used. If data consumer still has a substantially large value in this case, try increasing the number of shared data buffers to improve performance.
The data producer and the data consumer have very similar wait and delay counter values, but those values are relatively large. This situation may indicate that the data producer and data consumer regularly attempt to use the same shared data buffer. Try increasing the number of shared data buffers to improve performance. See Determining wait and delay counter values on page 139.
The data producer and the data consumer have very similar wait and delay counter values, but those values are relatively small. This situation indicates that there is a good balance between the data producer and data consumer. It should yield good performance from the NetBackup server component of the NetBackup data transfer path. The data producer has substantially smaller wait and delay counter values than the data consumer. The data producer is unable to deliver data fast enough to keep the data consumer busy. Investigate ways to improve the performance of the data producer. For a restore operation, check if the data buffer size is appropriate for the tape or disk drive. If the data producer still has a relatively large value in this case, try increasing the number of shared data buffers to improve performance. See How to change the number of shared data buffers on page 126.
Of primary concern is the relationship and the size of the values. Information on determining substantial versus trivial values appears on the following pages. The relationship of these values only provides a starting point in the analysis. Additional investigative work may be needed to positively identify the cause of a bottleneck within the NetBackup data transfer path.
139
Activate debug logging by creating these two directories on the media server: UNIX
/usr/openv/netbackup/logs/bpbkar /usr/openv/netbackup/logs/bptm
Windows
install_path\NetBackup\logs\bpbkar install_path\NetBackup\logs\bptm
140
Look at the log for the data producer (bpbkar on UNIX or bpbkar32 on Windows) process in: UNIX
/usr/openv/netbackup/logs/bpbkar
Windows
install_path\NetBackup\logs\bpbkar
The line should be similar to the following, with a timestamp corresponding to the completion time of the backup:
... waited 224 times for empty buffer, delayed 254 times
In this example the wait counter value is 224 and the delay counter value is 254.
Look at the log for the data consumer (bptm) process in: UNIX
/usr/openv/netbackup/logs/bptm
Windows
install_path\NetBackup\logs\bptm
The line should be similar to the following, with a timestamp corresponding to the completion time of the backup:
... waited for full buffer 1 times, delayed 22 times
In this example, the wait counter value is 1 and the delay counter value is 22.
141
To determine the wait and delay counter values for a remote client backup
Activate debug logging by creating this directory on the media server: UNIX
/usr/openv/netbackup/logs/bptm
Windows
install_path\NetBackup\logs\bptm
2 3
Execute your backup. Look at the log for the bptm process in: UNIX
/usr/openv/netbackup/logs/bptm
Windows
install_path\NetBackup\Logs\bptm
Delays that are associated with the data producer (bptm child) appear as follows:
... waited for empty buffer 22 times, delayed 151 times, ...
In this example, the wait counter value is 22 and the delay counter value is 151. Delays that are associated with the data consumer (bptm parent) appear as:
... waited for full buffer 12 times, delayed 69 times
In this example the wait counter value is 12, and the delay counter value is 69.
142
To determine the wait and delay counter values for a local client restore
Activate logging by creating the two directories on the NetBackup media server: UNIX
/usr/openv/netbackup/logs/bptm /usr/openv/netbackup/logs/tar
Windows
install_path\NetBackup\logs\bptm install_path\NetBackup\logs\tar
2 3
Execute your restore. Look at the log for the data consumer (tar or tar32) in the tar log directory. The line should be similar to the following, with a timestamp corresponding to the completion time of the restore:
... waited for full buffer 27 times, delayed 79 times
In this example, the wait counter value is 27, and the delay counter value is 79.
Look at the log for the data producer (bptm) in the bptm log directory. The line should be similar to the following, with a timestamp corresponding to the completion time of the restore:
... waited for empty buffer 1 times, delayed 68 times
In this example, the wait counter value is 1 and the delay counter value is 68.
143
To determine the wait and delay counter values for a remote client restore
Activate debug logging by creating the following directory on the media server: UNIX
/usr/openv/netbackup/logs/bptm
Windows
install_path\NetBackup\logs\bptm
2 3
Execute your restore. Look at the log for bptm in the bptm log directory. Delays that are associated with the data consumer (bptm child) appear as follows:
... waited for full buffer 36 times, delayed 139 times
In this example, the wait counter value is 36 and the delay counter value is 139. Delays that are associated with the data producer (bptm parent) appear as follows:
... waited for empty buffer 95 times, delayed 513 times
In this example the wait counter value is 95 and the delay counter value is 513.
144
145
Delay
58033
These values reveal that bpbkar (or bpbkar32) is forced to wait by a bptm process that cannot move data out of the shared buffer fast enough. Next, you can determine time lost due to delays by multiplying the delay counter value by the parent or child delay value, whichever applies. In this example, the bpbkar (or bpbkar32) process uses the child delay value, while the bptm process uses the parent delay value. (The defaults for these values are 10 for child delay and 15 for parent delay.) The values are specified in milliseconds. See Changing parent and child delay values on page 134. You can use the following equations to determine the amount of time lost due to these delays: Table 7-8 Process
bpbkar (UNIX) bpbkar32 (Windows)
bptm
Use these equations to determine if the delay for bpbkar (or bpbkar32) is significant. If this delay were removed, the resulting transfer time of 10:40 would indicate a throughput value of 14 MB per second, nearly a threefold increase. (10:40 = total transfer time of 30 minutes minus delay of 19 minutes and 20 seconds.) With this performance increase, you should investigate how the tape or disk performance can be improved. The number of delays should be interpreted within the context of how much data was moved. As the amount of moved data increases, the significance threshold for counter values increases as well. Again, for a total of 9,000 MB of data being transferred, assume a 64-KB buffer.
146
You can determine the total number of buffers to be transferred using the following equation:
Number_Kbytes = 9,000 X 1024 = 9,216,000 KB Number_Slots =9,216,000 / 64 =144,000
The wait counter value can now be expressed as a percentage of the total divided by the number of buffers transferred:
bpbkar (UNIX) bpbkar32 (Windows) bptm = 29364 / 144,000 = 20.39% = 95 / 144,000 = 0.07%
In the 20 percent of cases where bpbkar (or bpbkar32) needed an empty shared data buffer, bptm has not yet emptied the shared data buffer. A value of this size indicates a serious issue. You should investigate further as to why the data consumer (bptm) cannot keep up. In contrast, the delays that bptm encounters are insignificant for the amount of data transferred. You can also view the delay and wait counters as a ratio:
bpbkar (UNIX) bpbkar32 (Windows) = 58033/29364 = 1.98
In this example, on average bpbkar (or bpbkar32) had to delay twice for each wait condition that was encountered. If this ratio is large, increase the parent or child delay to avoid checking for a shared data buffer in the correct state too often. Conversely, if this ratio is close to 1, reduce the applicable delay value to check more often. which may increase your data throughput performance. Keep in mind that the parent and child delay values are rarely changed in most NetBackup installations. The preceding information explains how to determine if the values for wait and delay counters are substantial enough for concern. The wait and delay counters are related to the size of data transfer. A value of 1,000 may be extreme when only 1 megabyte of data is moved. The same value may indicate a well-tuned system
147
when gigabytes of data are moved. The final analysis must determine how these counters affect performance.
bptm-read waits The bptm debug log contains messages such as the following:
...waited for full buffer 1681 times, delayed 12296 times
The first number is the number of times bptm waited for a full buffer: in other words, how many times the bptm write operations waited for data from the source. If the wait counter indicates a performance issue, a change in the number of buffers does not help. See Determining wait and delay counter values on page 139. Multiplexing may help.
bptm-write waits The bptm debug log contains messages such as the following:
...waited for empty buffer 1883 times, delayed 14645 times
The first number is the number of times bptm waited for an empty buffer: the number of times bptm encountered data from the source faster than the data can be written to tape or disk. If the wait counter indicates a performance issue, reduce the multiplexing factor. See Determining wait and delay counter values on page 139. More buffers may help.
bptm delays The bptm debug log contains messages such as the following:
...waited for empty buffer 1883 times, delayed 14645 times
The second number is the number of times bptm waited for an available buffer. If the delay counter indicates a performance issue, investige. Each delay interval is 30 microseconds.
148
multiplied by the number of devices. The overall write speed, therefore, is the write speed of a single device divided by the number of devices. The write speed of a backup device is usually faster than the read speed of the source data. Therefore, switching to Inline Copy may not necessarily slow down the backup. The important figure is the write speed of the backup device: the native speed of the device multiplied by the compression ratio of the device hardware compression. For tape backups this compression ratio can be approximated by looking at how much data is held on a single tape (as reported by NetBackup). Compare that amount of data with the uncompressed capacity of a cartridge. For example: An LTO gen 3 cartridge has an uncompressed capacity of 400 GB. An LTO gen 3 drive has a native write capacity of 80 MB per second. If a full cartridge contains 600 GB, the compression ratio is 600/400 or 1.5:1. Thus, the write speed of the drive is 1.5 * 80 = 120 MB per second. If Inline copy to two LTO gen 3 drives is used, the overall write speed is 120/2 = 60 MB per second. If the backup normally runs at 45 MB per second (the read speed of the source data is 45 MB per second), Inline copy does not affect the backup speed. If the backup normally runs at 90 MB per second, Inline Copy reduces the speed of the backup to 60 MB per second. The performance limit is moved from the read operation to the write operation.
149
Larger fragment sizes usually favor backup performance, especially when backing up large amounts of data. Smaller fragments can slow down large backups. Each time a new fragment is created, the backup stream is interrupted. Larger fragment sizes do not hinder performance when restoring large amounts of data. But when restoring a few individual files, larger fragments may slow down the restore. Larger fragment sizes do not hinder performance when restoring from non-multiplexed backups. For multiplexed backups, larger fragments may slow down the restore. In multiplexed backups, blocks from several images can be mixed together within a single fragment. During restore, NetBackup positions to the nearest fragment and starts reading the data from there, until it comes to the desired file. Splitting multiplexed backups into smaller fragments can improve restore performance. During restores, newer, faster devices can handle large fragments well. Slower devices, especially if they do not use fast locate block positioning, restore individual files faster if fragment size is smaller. (In some cases, SCSI fast tape positioning can improve restore performance.)
Unless you have particular reasons for creating smaller fragments, larger fragment sizes are likely to yield better overall performance. For example, reasons for creating smaller fragments are the following: restoring a few individual files, restoring from multiplexed backups, or restoring from older equipment.
150
can set the maximum fragment size for the storage unit on the Storage Unit dialog in the NetBackup Administration Console (Reduce fragment size to).
151
To restore one of the 1 GB files, the restore positions to the TM. It then has to read all 4 GB to get the 1 GB file. If you set the maximum fragment size to 1 GB: TM <1 GB data> TM <1 GB data> TM <1 GB data> TM <1 GB data> TM this size does not help: the restore still has to read all four fragments to pull out the 1 GB of the file being restored. Example 2: This example is the same as Example 1, but assume that four streams back up 1 GB of /home or C:\. With the maximum fragment size (Reduce fragment size) set to a default of 1 TB (assuming that all streams are relatively the same performance), you again end up with: TM <4 GBs data> TM Restoring the following
/home/file1
or
C:\file1 /home/file2
or
C:\file2
from one of the streams, NetBackup must read as much of the 4 GB as necessary to restore all the data. But, if you set Reduce fragment size to 1 GB, the image looks like the following: TM <1 GB data> TM <1 GB data> TM <1 GB data> TM <1 GB data> TM In this case, home/file1 or C:\file1 starts in the second fragment. bptm positions to the second fragment to start the restore of home/file1 or C:\file1. (1 GB of reading is saved so far.) After /home/file1 is done, if /home/file2 or C:\file2 is in the third or forth fragment, the restore can position to the beginning of that fragment before it starts reading. These examples illustrate that whether fragmentation benefits a restore depends on the following: what the data is, what is being restored, and where in the image the data is. In Example 2, reducing the fragment size from 1 GB to half a GB (512 MB) increases the chance the restore can locate by skipping instead of reading, when restoring small amounts of an image.
152
NUMBER_DATA_BUFFERS_RESTORE setting
This parameter can help keep other NetBackup processes busy while a multiplexed tape is positioned during a restore. An increase in this value causes NetBackup buffers to occupy more physical RAM. This parameter only applies to multiplexed restores. See Shared memory (number and size of data buffers) on page 124.
153
Windows
install_directory\bin\admincmd\bpimage -create_image_list -client client_name
where client_name is the name of the client that has many small backups. In the following directory: UNIX
/usr/openv/netbackup/db/images/client_name
Windows
install_path\NetBackup\db\images\client_name
Do not edit these files. They contain offsets and byte counts that are used to find and read the image information. These files increase the size of the client directory.
154
where value is the number which provides the best performance for the system. This approach may have to be tried and tested: it may vary from system to system. A suggested starting value is 20. In any case, the value must not exceed 500ms, otherwise it may break TCP/IP. With the optimum value for the system, you can set the value permanently in a script under the following directory:
/etc/rc2.d
155
If MPX_RESTORE_DELAY is not high enough, NetBackup may need to mount and read the tape multiple times to collect all header information for the restore. Ideally, NetBackup would read a multiplexed tape and collect all the required header information with a single pass of the tape. A single pass minimizes the restore time.
156
Tuning the NetBackup data transfer path NetBackup storage device performance
Media positioning When a backup or restore is performed, the storage device must position the tape so that the data is over the read and write head. The positioning can take a significant amount of time. When you conduct performance analysis with media that contains multiple images, allow for the time lag that occurs before the data transfer starts. Tape streaming If a tape device is used at its most efficient speed, it is "streaming" the data onto the tape. If a tape device is streaming, the media rarely has to stop and restart. Instead, the media constantly spins within the tape drive. If the tape device is not used at its most efficient speed, it may continually start and stop the media from spinning. This behavior is the opposite of tape streaming and usually results in a poor data throughput. Data compression Most tape devices support some form of data compression within the tape device itself. Compressible data (such as text files) yields a higher data throughput rate than non-compressible data, if the tape device supports hardware data compression. Tape devices typically come with two performance rates: maximum throughput and nominal throughput. Maximum throughput is based on how fast compressible data can be written to the tape drive when hardware compression is enabled in the drive. Nominal throughput refers to rates achievable with non-compressible data. Note: NetBackup cannot set tape drive data compression. Follow the instructions that are provided with your OS and tape drive. In general, tape drive data compression is preferable to client (software) compression. Client compression may be desirable for reducing the amount of data that is transmitted across the network for a remote client backup.
Tuning the NetBackup data transfer path NetBackup storage device performance
157
158
Tuning the NetBackup data transfer path NetBackup storage device performance
Chapter
Multiplexing and multiple data streams Resource allocation Encryption Compression Using encryption and compression NetBackup Java Vault Fast recovery with Bare Metal Restore Backing up many small files Adjusting the read buffer for raw partition backup Adjusting the allocation size of the snapshot mount point volume for NetBackup for VMware NetBackup Operations Manager (NOM)
160
The multiple data streams feature writes multiple data streams, each to its own tape drive, unless multiplexing is used.
161
Figure 8-2 shows multiple data streams. Figure 8-2 Multiple data streams diagram
server
back up to tape
Experiment with different multiplexing factors to find the one that is minimally sufficient for streaming. Find a setting at which the writes are enough to fill the maximum bandwidth of your drive: that setting is the optimal multiplexing factor. If you get 5 MB per second from each of the read streams, use a multiplexing factor of two to get the maximum throughput to a DLT7000. (That is, 10 MB per second.) Use a higher multiplexing factor for incremental backups. Use a lower multiplexing factor for local backups. Expect the duplication of a multiplexed tape to take longer if it is demultiplexed (unless "Preserve Multiplexing" is specified on the duplication). Without "Preserve Multiplexing," the duplication may take longer because multiple read passes of the source tape must be made. Using "Preserve Multiplexing," however, may affect the restore time (see next bullet). When you duplicate a multiplexed backup, demultiplex it. By demultiplexing the backups when they are duplicated, the time for recovery is significantly reduced.
Do not use multiple data streams on single mount points. The multiple data streams feature takes advantage of the ability to stream data from several devices at the same time. Streaming from several devices permits backups to take advantage of Read Ahead on a spindle or set of spindles in RAID environments. The use of multiple data streams from a single mount point encourages head thrashing and may result in degraded performance.
162
Only conduct multistreamed backups against single mount points if they are mirrored (RAID 0). However, degraded performance is a likely result.
Multiplexing To use multiplexing effectively, you must understand the implications of multiplexing on restore times. Multiplexing may decrease backup time for large numbers of clients over slow networks, but it does so at the cost of recovery time. Restores from multiplexed tapes must pass over all non-applicable data. This action increases restore times. When recovery is required, demultiplexing causes delays in the restore: NetBackup must search the tape to accomplish the restore. Restores should be tested to determine the impact of multiplexing on restore performance. Also, a smaller maximum fragment size when multiplexing may help restore performance. See Fragment size and NetBackup restores on page 148. When you initially set up a new environment, keep the multiplexing factor low. A multiplexing factor of four or less does not highly affect the speed of restores, depending on the type of drive or system. If the backups do not finish within their assigned window, multiplexing can be increased to meet the window. However, a higher multiplexing factor provides diminishing returns as the number of multiplexing clients increases. The optimum multiplexing factor is the number of clients that are needed to keep the buffers full for a single tape drive. Set the multiplexing factor to four and do not multistream. Run benchmarks in this environment. Then you can begin to change the values until both the backup and restore window parameters are met. Multiple data streams The NEW_STREAM directive is useful for fine-tuning streams so that no disk subsystem is under-utilized or over-utilized.
Resource allocation
The following adjustments can be made to improve resource allocation.
163
In certain situations, nbrb may take too long to process jobs that are waiting for drives. This delay may occur when many jobs are queued for resources and the jobs are completing faster than nbrb can re-use the released resources for new jobs. The following configuration file contains parameters that may improve nbrb performance in this situation. UNIX: /usr/openv/var/global/nbrb.conf Windows: install_path\Veritas\NetBackup\var\global\nbrb.conf The following parameters can be configured:
The following table describes the nbrb.conf parameters. Table 8-1 Parameter nbrb.conf parameters Description
SECONDS_FOR_EVAL_LOOP_RELEASE In NetBackup 6.5.2 and 6.5.3, the default value is 0. In NetBackup 6.5.4, the default value is 180. If the value is 0, nbrb reverts to normal default behavior, evaluating all queued job requests before releasing any drives that have been released by completing jobs. When set to a nonzero value, SECONDS_FOR_EVAL_LOOP_RELEASE sets the time interval after which nbrb breaks into its evaluation cycle. After the specified interval, nbrb releases drives that have been given up by completed jobs, making them available for use by other jobs.
164
RESPECT_REQUEST_PRIORITY
DO_INTERMITTENT_UNLOADS
In NetBackup 6.5.2 and 6.5.3, the default value is 0. In NetBackup 6.5.4, the default value is 1. This option only has effect if SECONDS_FOR_EVAL_LOOP_RELEASE is set to a nonzero value. If DO_INTERMITTENT_UNLOADS is set to 1: when resources are released after the SECONDS_FOR_EVAL_LOOP_RELEASE interval, nbrb initiates unloads of drives that have exceeded the media unload delay. Drives become available more quickly to jobs that require different media servers or different media than the job that last used the drive. However, the loaded media/drive pair may not be available for jobs further down in the prioritized evaluation queue that could use the drive/media without unload.
165
If nbrb.conf does not exist or parameters are not set in the file, the parameters assume their default values as described in the table. The addition or modification of the nbrb.conf file does not require stopping and restarting NetBackup processes. The processes read nbrb.conf at the start of every evaluation cycle, and changes of any type are implemented at that time.
Sharing reservations
Before NetBackup 6.5.4, for image duplication or synthetic backup, NetBackup reserves all the required source (read) media exclusively. No other job can use the media while it is reserved, even if the job needs the media for read only (such as for restore, bpimport, or verify). If two or more duplication or synthetic jobs that require a common set of source media are started at the same time, one job starts and the other job waits until the first job terminates. To improve performance, NetBackup 6.5.x allows shared reservations. (Starting in 6.5.4, NetBackup shares reservations by default.) With shared reservations, multiple jobs can reserve the same media, though only one job can use it at a time. In other words, the second job does not have to wait for the first job to terminate. The second job can access the media as soon as the first job is done with it. To enable the sharing of reservations
On Windows
install_path\Veritas\NetBackup\db\config\RB_USE_SHARED_RESERVATIONS
Many duplication jobs are running (using a storage lifecycle policy, or Vault, or bpduplicate), and Many read media are shared between different duplication jobs
166
In this case, without shared reservations, one job runs and other jobs requiring the same media are queued because they cannot get a reservation. With shared reservations, the jobs can start simultaneously. However, with a limited set of resources (media/drive pair or disk drives), resources may bounce or "ping-pong" between different jobs as each job requests the resource. For example, assume the following: Two duplication jobs, job 1 and job 2, are duplicating backup images. Job 1 is duplicating images 1 through 5, and job 2 is duplicating images 6 through 9. The images are on the following media: Table 8-2 Media required by jobs 1 and 2 Media used by job 2
Image 6 is on media A2 Image 7 is on media A2 Image 8 is on media A2 Image 9 is on media A3
In this example, both jobs require access to media A2. Without shared reservations, if job 1 gets the reservation first, job 2 cannot start, because it needs to reserve media A2. A2 is already reserved by job 1. With shared reservations, both jobs can start at the same time. Assume, however, that only a few drives are available for writing. Also assume that job 1 begins first and starts duplicating image 1. Then job 2 starts using media A2 to duplicate image 6. Media A2 in effect bounces between the two jobs: sometimes it is used by job 1 and sometimes by job 2. As a result, the overall performance of both jobs may degrade. In NetBackup 6.5.4 and later, you can use the following procedure to disable the sharing of reservations. To disable the sharing of reservations
On Windows
install_path\Veritas\NetBackup\db\config\RB_DO_NOT_USE_SHARED_RESERVATIONS
167
Determines master-media connectivity Determines if any allocations are pending or if bptm is hung
In certain cases, it may be advantageous to monitor these resources less often. If you have many media servers, bptm -rptdrv can take CPU cycles from nbrb and nbjm. Also, starting bptm -rptdrv on the media server and reporting on the data requires network bandwidth. bptm -rptdrv also causes a lot of activity on the EMM server. To adjust the resource monitoring interval
In the bp.conf file on the NetBackup master server, set the following option:
RESOURCE_MONITOR_INTERVAL = number_of_seconds
The allowed values are from 600 to 3600 seconds (10 minutes to 1 hour).
On Windows
install_path\Veritas\NetBackup\db\config\RB_DISABLE_REAL_UNLOADS_ON _DEMAND
168
Encryption
When the NetBackup client encryption option is enabled, your backups may run slower. How much slower depends on the throttle point in your backup path. If the network is the issue, encryption should not hinder performance. If the network is not the issue, then encryption may slow down the backup. If you multi-stream encrypted backups on a client with multiple CPUs, try to define one fewer stream than the number of CPUs. For example, if the client has four CPUs, define three or fewer streams for the backup. This approach can minimize CPU contention.
Compression
Two types of compression can be used with NetBackup, client compression (configured in the NetBackup policy) and tape drive compression (handled by the device hardware).
169
The decision to use data compression should be based on the compressibility of the data itself. Note the following levels of compressibility, in descending order:
Plain text Usually the most compressible type of data. Executable code May compress somewhat, but not as much as plain text. Already compressed data Often, no further compression is possible. Encrypted data May expand in size if compression is applied. See Using encryption and compression on page 170.
Tape drive compression is almost always preferable to client compression. Compression is CPU intensive, and tape drives have built-in hardware to perform compression. Avoid using both tape compression and client compression Compressing data that is already compressed can increase the amount of backed up data. Only in rare cases is it beneficial to use client (software) compression Those cases usually include the following characteristics:
The client data is highly compressible. The client has abundant CPU resources.
You need to minimize the data that is sent across the network between the client and server. In other cases, however, NetBackup client compression should be turned off, and the hardware should handle the compression.
Client compression reduces the amount of data that is sent over the network, but increases CPU usage on the client. On UNIX, the NetBackup client configuration setting MEGABYTES_OF_MEMORY may help client performance. This option sets the amount of memory available for compression. Do not compress files that are already compressed. If the data is compressed twice, refer to the NetBackup configuration option COMPRESS_SUFFIX. You can use this option to exclude files with certain suffixes from compression. Edit this setting through bpsetconfig. See the NetBackup Administrators Guide, Volume II.
170
NetBackup Java
For performance improvement, refer to the following sections in the NetBackup Administrators Guide for UNIX and Linux, Volume I: "Configuring the NetBackup-Java Administration Console," and the subsection "NetBackup-Java Performance Improvement Hints." In addition, the NetBackup Release Notes may contain information about NetBackup Java performance.
Vault
Refer to the "Best Practices" chapter of the NetBackup Vault Administrators Guide.
171
Use the FlashBackup (or FlashBackup-Windows) policy type. FlashBackup is a feature of NetBackup Snapshot Client. FlashBackup is described in the NetBackup Snapshot Client Administrators Guide. See Notes on FlashBackup performance on page 171. On Windows, make sure virus scans are turned off (turning off scans may double performance). Snap a mirror (such as with the FlashSnap method in Snapshot Client) and back that up as a raw partition Unlike FlashBackup, this type of backup does not allow individual file restore.
Turn off or reduce logging. The NetBackup logging facility has the potential to affect the performance of backup and recovery processing. Logging is usually enabled temporarily, to troubleshoot a NetBackup problem. The amount of logging and its verbosity level can affect performance. Make sure the NetBackup buffer size is the same size on both the servers and clients. Consider upgrading NIC drivers as new releases appear. Run the following bpbkar throughput test on the client with Windows.
C:\Veritas\Netbackup\bin\bpbkar32 -nocont > NUL 2>
For example:
C:\Veritas\Netbackup\bin\bpbkar32 -nocont c:\ > NUL 2> temp.f
When initially configuring the Windows server, optimize TCP/IP throughput as opposed to shared file access. Always boost background performance on Windows versus foreground performance. Turn off NetBackup Client Job Tracker if the client is a system server. Regularly review the patch announcements for every server OS. Install patches that affect TCP/IP functions, such as correcting out-of-sequence delivery of packets.
172
The location of the data to be read The size of the data to be read relative to the size of the read buffer The read characteristics of the storage device and the I/O stack.
173
To adjust the FlashBackup read buffer for UNIX and Linux clients
Enter the values in the FBU_READBLKS file, as follows. On the first line of the file: enter an integer value for the read buffer size in blocks for full backups and/or for incremental backups. The defaults are 256 blocks (131072 bytes, or 128 KB) during full backups and 64 blocks (32768 bytes, or 32 KB) for incremental backups. The block size is equal to (KB size * 2), or (Number of bytes/512). To change both values, separate them with a space. For example:
512 128
This entry sets the full backup read buffer to 256 KB and the incremental read buffer to 64 KB. You can use the second line of the file to set the tape record write size, also in blocks. The default is the same size as the read buffer. The first entry on the second line sets the full backup write buffer size. The second value sets the incremental backup write buffer size. To set read buffer size and tape record write size to the same values, the file would read altogether as:
512 128 512 128
To adjust the FlashBackup-Windows read buffer for Windows clients (NetBackup 6.5.4)
Click Host Properties > Clients, right-click on the client and select Properties. Click Windows Client > Client Settings.
For Raw partition read buffer size, specify the size of the read buffer. A read buffer size larger than the 32 KB default may increase backup speed. Results vary from one system to another; experimentation may be required. A setting of 1024 may be a good starting point. Note the following:
This setting applies to raw partition backups as well as to FlashBackup-Windows policies (including NetBackup for VMware). This setting applies to full backups and to incremental backups.
174
Tuning other NetBackup components Adjusting the read buffer for raw partition backup
Adjusting the allocation size of the snapshot mount point volume for NetBackup for VMware
This topic applies to NetBackup 6.5.4. To increase the speed of full virtual machine backups, try increasing the file system allocation size of the volume that is used as the snapshot mount point on the VMware backup proxy server. A larger allocation size, for instance 64 KB, may result in faster backups. Results can vary from one system to another; experimentation may be required. For further information on the snapshot mount point and the VMware backup proxy server, refer to the NetBackup for VMware Administrator's Guide. For a different tuning suggestion for NetBackup for VMware, see the following: See Adjusting the read buffer for FlashBackup and FlashBackup-Windows on page 172.
1 2
Open the /opt/VRTSnom/bin/nomsrvctl file. To increase the heap size to 2048 MB, edit the the MAX_HEAP parameter as follows:
MAX_HEAP=-Xmx2048m
175
3 4
Save the nomsrvctl file. Stop and restart the NOM processes, as follows:
/opt/VRTSnom/bin/NOMAdmin -stop_service /opt/VRTSnom/bin/NOMAdmin -start_service
To increase the NOM server heap size from 512 MB to 2048 MB on Windows servers
Increase the JVM Option Number 0 value. For example, enter -Xmx2048m to increase the heap size to 2048 MB.
Run the webgui command to change the heap size. To change the heap size to 512 MB, run the following:
/opt/VRTSweb/bin/webgui maxheap 512
176
177
To set the cache size using the -c server option on Solaris servers
Open the /opt/VRTSnom/var/global/nomserver.conf file and change the value of the -c option. For example, you can increase the Sybase cache size to 512 MB by changing the nomserver.conf file content. The following:
-n NOM_nom-sol6 -x tcpip(BROADCASTLISTENER=0;DOBROADCAST=NO;ServerPort=13786;) -gp 8192 -ct+ -gd DBA -gk DBA -gl DBA -ti 60 -c 25M -ch 500M -cl 25M -ud -m
This example replaced -c 25M -ch 500M -cl 25M with -c 512M -cs in the nomserver.conf file to increase the cache size to 512 MB. In the same manner, to increase the cache size to 1 GB, replace -c 25M -ch 500M -cl 25M with -c 1G -cs. The -ch and -cl server options are used to set the maximum and the minimum cache size respectively. The -cs option logs the cache size changes for the database server.
2 3
Save the nomserver.conf file. Stop and restart the NOM processes, as follows:
/opt/VRTSnom/bin/NOMAdmin -stop_service /opt/VRTSnom/bin/NOMAdmin -start_service
The logs for the cache size changes are stored in:
/opt/VRTSnom/logs/nomdbsrv.log.
178
To set the cache size using the -c server option on Windows servers
Open the install_path\db\conf\server.conf file. For example, to increase the cache size to 512 MB, add -c 512M -cs to the content of server.conf file:
-n NOM_PUNENOM -x tcpip(BROADCASTLISTENER=0;DOBROADCAST=NO;ServerPort=13786) -o "install_path\db\log\server.log" -m
should be changed to
-n NOM_PUNENOM -x tcpip(BROADCASTLISTENER=0;DOBROADCAST=NO;ServerPort=13786) -o "install_path\db\log\server.log" -c 512M -cs -m
The -cs option logs the cache size changes for the database server. In the same manner, to increase the cache size to 1 GB, you should add -c 1G -cs to the content of the server.conf file.
The logs for the cache size changes are stored in install_path\db\log\server.log.
179
Open the databases.conf file with a text editor from the following directory:
install_path\NetBackup Operations Manager\db\conf
To move the database to a different location such as E:\Database on a different hard disk, replace the contents of the file with the following:
"E:\Database\vxpmdb.db"
Make sure that you specify the path in double quotes. The directories in the specified path should not contain any special characters such as %, ~, !, @, $, &, >, # etc. For example, do not specify a path such as E:\Database%.
4 5
Save the databases.conf file. Copy the database files to the new location. Copy vxpmdb.db and vxam.db from install_path\NetBackup Operations Manager\db\data to the new location, such as E:\Database. Note: You must move both vxam.db and vxpmdb.db to the new location.
The default location of the NOM database on Solaris is /opt/VRTSnom/db/data. To move the database to a different location such as /usr/mydata, enter the following command:
mv /opt/VRTSnom/db/data /usr/mydata
180
where directory_path is the path where you want to store the database logs and database_path is the path where your database is located. This command moves the log file associated with the NOM primary database to the new directory (directory_path). It is recommended to use vxpmdb.log or vxam.log as the name of the log file.
181
where directory_path is the path where you want to store your database log file and database_path is the path where the NOM database is located. This command moves the log file associated with the NOM primary database to the new directory (directory_path). It is recommended to use vxpmdb.log or vxam.log as the name of the log file.
182
Solaris:
/opt/VRTSnom/bin/NOMAdmin
Chapter
Hardware selection Hardware performance hierarchy Hardware configuration examples Tuning software for better performance
Hardware selection
The critical factors in performance are not software-based. The critical factors are hardware selection and configuration. Hardware has roughly four times the weight that software has in determining performance.
184
Figure 9-1
Host
Memory Level 5 PCI bridge PCI bus Level 4 PCI card 1 PCI card 2 PCI card 3 PCI bus PCI bridge PCI bus
Level 3
Fibre Channel
Fibre Channel
Array 1 RAID controller Level 2 Shelf Shelf adaptor Shelf Shelf adaptor
Level 1
Drives
Drives
Drives
Drives
Performance hierarchy levels are described in later sections of this chapter. In general, all data that goes to or comes from disk must pass through host memory. Figure 9-2 includes a dashed line that shows the path that the data takes through a media server.
185
Figure 9-2
Host Level 5 Level 4
Level 3
The data moves up through the ethernet PCI card at the far right. The card sends the data across the PCI bus and through the PCI bridge into host memory. NetBackup then writes this data to the appropriate location. In a disk example, the data passes through one or more PCI bridges. It then passes over one or more PCI buses, through one or more PCI cards, across one or more Fibre Channels, and so on. Sending data through more than one PCI card increases bandwidth by breaking up the data into large chunks. It also sends a group of chunks at the same time to multiple destinations. For example, a write of 1 MB can be split into 2 chunks that go to 2 different arrays at the same time. If the path to each array is x bandwidth, the aggregate bandwidth is approximately 2x. Each level in the Performance Hierarchy diagram represents the transitions over which data flows. These transitions have bandwidth limits. Between each level there are elements that can affect performance as well.
186
Figure 9-3
Shelf Shelf adaptor Level 1
Drives
Drives
Drives
Drives
Level 1 bandwidth potential is determined by the technology used. For FC-AL, the arbitrated loop can be either 1 gigabit or 2-gigabit Fibre Channel. An arbitrated loop is a shared-access topology, which means that only 2 entities on the loop can communicate at one time. For example, one disk drive and the shelf adaptor can communicate. So even though a single disk drive might be capable of 2-gigabit bursts of data transfers, the bandwidth does not aggregate. That is, multiple drives cannot communicate with the shelf adaptor at the same time, resulting in multiples of the individual drive bandwidth.
Larger disk arrays have more than one internal FC-AL. Shelves may even support 2 FC-AL, so that two paths exist between the RAID controller and every shelf, which provides for redundancy and load balancing.
187
Array
Array
This diagram shows a single point-to-point connection between an array and the host. A real-world scenario typically includes a SAN fabric (with one or more Fibre Channel switches). The logical result is the same, in that either is a data path between the array and the host. When these paths are not arbitrated loops (for example, if they are fabric Fibre Channel), they do not have the shared-access topology limitations. That is, two arrays may be connected to a Fibre Channel switch and the host may have a single Fibre Channel connection to the switch. The arrays can then communicate at the same time (the switch coordinates with the host Fibre Channel connection). However, this arrangement does not aggregate bandwidth, since the host is still limited to a single Fibre Channel connection. Fibre Channel is generally 1 or 2 gigabit (both arbitrated loop and fabric topology). Faster speeds are available. A general rule-of-thumb when considering protocol overhead is to divide the gigabit rate by 10 to get an approximate megabyte-per-second bandwidth. So, 1-gigabit Fibre Channel can theoretically achieve approximately 100 MB per second. 2-gigabit Fibre Channel can theoretically achieve approximately 200 MB per second. Fibre Channel is also similar to traditional LANs, in that a given interface can support multiple connection rates. That is, a 2-gigabit Fibre Channel port can also connect to devices that only support 1 gigabit.
188
Figure 9-6 shows the performance hierarchy level 4. Figure 9-6 Performance hierarchy level 4
PCI bridge PCI bus Level 4 PCI card 1 PCI card 2 PCI card 3 PCI bus PCI bridge PCI bus
A typical host supports 2 or more PCI buses, with each bus supporting 1 or more PCI cards. A bus has a topology similar to FC-AL: only 2 endpoints can communicate at the same time. That is, if 4 cards are in a PCI bus, only one of them can communicate with the host at a given instant. Multiple PCI buses are implemented to allow multiple data paths to communicate at the same time, for aggregate bandwidth gains. PCI buses have 2 key factors involved in bandwidth potential: the width of the bus - 32 bits or 64 bits, and the clock or cycle time of the bus (in Mhz). As a rule of thumb, a 32-bit bus can transfer 4 bytes per clock and a 64-bit bus can transfer 8 bytes per clock. Most modern PCI buses support both 64-bit and 32-bit cards. PCI buses are available in the following clock rates:
33 Mhz 66 Mhz 100 Mhz (sometimes referred to as PCI-X) 133 Mhz (sometimes referred to as PCI-X)
PCI cards also come in different clock rate capabilities. Backward compatibility is very common; for example, a bus that is rated at 100 Mhz supports 100, 66, and 33 Mhz cards. Likewise, a 64-bit bus supports both 32-bit and 64-bit cards. PCI buses can also be mixed. For example, a 100-Mhz 64-bit bus can support any mix of clock and width that are at or below those values.
189
Note: In a shared-access topology, a slow card can retard the performance of other fast cards on the same bus: the bus adjusts to the right clock and width for each transfer. One moment it can do a 100 Mhz 64 bit transfer to card #2. At another moment it can do a 33 Mhz 32 bit to card #3. Since the transfer to card #3 is much slower, it takes longer to complete. The time that is lost may otherwise have been used for moving data faster with card #2. A PCI bus is unidirectional: when it conducts a transfer in one direction, it cannot move data in the other direction, even from another card. Real-world bandwidth is generally around 80% of the theoretical maximum (clock * width). Following are rough estimates for bandwidths that can be expected: 64 bit/ 33 Mhz = approximately 200 MB per second 64 bit/ 66 Mhz = approximately 400 MB per second 64 bit/100 Mhz = approximately 600 MB per second 64 bit/133 Mhz = approximately 800 MB per second
A drive has sequential access bandwidth and average latency times for seek and rotational delays. Drives perform optimally when doing sequential I/O to disk. Non-sequential I/O forces movement of the disk head (that is, seek and rotational latency). This movement is a huge overhead compared to the amount of data transferred. The more non-sequential I/O done, the slower it becomes.
190
Simultaneously reading or writing more than one stream results in a mix of short bursts of sequential I/O with seek and rotational latency in between. This situation significantly degrades overall throughput. Different drive types have different seek and rotational latency specifications. Therefore, the type of drive has a large effect on the amount of degradation. From best to worst, such drives are Fibre Channel, SCSI, and SATA, with SATA drives usually twice the latency of Fibre Channel. However, SATA drives have about 80% of the sequential performance of Fibre Channel drives.
A RAID controller has cache memory of varying sizes. The controller also does the parity calculations for RAID-5. Better controllers have this calculation (called "XOR") in hardware, which makes it faster. If there is no hardware-assisted calculation, the controller processor must perform it, and controller processors are not usually high performance. A PCI card can be limited either by the speed of the port(s) or the clock rate to the PCI bus. A PCI bridge is usually not an issue because it is sized to handle whatever PCI buses are attached to it.
Memory can be a limit if there is intensive non-I/O activity in the system. Note that no CPUs exist for the host processor(s) in the Performance hierarchy diagram. See Figure 9-1 on page 184. While CPU performance contributes to all performance, it is not the bottleneck in most modern systems for I/O intensive workloads: very little work is done at that level. The CPU must execute a read operation and a write operation, but those operations do not take up much bandwidth. An exception is when older gigabit ethernet card(s) are involved, because the CPU has to do more of the overhead of network transfers.
191
For maximum performance, the card must be plugged into at least a 66 Mhz PCI slot. No other cards on that bus should need to transfer data at the same time. That single card saturates the PCI bus. Do not expect 2 cards (4 ports total) on the same bus to aggregate to 800 MB per second, unless the bus and cards are 133 Mhz.
Example 2 The next example shows a pyramid of bandwidth potentials with aggregation capabilities at some points. Suppose you have the following hardware:
1x 66 Mhz quad 1-gigabit ethernet 4x 66 Mhz 2-gigabit Fibre Channel 4x disk array with 1-gigabit Fibre Channel port 1x Sun V880 server (2x 33 Mhz PCI buses and 1x 66 Mhz PCI bus)
In this case, the following is one way to assemble the hardware so that no constraints limit throughput:
The quad 1-gigabit ethernet card can do approximately 400 MB per second throughput at 66 Mhz. It requires at least a 66 Mhz bus. A 33 Mhz bus would limit throughput to approximately 200 MB per second. It completely saturates the 66 Mhz bus. Do not put any other cards on that bus that need significant I/O at the same time.
Since the disk arrays have only 1-gigabit Fibre Channel ports, the Fibre Channel cards degrade to 1 gigabit each. Note the following:
Each card can therefore move approximately 100 MB per second. With four cards, the total is approximately 400 MB per second. However, you do not have a single PCI bus that can support 400 MB per second. The 66-Mhz bus is already taken by an ethernet card. Two 33-Mhz buses can each support approximately 200 MB per second. Therefore, you can put 2 of the Fibre Channel cards on each of the 2 buses.
This configuration can move approximately 400 MB per second for backup or restore. Real-world results of a configuration like this show approximately 350 MB per second.
192
Level 3 Fibre Channel Array 1 RAID controller Level 2 Shelf Shelf adaptor Level 1 Shelf Shelf adaptor Fibre Channel Array 2 RAID controller Tape, Ethernet, or another non-disk device
Drives
Drives
Each array has a single shelf. Each shelf in the disk array has 9 drives because it uses a RAID 5 group of 8 + 1. That is, 8 data disks + 1 parity disk. The RAID controller in the array uses a stripe unit size when performing I/O to these drives. Suppose that you know the stripe unit size to be 64KB. This
193
stripe unit size means that when writing a full stripe (8 + 1), it writes 64 KB to each drive. The amount of non-parity data is 8 * 64 KB, or 512 KB. So, internal to the array, the optimal I/O size is 512 KB. This size means that crossing Level 3 to the host PCI card should perform I/O at 512 KB.
The diagram shows two separate RAID arrays on two separate PCI buses. You want both to perform I/O transfers at the same time. If each is optimal at 512 KB, the two arrays together are optimal at 1 MB. You can implement software RAID-0 to make the two independent arrays look like one logical device. RAID-0 is a plain stripe with no parity. Parity protects against drive failure, and this configuration already has RAID-5 parity to protect the drives inside the array. The software RAID-0 is configured for a stripe unit size of 512 KB (the I/O size of each unit). It is also configured for a stripe width of 2 (1 for each of the arrays). 1 MB is the optimum I/O size for the volume (the RAID-0 entity on the host). A size of 1MB is used throughout the rest of the I/O stack. If possible, configure the file system that is mounted over the volume for 1 MB. The application that performs I/O to the file system also uses an I/O size of 1 MB. In NetBackup, I/O sizes are set in the configuration touch file:
.../db/config/SIZE_DATA_BUFFERS_DISK.
See How to change the size of shared data buffers on page 128.
194
Chapter
10
Kernel tuning (UNIX) Kernel parameters on Solaris 8 and 9 Kernel parameters on Solaris 10 Message queue and shared memory parameters on HP-UX Changing kernel parameters on Linux About data buffer size (Windows) Adjusting data buffer size (Windows) Other Windows issues
196
The parameters in this section show minimum settings for a system that is dedicated to NetBackup software. Note: The parameters that are described in this section can be used on Solaris 8, 9, and 10. However, many of the following parameters are obsolete in Solaris 10. See Kernel parameters on Solaris 10 on page 198. Following are brief definitions of the message queue, semaphore, and shared memory parameters. The parameter definitions apply to a Solaris system. The values for the following parameters can be set in the file /etc/system:
Message queues set msgsys:msginfo_msgmax = maximum message size set msgsys:msginfo_msgmnb = maximum length of a message queue in bytes. The length of the message queue is the sum of the lengths of all the messages in the queue. set msgsys:msginfo_msgmni = number of message queue identifiers set msgsys:msginfo_msgtql = maximum number of outstanding messages system-wide that are waiting to be read across all message queues. Semaphores set semsys:seminfo_semmap = number of entries in semaphore map set semsys:seminfo_semmni = maximum number of semaphore identifiers system-wide set semsys:seminfo_semmns = number of semaphores system-wide set semsys:seminfo_semmnu = maximum number of undo structures in system set semsys:seminfo_semmsl = maximum number of semaphores per ID set semsys:seminfo_semopm = maximum number of operations per semop call set semsys:seminfo_semume = maximum number of undo entries per process Shared memory set shmsys:shminfo_shmmin = minimum shared memory segment size set shmsys:shminfo_shmmax = maximum shared memory segment size set shmsys:shminfo_shmseg = maximum number of shared memory segments that can be attached to a given process at one time set shmsys:shminfo_shmmni = maximum number of shared memory identifiers that the system supports
The ipcs -a command displays system resources and their allocation. It is a useful command when a process is hung or asleep, to see if the process has available resources.
197
198
Socket Parameters on Solaris 8 and 9 The TCP_TIME_WAIT_INTERVAL parameter sets the amount of time to wait after a TCP socket is closed before it can be used again. This parameter sets the time that a TCP connection remains in the kernel's table after the connection has been closed. The default value for most systems is 240000 milliseconds, which is 4 minutes (240 seconds). If your server is slow because it handles many connections, check the current value for TCP_TIME_WAIT_INTERVAL and consider reducing it to 10000 (10 seconds). You can use the following command:
ndd -get /dev/tcp tcp_time_wait_interval
Force load parameters on Solaris 8 and 9 When system memory gets low, Solaris unloads unused drivers from memory and reloads drivers as needed. Tape drivers are a frequent candidate for unloading, since they tend to be less heavily used than disk drivers. Based on the timing of these unload and reload events for the st (Sun), sg (Symantec), and Fibre Channel drivers, various issues may result. These issues can range from devices "disappearing" from a SCSI bus to system panics. Symantec recommends adding the following "forceload" statements to the /etc/system file. These statements prevent the st drivers and sg drivers from being unloaded from memory: forceload: dev/st forceload: dev/sg Other statements may be necessary for various Fibre Channel drivers, such as the following example for JNI: forceload: dev/fcaw
199
The following sections of the Solaris Tunable Parameters Reference Manual may be of particular interest:
Whats New in Solaris System Tuning in the Solaris 10 Release? System V Message Queues System V Semaphores System V Shared Memory
Disabling tcp_fusion
Symantec recommends that tcp_fusion be disabled. With tcp_fusion enabled, NetBackup performance may be degraded and processes such as bptm may pause intermittently. Use one of the following methods to disable tcp_fusion. The first procedure does not require a system restart. Note however that tcp_fusion is re-enabled at the next restart. You must follow these steps each time the system is restarted. The second procedure is simpler but requires the system to be restarted. Caution: System operation could be disrupted if you do not follow the procedure carefully. To use the modular debugger (mdb)
When no backup or restore jobs are active, run the following command:
echo 'do_tcp_fusion/W 0' | mdb -kw
200
OS-related tuning factors Message queue and shared memory parameters on HP-UX
OS-related tuning factors Message queue and shared memory parameters on HP-UX
201
Note on shmmax
Note the following: shmmax = NetBackup shared memory allocation = (SIZE_DATA_BUFFERS * NUMBER_DATA_BUFFERS) * number of drives * MPX per drive More information is available on SIZE_DATA_BUFFERS and NUMBER_DATA_BUFFERS. See Recommended shared memory settings on page 132.
202
1 2 3
From SAM, select Kernel Configuration > Configurable Parameters. Find the parameter to change and select Actions > Modify Configurable Parameter. Key in the new value. Repeat these steps for all the parameters you want to change.
When all the values have been changed, select Actions > Process New Kernel. A warning states that a restart is required to move the values into place.
After the restart, the sysdef command can be used to confirm that the correct value is in place. Caution: any changes to the kernel require a restart, to move the new kernel into place. Do not make changes to the parameters unless a system restart can be performed. Otherwise, the changes are not saved.
Rebuild the kernel (make changes to st_options.h) Or add a resize parameter to the startup of Linux. An example for a grub.conf entry is the following:
title Red Hat Linux (2.4.18-24.7.x) root (hd0,0) kernel /vmlinuz-2.4.18-24.7.x ro root=/dev/hda2
203
For further information on setting restart options for st, see the following: /usr/src/linux*/drivers/scsi/README.st, subsection BOOT TIME.
Windows includes enhanced scatter/gather list support for very large SCSI I/O transfers. Windows supports up to 256 scatter/gather segments of 4096 bytes each, for transfers up to 1048576 bytes. Note: The OEMSETUP.INF file has been updated to automatically update the registry to support 65 scatter/gather segments. Normally, no additional changes are necessary: this setting typically results in the best overall performance.
204
1 2
Click Start > Run and open the REGEDT32 program. Select HKEY_LOCAL_MACHINE and follow the tree structure down to the HBA driver as follows: HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Services > HBA_driver > Parameters > Device For QLogic, the HBA_driver is Ql2200. The main definition is the so-called SGList (scatter/gather list). This parameter sets the number of pages that can be either scattered or gathered (that is, read or written) in one DMA transfer. For the QLA2200, you set the parameter MaximumSGList to 0xFF (or to 0x40 for 256Kb) and can then set 256Kb buffer sizes for NetBackup. Use extreme caution when you modify this registry value. The vendor of the SCSI or Fiber card should always be contacted first to ascertain the maximum value that a particular card can support. The same should be possible for other HBAs, especially fiber cards. The default for JNI fiber cards using driver version 1.16 is 0x80 (512 Kb or 128 pages). The default for the Emulex LP8000 is 0x81 (513 Kb or 129 pages). For this approach to work, the HBA has to install its own SCSI miniport driver. If it does not, transfers are limited to 64 KB, for legacy cards such as old SCSI cards. In conclusion, the built-in limit on Windows is 1024 KB, unless you use the default Microsoft miniport driver for legacy cards. The limitations are all to do with the HBA drivers and the limits of the physical devices that are attached to them. For example, Quantum DLT7000 drives work best with 128 KB buffers and StorageTek 9840 drives with 256 KB buffers. If these values are increased too far, damage can result. The HBA or the tape drives or any devices in between (such as fiber bridges and switches) can be damaged.
3 4
Double click MaximumSGList:REG_DWORD:0x21 Enter a value from 16 to 255 (0x10 hex to 0xFF). A value of 255 (0xFF) enables the maximum 1 MB transfer size. A value higher than 255 reverts to the default of 64 KB transfers. The default value is 33 (0x21).
5 6
Click OK. Exit the Registry Editor, then turn off and restart the system.
205
In the Backup, Archive, and Restore interface, on the NetBackup Client Properties dialog, General tab: clear the check box next to Perform incrementals based on archive bit.
206
Appendix
Additional resources
This appendix includes the following topics:
Performance tuning information at Vision online Performance monitoring utilities Freeware tools for bottleneck detection Mailing list resources
Storage Mountain, previously called Backup Central, is a resource for all backup-related issues. http://www.storagemountain.com. The following article discusses how and why to design a scalable data installation. "High-Availability SANs," Richard Lyford, FC Focus Magazine, April 30, 2002.
208
http://dast.nlanr.net/Projects/Iperf1.1.1/index.htm
Bonnie, for measuring the performance of UNIX file system operations. http://www.textuality.com/bonnie Bonnie++, extends the capabilities of Bonnie. http://www.coker.com.au/bonnie++/readme.html Tiobench, for testing I/O performance with multiple running threads. http://sourceforge.net/projects/tiobench/
Veritas NetBackup news groups. http://forums.veritas.com. Search on the keyword "NetBackup" to find threads relevant to NetBackup. The email list Veritas-bu discusses backup-related products such as NetBackup. Archives for Veritas-bu are located at: http://mailman.eng.auburn.edu/mailman/listinfo/veritas-bu
Index
Symbols
/dev/null 105 /dev/rmt/2cbn 168 /dev/rmt/2n 168 /etc/rc2.d 154 /etc/system 196 /proc/sys (Linux) 202 /user/openv/netbackup/db/config/SIZE_DATA_BUFFERS 128 /user/openv/netbackup/db/config/SIZE_DATA_BUFFERS_DISK 128 /usr/openv/netbackup 122 /usr/openv/netbackup/bin/admincmd/bpimage 153 /usr/openv/netbackup/db/error 104 /usr/openv/netbackup/db/images 153 /usr/openv/netbackup/db/media 75 /usr/openv/netbackup/logs 105 /usr/sbin 77 /usr/sbin/devfsadm 77 /usr/sbin/modinfo 77 /usr/sbin/modload 77 /usr/sbin/modunload 77 /usr/sbin/ndd 153 /usr/sbin/tapes 77 10000BaseT 26 1000BaseT 26 100BaseT 26 100BaseT cards 42
archive bit 205 archiving catalog 66 array RAID controller 186 arrays 116 ATA 25 ATM card 43 auto-negotiate 117 AUTOSENSE 117 available_media report 80 available_media script 74, 80 Avg. Disk Queue Length counter 109
B
backup catalog 68 disk or tape 80 environment dedicated or shared 79 large catalog 65 load adjusting 114 load leveling 114 monopolizing devices 115 user-directed 97 window 113 Backup Central 207 Backup Tries parameter 75 balancing load 114 bandwidth 189 bandwidth limiting 114 Bare Metal Restore (BMR) 170 best practices 85, 88, 91 Bonnie 208 Bonnie++ 208 bottlenecks 99, 118 freeware tools for detecting 207 bp.conf file 75, 123 bpbkar 117, 136, 139 bpbkar log 104105 bpbkar32 117, 136 bpdm log 104 bpdm_dev_null 106
A
Activity Monitor 100 adjusting backup load 114 error threshold 75 network communications buffer 118 read buffer size 172 All Log Entries report 99, 101, 103 ALL_LOCAL_DRIVES 41, 68 alphabetical order storage units 61 ANSI encoding 205 antivirus software 205 arbitrated loop 186
210
Index
bpend_notify.bat 116 bpimage 153 bpmount -i 68 bprd 56, 60 bpsetconfig 169 bpstart_notify.bat 116 bptm 136, 139, 143, 147, 149 bptm log 75, 104 buffers 118, 202 and FlashBackup 172 changing number of 126 changing size 128 changing Windows buffers 204 default number of 124 default size of 125 for network communications 120 shared 124 tape 124 testing 133 wait and delay 135 bus 73
C
cache device (snapshot) 172 calculate actual data transfer rate required 23 length of backups 23 network transfer rate 26 number of robotic tape slots needed 34 number of tapes needed 32 shared memory 125 space needed for NBDB database 3132 cartridges storing 88 catalog 152 archiving 66 backup requirements 114 backups guidelines 6465 backups not finishing 65 compression 6566 large backups 65 managing 65 Checkpoint Restart 152 child delay values 134 CHILD_DELAY file 134 cleaning robots 87 tape drives 85
cleaning (continued) tapes 80 client compression 169 tuning performance 115 variables 98 Client Job Tracker 171 clock or cycle time 188 Committed Bytes 108 common system resources 106 communications buffer 120121 process 135 Communications Buffer Size parameter 119120 COMPRESS_SUFFIX option 169 compression 109, 168 and encryption 170 catalog 6566 how to enable 168 tape vs client 169 configuration files (Windows) 205 configuration guidelines 67 CONNECT_OPTIONS 58 controller 109 copy-on-write snapshot 172 counters 135 algorithm 137 determining values of 139 in Windows performance 107 wait and delay 135 CPU 104, 107 and performance 190 load monitoring 104 utilization 5758 CPUs needed per media server component 42 critical policies 68 cumulative-incremental backup 21 custom reports available media 80 cycle time 188
D
daily_messages log 69 data buffer overview 124 size 118 data compression 156 Data Consumer 138
Index
211
data path through server 184 data producer 137138 data recovery planning for 8889 data stream and tape efficiency 156 data throughput 98 statistics 99 data transfer path 99, 112 basic tuning 113 data transfer rate for drive controllers 26 for tape drives 23 required 23 data variables 98 database backups 160 restores 154 databases list of pre-6.0 databases 32 DB2 restores 154 de-multiplexing 113 Deactivate command 96 dedicated backup servers 114 dedicated private networks 113 delay buffer 135 in starting jobs 53 values parent/child 134 designing master server 38 media server 42 Detailed Status tab 101 devfsadmd daemon 77 device names 168 reconfiguration 77 devlinks 77 disable TapeAlert 87 disaster recovery 8889 testing 59 disk full 109 increase performance 109 load monitoring 108 speed measuring 104 staging 63
disk (continued) versus tape 80 Disk Queue Length counter 109 disk speed measuring 106 Disk Time counter 109 disk-based storage 80 diskperf command 108 disks adding 116 down drive 7576 drive controllers 26 drive_error_threshold 7576 drives number per network connection 73 drvconfig 77
E
email list (Veritas-bu) 208 EMM 56, 67, 74, 7879, 86 EMM database derived from pre-6.0 databases 32 EMM server calculating space needed for 3132 EMM transaction log 32 encoding file 205 encryption 168 and compression 170 and multi-streaming 168 error logs 75, 100 error threshold value 74 Ethernet connection 183 evaluating components 104, 106 evaluating performance Activity Monitor 100 All Log Entries report 101 encryption 168 NetBackup clients 115 NetBackup servers 123 network 97, 117 overview 95 exclude lists 67
F
factors in choosing disk vs tape 80 in job scheduling 56
212
Index
failover storage unit groups 62 fast-locate 150 FBU_READBLKS 173 FC-AL 185, 188 fibre channel 185, 187 arbitrated loop 185 file encoding 205 file ID on vxlogview 69 file system space 63 files backing up many small 170 Windows configuration 205 firewall settings 58 FlashBackup 171172 FlashBackup read buffer 173 Flexible Disk Option 85 floating-point math and NOM 182 force load parameters (Solaris) 198 forward space filemark 149 fragment size 148, 150 considerations in choosing 149 fragmentation 116 level 109 freeware tools 207 freeze media 7476 frequency-based tape cleaning 86 frozen volume 74 FT media server recommended number of buffers 133 shared memory 126129 full backup 80 full backup and tape vs disk 81 full duplex 117
heap size adjusting NOM server 174 NOM web server 175 hierarchy disk 183 host memory 184 host name resolution 98 hot catalog backup 64, 68
I
I/O operations scaling 192 IMAGE_FILES 153 IMAGE_INFO 153 IMAGE_LIST 153 improving performance see tuning 111 include lists 67 increase disk performance 109 incremental backups 80, 113, 161 index performance 152 info on tuning 207 Inline Copy shared memory 126, 128129 insufficient memory 108 interfaces multiple 123 ipcs -a command 196 Iperf 207 iSCSI 25 iSCSI bus 73
J
Java interface 44, 170 job delays 5556 scheduling 53, 56 limiting factors 56 Job Tracker 117 jobs queued 5455 JVM Option Number 0 (NOM) 175
G
Gigabit Fibre Channel 25 globDB 32 goodies directory 80 groups of storage units 61
H
hardware components and performance 189 configuration examples 190 elements affecting performance 183 performance considerations 189
K
kernel tuning Linux 202 Solaris 195
Index
213
L
larger buffer (FlashBackup) 172 largest fragment size 148 latency 189 legacy logs 69 leveling load among backup components 114 library-based tape cleaning 88 Limit jobs per policy attribute 54, 115 limiting fragment size 148 link down 117 Linux kernel tunable parameters 202 load leveling 114 monitoring 107 parameters (Solaris) 198 local backups 161 Log Sense page 86 logging 97 logs 69, 75, 100, 139, 171 managing 68 viewing 68 ltidevs 32 LTO drives 33, 43
M
mailing lists 208 managing logs 68 the catalog 65 Manual Backup command 97 master server CPU utilization 57 designing 38 determining number of 40 splitting 66 MAX_HEAP setting (NOM) 174 Maximum concurrent write drives 54 Maximum jobs per client 54 Maximum Jobs Per Client attribute 115 Maximum streams per drive 54 maximum throughput rate 156 Maximum Transmission Unit (MTU) 134 MaximumSGList 203204 measuring disk read speed 104, 106 NetBackup performance 95 media catalog 74
media (continued) error threshold 75 not available 74 pools 79 positioning 156 threshold for errors 74 media errors database 32 Media List report 74 media manager drive selection 78 Media multiplexing setting 54 media server 43 designing 42 factors in sizing 44 not available 56 number needed 43 number supported by a master 41 media_error_threshold 7576 mediaDB 32 MEGABYTES_OF_MEMORY 169 memory 184, 189190 amount required 43, 125 insufficient 108 monitoring use of 104, 107 shared 124 merging master servers 66 message queue 196 message queue parameters HP-UX 200 migration 85 Mode Select page 87 Mode Sense 87 modload command 77 modunload command 77 monitoring data variables 98 MPX_RESTORE_DELAY option 154 MTFSF/MTFSR 149 multi-streaming 159 NEW_STREAM directive 162 when to use 160 multiple copies shared memory 126, 128129 multiple drives storage unit 54 multiple interfaces 123 multiple small files backing up 170
214
Index
multiplexed backups and fragment size 149 database backups 154 multiplexed image restoring 150 multiplexing 81, 113, 159 and memory required 43 effects of 162 schedule 54 set too high 154 when to use 160
N
namespace.chksum 32 naming conventions 91 policies 91 storage units 91 NBDB database 3132 NBDB.log 65 nbemmcmd command 75 nbjm and job delays 56 nbpem 60 nbpem and job delays 53 nbu_snap 172 ndd 153 NET_BUFFER_SZ 119121, 130 NET_BUFFER_SZ_REST 119 NetBackup catalog 152 job scheduling 53 news groups 208 restores 148 scheduler 96 NetBackup Client Job Tracker 171 NetBackup Java console 170 NetBackup Operations Manager see NOM 45 NetBackup Relational Database 67 NetBackup relational database files 65 NetBackup Vault 170 network bandwidth limiting 114 buffer size 118 communications buffer 120 connection options 57 connections 117 interface cards (NICs) 117 load 118 multiple interfaces 123
network (continued) performance 97 private dedicated 113 tapes drives and 73 traffic 118 transfer rate 26 tuning 117 tuning and servers 113 variables 97 Network Buffer Size parameter 120, 144 NEW_STREAM directive 162 news groups 208 no media available 74 no-rewind option 168 NO_TAPEALERT touch file 87 NOexpire touch file 60, 205 NOM 43, 58, 80 adjusting server heap size 174 Sybase cache size 176 web server heap size 175 and floating-point math 182 database 45 defragmenting databases 181 for monitoring jobs 58 purging data 182 sizing 45 store database and logs on separate disk 178 nominal throughput rate 156 nomserver.conf file 177 nomsrvctl file (NOM) 174 non-multiplexed restores 150 none pool 80 NOSHM file 121 Notepad checking file encoding 205 notify scripts 116 NUMBER_DATA_BUFFERS 126, 132, 134, 201 NUMBER_DATA_BUFFERS_DISK 126 NUMBER_DATA_BUFFERS_FT 126127, 133 NUMBER_DATA_BUFFERS_MULTCOPY 126 NUMBER_DATA_BUFFERS_RESTORE 127, 152
O
OEMSETUP.INF file 203 offload work to additional master 66 on-demand tape cleaning see TapeAlert 86
Index
215
online (hot) catalog backup 68 Oracle 155 restores 154 order of using storage units 61 out-of-sequence delivery of packets 171
P
packets 171 Page Faults 108 parent/child delay values 134 PARENT_DELAY file 134 patches 171 PCI bridge 185, 189190 PCI bus 185, 188189 PCI card 185, 190 performance and CPU 190 and hardware issues 189 see also tuning 111 strategies and considerations 112 performance evaluation 95 Activity Monitor 100 All Log Entries report 101 monitoring CPU 107 monitoring disk load 108 monitoring memory use 104, 107 system components 104, 106 PhysicalDisk object 109 policies critical 68 guidelines 67 naming conventions 91 Policy Update Interval 54 poolDB 32 pooling conventions 79 position error 75 Process Queue Length 107 Processor Time 107
read buffer size adjusting 172 and FlashBackup 172 reconfigure devices 77 recovering data planning for 8889 recovery time 80 Reduce fragment size setting 148 REGEDT32 204 registry 203 reload st driver without rebooting 77 report 103 All Log Entries 101 media 80 resizing read buffer (FlashBackup) 172 restore and network 153 in mixed environment 153 multiplexed image 150 of database 154 performance of 152 RESTORE_RETRIES for restores 75 retention period 80 RMAN 155 robot cleaning 87 robotic_def 32 routers 117 ruleDB 32
S
SAN Client 113 recommended number of buffers 133 SAN client 83, 116 SAN fabric 187 SAN Media Server 113 sar command 104 SATA 25 scatter/gather list 204 schedule naming best practices 91 scheduling 53, 96 delays 53 disaster recovery 59 limiting factors 56 scratch pool 79 SCSI bus 73 SCSI/FC connection 156 SDLT drives 33, 43
Q
queued jobs 5455
R
RAID 109, 116 controller 186, 190 rate of data transfer 21 raw partition backup 172
216
Index
search performance 152 semaphore (Solaris) 196 Serial ATA (SATA) 185 server data path through 184 splitting master from EMM 67 tuning 123 variables 96 SGList 204 shared data buffers 124 changing number of 126 changing size 128 default number of 124 default size of 125 shared memory 121, 124 amount required 125 parameters HP-UX 200 recommended settings 132 Solaris parameters 196 testing 133 shared-access topology 186, 189 shelf 185 SIZE_DATA_BUFFERS 130, 132, 134, 201 SIZE_DATA_BUFFERS_DISK 128 SIZE_DATA_BUFFERS_FT 128129 SIZE_DATA_BUFFERS_MULTCOPY 128129 small files backup of 170 SMART diagnostic standard 87 snap mirror 171 snapshot cache device 172 Snapshot Client 171 snapshots 117 socket communications 121 parameters (Solaris) 198 software compression (client) 169 tuning 192 Solaris kernel tuning 195 splitting master server 66 SSOhosts 32 staging disk 63, 80 Start Window 96 State Details in Activity Monitor 54 STK drives 33
storage device performance 156 Storage Mountain 207 storage unit 61, 115 groups 61 naming conventions 91 not available 55 Storage Unit dialog 148 storage_units database 32 storing tape cartridges 88 streaming (tape drive) 81, 156 striped volumes (VxVM) 172 striping block size 172 volumes on disks 113 stunit_groups 32 suspended volume 74 switches 187 Sybase cache size adjusting 176 synthetic backups 120 System Administration Manager (SAM) 201 system resources 106 system variables controlling 96
T
Take checkpoints setting 152 tape block size 125 buffers 124 cartridges storing 88 cleaning 80, 86 compression 169 efficiency 156 full frozen. See suspended number of tapes needed for backups 32 position error 75 streaming 81, 156 versus disk 80 tape connectivity 74 tape drive 156 cleaning 85 number per network connection 73 technologies 85 technology needed 22 transfer rates 23 types 43
Index
217
tape library number of tape slots needed 34 tape-based storage 80 TapeAlert 86 tar 137 tar32 137 TCP/IP 171 tcp_deferred_ack_interval 153 testing conditions 96 threshold error adjusting 75 for media errors 74 throughput 99 time to data 81 Tiobench 208 tools (freeware) 207 topology (hardware) 188 touch files 60 encoding 205 traffic on network 118 transaction log 32 transaction log file 65 transfer rate drive controllers 26 for backups 21 network 26 required 23 tape drives 23 True Image Restore option 170 tuning additional info 207 basic suggestions 113 buffer sizes 118, 120 client performance 115 data transfer path overview 112 device performance 156 FlashBackup read buffer 172 Linux kernel 202 network performance 117 restore performance 148, 153 search performance 152 server performance 123 software 192 Solaris kernel 195
Ultra320 SCSI 26 Unicode encoding 205 unified logging viewing 68 user-directed backup 97
V
Vault 170 verbosity level 171 Veritas-bu email list 208 viewing logs 68 virus scans 116, 171 Vision Online 207 vmstat 104 volDB 32 volume frozen 74 pools 79 suspended 74 vxlogview 68 file ID 69 VxVM striped volumes 172
W
wait/delay counters 135, 139 analyzing problems 143 correcting problems 147 for local client backup 139 for local client restore 142 for remote client backup 141 for remote client restore 143 wear of tape drives 156 webgui command 175 Wide Ultra 2 SCSI 25 wild cards in file lists 67 Windows Performance Monitor 106 Working Set in memory 108
U
Ultra-3 SCSI 25