You are previewing SAN Volume Controller: Best Practices and Performance Guidelines.
O'Reilly logo
SAN Volume Controller: Best Practices and Performance Guidelines

Book Description


This IBM® Redbook captures some of the best practices based on field experience and details the performance gains that can be achieved by implementing the IBM System Storage™ SAN Volume Controller.

This book is intended for very experienced storage, SAN, and SVC administrators and technicians.

Readers are expected to have an advanced knowledge of the SVC and SAN environment, and we recommend these books as background reading:

IBM System Storage SAN Volume Controller, SG24-6423
Introduction to Storage Area Networks, SG24-5470
Using the SVC for Business Continuity, SG24-7371

Table of Contents

  1. Notices
    1. Page xi
    2. Trademarks
      1. Page xii
  2. Preface
    1. The team that wrote this book
      1. Page xiii
      2. Page xiv
    2. Become a published author
    3. Comments welcome
      1. Page xv
      2. Page xvi
  3. 1. SAN fabric
    1. Page 1
    2. 1.1. SVC SAN topology
      1. 1.1.1. Redundancy
      2. 1.1.2. Topology basics
        1. Page 2
      3. 1.1.3. ISL oversubscription
        1. Page 3
      4. 1.1.4. IBM 2109-M12/Brocade 12000 in an SVC environment
      5. 1.1.5. Switch port layout for large edge switches
        1. Page 4
      6. 1.1.6. Switch port layout and hardware selection for director-class core switches
      7. 1.1.7. Single switch SVC SANs
      8. 1.1.8. Basic core-edge topology
        1. Page 5
      9. 1.1.9. Four-SAN core-edge topology
        1. Page 6
      10. 1.1.10. Cisco VSANs
        1. Page 7
      11. 1.1.11. Common topology issues
        1. Page 8
        2. Page 9
    3. 1.2. Tape and disk on your SAN
    4. 1.3. Switch interoperability
      1. Page 10
    5. 1.4. Distance extension for mirroring
      1. 1.4.1. Optical multiplexors
      2. 1.4.2. Long-distance SFPs/XFPs
      3. 1.4.3. Fibre Channel: IP Conversion
        1. Page 11
    6. 1.5. Zoning
      1. 1.5.1. Type of zoning
        1. Page 12
        2. Page 13
      2. 1.5.2. Pre-zoning tips and shortcuts
      3. 1.5.3. SVC cluster zone
      4. 1.5.4. SVC: Storage zones
      5. 1.5.5. SVC: Host zones
        1. Page 14
        2. Page 15
      6. 1.5.6. Sample standard SVC zoning configuration
        1. Page 16
        2. Page 17
        3. Page 18
        4. Page 19
      7. 1.5.7. Zoning with multiple SVC clusters
      8. 1.5.8. Split controller configurations
    7. 1.6. Switch Domain IDs
    8. 1.7. TotalStorage Productivity Center for Fabric
      1. Page 20
  4. 2. SAN Volume Controller cluster
    1. Page 21
    2. 2.1. Advantages of virtualization
      1. 2.1.1. How does the SVC fit into your environment
    3. 2.2. Scalability of SVC clusters
      1. Page 22
      2. 2.2.1. Advantage of multi cluster as opposed to single cluster
      3. 2.2.2. Performance expectations by adding an SVC
        1. Page 23
      4. 2.2.3. Growing or splitting SVC clusters
        1. Page 24
        2. Page 25
    4. 2.3. SVC cache improves subsystem performance
      1. Page 26
      2. Page 27
      3. Page 28
      4. 2.3.1. Cache destage operations
        1. Page 29
    5. 2.4. Cluster upgrade
      1. Page 30
      2. Page 31
      3. Page 32
  5. 3. Master console
    1. Page 33
    2. 3.1. Managing the master console
      1. 3.1.1. Managing a single master console
        1. Page 34
        2. Page 35
        3. Page 36
        4. Page 37
        5. Page 38
      2. 3.1.2. Managing multiple master consoles
        1. Page 39
      3. 3.1.3. Administration roles
        1. Page 40
        2. Page 41
        3. Page 42
        4. Page 43
        5. Page 44
        6. Page 45
      4. 3.1.4. Audit logging
        1. Page 46
        2. Page 47
        3. Page 48
        4. Page 49
      5. 3.1.5. Managing IDs and passwords
        1. Page 50
        2. Page 51
      6. 3.1.6. Saving the SVC configuration
        1. Page 52
      7. 3.1.7. Restoring the SVC cluster configuration
        1. Page 53
        2. Page 54
  6. 4. I/O Groups and nodes
    1. Page 55
    2. 4.1. Determining I/O Groups
    3. 4.2. Node shutdown and node failure
      1. Page 56
      2. 4.2.1. Impact when running single node I/O Groups
        1. Page 57
    4. 4.3. Adding or upgrading SVC node hardware
      1. Page 58
      2. Page 59
      3. Page 60
  7. 5. Storage controller
    1. Page 61
    2. 5.1. Controller affinity and preferred path
      1. 5.1.1. ADT for DS4000
        1. Page 62
      2. 5.1.2. Ensuring path balance prior to MDisk discovery
    3. 5.2. Pathing considerations for EMC Symmetrix/DMX and HDS
    4. 5.3. LUN ID to MDisk translation
      1. 5.3.1. ESS
        1. Page 63
      2. 5.3.2. DS6000 and DS8000
        1. Page 64
    5. 5.4. MDisk to VDisk mapping
      1. Page 65
    6. 5.5. Mapping physical LBAs to Extents
    7. 5.6. Media error logging
      1. 5.6.1. Host encountered media errors
        1. Page 66
      2. 5.6.2. SVC-encountered media errors
        1. Page 67
    8. 5.7. Selecting array and cache parameters
      1. 5.7.1. DS4000 array width
        1. Page 68
      2. 5.7.2. Segment size
        1. Page 69
      3. 5.7.3. DS8000
    9. 5.8. Considerations for controller configuration
      1. 5.8.1. Balancing workload across DS4000 controllers
        1. Page 70
      2. 5.8.2. Balancing workload across DS8000 controllers
        1. Page 71
        2. Page 72
      3. 5.8.3. DS8000 ranks/extent pools
        1. Page 73
      4. 5.8.4. Mixing array sizes within an MDG
      5. 5.8.5. Determining the number of controller ports for ESS/DS8000
      6. 5.8.6. Determining the number of controller ports for DS4000
        1. Page 74
    10. 5.9. LUN masking
      1. Page 75
      2. Page 76
    11. 5.10. WWPN to physical port translation
      1. Page 77
    12. 5.11. Using TPC to identify storage controller boundaries
      1. Page 78
    13. 5.12. Using TPC to measure storage controller performance
      1. Page 79
      2. 5.12.1. Approximations
        1. Page 80
      3. 5.12.2. Establish a performance baseline
      4. 5.12.3. Performance metric guidelines
        1. Page 81
      5. 5.12.4. Storage controller back end
        1. Page 82
        2. Page 83
        3. Page 84
  8. 6. MDisks
    1. Page 85
    2. 6.1. Back-end queue depth
    3. 6.2. MDisk transfer size
      1. 6.2.1. Host I/O
        1. Page 86
      2. 6.2.2. FlashCopy I/O
      3. 6.2.3. Coalescing writes
    4. 6.3. Selecting LUN attributes for MDisks
      1. Page 87
    5. 6.4. Tiered storage
    6. 6.5. Adding MDisks to existing MDGs
      1. Page 88
      2. 6.5.1. Adding MDisks for capacity
      3. 6.5.2. Checking access to new MDisks
      4. 6.5.3. Persistent reserve
        1. Page 89
    7. 6.6. Removing MDisks from existing MDGs
      1. Page 90
      2. Page 91
    8. 6.7. Remapping managed MDisks
      1. Page 92
    9. 6.8. Controlling extent allocation order for VDisk creation
      1. Page 93
      2. Page 94
      3. Page 95
      4. Page 96
  9. 7. Managed disk groups
    1. Page 97
    2. 7.1. Availability considerations for planning MDGs
      1. Page 98
      2. 7.1.1. Performance consideration
        1. Page 99
      3. 7.1.2. Selecting the MDisk Group
        1. Page 100
        2. Page 101
    3. 7.2. Selecting number of LUNs per array
      1. 7.2.1. Performance comparison of one compared to two LUNs per array
        1. Page 102
        2. Page 103
        3. Page 104
    4. 7.3. Selecting the number of arrays per MDG
      1. Page 105
      2. Page 106
      3. Page 107
      4. Page 108
      5. Page 109
      6. Page 110
    5. 7.4. Striping compared to sequential type
      1. Page 111
    6. 7.5. Selecting storage controllers
      1. Page 112
  10. 8. VDisks
    1. Page 113
    2. 8.1. Creating VDisks
      1. Page 114
      2. Page 115
      3. 8.1.1. Selecting the MDisk Group
      4. 8.1.2. Changing the preferred node within an I/O Group
        1. Page 116
      5. 8.1.3. Moving a VDisk to another I/O Group
        1. Page 117
        2. Page 118
    3. 8.2. VDisk migration
      1. 8.2.1. Migrating across MDGs
      2. 8.2.2. Image type to striped type migration
      3. 8.2.3. Migrating to image type VDisk
        1. Page 119
        2. Page 120
      4. 8.2.4. Preferred paths to a VDisk
        1. Page 121
      5. 8.2.5. Governing of VDisks
        1. Page 122
        2. Page 123
        3. Page 124
    4. 8.3. Cache-disabled VDisks
      1. 8.3.1. Using underlying controller remote copy with SVC cache-disabled VDisks
        1. Page 125
      2. 8.3.2. Using underlying controller PiT copy with SVC cache-disabled VDisks
        1. Page 126
      3. 8.3.3. Changing cache mode of VDisks
        1. Page 127
        2. Page 128
    5. 8.4. VDisk performance
      1. Page 129
      2. Page 130
      3. Page 131
      4. 8.4.1. VDisk performance
        1. Page 132
        2. Page 133
        3. Page 134
        4. Page 135
        5. Page 136
        6. Page 137
        7. Page 138
    6. 8.5. The effect of load on storage controllers
      1. Page 139
      2. Page 140
      3. Page 141
      4. Page 142
  11. 9. Copy services
    1. Page 143
    2. 9.1. SAN Volume Controller Advanced Copy Services functions
      1. 9.1.1. SVC copy service functions
      2. 9.1.2. Using both Metro Mirror and Global Mirror between two clusters
      3. 9.1.3. Performing three-way copy service functions
        1. Page 144
      4. 9.1.4. Using native controller Advanced Copy Services functions
        1. Page 145
    3. 9.2. Copy service limits
      1. Page 146
    4. 9.3. Setting up FlashCopy copy services
      1. Page 147
      2. 9.3.1. Steps to making a FlashCopy VDisk with application data integrity
        1. Page 148
        2. Page 149
        3. Page 150
      3. 9.3.2. Making multiple related FlashCopy VDisks with data integrity
        1. Page 151
        2. Page 152
      4. 9.3.3. Creating multiple identical copies of a VDisk
        1. Page 153
      5. 9.3.4. Understanding FlashCopy dependencies
        1. Page 154
        2. Page 155
      6. 9.3.5. Using FlashCopy with your backup application
      7. 9.3.6. Using FlashCopy to help with migration
        1. Page 156
        2. Page 157
      8. 9.3.7. Summary of FlashCopy rules
    5. 9.4. Metro Mirror and Global Mirror
      1. 9.4.1. Configuration requirements for long distance links
        1. Page 158
      2. 9.4.2. Global mirror guidelines
        1. Page 159
        2. Page 160
        3. Page 161
      3. 9.4.3. Migrating a Metro Mirror relationship to Global Mirror
      4. 9.4.4. Recovering from suspended Metro Mirror or Global Mirror relationships
        1. Page 162
      5. 9.4.5. Diagnosing and fixing 1920 errors
        1. Page 163
        2. Page 164
      6. 9.4.6. Using Metro Mirror or Global Mirror with FlashCopy
      7. 9.4.7. Saving bandwidth creating Metro Mirror and Global Mirror relationships
        1. Page 165
      8. 9.4.8. Using TPC to monitor Global Mirror performance
        1. Page 166
      9. 9.4.9. Summary of Metro Mirror and Global Mirror rules
        1. Page 167
        2. Page 168
  12. 10. Hosts
    1. Page 169
    2. 10.1. Configuration recommendations
      1. 10.1.1. The number of paths
        1. Page 170
      2. 10.1.2. Host ports
      3. 10.1.3. Port masking
      4. 10.1.4. Host to I/O Group mapping
        1. Page 171
      5. 10.1.5. VDisk size as opposed to quantity
      6. 10.1.6. Host VDisk mapping
        1. Page 172
        2. Page 173
        3. Page 174
        4. Page 175
      7. 10.1.7. Server adapter layout
      8. 10.1.8. Availability as opposed to error isolation
    3. 10.2. Host pathing
      1. Page 176
      2. 10.2.1. Preferred path algorithm
      3. 10.2.2. Path selection
        1. Page 177
      4. 10.2.3. Path management
        1. Page 178
      5. 10.2.4. Dynamic reconfiguration
        1. Page 179
      6. 10.2.5. VDisk migration between I/O Groups
        1. Page 180
        2. Page 181
    4. 10.3. I/O queues
      1. 10.3.1. Queue depths
        1. Page 182
        2. Page 183
    5. 10.4. Multipath software
    6. 10.5. Host clustering and reserves
      1. Page 184
      2. Page 185
      3. 10.5.1. AIX
        1. Page 186
        2. Page 187
        3. Page 188
        4. Page 189
      4. 10.5.2. SDD compared to SDDPCM
        1. Page 190
      5. 10.5.3. Virtual I/O server
        1. Page 191
        2. Page 192
      6. 10.5.4. Windows
        1. Page 193
      7. 10.5.5. Linux
      8. 10.5.6. Solaris
        1. Page 194
        2. Page 195
      9. 10.5.7. VMWare
        1. Page 196
    7. 10.6. Mirroring considerations
      1. 10.6.1. Host-based mirroring
    8. 10.7. Monitoring
      1. Page 197
      2. 10.7.1. Automated path monitoring
      3. 10.7.2. Load measurement and stress tools
        1. Page 198
        2. Page 199
        3. Page 200
  13. 11. Applications
    1. Page 201
    2. 11.1. Application workloads
      1. 11.1.1. Transaction-based processes (IOPS)
        1. Page 202
      2. 11.1.2. Throughput-based processes (MBps)
      3. 11.1.3. Host considerations
    3. 11.2. Application considerations
      1. 11.2.1. Transaction environments
        1. Page 203
      2. 11.2.2. Throughput environments
    4. 11.3. Data layout overview
      1. Page 204
      2. 11.3.1. Layers of volume abstraction
      3. 11.3.2. Storage administrator and AIX LVM administrator roles
        1. Page 205
      4. 11.3.3. General data layout recommendations
        1. Page 206
        2. Page 207
      5. 11.3.4. Database strip size considerations (throughput workload)
      6. 11.3.5. LVM volume groups and logical volumes
        1. Page 208
    5. 11.4. When the application does its own balancing of I/Os
      1. 11.4.1. DB2 I/O characteristics and data structures
        1. Page 209
        2. Page 210
      2. 11.4.2. DB2 data layout example
      3. 11.4.3. Striped VDisk recommendation
        1. Page 211
    6. 11.5. Data layout with the AIX virtual I/O (VIO) server
      1. 11.5.1. Overview
        1. Page 212
      2. 11.5.2. Data layout strategies
    7. 11.6. VDisk size
      1. Page 213
    8. 11.7. Failure boundaries
      1. Page 214
  14. 12. Monitoring
    1. Page 215
    2. 12.1. Configuring TPC to analyze the SVC
      1. Page 216
    3. 12.2. Using the TPC to verify fabric configuration
      1. 12.2.1. Verifying SVC node ports
        1. Page 217
        2. Page 218
      2. 12.2.2. Ensure that all SVC ports are online
        1. Page 219
      3. 12.2.3. Verifying SVC port zones
        1. Page 220
        2. Page 221
      4. 12.2.4. Verifying paths to storage
        1. Page 222
        2. Page 223
      5. 12.2.5. Verifying host paths to the SVC
        1. Page 224
        2. Page 225
        3. Page 226
    4. 12.3. Methods for collecting data
      1. Page 227
      2. 12.3.1. Setting up TPC to collect performance information
      3. 12.3.2. Viewing TPC-collected information
        1. Page 228
        2. Page 229
        3. Page 230
        4. Page 231
        5. Page 232
        6. Page 233
        7. Page 234
      4. 12.3.3. Using TPC to alert on performance constraints
        1. Page 235
        2. Page 236
  15. 13. Maintenance
    1. Page 237
    2. 13.1. Configuration and change tracking
      1. 13.1.1. SAN
        1. Page 238
        2. Page 239
        3. Page 240
      2. 13.1.2. SVC
        1. Page 241
      3. 13.1.3. Storage
      4. 13.1.4. General inventory
      5. 13.1.5. Change tickets and tracking
      6. 13.1.6. Configuration archiving
        1. Page 242
    3. 13.2. Standard operating procedures
      1. Page 243
      2. Page 244
      3. Page 245
    4. 13.3. TotalStorage Productivity Manager
    5. 13.4. Code upgrades
      1. 13.4.1. Which code levels
      2. 13.4.2. How often
      3. 13.4.3. What order
        1. Page 246
      4. 13.4.4. Preparing for upgrades
      5. 13.4.5. Host code upgrades
        1. Page 247
    6. 13.5. SAN hardware changes
      1. 13.5.1. Cross-referencing the SDD adapter number with the WWPN
      2. 13.5.2. Changes that result in the modification of the destination FCID
        1. Page 248
      3. 13.5.3. Switch replacement with a like switch
        1. Page 249
      4. 13.5.4. Switch replacement or upgrade with a different kind of switch
      5. 13.5.5. HBA replacement
        1. Page 250
    7. 13.6. Naming convention
      1. 13.6.1. Hosts, zones, and SVC ports
      2. 13.6.2. Controllers
      3. 13.6.3. MDisks
      4. 13.6.4. VDisks
      5. 13.6.5. MDGs
        1. Page 251
        2. Page 252
  16. 14. Other useful information
    1. Page 253
    2. 14.1. Cabling
      1. 14.1.1. General cabling advice
      2. 14.1.2. Long distance optical links
      3. 14.1.3. Labeling
      4. 14.1.4. Cable management
        1. Page 254
      5. 14.1.5. Cable routing and support
      6. 14.1.6. Cable length
      7. 14.1.7. Cable installation
        1. Page 255
    3. 14.2. Power
      1. 14.2.1. Bundled uninterruptible power supply units
      2. 14.2.2. Rack power feeds
    4. 14.3. Cooling
      1. Page 256
    5. 14.4. SVC scripting
    6. 14.5. IBM Support Notifications Service
    7. 14.6. SVC Support Web site
    8. 14.7. SVC-related publications and classes
      1. Page 257
      2. 14.7.1. IBM Redbooks publications
      3. 14.7.2. Courses
        1. Page 258
  17. 15. Troubleshooting and diagnostics
    1. Page 259
    2. 15.1. Common problems
      1. 15.1.1. Host problems
      2. 15.1.2. SVC problems
        1. Page 260
        2. Page 261
      3. 15.1.3. SAN problems
      4. 15.1.4. Storage subsystem problems
    3. 15.2. Collecting data and isolating the problem
      1. Page 262
      2. Page 263
      3. 15.2.1. Host data collection
        1. Page 264
      4. 15.2.2. Multipathing driver: SDD data
        1. Page 265
        2. Page 266
      5. 15.2.3. SVC data collection
        1. Page 267
        2. Page 268
      6. 15.2.4. SAN data collection
      7. 15.2.5. Storage subsystem data collection
        1. Page 269
    4. 15.3. Recovering from problems
      1. 15.3.1. Solving host problems
        1. Page 270
        2. Page 271
      2. 15.3.2. Solving SVC problems
        1. Page 272
        2. Page 273
        3. Page 274
      3. 15.3.3. Solving SAN problems
      4. 15.3.4. Typical SVC storage problems
        1. Page 275
        2. Page 276
      5. 15.3.5. Solving storage subsystem problems
        1. Page 277
        2. Page 278
        3. Page 279
        4. Page 280
      6. 15.3.6. Common error recovery steps
    5. 15.4. Livedump
      1. Page 281
      2. Page 282
  18. 16. SVC 4.2 performance highlights
    1. Page 283
    2. 16.1. SVC and continual performance enhancements
      1. Page 284
      2. Page 285
    3. 16.2. SVC 4.2 code improvements
    4. 16.3. Test results
      1. Page 286
      2. Page 287
      3. Page 288
      4. 16.3.1. Performance scaling of I/O Groups
        1. Page 289
        2. Page 290
  19. Related publications
    1. IBM Redbooks publications
      1. Other resources
        1. Page 291
      2. Referenced Web sites
    2. How to get IBM Redbooks publications
    3. Help from IBM
      1. Page 292
      2. Page 293
      3. Page 294
  20. Index
    1. Page 295
    2. Page 296
    3. Page 297
    4. Page 298
    5. Page 299
    6. Page 300
    7. Page 301
    8. Page 302
    9. Page 303
    10. Page 304
    11. Page 305
    12. Page 306
    13. Page 307
  21. Back cover
    1. Page 308