Monitoring Performance
Recovery Appliance ships with two utilities—rastat.pl and network_throughput_test.sh—that can assist you in evaluating the performance of your system.
Generating Performance Statistics by Using the rastat Utility
rastat.pl
is a command line utility that runs tests against the Recovery Appliance to gather performance statistics which can help you identify system bottlenecks.
The tests can generate statistics on:
-
backup data sent to the Recovery Appliance over the network
-
restore data received from the Recovery Appliance over the network
-
Recovery Appliance ASM disk group read or write I/O
-
Recovery Appliance container file read or write I/O
-
Recovery Appliance container file allocation rate
The utility is a Perl script that can be run from any Linux or Unix-based client machine that is either a protected database or an upstream Recovery Appliance. The I/O tests however, can also be run directly from the Recovery Appliance server.
You can run multiple tests in parallel on one or more protected databases to simulate a real environment. Each test result represents the performance of an individual client. Note that ongoing activities between other protected databases and the Recovery Appliance being tested, such as backup and restore or other testing, can impact the resulting statistics.
Prerequisites for Running the rastat Utility
Before you run the rastat utility, ensure that the following requirements are met:
-
The platform on which you will be running rastat is either Linux or Unix.
-
If you will be running the utility from a protected database, copy the
rastat.pl
file from the/opt/oracle.RecoveryAppliance/client/
directory of a Recovery Appliance compute server to the protected database. -
Complete the steps to enroll the protected database with the Recovery Appliance as described in "Enrolling Protected Databases".
-
Ensure that the
$ORACLE_HOME
and$ORACLE_SID
environment variables are configured if you do not plan to set them by using the applicable options when you run the utility.
Running the rastat Utility
This section describes how to run rastat.pl and provides several examples of how to execute various performance tests, along with sample output.
Note:
If the NETBACKUP
and NETRESTORE
tests do not display the results to the standard output, you can view results by looking at the sbtio<pid>.log files.
To run the rastat utility:
-
Ensure that the system from which you are running the utility meets the requirements, as described in "Prerequisites for Running the rastat Utility".
-
Open a command prompt window.
-
Enter the applicable command syntax for the tests you want to run, and press Enter.
Refer to the "rastat Utility Reference" for information about the general syntax and the options for each test.
Example 1: Running rastat to Test Backup Performance
In the following example, the NETBACKUP
test is specified, the backup file size is set to 2048 megabytes, the Recovery Appliance VPC user connection string is supplied, and the RMAN configuration is set by using the --parms
option.
>$ORACLE_HOME/perl/bin/perl rastat.pl --test=NETBACKUP --filesize=2048M --catalog=rman/rman@inst2 --parms='SBT_LIBRARY=/u01/oracle/lib/libra.so, ENV=(RA_WALLET=location=file:/u01/oracle/dbs/ra_wallet credential_alias=ra-scan:1521/zdlra5:dedicated)' NETWORK TEST FROM PROTECTED DATABASE TO RECOVERY APPLIANCE 393 MB/s, 2048 MB sent
Example 2: Running rastat to Test I/O Reads from a Recovery Appliance ASM Disk Group
In the following example, the ASMREAD
test is specified, the test file size is set to 2048 megabytes, the Recovery Appliance SYS user connection string is supplied, and +RCVAREA
is specified as the disk group to read from.
>$ORACLE_HOME/perl/bin/perl rastat.pl --test=ASMREAD --filesize=2048M --rasys=admin/admin@inst2 --diskgroup=+RCVAREA RECOVERY APPLIANCE READ IO TEST FROM DISK Disk Group: +RCVAREA 2048 MB, 6.06s read IO time, .65s CPU time, 337.99 MB/s, 10.79% CPU usage PL/SQL procedure successfully completed.
Example 3: Running rastat to Test I/O Writes to a Recovery Appliance Container Group
In the following example, the CONTAINERWRITE
test is specified, the test file size is set to 2048 megabytes, the Recovery Appliance SYS user connection string is supplied, and the BLOCK_POOL
container group is specified as the disk group to write to.
>$ORACLE_HOME/perl/bin/perl rastat.pl --test=CONTAINERWRITE --filesize=2048M --rasys=admin/admin@inst2 --diskgroup=/:BLOCK_POOL RECOVERY APPLIANCE WRITE IO TEST TO CONTAINER FILES Disk Group: /:BLOCK_POOL 2048 MB, 9.55s write IO time, 3.50s CPU time, 214.35 MB/s, 36.60% CPU usage PL/SQL procedure successfully completed.
Example 4: Running rastat to Test File Allocation to a Recovery Appliance Container Group
In the following example, the CONTAINERALLOC
test is specified, the test file size is set to 2048 megabytes, the Recovery Appliance SYS user connection string is supplied, and the BLOCK_POOL
container group is specified as the disk group to write to.
>$ORACLE_HOME/perl/bin/perl rastat.pl --test=CONTAINERALLOC --filesize=2048M --rasys=admin/admin@inst2 --diskgroup=/:BLOCK_POOL RECOVERY APPLIANCE CONTAINER FILE ALLOCATION TEST Disk Group: /:BLOCK_POOL 2048 MB, 6.24s allocation time, 3.69s CPU time, 328.34 MB allocated per second, 59.09% CPU usage PL/SQL procedure successfully completed.
Testing Network Throughput
You can measure theoretical network throughput in a Recovery Appliance environment by using the network_throughput_test.sh script that ships with the appliance.
See My Oracle Support Note Doc ID 2022086.1 (http://support.oracle.com/epmos/faces/DocumentDisplay?id=2022086.1
) for information and instructions on how to use the utility.