Sie sind auf Seite 1von 44

2013 IBM Corporation

SAN Volume Controller, Storwize V7000,


SONAS, Storwize V7000 Unified, DS8000, DS3000,
DS4000, DS5000 & DCS3700

IBM Systems Storage Toolbox
IBM Systems Storage
Alexis Giral (alexisg@au1.ibm.com) IBM Australia
2013 IBM Corporation
Agenda
Overview
Disclaimer
3 steps process
Perl scripting
SSH & SCP
DS CLI
Directory and file structure
Scripts to gather raw data
Scripts to parse & format data
MS Excel files to import formatted data
Scripts to manage Copy services
Scripted Disaster recovery for VMware (SAN Volume Controller & Storwize V7000)
See also the presentation: Scripted-DR for VMware.pptx for more details
Taking multiple FlashCopy at the Disaster Recovery site
Other scripts
Extract columns for CSV files
Gather VMware storage configuration (script created but do slides yet)
Send commands in parallel on multiple IBM/Brocade SAN switches
Collect an SVC snap on SVC and Storwize V7000
Collect an IBM/Brocade supportSave
Collect storage configuration on servers
2
http://cattail.boulder.ibm.com/cattail/#view=alexisg@au1.ibm.com/files/09231B00432D3DDC8915631F093F23B6
2013 IBM Corporation
OVERVIEW
3
2013 IBM Corporation
Disclaimer
The tools (scripts and Excel files) provided in this toolbox have to be used AS IS
Do not call IBM support these are not official tools
Request for improvements, comments and debugging may be sent to my email address
(alexisg@au1.ibm.com) and will be handled if possible and when possible
BAU is my priority
Any of your own improvements to this toolbox are welcomed
Before sending any request for help
Read carefully the man pages of each script as well as the syntax help
Read carefully this presentation
4
2013 IBM Corporation
IBM Systems Storage Toolbox
5
Configuration Performance Copy Services
Storwize V7000 Unified
& SONAS
SAN Volume Controller
& Storwize V7000
DS3000, DS4000,
DS5000 & DCS3700
XIV & DS8000 support limited to configuration
IBM/Brocade/Cisco
SAN switches & directors
2013 IBM Corporation
3 steps process
1. Gather configuration and/or performance files
GatherCfg.cmd For SVC and Storwize V7000 configuration files
GatherPerf.pl For SVC and Storwize V7000 performance files
sonasGatherCfg.pl For SONAS and Storwize V7000 Unified configuration & performance files
ds8kGatherCfg.cmd For DS8000 configuration files
xivGatherCfg.cmd For XIV configuration files
ds5kGatherCfg.cmd & ds5kGatherCfg.sh For DS3000, DS4000, DS5000 & DCS3700 profile as well as
support Data
ds5kGatherPerf.cmd & ds5kGatherPerf.sh For DS3000, DS4000, DS5000 & DCS3700 profile &
performance statistics
2. Parse Split the raw data by data type, then consolidate it to regroup
information from multiple clusters
ParseCfg.pl For SVC and Storwize V7000 configuration files
ParsePerf.pl For SVC and Storwize V7000 performance files
ds8kParseCfg.pl For DS8000 configuration files
xivParseCfg.pl For XIV configuration files
ds5kParseCfg.pl For DS3000, DS4000, DS5000 & DCS3700 configuration files
ds5kParsePerf.pl For DS3000, DS4000, DS5000 & DCS3700 performance file
Note: For SONAS and Storwize V7000 Unified file modules, the output of the sonasGatherCfg.pl is already well formatted
3. Import Formatted data is imported into Excel 2007 or 2010
worksheets using macros
ImportCfg.xlsm For SVC and Storwize V7000 configuration files
ImportPerf.xlsm For SVC and Storwize V7000 performance files
sonasConfigImport.xlsm For SONAS and Storwize V7000 Unified configuration & performance files
ds8kImportCfg.xlsm For DS8000 configuration files
xivImportCfg.xlsm For XIV configuration files
ds5kImportPerf.xlsm For DS3000, DS4000, DS5000 & DCS3700 performance files
Advanced macros to prepare performance charts and pivot tables under construction
6
Gather
Parse
Import
2013 IBM Corporation
Perl scripting
Most scripts are using Perl language to make them easily portable to other
operating systems
Install a Perl interpreter like Activeperl
http://www.activestate.com/activeperl/downloads
The system variable PATH should be point at the Perl bin directory
To simplify Perl scripting, modules are used
They can be downloaded from the following location:
http://www.cpan.org/modules/index.html
Usage of modules in perl scripting
Example in ParseCfg.pl
# Modules
#use strict;
use File::Path;
use Getopt::Long;
use XML::TreePP;
use Spreadsheet::WriteExcel;
use Text::CSV_XS;
To avoid complex module installation,
Only default standard modules are used by the gathering Perl scripts
Advanced (none standard) modules are only used by the parsing Perl scripts
The command pod2text is being used by the man option and requires you to run the
Perl scripts from their hosting directory

7
2013 IBM Corporation
Command Line Interfaces to Storage Devices
SSH tools like Putty for SVC, Storwize V7000, SONAS, Storwize V7000 Unified
DS CLI for DS8000
xcli for XIV
DS Storage Manager CLI for DS3000, DS4000, DS5000 and DCS3700

8
2013 IBM Corporation
SSH & SCP
To access SAN Volume Controller, Storwize V7000, Scale Out NAS, and Storwize
V7000 Unified using SSH & SCP
Depending on the code level, an SSH key might be required
Check the CLI users guide to learn about it
ftp://ftp.software.ibm.com/storage/san/sanvc/V6.2.0/SVC_and_V7000_Command_Line_Interface_Us
ers_Guide.pdf
ftp://ftp.software.ibm.com/storage/san/sanvc/V6.3.0/SVC_and_V7000_Command_Line_Interface_Us
ers_Guide.pdf
A tool such as Putty should be installed
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
Putty installer comes with plink and pscp, two executables required by gathering scripts
A Putty session for each SVC and/or Storwize V7000 system should be created
The system variable PATH should be pointing at the Putty installation directory
On Unix systems, OpenSSH could be used to replace Putty


9
2013 IBM Corporation
DS CLI
DS8000 Command Line Interface MUST be installed for any script involving gathering
or monitoring the DS8000
Currently only the ds8kGatherCfg.cmd script is using it
Download the code from here
Up to 4.3 code: http://www-01.ibm.com/support/docview.wss?uid=ssg1S4000641
From 6.0 up to 6.3 code: http://www-01.ibm.com/support/docview.wss?uid=ssg1S4000983
Directly from the FTP site:
ftp://ftp.software.ibm.com/storage/ds8000/updates/DS8K_Customer_Download_Files/CLI/
And get documentation from here
DS8000 InfoCentre: http://publib.boulder.ibm.com/infocenter/dsichelp/ds8000ic/index.jsp
DS CLI Users Guide: http://www-01.ibm.com/support/docview.wss?uid=ssg1S7002620


10
2013 IBM Corporation
Directory and file structure examples
Root directory where scripts and tools are stored and executed
Raw configuration files
Could be coming from multiple Disk Subsystems, SVC and/or Storwize V7000 clusters
except for SONAS and Storwize V7000 Unified
GatherCfg.cmd & ds8kGatherCfg.cmd Target directory
(TGTDIR variable at line 22)
GatherPerf.pl & sonasGatherCfg.pl Target directory (--CfgDir option)
ParseCfg.pl & ds8kParseCfg.pl Source directory (--SourceDir option)
Raw performance files
Should be coming from the same SVC and/or Storwize V7000 cluster
GatherPerf.pl Target directory (--StatsDir option)
ParsePerf.pl Source directory (--SourceDir option)
Formatted configuration files
ParseCfg.pl & ds8kParseCfg.pl Target directory (--TargetDir option)
CSV format even if extension is .txt during import into Excel, .csv extension
does convert some elements as number: for example an HBA port WWPN with
no letter and only figures would be transformed
ImportCfg.xlsm Source CSV files (2- Import CSV files button and macro)
Formatted performance files
ParsePerf.pl Target directory (--TargetDir option)
ImportPerf.xlsm Source CSV files (2- Import CSV files button and macro)

12
2013 IBM Corporation
SCRIPTS TO GATHER RAW DATA
13
2013 IBM Corporation
GatherCfg.cmd
This Windows command line script gathers SAN Volume Controller (SVC) and Storwize
V7000 the backup XML file of the configuration as well as some additional information
Prerequisite
Install Putty (with the plink and pscp executables)
Environment variables
If Putty installation directory is not in the PATH system variable, you may
want to uncomment (remove rem) and update the following line
rem cd c:\putty
You MUST provide a session name defined in Putty to access this SVC or
Storwize V7000 cluster
set PUTTYSESSIONNAME=SVC1
You MUST specify a directory name where you need to save the output files
and backup configuration files gathered by this script
set TGTDIR=.\Raw_Cfg
You MUST define the SSH and SCP sessions will be opened with the target SVC
or Storwize V7000 cluster
set SSH=plink -load %PUTTYSESSIONNAME% -l alexis
set PSCP=pscp -unsafe -load %PUTTYSESSIONNAME% alexis@10.2.20.20:
All output files will be renamed to contain the SVC or Storwize V7000 cluster
name to allow you to consolidate from here the configuration of multiple
systems
14
2013 IBM Corporation
ds8kGatherCfg.cmd
This Windows command line script gathers DS8000 configuration information
Prerequisite
Install DS CLI (The DS8000 command line interface)
Environment variables
If DS CLI installation directory is not in the PATH system variable, you may
want to uncomment (remove rem) and update the following line
rem cd c:\dscli
You MUST provide at least 1 Hardware Management Console IP address or hostname
for the DS8000 and if only 1 exist, you have to provide the same IP address or
hostname for the second HMC variable
set HMC1=9.188.68.200
set HMC2=9.188.68.200
You MUST specify a user ID and its password to access the HMC
set ID=admin
set PW=tuc3son
You MUST specify a directory name where you need to save the output files
and backup configuration files gathered by this script
set TGTDIR=.\Raw_Cfg
All output files will be renamed to contain the DS8000 HMC ID or Storage
Facility Image ID to allow you to consolidate from here the configuration of
multiple systems
15
2013 IBM Corporation
sonasGatherCfg.pl
This Perl script gathers SONAS and Storwize V7000 Unified configuration &
performance statistics then consolidate them into CSV files
With Storwize V7000 Unified, only the file side of the configuration will be gathered
Requirements
Install Putty (with the plink executables)
To get help use the following syntax: ParseCfg.pl --help
To view the man page use the following syntax: ParseCfg.pl --man
Install a Perl interpreter like Activeperl
http://www.activestate.com/activeperl/downloads
This script requires several Perl modules but they should all be part of any Perl base
install packages
For Unix environment, update the $ssh variable in the script (line 229)
Configuration and performance information will be added to any existing files in
the target directory Therefore the configuration and performance statistics of
multiple systems could be consolidated here

16
2013 IBM Corporation
sonasGatherCfg.pl - Options
Required Options
sonas <IP_mgmt_adress>: Specifies the SONAS or Storwize V7000 Unified cluster management
IP address or name (if defined in the DNS or hosts file)
Optional Options
user <user_name>: Specifies the user name to access SONAS or Storwize V7000 Unified cluster
Default is "admin
pwd <password>: Specifies the password for the above user name to
access SONAS or Storwize V7000 Unified cluster
Default is "admin
putty <session_name> (Windows only): Specifies the PuTTY session name
for the SONAS or Storwize V7000 Unified cluster
This option is only available for Windows environment.
TargetDir <directory_name>: Specifies the directory to save the CSV files
Default is ./Raw_cfg/" for Linux and .\Raw_Cfg\" for Windows
perf <none/day/week/month/year>: Specifies whether or not you want to
gather performance statistic
The window size can be provided (day, or week, or month, or year)
When "none" is specified, no performance statistics are gathered ("none" is also
the default value)
help: Shows help screen; Default is don't show
man: Shows man page; Default is don't show
debug: Sets debug mode; Debug mode displays all internal operations and leaves stats files in
scripts directory
Default is no debug mode

17
2013 IBM Corporation
GatherPerf.pl
This Perl script collects SVC and/or Storwize V7000 (storage module) cluster
performance statistics (IOSTATS) as well as a backup XML configuration file
generated by the command svcconfig backup, and stores them on local
directories
Requirements
Install Putty (with the plink and pscp executables)
To get help use the following syntax
> ParseCfg.pl --help
To view the man page use the following syntax
> ParseCfg.pl --man
Install a Perl interpreter like Activeperl
http://www.activestate.com/activeperl/downloads
This script requires several Perl modules but they should all be part of any Perl base
install packages
An IOSTAT file name is containing the node ID and timestamp Therefore the
performance statistics of multiple systems could be consolidated here
18
2013 IBM Corporation
GatherPerf.pl Performance files
Nn_stats_NODE_Name_YYMMDD_HHMMSS for nodes statistics
Clearly some of the largest files because it contains CPU, Cache, Partition, Ports and
Nodes statistics.
Nv_stats_NODE_Name_YYMMDD_HHMMSS for VDisks statistics
With large environments, these files can be larger than Nodes because a massive number
of statistics combined with a massive number of objects.
You only have up to 8 nodes in an SVC or Storwize V7000 cluster, while you have dozens,
hundreds or even thousands of VDisks.
Nm_stats_NODE_Name_YYMMDD_HHMMSS for MDisks statistics
Probably the smallest files because we always have a limited number of MDisks in a
system.
Nd_stats_NODE_Name_YYMMDD_HHMMSS for Drives statistics>
Larger files than MDisks but still not as large as Nodes or VDisk statistics because limited
number of stats even when we have a large amount of hard disk drives.
19
2013 IBM Corporation
GatherPerf.pl Options (1/2)
Required Options
svc <IP_mgmt_adres>s: Specifies the SVC or Storwize V7000 cluster management IP address or
name (if defined in the DNS or hosts file)
putty <session_name> (Windows only): Specifies the PuTTY session name for the SVC cluster;
This option is only available for Windows environment
Optional Options
user <user_name>: Specifies the user name for the SVC cluster
Default is "admin
interval <time>: Specifies the interval time (minute) for performance data collection
You can specify from 1 up to 60 minutes, default is "10"
With an interval of "1", it means that for 24 hours we would have 1,440 minutes, and therefore 5,760 files
To avoid dealing with a huge amount of IOSTATS files,
> If you monitor over a period of 24 hours, try to keep the interval at 10 minutes or above
> If you monitor over a period of 12 hours, try to keep the interval at 5 minutes
> Only gather statistics with 1 up to 4 minutes when troubleshooting performance, and therefore targeting 1 to 6 hours
window
> In large environments with many Virtual Disks and/or Managed Disks, the amount of performance statistics can use a
large capacity on disk and might bring challenges to transfer the data on the machine used to parse those files
Increase your interval
> When dealing with a large volume of files, you will need a lot of memory on the machine used to parse those statistics
help: Shows help screen; Default is don't show
man: Shows man page; Default is don't show
20
2013 IBM Corporation
GatherPerf.pl Options (2/2)
Optional Options (cont)
nochange: Specifies this option if you don't want to change interval time, clear all current
iostats files in the SVC or Storwize V7000 cluster
By default it changes interval time to 5 minutes, and clears all current iostats files in the SVC or Storwize
V7000 cluster
iterations <number>: Specifies the number of iterations for performance data collection;
When the number of iterations is set to "0", the script will run until you Ctrl+c it
Default is "0"
When the script is schedule to run periodically, be mindful that you do not want
the new kick-off be impacting the finishing one
> For example if you run an interval of 1 minutes, the last interval 1,440 of day 1 will
still run when the script is started on day 2 You should not request 1,440 intervals
to cover a day but 1439 intervals
> 10 minutes interval * 144 iterations for a day you need to request 143 intervals
if the script is schedule to run every day
> 5 minutes interval * 288 iterations for a day you need to request 287 intervals
if the script is schedule to run every day
> 1 minute interval * 1,440 iterations for a day you need to request 1,439 intervals
if the script is schedule to run every day
StatsDir <directory_name>: Specifies the directory to save iostats files
Default is "/tmp/scripts/iostats/" for Linux and AIX, and "C:\temp\scripts\iostats\
for Windows
The directory path can be short or long, but it MUST finish with \ on Windows and / on Unix
CfgDir <directory_name>: Specifies the directory to save the XML file with the backup of the
configuration
Default is "/tmp/scripts/config/" for Linux and AIX, and "C:\temp\scripts\config\" for Windows
The directory path can be short or long, but it MUST finish with \ on Windows and / on Unix
21
2013 IBM Corporation
SCRIPTS TO PARSE & FORMAT
DATA
22
2013 IBM Corporation
ParseCfg.pl
This Perl script parse backup XML configuration files for SVC and Storwize V7000
clusters generated by the command svcconfig backup or gathered by scripts such
as GatherCfg.cmd or GatherPerf.pl
It then converts them to CSV format and will even by default consolidate those
into an Excel file
Because Excel would convert automatically the format of some values when importing
CSV files, the generated files are CSV format but kept with ".txt" extensions
Requirements
To get help use the following syntax: ParseCfg.pl --help
To view the man page use the following syntax: ParseCfg.pl --man
Install a Perl interpreter like Activeperl
http://www.activestate.com/activeperl/downloads
This script requires several Perl modules:
Copy the file <toolbox install dir>/Perl modules/<32bit or 64bit/TreePP.pm into the directory <perl
install dir>\lib\XML\
Copy the directory <toolbox install dir>/Perl modules/Spreadsheet into the directory <perl install
dir>\lib\
23
2013 IBM Corporation
ParseCfg.pl - Options
Required Options
SourceDir <source_directory_name>: Specifies the source directory
where all XML and/or output of "svcinfo" commands (such as "svcinfo
lsfabric -delim ,") are stored
The XML files MUST have been created using the "svcconfig backup" command
or via the script GatherCfg.pl or GatherPerf.pl
> The best is to rename those XML files from the original name "svc.config.backup.xml
to a new name "<cluster_name>.xml
The directory path can be short or long, but it MUST finish with \ on Windows
and / on Unix
TargetDir <directory_name>: Specifies the target directory where all
output CSV files of this script will be stored
The directory will be deleted then recreated each time this script is running
The directory path can be short or long, but it MUST finish with \ on Windows
and / on Unix
Optional Options
help: Shows help screen
Default is don't show
man: Shows man page
Default is don't show
24
2013 IBM Corporation
ds8kParseCfg.pl
This Perl script parse output DS CLI files gathered using the script
ds8kGatherCfg.cmd
It then converts them to CSV format and will even by default consolidate those
into an Excel file
Because Excel would convert automatically the format of some values when importing
CSV files, the generated files are CSV format but kept with ".txt" extensions
Requirements
To get help use the following syntax: ds8kParseCfg.pl --help
To view the man page use the following syntax: ds8kParseCfg.pl --man
Install a Perl interpreter like Activeperl
http://www.activestate.com/activeperl/downloads
This script requires several Perl modules:
Copy the file <Toolbox install dir>\Perl_Modules\TreePP.pm into the directory <Perl install
dir>\lib\XML\
Copy the directory <Toolbox install dir>\Perl_Modules\Spreadsheet\ in to the directory <perl
install dir>\lib\
25
2013 IBM Corporation
ds8kParseCfg.pl - Options
Required Options
SourceDir <source_directory_name>: Specifies the source directory
where all DS CLI output files are stored
The output files MUST have been created using script ds8kGatherCfg.pl
The directory path can be short or long, but it MUST finish with \ on Windows
and / on Unix
TargetDir <directory_name>: Specifies the target directory where all
output CSV files of this script will be stored
The directory will be deleted then recreated each time this script is running
The directory path can be short or long, but it MUST finish with \ on Windows
and / on Unix
Optional Options
help: Shows help screen
Default is don't show
man: Shows man page
Default is don't show
26
2013 IBM Corporation
ParsePerf.pl
This Perl script parse all SVC and Storwize V7000 performance statistics (IOSTATS)
contained in a source directory and put them in a target directory in a CSV format
after
Averages were calculated when dealing with counters
And statistics added when the same object is defined across multiple nodes (Managed
Disks, Drives, Virtual Disks)
It then converts them to CSV format
Because Excel would convert automatically the format of some values when importing
CSV files, the generated files are CSV format but kept with ".txt" extensions
Requirements
To get help use the following syntax: ParsePerf.pl --help
To view the man page use the following syntax: ParsePerf.pl --man
Install a Perl interpreter like Activeperl
http://www.activestate.com/activeperl/downloads
This script requires several Perl modules:
Copy the file <Toolbox install dir>\Perl_Modules\TreePP.pm into the directory <Perl install
dir>\lib\XML\
27
2013 IBM Corporation
ParsePerf.pl - Options
Optional Options
SourceDir <directory_name>: Specifies the directory with the iostats
files gathered using the script GatherPerf.pl
Default is "/tmp/scripts/iostats/" for Linux and AIX,
and "C:\temp\scripts\iostats\" for Windows
The directory path can be short or long, but it MUST finish with \ on Windows
and / on Unix
TargetDir <directory_name>: Specifies the directory where you want
to dump all the performance statistics calculated via this script
Default is "/tmp/scripts/output/" for Linux and AIX,
and "C:\temp\scripts\output\" for Windows
The directory path can be short or long, but it MUST finish with \ on Windows
and / on Unix
help: Shows help screen
Default is don't show
man: Shows man page
Default is don't show
debug: Sets debug mode; Debug mode displays all internal operations
Default is no debug mode

28
2013 IBM Corporation
MS EXCEL FILES TO IMPORT
FORMATTED DATA
29
2013 IBM Corporation
Microsoft Excel 2007 & 2010
Steps are numbered in the file:
1. Delete existing worksheets
Will not delete the ones we need to keep (ie. STATS with performance statistics)
2. Import CSV files
Selecting CSV files generated by the ParseCfg.pl and ParsePerf.pl scripts
3. Format header
Only for performance statistics
Headers or the columns are formatted using the STATS worksheet
4. Select Performance Statistics
Only for performance statistics
To generate the charts and pivot tables
Links to generated worksheets are automatically created and another on top of
each worksheet is created to return to the MAIN worksheet
With Excel 2007 & 2010, the maximum number of rows per worksheet is
"1,048,340
None of the Excel files and macros were created for old version of Excel
30
2013 IBM Corporation
Example - ImportCfg.xlsm
1
st
use the 1- Delete all worksheets to delete old configuration worksheets
If only the MAIN worksheet exist, this step is not required
2
nd
use the 2- Import CSV files then select all the files formatted with the
ParseCfg.pl scripts
In our sample output provided in the comment/notes of the slides GatherCfg.cmd and
ParseCfg.pl, we would be pointing at the directory
> C:\temp\Toolbox\SVC_SWV7000\Formatted_Cfg\
31
2013 IBM Corporation
Summary worksheet and capacity by Pool
Including Capacity History
32
New!
2013 IBM Corporation
Example statistics generated by this tool
33
Total IOps per MDisk
Maximum Cache Fullness Percentage per node
CPU Utilisation Percentage per node
2013 IBM Corporation
List of Excel files provided in the Toolbox
To import SVC and Storwize V7000 configuration files
ImportCfg.xlsm Import output generated by the script ParseCfg.pl
To import SONAS and Storwize V7000 Unified file modules configuration and
performance files
sonasImportCfg.xlsm Import output generated by the script sonasGatherCfg.pl
To import SVC and Storwize V7000 performance files
ImportPerf.xlsm Import output generated by the script ParsePerf.pl
To import DS8000 configuration files
ds8kImportCfg.xlsm Import output generated by the script ds8kParseCfg.pl
To import XIV configuration files
xivImportCfg.xlsm Import output generated by the script xivParseCfg.pl
To import XIV performance files
xivImportPerf.xlsm Import output from XIV GUI or CLI
To import DS3000, DS4000, DS5000 & DCS3700 configuration files
ds5kImportCfg.xlsm Import output generated by the script ds5kParseCfg.pl
To import DS3000, DS4000, DS5000 & DCS3700 performance files
ds5kImportPerf.xlsm Import output generated by the script ds5kParsePerf.pl
To import TPC exported performance statistics in CSV format with ALL columns
including header
tpcImportPerf.xlsm
34
2013 IBM Corporation
SCRIPTS TO MANAGE COPY
SERVICES
35
2013 IBM Corporation
Site 1 - Datacentre 1
Powershell script written for SVC & Storwize V7000 in a VMware environment:
It performs Failover & Failback of Remote Copy (RC) consistency groups and optionally create
or reuse a FlashCopy (FC) consistency groups at the recovery site
When replicating from Site 1 to Site 2 Production on H1, Failover to H2






When replication from Site 2 to Site 1 Production on H1, Failover to H2






Note: you could have a consistency group with its associated datastores replicating
from Site 1 to Site 2, while another consistency group with its associated
datastores is replicating from Site 2 to Site 1
Scripted Disaster Recovery for VMware
36
H1 H2 T2
H2 H1 T2
Site 1 - Datacentre 1 Site 2 - Datacentre 2
Remote Copy
FlashCopy
Production
Production
Practice (test)
Failover
Remote Copy
FlashCopy
Practice (test)
Failover
Site 2 - Datacentre 2
2013 IBM Corporation
MultiFCCG.pl
This Perl script was written for SVC & Storwize V7000 to create multiple
Consistency Points at the Disaster Recovery site using target Remote Copy
volumes
Requirements
Install Putty (with the plink and pscp executables)
To get help use the following syntax: MultiFCCG.pl --help
To view the man page use the following syntax: MultiFCCG.pl --man
Install a Perl interpreter like Activeperl
http://www.activestate.com/activeperl/downloads





This script requires several Perl modules but they
should all be part of any Perl base install packages

37
H1 H2
T2
Production
Remote Copy
FlashCopy
Production
Recovery Site
N
N-1
N-2
N-3
N-4
Please refer to the Business Continuity Architecture Example 4 of the slide deck IBM Storwize V7000-Overview-v7.2.pptx for the pros and cons of such solution
2013 IBM Corporation
MultiFCCG.pl Options (1/2)
Required Options
svc <IP_mgmt_adress>: Specifies the SVC cluster management IP address or name (if defined
in the DNS or hosts file)
user <user_name>: Specifies the user name for the SVC cluster
Default is "admin
putty <session_name> (Windows only): Specifies the PuTTY session name for the SVC cluster
This option is only available for Windows environment.
rccg <Remote_Copy_Consistency_Group_name>: Consistency Group re-grouping H1 to H2
remote copy relationships
It should be a single Remote Copy Consistency Group name
fccg <FlashCopy_Consistency_Group_name>: Consistency Group re-grouping H2 to T2
FlashCopy mappings
There will be multiple FlashCopy Consistency Group
<SVC_FC_CONSISTGRP_PREFIX><VERSION_NUMBER>
> VERSION_NUMBER will be defined based on the most recently used (most recent start_time) version and will not
exceed the FC_CG_VERSIONS
versions <number_of_fccg_versions>: Number of FlashCopy Consistency Groups to keep.
It can also be considered as the recovery depth
Once you reach this version number limit, you return to version 1 and resycn (start) the FlashCopy
Consistency Group
38
2013 IBM Corporation
MultiFCCG.pl Options (2/2)
Optional Options
help: Shows help screen
Default is don't show.
man: Shows man page
Default is don't show
debug: Sets debug mode
Debug mode displays all internal operations and leaves stats files in scripts directory
Default is no debug mode
39
2013 IBM Corporation
OTHER SCRIPTS
40
2013 IBM Corporation
ExtractColumnsCSV.pl
This Perl script extracts columns from a CSV file
The goal is for very large environments with huge Vdisk performance statisitics to isolate
the important columns from the rest to reduce the size of the CSV file before
importing it
It would also allow to split a long period into multiple shorter periods
It can also split the output into multiple files when a certain number of intervals
have been reached
This is done to avoid have more rows in Excel than actually supported
Output file(s) is(are) stored in the same source directory (where the source CSV
file is stored)
Always run the header option first to know what column numbers to extract
Required Options
file <source_file & path>: Specifies the source CSV file from which we need to extract
columns
It may contain the full path to the file
For example on Unix "--file /tmp/scripts/output/file.csv" or on Windows "--file
C:\temp\scripts\output\file.csv"
41
2013 IBM Corporation
ExtractColumnsCSV.pl - Options
Optional Options
columns <columns number comma separated>: Specifies the columns number to extract
from the CSV file (should not be used with the option "--header")
User may want to first use the option "--header" to view the list of columns number for each
column header value.
For example "--columns 1,2,3,4,39,43".
header: Specifies that you want to view the list of columns number for each column
header value (should not be used with the option "--columns")
For example "header
intervals <integer_number>: Specifies the number of intervals to extract in each batch
Once this value is reached, a new output file is used
> It could be also compared to the granularity used to split rows into multiple files
By default all intervals are part of a single extract file by the using the default value of "0
With Excel 2007 & 2010, the maximum number of rows per worksheet is "1,048,340
> When you reach this limit, this script will fail and display the maximum number of intervals that you can have in
a batch (extract)
help: Shows help screen
Default is don't show
man: Shows man page
Default is don't show

42
2013 IBM Corporation
More scripts not documented
GatherSvcsnap.pl
Generate and gather an svcsnap with or without livedump, on request or triggered by an
event ID
SAN switches & directors
brcdExecCmd.pl
brcdExecCmdSupportSave.pl
brcdFciptunnel.pl
portperfshow2CSV.pl
Unix IOSTATS
IOSTAT2CSV.pl
FlashCopy
sourceFlashcopy.ksh & targetFlashcopy.ksh
FCM4Exchange_Backup.cmd & CheckFcmSchedules.ps1
srcvssbkp.cmd & tgtvssbkp.cmd
OS configuration
WIN_GatherStorageCfg.cmd & WIN_ParseStorageCfg.pl
AiX_GatherStorageCfg.sh
SOLARIS_GatherStorageCfg.ksh
VMW_GatherStorageCfg.ps1
43
Always use myperlscript.pl help to get
command syntax with any Perl script
C:\Toolbox\Config\SAN>brcdExecCmd.pl --user toolbox --password
mypassword --switches 10.2.20.6:10.2.20.9:10.2.20.11 --cmd
portperfshow --period 60 --TargetDir .\output\

brcdExecCmd.pl starts with the following options ...
User ID: toolbox
Password: *******
Switches: 10.2.20.6:10.2.20.9:10.2.20.11
Directory for output file: .\output\
FOS CLI command to execute: portperfshow
Operating System type:
Run command portperfshow on the switch 10.2.20.6
Run command portperfshow on the switch 10.2.20.9
Run command portperfshow on the switch 10.2.20.11
2013 IBM Corporation
44
innovation that matters
Question and Answer Time
2013 IBM Corporation
45
Copyright 2012 by International Business Machines Corporation.

No part of this document may be reproduced or transmitted in any form without written permission from IBM Corporation.
Product data has been reviewed for accuracy as of the date of initial publication. Product data is subject to change without notice. This information
could include technical inaccuracies or typographical errors. IBM may make improvements and/or changes in the product(s) and/or programs(s) at
any time without notice. Any statements regarding IBM's future direction and intent are subject to change or withdrawal without notice, and
represent goals and objectives only.
References in this document to IBM products, programs, or services does not imply that IBM intends to make such such products, programs or
services available in all countries in which IBM operates or does business. Any reference to an IBM Program Product in this document is not
intended to state or imply that only that program product may be used. Any functionally equivalent program, that does not infringe IBM's
intellectually property rights, may be used instead. It is the user's responsibility to evaluate and verify the operation of any on-IBM product, program
or service.
THE INFORMATION PROVIDED IN THIS DOCUMENT IS DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED.
IBM EXPRESSLY DISCLAIMS ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
NONINFRINGEMENT. IBM shall have no responsibility to update this information. IBM products are warranted according to the terms and
conditions of the agreements (e.g., IBM Customer Agreement, Statement of Limited Warranty, International Program License Agreement, etc.)
under which they are provided. IBM is not responsible for the performance or interoperability of any non-IBM products discussed herein.
The provision of the information contained herein is not intended to, and does not, grant any right or license under any IBM patents or copyrights.
Inquiries regarding patent or copyright licenses should be made, in writing, to:

IBM Director of Licensing
IBM Corporation
North Castle Drive
Armonk, NY 10504-1785
U.S.A.

Trademarks
The following terms are trademarks of International Business Machines Corporation in the United States, other countries, or both. Other company,
product, and service names may be trademarks or service marks of others:
IBM, the IBM logo, ON (logo) DEMAND BUSINESS, DB2, Enterprise Storage Server, FlashCopy, POWER5, Tivoli, TotalStorage, TotalStorage
Proven, System Storage, System p, System i, System x, System z, AIX, eServer, xSeries, pSeries, iSeries, zSeries, and BladeCenter
Notice, Disclaimer, and Trademark Information

Das könnte Ihnen auch gefallen