Uploaded by Ankit Joshi

HPE c05176434 HPE Serviceguard Toolkit for Oracle on Linux User Guide, June 2016

advertisement
HPE Serviceguard Toolkit for Oracle
on Linux User Guide
Abstract
This guide describes instructions for configuring an Oracle single instance in a Serviceguard cluster on Linux and to integrate
an Oracle database server with HPE Serviceguard for Linux.
Part Number: 766173-004
Published: June 2016
Edition: 4
© Copyright 2015 Hewlett Packard Enterprise Development LP
The information contained herein is subject to change without notice. The only warranties for Hewlett Packard Enterprise products and services
are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting
an additional warranty. Hewlett Packard Enterprise shall not be liable for technical or editorial errors or omissions contained herein.
Confidential computer software. Valid license from Hewlett Packard Enterprise required for possession, use, or copying. Consistent with FAR
12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed
to the U.S. Government under vendor's standard commercial license.
Links to third-party websites take you outside the Hewlett Packard Enterprise website. Hewlett Packard Enterprise has no control over and is not
responsible for information outside the Hewlett Packard Enterprise website.
Acknowledgments
Oracle ® is a registered trademark of Oracle Corporation.
Linux is a registered trademark of Linus Torvalds.
Contents
1 Overview..............................................................................................................5
Advantages...........................................................................................................................................5
Prerequisites.........................................................................................................................................5
Hardware support.................................................................................................................................5
2 Installing and uninstalling HPE Serviceguard toolkit for Oracle..........................6
Installing Oracle toolkit..........................................................................................................................6
Upgrading Oracle toolkit.......................................................................................................................6
Uninstalling Oracle toolkit.....................................................................................................................7
Files and directories created for HPE Serviceguard toolkit for Oracle after installation.......................7
Rolling Upgrade..................................................................................................................................10
3 Supported configuration....................................................................................11
Without Automatic Storage Management...........................................................................................11
Shared configuration.....................................................................................................................11
Multiple instance configuration......................................................................................................11
With Automatic Storage Management................................................................................................12
4 Using HPE Serviceguard toolkit for Oracle.......................................................13
Configuring modular Oracle ASM instance and Database instance toolkit packages........................13
Configuring modular Oracle database package without ASM.......................................................13
Configuring modular ASM instance package................................................................................19
Managing a package..........................................................................................................................30
Adding the package to the cluster.................................................................................................30
Running a package........................................................................................................................30
Maintaining a package...................................................................................................................31
Online Modification of the Oracle Toolkit package........................................................................32
Handling failures during online package reconfiguration.........................................................34
Halting a package..........................................................................................................................35
Deleting a package........................................................................................................................35
5 Oracle toolkit features........................................................................................37
Alert mail notification...........................................................................................................................37
Cluster verification feature for Oracle toolkit.......................................................................................37
Support for sourcing user defined environment variables for Oracle instance..............................39
6 Supporting Oracle features................................................................................40
Support for Oracle 12c Multitenant architecture.................................................................................40
Support for multiple listeners..............................................................................................................41
Single service to monitor all the listeners together........................................................................41
A separate service to monitor each listener..................................................................................42
Support for user defined database services.......................................................................................43
Support for database hang detection..................................................................................................43
Support for Oracle database backup mode........................................................................................44
7 Troubleshooting.................................................................................................45
8 Support and other resources.............................................................................46
Accessing Hewlett Packard Enterprise Support.................................................................................46
Accessing updates..............................................................................................................................46
Websites.............................................................................................................................................46
Customer self repair...........................................................................................................................47
Remote support..................................................................................................................................47
Documentation feedback....................................................................................................................47
Contents
3
A Sample package configuration file for Oracle database modular package without
ASM......................................................................................................................48
B Sample package configuration file for Oracle ASM instance package and
database modular package..................................................................................49
C Sample package configuration file for Oracle multitenant database with
pluggable databases configured for monitoring-..................................................51
Glossary...............................................................................................................52
Index.....................................................................................................................53
4
Contents
1 Overview
HPE Serviceguard toolkit for Oracle on Linux enables you to configure an Oracle single instance
in a Serviceguard cluster on Linux and integrate an Oracle database server with Serviceguard
for Linux (SGLX). This toolkit consists of a set of scripts that are used to start, stop, and monitor
an Oracle database instance, Automatic Storage Management (ASM) instance, and the configured
listeners.
Advantages
Following are the advantages of Serviceguard toolkit for Oracle:
•
Allows easy integration of Oracle application in a Serviceguard environment.
•
Provides high availability to Oracle database and ASM instances.
•
Provides high availability to Oracle 12c Container Database (CDB).
•
Serviceguard has monitoring capabilities to check the system resources such as network,
volume groups and files systems. It also initiates a failover, in the instance of the failure of
these system resources.
•
You can configure the packages using Serviceguard Manager. For more information, see
Managing HPE Serviceguard for Linux at http://www.hpe.com/info/
linux-serviceguard-docs.
Prerequisites
Following are the prerequisites for Serviceguard toolkit for Oracle:
•
Serviceguard for Linux must be installed on all the nodes in the cluster.
•
Oracle application must be installed on all the package nodes.
•
Shared storage must be connected to all the package nodes.
Hardware support
Unless otherwise stated, this toolkit runs on all hardware supported by SGLX.
Advantages
5
2 Installing and uninstalling HPE Serviceguard toolkit for
Oracle
This chapter covers the details related to installing, uninstalling, and upgrading the Oracle toolkit.
Installing Oracle toolkit
Oracle toolkit RPM must be installed on all the nodes of the cluster that is configured to run the
Oracle toolkit package. For a fresh installation of the Oracle toolkit, run the following command:
rpm -ivh serviceguard-oracle-toolkit-<version
number>.<OS_destro>.noarch.rpm
For example:
rpm -ivh serviceguard-oracle-toolkit-A.12.00.x-00.sles.noarch.rpm
Upgrading Oracle toolkit
IMPORTANT: The cmupgrade command is a new tool introduced in Serviceguard for Linux
A.12.00.00 which helps you upgrade Serviceguard and its components such as Serviceguard
Manager, Toolkits, Extended Distance Cluster, etc. This command can be used to perform online
or offline upgrade of Serviceguard across major versions starting from A.11.20.00 and later. It
is recommended to use this command to upgrade the Oracle toolkit. For more information on
this command see HPE Serviceguard for Linux Release Notes at http://www.hpe.com/info/
linux-serviceguard-docs.
To follow the usual method to upgrade an already installed version of the Oracle toolkit, run the
following command:
rpm -Uvh serviceguard-oracle-toolkit-<version
number>.<OS_destro>.noarch.rpm
For example:
rpm -Uvh serviceguard-oracle-toolkit-A.12.00.x-00. redhat.noarch.rpm
The files are installed in the following directories:
•
$SGROOT/oracletoolkit
•
$SGCONF/scripts/tkit/oracle
•
$SGCONF/modules/tkit/oracle
The packages that are created before the installation of RPM will continue to run and you can
halt these packages, and failover them without any issues. However, they cannot be modified
and reapplied.
To use the new features bundled with this RPM, delete the old packages and recreate them
using the new scripts.
NOTE: If you have upgraded from any previous version to A.12.00.00, then ensure you include
the new module version in to the existing packages.
6
Installing and uninstalling HPE Serviceguard toolkit for Oracle
Uninstalling Oracle toolkit
To uninstall the Oracle toolkit:
•
To search the version of Oracle toolkit, run the following command:
# rpm –qa | grep oracle-toolkit
•
To remove the earlier version of Oracle toolkit, run the following command:
# rpm –e <oracle toolkit name retrieved after executing the # rpm
–qa | grep oracle-toolkit>
Files and directories created for HPE Serviceguard toolkit for Oracle after
installation
The following table describes the scripts and files that are installed.
Uninstalling Oracle toolkit
7
Table 1 Scripts for Serviceguard toolkit for Oracle
File name
Description
haoracle.sh
This script contains a list of internally $SGROOT/oracletoolkit
used variables and functions that
start, stop, and monitor Oracle CDB,
non CDB instance, and ASM
instances.
The toolkit.sh script invokes the
haoracle.sh script to perform the
following:
• On package startup, it starts the
database or ASM instance. It also
starts the monitor processes.
• On package halt, it stops the
database or ASM instance, and
monitor processes. In case of
database instance, it also stops
listener process(es).
haoracle_sql.sh
This script contains functions for
starting, stopping, and monitoring
Oracle CDB, non CDB instances, and
configured listeners. This script also
supports starting Pluggable
Databases (PDBs) in the context of
CDB in READ WRITE mode, when
CDB is started in open mode. The
haoracle.sh script invokes
haoracle_sql.sh script.
haoracle_utils.sh
This script is a utility script which
contains the common functions used
by other oracle toolkit scripts.
haoracle.mon
This script contains a list of internally
used variables and functions for
monitoring an Oracle server instance.
The haoracle.sh script invokes this
script.
By default, the following processes
are monitored:
• ora_pmon_$ORACLE_SID_NAME
• ora_smon_$ORACLE_SID_NAME
• ora_lgwr_$ORACLE_SID_NAME
• ora_dbwr_$ORACLE_SID_NAME
• ora_ckpt_$ORACLE_SID_NAME
• ora_reco_$ORACLE_SID_NAME
NOTE: $ORACLE_SID_NAME is
the session id name of the Oracle
instance.
These process names are contained
in the variable
MONITOR_PROCESSES. To include
other Oracle processes that need to
be monitored, update the
MONITOR_PROCESSES package
parameter.
8
Installing and uninstalling HPE Serviceguard toolkit for Oracle
Available in directory
Table 1 Scripts for Serviceguard toolkit for Oracle (continued)
File name
Description
Available in directory
NOTE: If you have upgraded from
any previous version to A.12.00.00,
then ensure you include the new
module version to see the above
mentioned changes.
halistener.mon
This is the listener monitor script. The
haoracle.sh script invokes the
halistener.mon script to monitor the
configured listeners.
hadbhang.mon
hadbhang.mon script monitors the
Oracle CDB and non CDB instances
for possible “hung” state. Also, the
script monitors the status of PDB in
the context of CDB and sends email
alerts to the email id’s configured in
the package if the status of PDB is in
UNUSABLE state.
haoraclepdb.mon
haoraclepdb.mon script monitors
the accessibility to the Oracle 12c
pluggable database. If the PDB is not
accessible, a failover of the
package(CDB) is initiated.
hagetdbstatus.sh
This script is used to check the status
of CDB and non CDB instances. This
script is a utility script which contains
the common functions used by other
Oracle toolkit scripts.
hatimeoutdbhang.sh
This script checks whether a process
with the specified PID exists. If the
process exists, then it kills the
process and exits.
toolkit.sh
This script is the interface between
the toolkit module script and the
package startup script.
oracle.1
This is an attribute definition file, used $SGCONF/modules/tkit/oracle/
to generate a package ASCII
oracle.1
template in modular style of
packaging.
NOTE: This module file is
applicable only for the packages
created by using the previous Oracle
toolkit versions.
oracle.2
This is an attribute definition file, used $SGCONF/modules/tkit/oracle/
to generate a package ASCII
oracle.2
template in modular style of
packaging.
oracle.3
This is an attribute definition file which $SGCONF/modules/tkit/oracle/
is used to generate a package ASCII oracle.3
template in modular style of
packaging.
Files and directories created for HPE Serviceguard toolkit for Oracle after installation
9
Table 1 Scripts for Serviceguard toolkit for Oracle (continued)
File name
Description
Available in directory
oracle.4
This is an attribute definition file,
which is used to generate package
ASCII template from oracle toolkit
version 12.00.50.
$SGCONF/scripts/tkit/oracle
tkit_module.sh
The Serviceguard master control
script invokes this script. This script
acts as an interface between the
Serviceguard master control script
and the toolkit interface script,
toolkit.sh.
$SGCONF/scripts/tkit/oracle
Rolling Upgrade
The toolkit package nodes in a cluster can be upgraded with the new toolkit, on one node at a
time, by following the steps below:
1. Backup the package directory and any package control scripts.
2. Move the running Oracle toolkit packages from the node that is being upgraded to another
package node.
3. Upgrade the Oracle toolkit using the following command:
rpm -Uvh
serviceguard-oracle-toolkit<version_number>.<OS_distro>.noarch.rpm
4.
Verify the installation using the following command:
# rpm -q serviceguard-oracle-toolkit
The system displays the following output:
serviceguard-oracle-toolkit-<version_number>
At this point, packages can be migrated back to the current node.
5.
10
Repeat all the above steps on all the other toolkit package nodes in the cluster.
Installing and uninstalling HPE Serviceguard toolkit for Oracle
3 Supported configuration
This section explains the following supported configurations for Oracle CDB and non CDB toolkit
packages:
•
Without Automatic Storage Management
•
With Automatic Storage Management
Without Automatic Storage Management
This section explains how to configure an Oracle CDB and non CDB instance package without
ASM in a Serviceguard environment. You can configure Oracle CDB and non CDB instance
package using one of the following ways:
•
Shared configuration
•
Multiple instance configuration
Shared configuration
In this configuration method, the configuration and database files are kept on shared disks but
you can place the Oracle binaries on the local storage. Since the configuration files and data
files reside on a shared location, you need not ensure that all the nodes have the same
configuration. Alternatively, you can place the Oracle binaries too on the shared location along
with the configuration and database files.
A password file that is, orapw${SID_NAME} must be created for each Oracle instance in the
configuration directory. The password file is created via the orapwd utility.
To use Serviceguard toolkit for Oracle with Oracle 10g, 11g, and 12c, ensure that all the Oracle
binaries reside locally on each cluster node and do not reside on a shared volume group. You
can use one of the following steps:
•
Install Oracle 10g, 11g, and 12c software on all the cluster nodes. Ensure that the database
related files (that is, all control files, data files, and log files) reside on a shared volume group.
The Oracle binaries however reside locally on each node. For 12c CDB databases, ensure
that all the database related files of each PDB in the context of CDB resides on a shared
volume group.
•
Install Oracle 10g, 11g, and 12c software on all the cluster nodes. Place the Oracle binaries
as well as the database related files on a shared volume group.
NOTE:
•
The Oracle binaries can reside on a shared disk for Oracle 11g. For Oracle 11g, if the binaries
are located on shared disk, then do not configure Oracle ASM on that node.
•
If multiple Oracle database instances are configured, you cannot use shared storage to keep
the Oracle binaries. If you are configuring multiple instances of Oracle db, Hewlett Packard
Enterprise recommends that you keep the Oracle binaries only on a local storage.
•
Hewlett Packard Enterprise recommends that you use local storage for Oracle binary
installation. During a Oracle patch update, the toolkit allows users to run the oracle instance
on any other package nodes during a failure.
Multiple instance configuration
Oracle supports multiple DB instances running on a node, simultaneously. This allows you to
move one instance from its own node while leaving another instance up. Each node runs several
instances. Each Oracle package corresponds to a separate Oracle database server instance
with its own SID_NAME, unique volume group, logical volume, and file system for storing control
Without Automatic Storage Management
11
files, data files, and redo-log files. The configuration details for each instance must be identical
for each node configured to run that instance.
With Automatic Storage Management
ASM instance can be managed with the Serviceguard toolkit for Oracle. This toolkit makes use
of the multi-node package and package dependency feature to integrate ASM with Serviceguard.
MNP (Multi-node Package) is used to encapsulate the per node ASM instances, with one or
more Oracle database instance failover packages dependent on this MNP. This configuration
enables the database instance to start up in the right order in relation to the ASM instance, and
in the event of a failover, to relocate only to a node where an ASM instance is available.
To configure Oracle database using ASM in a Serviceguard environment:
1. Configuring ASM in a Serviceguard environment and creating the ASM instance.
a. Configure logical volumes or devices to be used in the ASM disk groups.
b. Install the Oracle standalone server GRID (needed in 11gR2) and ASM binaries in local
storage on all the nodes. You can skip the step c, in case ASM instance is created
through OUI during install.
c. Create the ASM instance on one node by creating a ASM disk group (DG) with raw
logical volumes or raw devices. Ensure that logical volume or raw device used here are
accessible from all the cluster nodes.
d. Create the ASM instance on the other cluster nodes by specifying different ASM DG
name and using different raw logical volumes or raw devices.
e. Copy the parameter file or server parameter file of the ASM instance to all the nodes
with appropriate file permissions.
2.
12
Creating the Oracle database in a Serviceguard environment.
a. Install the Oracle binaries on local storage in ORACLE_HOME on all the nodes configured
in the cluster.
b. Create the database instance on one node by choosing the storage option as Automatic
storage management in "dbca" GUI. Mention the ASM DG name which has been created
on that node as the Storage name.
c. Optional: Configure a listener.
d. Copy the parameter file or server parameter file of the database instance to all the nodes
with appropriate file permissions.
e. Distribute the listener configuration file if listener is configured, listener.ora from
${ORACLE_HOME}/network/admin/ to all the package nodes.
f. Copy the directories from ${ORACLE_HOME}/admin to all the nodes.
Supported configuration
4 Using HPE Serviceguard toolkit for Oracle
After installing the Serviceguard toolkit for Oracle, you can use this toolkit to:
•
Deploy Oracle ASM and Oracle CDB and non CDB instances in Serviceguard cluster
environment.
•
Manage the packages.
Configuring modular Oracle ASM instance and Database instance toolkit
packages
This section describes the steps to configure Oracle ASM instance and Database instance toolkit
packages.
•
“Configuring modular Oracle database package without ASM” (page 13)
•
“Configuring modular ASM instance package” (page 19)
Configuring modular Oracle database package without ASM
To configure a modular Oracle database toolkit packages without ASM:
1. Create a directory in $SGCONF/<package dir>. For example:
#mkdir $SGCONF/oracle_pkg
2.
3.
cd $SGCONF/<oracle_pkg>.
Create the modular package configuration file, pkg2.conf using the command:
# cmmakepkg -m tkit/oracle/oracle pkg2.conf
4.
Edit the modular package configuration file pkg2.conf. Table 2 (page 13) describes the
list of attributes that you can edit.
Table 2 Lists the attributes that you can edit
Attribute
Description
Example
package_name
The package name must be unique oracle_pkg
in the cluster.
INSTANCE_TYPE
This parameter determines whether database
the instance is an ASM instance or
a database instance. Set this
parameter to database. The
default value is database.
ORACLE_HOME
This is the Oracle home directory /ORACLE_TEST1
where Oracle binaries are installed.
ORACLE_ADMIN
This is the user name of the Oracle oracle
database administrator who
manages the database. The default
value is oracle.
SID_NAME
This is the Oracle session name,
ORACLE_TEST0
also called the session ID (SID).
For Oracle 12c CDB databases,
you must mention CDB session ID.
Configuring modular Oracle ASM instance and Database instance toolkit packages
13
Table 2 Lists the attributes that you can edit (continued)
Attribute
Description
Example
NOTE: If a change is made to
this attribute after the #
cmmakepkg -i -m -t command
is run, you must reconfigure the
MONITOR_PROCESSES attribute
defined in this file to reflect the
same. Also, reconfigure PFILE to
reflect this change if PFILE is uses
this attribute.
START_MODE
Oracle CDB and non CDB startup open
mode. You can set this parameter
to mount, nomount, or open. The
default value is open.
NOTE: For Oracle 12c CDB
databases, if the start mode for
CDB is set to open, CDB and PDB
databases will be opened only in
READ WRITE mode. Seed PDB
will still remain in READ-ONLY
state.
LISTENER
If this attribute is set to no, you
must comment the
LISTENER_NAME and
oracle_listener_service
attributes. For example:
#LISTENER_NAME
yes
The default value is yes.
LISTENER_NAME
This parameter holds the names of LISTENER
the Oracle listener processes. You
can add more than one listener
name by adding to the array
variable LISTENER_NAME. The
default value is LISTENER.
LISTENER_PASS
This holds the passwords of the
ora123
Oracle listener processes. You can
add more than one listener
password by adding to the array
variable LISTENER_PASS.
LISTERNER_RESTART
This parameter defines the number 2
of attempts to be made to restart
the listeners when a listener failure
is detected.
If the listener does not restart after
LISTENER_RESTART number of
consecutive attempts, the package
fails over. If the listener restart is
successful, then the next time
listener fails, the toolkit again tries
LISTENER_RESTART number of
times to restart the listener.
You can add more than one listener
restart value by adding to the array
variable LISTENER_RESTART.
14
Using HPE Serviceguard toolkit for Oracle
Table 2 Lists the attributes that you can edit (continued)
Attribute
Description
Example
NOTE: If the package is in
maintenance mode, then the
listener will not be restarted even if
LISTENER_RESTART is set to a
definite value.
The Oracle CDB and non CDB
instance parameter file. If this
attribute is not specified, Oracle
picks this up from the Oracle
configuration directory
$ORACLE_ORACLE_HOME.
PFILE
${ORACLE_ORACLE_HOME}/dbs/
init${ORACLE_SID_NAME}.ora
When this parameter is configured,
it overrides the default file location.
If both PFILE and SPFILE are
present and this parameter is not
specified, then the Oracle toolkit
makes use of PFILE as the
parameter file.
To make use of SPFILE in the
toolkit do not configure this
parameter, and remove the default
PFILE from its default location. The
default value is
${ORACLE_ORACLE_HOME}/dbs/
init${ORACLE_SID_NAME}.ora.
This is the list of all the critical
Oracle processes for an instance
that must be executing to assume
that the instance is up and running.
You can add more instance
processes. The processes
mentioned will be monitored by
default.
• ora_pmon_${ORACLE_SID_NAME}
MONITOR_INTERVAL
The time interval, in seconds, this
script waits between checks to
ensure that Oracle instance is
running. The default value is 30
seconds.
30
TIME_OUT
The time period, in seconds, this
toolkit waits for a completion of a
normal shutdown before initiating
forceful halt of the application.
30
MONITOR_PROCESSES
• ora_dbw0_${ORACLE_SID_NAME}
• ora_ckpt_${ORACLE_SID_NAME}
• ora_smon_${ORACLE_SID_NAME}
• ora_lgwr_${ORACLE_SID_NAME}
• ora_reco_${ORACLE_SID_NAME}
The TIME_OUT variable is used to
protect against a worst case
scenario where a hung database or
ASM instance prevents the halt
script from completing, therefore
preventing the standby node from
starting the instance.
The TIME_OUT variable has no
effect on package failover times.
The default value is 30 seconds.
PARENT_ENVIRONMENT
This parameter is used to mention no
if the Oracle or ASM user's shell
must be invoked as a new shell or
Configuring modular Oracle ASM instance and Database instance toolkit packages
15
Table 2 Lists the attributes that you can edit (continued)
Attribute
Description
Example
as a subshell that inherits the
variables set in the parent shell.
You can set this parameter to yes
or no. The default value is no. Set
this parameter to yes if the Oracle
or ASM user's shell must be
invoked as a subshell.
Set to no if the Oracle or ASM
user's shell must be invoked as a
new shell. If set to no, the Oracle
or ASM user's .profile file is
executed and the variables set in
this file are available to the new
shell.
CLEANUP_BEFORE_STARTUP
This parameter indicates whether
shutdown abort must be executed
before the startup of the Oracle or
ASM instance.
no
You can set this parameter either
to yes or no. The default value is
no.
USER_SHUTDOWN_MODE
This parameter is used to specify abort
the instance shutdown mode only
when a shutdown is initiated by the
user and not because of the failure
of a service.
You can set this parameter to
abort or immediate.
If abort is specified, the instance
is shutdown using the abort
option. If immediate is specified,
the instance is shutdown using the
immediate option. The default
value is abort.
KILL_ASM_FOREGROUNDS
If ASM is being used, this
no
parameter specifies whether any
ASM foreground processes having
file descriptors open on the
dismounted disk group volumes
need to be killed or not.
You can set this parameter either
to yes or no. The default value is
yes.
16
DB_SERVICE
This parameter is used to start and all
stop the DB service through the DB
package. It is commented by
default. You can set the attribute to
all or specify the DB service
names that must be started and
stopped by the DB package.
DISABLE_BACKUP_MODE
This parameter is used to disable no
the Oracle database from the
backup mode. The valid values for
this parameter are yes and no. By
default, the value is set to no. This
Using HPE Serviceguard toolkit for Oracle
Table 2 Lists the attributes that you can edit (continued)
Attribute
Description
Example
means, if the database is in the
backup mode after package failover
or restart, the Oracle toolkit
package fails to start. You have to
manually get the database out of
the backup mode and then start the
package.
When the value of
DISABLE_BACKUP_MODE is set to
yes and the database is in the
backup mode after failover or
restart, the Oracle toolkit package
will alter the database to remove
the backup mode and start the
database. The database is altered
to remove the backup mode only if
START_MODE is set to open.
RETRY_INTERVAL_ORA_ERROR This parameter defines the time
interval to wait in case of ORA
errors during database hang
monitor.
email_id
0
This parameter is used to provide abc@domain-name.com
email addresses for the toolkit alert
notification recipients. Each
email_id parameter can have one
of the following values:
• A complete email address
• An alias
• A distribution list
You can list multiple recipients by
repeating the email_id field and
address. Toolkit sends an alert
email on listener and package
failure. If configured, the alert mail
is sent for Oracle database hang
detection. For example: $SGCONF/
scripts/tkit/oracle/
tkit_module.sh
oracle_hang_monitor 30
alert. By default, email_id is
commented.
CRITICAL_PDB
This parameter is used to provide
the pluggable database names,
whose failure triggers the failover
of the package and thereby causes
the restart of the CDB on the
adoptive node. This attribute can
have one of the following values:
• PDB names
CRITICAL_PDB any
or
CRITICAL_PDB none
CRITICAL_PDB pdb1
CRITICAL_PDB pdb2
CRITICAL_PDB pdb3
• value “any”
• value“ none”
To monitor multiple PDB names,
repeatCRITICAL_PDB field and
PDB name. The package failover
Configuring modular Oracle ASM instance and Database instance toolkit packages
17
Table 2 Lists the attributes that you can edit (continued)
Attribute
Description
Example
is decided based on the value
specified for this attribute.
• If the value specified is “any”,
the package fails over if any of
the plugged PDB fails.
• If the value is "none", the
package will not failover in case
of PDB failures. The package
fails over only if the CDB fails.
5.
Edit the following service parameters, if required:
•
•
•
18
Monitor service for Oracle processes:
Attribute Name
Example
service_name
oracle_service
service_cmd
"$SGCONF/scripts/tkit/oracle/
tkit_module.sh oracle_monitor"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
Monitor service for Oracle listener processes:
Attribute Name
Example
service_name
oracle_listener_service
service_cmd
"$SGCONF/scripts/tkit/oracle/
tkit_module.sh oracle_monitor_listener"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
Monitor service for Oracle hang detection:
Attribute Name
Example
service_name
oracle_hang_service
service_cmd
"$SGCONF/scripts/tkit/oracle/
tkit_module.sh oracle_hang_monitor 30
failure"
service_restart
none
service_fail_fast_enabled
no
Using HPE Serviceguard toolkit for Oracle
•
6.
Attribute Name
Example
service_halt_timeout
300
service_halt_on_maintenance
no
Monitor service for oracle pluggable database health monitoring:
Attribute Name
Example
service_name
oracle_pdb_monitor_service
service_cmd
"$SGCONF/scripts/tkit/oracle/
tkit_module.sh oracle_pdb_monitor"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
Apply the package configuration using the command:
# cmapplyconf -P pkg2.conf
7.
Start the "oracle_pkg" package using the command:
#cmrunpkg oracle_pkg
Configuring modular ASM instance package
NOTE: The following conditions are applicable for the Oracle Toolkit to support the MetroCluster
and Continentalcluster:
•
The Oracle ASM MNP package must not be configured as a Metrocluster or
Continentalclusters package.
•
The appropriate Metrocluster or Continentalclusters modules must be included when creating
database package.
To configure a modular ASM instance Multi-node package (MNP) and Database instance failover
package:
1. Setting up and configuring ASM multi-node package.
a. Create a directory in $SGCONF/<package dir>.
b. cd $SGCONF/<package dir>.
c. Create the modular package configuration file, pkg1.conf using the command:
# cmmakepkg -m sg/multi_node -m tkit/oracle/oracle pkg1.conf
d.
Edit the following attributes manually in the package configuration file:
Attribute
Description
Example
package_name
The package name must be
unique in the cluster.
oracle_asm_pkg
INSTANCE_TYPE
This parameter determines
ASM
whether the instance is an ASM
instance or a database instance.
Configuring modular Oracle ASM instance and Database instance toolkit packages
19
Attribute
Description
Example
Set this parameter to ASM. The
default value is ASM.
ORACLE_ADMIN
This is the user name of the
oracle
Oracle database administrator
who manages the database. The
default value is oracle.
ORACLE_HOME
This is the base directory where
Oracle is installed.
/ORACLE_TEST0
SID_NAME
The Oracle session name. It is
also called the session ID (SID).
It uniquely identifies an Oracle
database instance. For Oracle
12c CDB databases, you must
mention CDB session ID.
ORACLE_TEST0
NOTE: If you modify this
attribute after the # cmmakepkg
-i -m -t command is run, you
must reconfigure the
MONITOR_PROCESSES
attribute defined in this file to
reflect the same. Also,
reconfigure PFILE attribute
defined in this file to reflect this
change, if PFILE is uses this
attribute.
ASM
This parameter determines
whether ASM is being used to
manage the storage for the
database instance.
no
The default value is no. You can
either set the value as yes or no.
Set this parameter to yes if ASM
is used to store DB files, else, set
it to no.
ASM_HOME
The home directory where ASM
is installed.
ASM_USER
The user name of the Oracle
oracle
ASM administrator. It is used to
start or stop the ASM instance
and mounting or dismounting the
ASM disk groups. The default
value is oracle.
ASM_SID
The ASM session name that
uniquely identifies an ASM
instance. The default value is
+ASM.
PFILE
It is the Oracle database
${ORACLE_ASM_HOME}/dbs/
parameter file. If this attribute is init${ORACLE_ASM_SID}.ora
not specified, Oracle picks this up
from the Oracle configuration
directory $ASM_HOME/dbs.
When this parameter is
configured, it overrides the default
file location. If both PFILE and
SPFILE are present and this
parameter left unspecified, then
20
Using HPE Serviceguard toolkit for Oracle
/asm_home
+ASM
Attribute
Description
Example
Serviceguard toolkit for Oracle
makes use of PFILE as the
parameter file.
To make use of SPFILE in the
toolkit do not configure this
parameter and remove the default
PFILE from its default location.
The default value is
${ORACLE_ORACLE_HOME}/dbs/
init${ORACLE_SID_NAME}.ora.
MONITOR_PROCESSES
This is the list of all the critical
Oracle ASM processes for an
instance that must be executing
to assume that the instance is up
and running. You can add more
instance processes. The
processes mentioned will be
monitored by default.
• asm_pmon_${ORACLE_ASM_SID}
• asm_dbw0_${ORACLE_ASM_SID}
• asm_ckpt_${ORACLE_ASM_SID}
• asm_smon_${ORACLE_ASM_SID}
• asm_lgwr_${ORACLE_ASM_SID}
• asm_reco_${ORACLE_ASM_SID}
MONITOR_INTERVAL
The time interval, in seconds, this 30
script waits between checks to
ensure that ASM instance is
running. The default value is 30
seconds.
TIME_OUT
The time period, in seconds, this 30
toolkit waits for a completion of a
normal shutdown before initiating
forceful halt of the application.
The TIME_OUT variable is used
to protect against a worst case
scenario where a hung database
or ASM instance prevents the halt
script from completing, therefore
preventing the standby node from
starting the instance.
The TIME_OUT variable has no
effect on package failover times.
The default value is 30 seconds.
PARENT_ENVIRONMENT
This parameter is used to mention no
if the Oracle or ASM user's shell
must be invoked as a new shell
or as a subshell that inherits the
variables set in the parent shell.
You can set this parameter to yes
or no. The default value is no. Set
this parameter to yes if the
Oracle or ASM user's shell must
be invoked as a subshell.
Set to no if the Oracle or ASM
user's shell must be invoked as a
new shell. If set to no, the Oracle
or ASM user's .profile file is
executed and the variables set in
this file are available to the new
shell.
CLEANUP_BEFORE_STARTUP
This parameter indicates whether no
shutdown abort must be executed
Configuring modular Oracle ASM instance and Database instance toolkit packages
21
Attribute
Description
Example
before the startup of the Oracle
or ASM instance.
You can set this parameter to yes
or no. The default value is no.
USER_SHUTDOWN_MODE
This parameter is used to specify abort
the instance shutdown mode only
when a shutdown is initiated by
the user and not because of the
failure of a service.
You can set this parameter to
abort or immediate.
If abort is specified, the instance
is shutdown using the abort
option. If immediate is specified,
the instance is shutdown using
the immediate option. The
default value is abort.
KILL_ASM_FOREGROUNDS
If ASM is being used, this
yes
parameter specifies whether any
ASM foreground processes
having file descriptors open on
the dismounted disk group
volumes must be killed or not.
You can set this parameter to yes
or no. The default value is yes.
Listener
You must set this parameter to
no.
email_id
This parameter is used to provide abc@domain-name.com
email addresses for the toolkit
alert notification recipients. Each
email_id parameter can have
one of the following values:
no
• A complete email address
• An alias
• A distribution list
You can list multiple recipients by
repeating the email_id field and
address. Toolkit sends an alert
email on listener and package
failure. If configured, the alert mail
is sent for Oracle database hang
detection. For example:
$SGCONF/scripts/tkit/
oracle/tkit_module.sh
oracle_hang_monitor 30
alert. By default, email_id is
commented.
e.
22
Monitor service for Oracle ASM instance processes:
Attribute Name
Example
service_name
oracle_asm_service
service_cmd
"$SGCONF/scripts/tkit/oracle/
tkit_module.sh oracle_monitor"
Using HPE Serviceguard toolkit for Oracle
Attribute Name
Example
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
NOTE: Remove the Oracle listener, Oracle db hang monitor services, and Oracle
PDB monitoring service for the ASM instance package, shown in the tables below.
f.
Apply the package configuration using the command:
# cmapplyconf -P pkg1.conf
2.
Setting up and configuring database failover package which uses ASM:
a. Create a directory in $SGCONF/<package dir>.
b. cd $SGCONF/<package dir>.
c. Create the modular package configuration file, pkg2.conf using the following command:
#cmmakepkg -m tkit/oracle/oracle pkg2.conf
d.
Edit the following attributes manually in the package configuration file:
Attribute
Description
Example
package_name
The package name must be
unique in the cluster.
oracle_asmdb_pkg
INSTANCE_TYPE
This parameter determines
database
whether the instance is an ASM
instance or a database instance.
Set this parameter to database.
ORACLE_HOME
This is the base directory where
Oracle is installed.
ORACLE_ADMIN
This is the user name of the
oracle
Oracle database administrator
who manages the database. The
default value is oracle.
SID_NAME
The Oracle session name. It is
also called the session ID (SID).
It uniquely identifies an Oracle
database instance.
/ORACLE_TEST0
ORACLE_TEST0
NOTE: If you modify this
attribute after the # cmmakepkg
-i -m -t command is run, you
must reconfigure the
MONITOR_PROCESSES attribute
defined in this file to reflect the
same. Also, reconfigure PFILE
attribute defined in this file to
reflect this change, if PFILE is
using this attribute.
START_MODE
This parameter defines the Oracle open
database startup mode. Valid
options are no mount, mount,
and open. The default mode is
open.
Configuring modular Oracle ASM instance and Database instance toolkit packages
23
Attribute
Description
Example
NOTE: For Oracle 12c CDB
databases, if the start mode for
CDB is set to open, CDB and
PDB databases will be opened
only in READ WRITE mode. Seed
PDB will remain in READ-ONLY
state.
ASM
This parameter determines
whether ASM is being used to
manage the storage for the
database instance.
yes
You can set the value to yes or
no. Set this parameter to yes if
ASM is used, else set to no. The
default value is no.
ASM_DISKGROUP
If ASM is being used to manage diskgroup1
the storage for the database
instance, configure this parameter
to indicate the ASM diskgroups
used by the database instance.
You can add more than one disk
group by adding to the array
variable ASM_DISKGROUP.
NOTE: For Oracle 12c, if
different diskgroups are used for
storing data files of different
PDBs, then add all the diskgroups
used by PDBs in the package
configuration file created for
packaging CDB database.
ASM_VOLUME_GROUP
Defines the volume groups used vgora_asm1
in the ASM disk groups for the
database instance. You can add
more than one volume group by
adding to this array variable.
NOTE: For Oracle 12c, if
different volume groups are used
for storing data files of different
PDBs, then add all the volume
groups used by PDBs in the
package configuration file created
for packaging CDB database.
ASM_PV
This parameter represents the
/dev/raw/raw1
physical volume which is used to
create ASM disk groups using
raw devices for the database
instance. You can add more than
one physical volume to this array
variable. This parameter can be
used only in modular packages.
NOTE: For Oracle 12c, if
different raw devices are used for
creating diskgroup for different
PDBs, then add all the raw
devices used by PDBs in the
package configuration file created
for packaging CDB database.
24
Using HPE Serviceguard toolkit for Oracle
Attribute
Description
Example
ASM_HOME
The home directory where ASM
is installed.
/ASM_TEST0
ASM_USER
User name of the Oracle ASM
oracle
administrator. It is used to start or
stop the ASM instance and
mounting or dismounting the ASM
disk groups.
ASM_SID
The ASM session name that
uniquely identifies an ASM
instance.
+ASM
NOTE: If you modify this
attribute after the # cmmakepkg
-i -m -t command is run, you
must reconfigure the
MONITOR_PROCESSES attribute
to reflect the same. Also,
reconfigure PFILE attribute to
reflect the change if PFILE is
using this attribute.
If this attribute is set to no, you
must comment the
LISTENER_NAME and
oracle_listener_service
attributes. For example:
#LISTENER_NAME
LISTENER
yes
The default value is yes.
LISTENER_NAME
This parameter holds the names LISTENER
of the Oracle listener processes.
You can add more than one
listener name by adding to the
array variable LISTENER_NAME.
The default value is LISTENER.
LISTENER_PASS
The passwords of the listener
processes.
ora123
This parameter is commented by
default.
LISTENER_RESTART
This parameter defines the
number of attempts to be made
to restart the listener. If the
listener does not restart after
LISTENER_RESTART number
of consecutive attempts, the
package fails over.
2
If the listener restart is successful,
then the next time listener fails,
the toolkit again tries
LISTENER_RESTART number of
times to restart the listener.
This parameter is commented by
default.
NOTE: If the package is in
maintenance mode, then the
listener will not be restarted even
if LISTENER_RESTART is set to
a definite value.
Configuring modular Oracle ASM instance and Database instance toolkit packages
25
Attribute
Description
Example
PFILE
The Oracle database parameter
file. If this attribute is not
specified, Oracle picks this up
from the Oracle configuration
directory
$ORACLE_ORACLE_HOME/dbs.
${ORACLE_ORACLE_HOME}/dbs/
init${ORACLE_SID_NAME}.ora
When this parameter is
configured, it overrides the default
file location.
If both PFILE and SPFILE are
present and this parameter is not
specified, then Serviceguard
toolkit for Oracle makes use of
PFILE as the parameter file.
To make use of SPFILE in the
toolkit, do not configure this
parameter, and remove the
default PFILE from its default
location.
MONITOR_PROCESSES
This is the list of all the critical
Oracle processes for an instance
that must be executing to assume
that the instance is up and
running. You can add more
instance processes.
• ora_pmon_${ORACLE_SID_NAME}
• ora_dbw0_${ORACLE_SID_NAME}
• ora_ckpt_${ORACLE_SID_NAME}
• ora_smon_${ORACLE_SID_NAME}
• ora_lgwr_${ORACLE_SID_NAME}
• ora_reco_${ORACLE_SID_NAME}
MONITOR_INTERVAL
The time interval, in seconds, this 30
script waits between checks to
ensure that Oracle instance is
running. The default value is 30
seconds.
TIME_OUT
The time period, in seconds, this 30
toolkit waits for a completion of a
normal shutdown before initiating
forceful halt of the application.
The TIME_OUT variable is used
to protect against a worst case
scenario where a hung database
or ASM instance prevents the halt
script from completing, therefore
preventing the standby node from
starting the instance.
The TIME_OUT variable has no
effect on package failover times.
The default value is 30 seconds.
PARENT_ENVIRONMENT
This parameter is used to mention no
if the Oracle or ASM user's shell
must be invoked as a new shell
or as a subshell that inherits the
variables set in the parent shell.
You can set this parameter to yes
or no.
Set this parameter to yes if the
Oracle or ASM user's shell must
be invoked as a subshell.
26
Using HPE Serviceguard toolkit for Oracle
Attribute
Description
Example
Set to no if the Oracle or ASM
user's shell must be invoked as a
new shell. If set to no, the Oracle
or ASM user's .profile file is
executed and the variables set in
this file are available to the new
shell.
CLEANUP_BEFORE_STARTUP
This parameter indicates whether no
shutdown abort must be executed
before the startup of the Oracle
or ASM instance.
You can set this parameter to yes
or no. The default value is no.
USER_SHUTDOWN_MODE
This parameter is used to specify abort
the instance shutdown mode only
when a shutdown is initiated by
the user and not because of the
failure of a service.
You can set this parameter to
abort or immediate.
If abort is specified, the instance
is shutdown using the abort
option. If immediate is specified,
the instance is shutdown using
the immediate option. The
default value is abort.
KILL_ASM_FOREGROUNDS
If ASM is being used, this
yes
parameter specifies whether any
ASM foreground processes
having file descriptors open on
the dismounted disk group
volumes need to be killed or not.
You can set this parameter to yes
or no. The default value is yes.
If this parameter is set to yes,
ASM foreground processes of the
form oracle<ASM_SID> having
file descriptors open will be killed.
If this parameter is set to no, and
if the ASM foreground processes
have file descriptors open, it leads
to package halt and hence, fails
the package failover.
DB_SERVICE
This parameter is used to start
all
and stop the DB service through
the DB package. It is commented
by default. You can set the
attribute to all or specify the DB
service names that must be
started and stopped by the DB
package.
DISABLE_BACKUP_MODE
This parameter is used to disable no
the Oracle database from the
backup mode. The valid values
for this parameter are yes and
no. By default, the value is set to
no. This means, if the database
Configuring modular Oracle ASM instance and Database instance toolkit packages
27
Attribute
Description
Example
is in the backup mode after
package failover or restart, the
Oracle toolkit package fails to
start. You have to manually get
the database out of the backup
mode and then start the package.
When the value of
DISABLE_BACKUP_MODE is set
to yes and the database is in the
backup mode after failover or
restart, the Oracle toolkit package
will alter the database to remove
the backup mode and start the
database. The database is altered
to remove the backup mode only
if START_MODE is set to open.
RETRY_INTERVAL_ORA_ERROR This parameter defines the time
interval to wait in case of ORA
errors during database hang
monitor.
email_id
0
This parameter is used to provide abc@domain-name.com
email addresses for the toolkit
alert notification recipients. Each
email_id parameter can have
one of the following values:
• A complete email address
• An alias
• A distribution list
You can list multiple recipients by
repeating the email_id field and
address. Toolkit sends an alert
email on listener and package
failure. If configured, the alert mail
is sent for Oracle database hang
detection. For example:
$SGCONF/scripts/tkit/
oracle/tkit_module.sh
oracle_hang_monitor 30
alert. By default, email_id
is commented.
CRITICAL_PDB
This parameter is used to provide
the pluggable database names,
whose failure triggers the failover
of the package and thereby
causes the restart of the CDB on
the adoptive node. This attribute
can have one of the following
values:
• PDB names
• value “any”
• value“ none”
To monitor multiple PDB names,
repeatCRITICAL_PDB field and
PDB name. haoraclepdb.mon.
The package failover is decided
28
Using HPE Serviceguard toolkit for Oracle
CRITICAL_PDB any
CRITICAL_PDB none
CRITICAL_PDB pdb1
CRITICAL_PDB pdb2
CRITICAL_PDB pdb3
Attribute
Description
Example
based on the value specified for
this attribute.
• If the value specified is “any”,
the package fails over if any of
the plugged PDB fails.
• If the value is "none", the
package will not failover in
case of PDB failures. The
package fails over only if the
CDB fails.
e.
Edit the following service parameters:
•
•
•
Monitor service for Oracle DB instance processes:
Attribute Name
Example
service_name
oracle_db_service
service_cmd
"$SGCONF/scripts/tkit/oracle/
tkit_module.sh oracle_monitor"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
Monitor service for Oracle listener processes:
Attribute Name
Example
service_name
oracle_listener_service
service_cmd
"$SGCONF/scripts/tkit/oracle/
tkit_module.sh
oracle_monitor_listener"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
Monitor service for Oracle hang detection:
Attribute Name
Example
service_name
oracle_hang_service
service_cmd
"$SGCONF/scripts/tkit/oracle/
tkit_module.sh oracle_hang_monitor
30 failure"
service_restart
none
service_fail_fast_enabled
No
Configuring modular Oracle ASM instance and Database instance toolkit packages
29
•
f.
g.
Attribute Name
Example
service_halt_timeout
300
service_halt_on_maintenance
no
Monitor service for Oracle pluggable database:
Attribute Name
Example
service_name
oracle_pdb_monitor_service
service_cmd
"$SGCONF/scripts/tkit/oracle/
tkit_module.sh oracle_pdb_monitor"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
To configure the dependency for the modular Oracle ASM database package, you must
set the dependency for Oracle DB package on Oracle ASM instance package. Set the
following parameters in the package configuration file to add the dependency:
Attribute Name
Example
dependency_name
asm_dependency
dependency_condition
<ASM MNP package_name>=up
dependency_location
same_node
Apply the package configuration using the command:
# cmapplyconf -P pkg2.conf
Managing a package
You can manage a package by adding, running, maintaining, halting, and deleting it.
Adding the package to the cluster
After the setup is complete, add the package to the Serviceguard cluster and start it.
$ cmapplyconf -P ORACLE_TEST0
$ cmmodpkg -e -n <node1> -n <node2> ORACLE_TEST0
$ cmmodpkg -e ORACLE_TEST0
For more information on managing packages, see the latest Managing Serviceguard manual
available at http://www.hpe.com/info/linux-serviceguard-docs.
Running a package
To start a package, run the following command:
# cmrunpkg <package_name>
30
Using HPE Serviceguard toolkit for Oracle
Maintaining a package
Maintenance mode is used when user wants to perform maintenance on components of a modular,
failover package while the package is running. It is chiefly used to make modifications to the
networking and generic resource components. Serviceguard will not monitor for any failures
when the oracle toolkit package is in maintenance mode. For more information, see Maintaining
a Package: Maintenance Mode available at Managing HPE Serviceguard for Linux.
The Oracle toolkit package has specific services that monitor critical Oracle processes and
listeners for failures. They also inspects databases for hung situations. When the package services
detect failures of any component, Serviceguard will initiate a corrective action, which can either
be a restart of some of the components or a failover of the package based on the failed component
and the package configuration. When the Oracle toolkit package is in maintenance mode, though
its services continue to run, Serviceguard will not react to any of the failure and no corrective
action like a restart or failover is triggered.
Example 1
•
When the Oracle toolkit package is not in maintenance mode, if the Oracle database hangs
and becomes unresponsive, Serviceguard triggers a failover to alternate mode.
•
When the Oracle toolkit package is in maintenance mode, if the Oracle database hangs and
becomes unresponsive, Serviceguard will stop monitoring database for hung situations.
And, there won’t be any package failover. But as soon as the package is taken out of
maintenance, Oracle toolkit restarts the monitored database processes and may failover to
alternate node in case the database hangs.
Example 2
•
When the Oracle toolkit package is not in maintenance mode and the LISTENER_RESTART
attribute is set to 2, if a listener failure occurs, the Oracle toolkit attempts to restart the
monitored listener twice.
•
When the Oracle toolkit package is in maintenance mode and the LISTENER_RESTART
attribute is set to 2, if a listener failure occurs, Oracle toolkit will not restart the monitored
listener. But as soon as the toolkit package is taken out of maintenance, listener monitor
service restarts the monitored listener.
When a Serviceguard package is in maintenance mode, it ensures the package will not failover
to an alternate node due to any failure in the application that is configured in the package.
To perform maintenance:
1. Enable the maintenance mode for the package using the cmmodpkg command.
cmmodpkg -m on <package-name>
2.
Perform the maintenance actions.
For example, you can change the configuration of the application instance or install an
application patch.
NOTE: You can ignore the errors or warnings in the package log file when the package
is set to maintenance mode.
3.
Disable the maintenance mode for the package using the cmmodpkg command.
cmmodpkg -m off <package-name>
NOTE: Ensure that an application instance is up and running before disabling the
maintenance mode.
Managing a package
31
Online Modification of the Oracle Toolkit package
In addition to the Online modification feature supported by Serviceguard, the online modification
feature of toolkit allows you to modify some of the toolkit attribute values, while the toolkit package
is up and running. Table 5 (page 32) lists the attributes that are supported for online toolkit
package modification.
Table 3 List of Attributes Supported for Online Toolkit Package Modification
32
Attribute
Description
START_MODE
Oracle Toolkit supports online modification of this attribute.
This attribute denotes the database startup. The attribute
value takes effect during the next startup of the database.
LISTENER
Oracle Toolkit supports online modification of this attribute.
This attribute can have either yes or no as its value. By
default, the value is set to yes. If you do not want to
monitor the listener in the toolkit package, LISTENER can
be set to no and comment out LISTENER_NAME and
oracle_listener_service attributes.
LISTENER_NAME
Oracle Toolkit supports online modification of this attribute.
The listener name can be changed, added, or removed
during online modification. The Listeners that are modified
or added must be configured and started manually before
adding to the toolkit package during online modification.
This ensures the listener is monitored when the package
is applied online. Similarly, if the Listener is removed from
the toolkit package, manual intervention is required to
stop the Listener.
LISTENER_PASS
Oracle Toolkit supports online modification of this attribute.
The Listener password can be modified and applied online
only if the values mentioned in LISTENER_PASS array
correspond with LISTENER_NAME array.
LISTENER_RESTART
Oracle Toolkit supports online modification of this attribute.
This parameter defines the number of attempts made to
restart the listeners when a listener failure is detected.
This parameter can be modified and applied online only
if the values mentioned in LISTENER_RESTART array
correspond with LISTENER_NAME array.
PFILE
Oracle Toolkit will support the online modification of this
attribute, provided the user changes the permissions or
ownership for the new location of the parameter file. The
file must be present in all the package nodes at the same
location.
MONITOR_PROCESSES
Oracle Toolkit supports online modification of this attribute.
This attribute defines the Oracle processes to be
monitored by the toolkit package. By default, six critical
Oracle processes are monitored. This array can be
increased or reduced and the processes will be monitored
in the next monitor cycle.
MONITOR_INTERVAL
Oracle Toolkit supports online modification of this attribute.
TIME_OUT
Oracle Toolkit supports online modification of this attribute.
PARENT_ENVIRONMENT
Oracle Toolkit supports online modification of this attribute.
CLEANUP_BEFORE_STARTUP
Oracle Toolkit supports online modification of this attribute.
USER_SHUTDOWN_MODE
Oracle Toolkit supports online modification of this attribute.
KILL_ASM_FOREGROUNDS
Oracle Toolkit supports online modification of this attribute.
Using HPE Serviceguard toolkit for Oracle
Table 3 List of Attributes Supported for Online Toolkit Package Modification (continued)
Attribute
Description
DB_SERVICE
Oracle Toolkit supports online modification of this attribute.
User defined database services can be added or removed
during online modification. Database service must be
configured and running during online modification, so that
toolkit package can use the start or stop control on user
defined database services.
DISABLE_BACKUP_MODE
Oracle Toolkit supports the online modification of this
attribute. This parameter is used to disable the Oracle
database from the backup mode. The valid values for this
parameter are yes and no. By default, the value is set to
no. This means, if the database is in the backup mode
after package failover or restart, the Oracle toolkit package
fails to start. You have to manually get the database out
of the backup mode and then start the package.
When the value of DISABLE_BACKUP_MODE is set to yes
and the database is in the backup mode after failover or
restart, the Oracle toolkit package will alter the database
to remove the backup mode and start the database. The
database is altered to remove the backup mode only if
START_MODE is set to open.
email_id
Oracle Toolkit supports online modification of this attribute.
This parameter is used to provide email addresses for the
toolkit alert notification recipients. Each email_id
parameter can have one of the following values:
• A complete email address
• An alias
• A distribution list
You can list multiple recipients by repeating the email_id
field and address. Toolkit sends an alert email on listener
and package failure. If configured, the alert mail is sent
for Oracle database hang detection. For example:
$SGCONF/scripts/tkit/oracle/tkit_module.sh
oracle_hang_monitor 30 alert. By default,
email_id is commented.
CRITICAL_PDB
The Oracle toolkit supports online modification of this
attribute. This parameter is used to provide the pluggable
database names. This parameter can have one of the
following values:
• PDB names
• value “any”
• value “none”
Monitoring service attributes
Oracle Toolkit supports the online modification of service
attributes. By default, three monitoring services are
started. Services can be added, changed, or removed
depending on monitoring requirements.
To perform online package modification:
1. While package is up and running, retrieve the current package configuration values using
the command cmgetconf.
For example: #cmgetconf -p <<Toolkit_Package_Name>> <<Latest_Toolkit_Conf_File>>
2.
Backup this latest configuration file using a copy utility. This allows you to refer to the previous
configuration values.
For example: # cp -p <<Latest_Toolkit_Conf_File>> <<Backup_Toolkig_Conf_File>>
Managing a package
33
3.
4.
Edit the <<Latest_Toolkit_Conf_File>> file to modify the required attribute values.
Use the cmcheckconf command to verify the package configuration file.
For example: #cmcheckconf -P <<Latest_Toolkit_Conf_File>>
5.
Use the cmapplyconf command to add the new changes in the package configuration to
the Serviceguard cluster environment.
For example: #cmapplyconf -P <<Latest_Toolkit_Conf_File>>
NOTE:
Information related to package reconfiguration is logged in the package log.
If you modify any other attributes, the following error message appears on the console.
ERROR: Online modification of attribute "<Attribute name>" is not allowed
For example: If an user tries to change the value of ORACLE_HOME while the package is running,
the cmapplyconf command fails with an error message.
ERROR: Online modification of attribute "ORACLE_HOME" is not allowed.
Handling failures during online package reconfiguration
This section describes about how to troubleshoot failures during online package reconfiguration.
Table 4 (page 34) describes how to fix the errors in the affected modules that are encountered
during online addition of a package.
Table 4 Modules affected during online addition
Description
Modules affected during
online addition
How to rectify the failures or
apply those that are not
attempted
Example
Adding an
external pre
script to the
package
sg/external_pre_script If an external pre script which is To start the external pre script:
(external.sh)
added to the package
#extern_pre_script.sh start
configuration failed to start, run
the script manually with start
option.
script_name start
Extending
storage to the
package
sg/filesystem
(filesystem.sh)
sg/volume_group
(volume_group.sh)
sg/pr_cntl
(pr_cntl.sh)
If addition of storage has failed, To add PR keys, you must register
ensure the following:
on all the paths and then reserve on
one path.
• Persistent reservation is
To view all the paths:
added to the disk.
#multipath -ll
• Volume group is activated
To view the node PR keys:
with hosttags.
NOTE: In this example, the
• Verify and repair the file
node_pr_key is 72810001.
system.
• The mount point is mounted. #cmviewcl -v -f line |
grep node_pr_key
For more information, see
#sg_persist --out -G
sg_persist(1m),
--param-sark=72810001
vgchange(1m),fsck(1m),
/dev/sde
multipath (1m), and
mount(1m) manpage.
#sg_persist --out -R
--param-rk=72810001
--prout-type=5 /dev/sde
Add hosttags for node
test1.ind.hp.com:
#vgchange --addtag
test1.ind.hp.com vg_dd1
Activate the disk:
#vgchange -a y vg_dd1
Run the following commands:
34
Using HPE Serviceguard toolkit for Oracle
Table 4 Modules affected during online addition (continued)
#e2fsck -y
/dev/vg_dd1/lvol1
#mount -t ext3
/dev/vg_dd1/lvol2 /mnt1
Adding an IP sg/package_ip
to the package (package_ip.sh)
If an IP address which is added
to the package configuration
failed to add or not attempted,
use the cmmodnet command to
add the IP address.
To add the IP to the package
10.149.2.5:
#cmmodnet -a -I 10.149.2.5
10.149.2.0
For more information, see
cmmodnet (1m) manpage.
sg/external_script
Adding an
external script (external.sh)
to the package
If an external script which is
added to the package
configuration failed to start, run
the script manually with start
option.
To halt external pre script:
#extern_pre_script.sh stop
script_name start
Adding a
service to the
package
sg/service
(service.sh)
If a service which is added to the To run the process as service:
package configuration failed to #cmrunserv db1
start or not attempted, use the
/var/opt/db/database1
cmrunserv command to start
the service
For more information, see
cmrunserv (1m) manpage.
Adding Oracle tkit/oracle/oracle
toolkit module
to the package
If an Oracle toolkit module added
to the package configuration fails
to start, then package will not
fail, but only the new modules
will start during next successful
start of the package after
correcting errors, if any.
#Halt the package
cmhaltpkg
<oracle_toolkit_pkg>
# Correct the errors by editing the
package configuration file.
#Apply changes to the package
configuration file
cmapplyconf –P <pkgconfig>
#Run the package
cmrunpkg
<oracle_toolkit_pkg>
Modifying
Oracle toolkit
attributes
values online
tkit/oracle/oracle
If an Oracle toolkit service fails
to start after modifying Oracle
toolkit attribute value while
package is up and running, then
the package will not fail, but the
new values will not be taken in
to effect until package is halted
and successfully started again.
#Halt the package
cmhaltpkg
<oracle_toolkit_pkg>
#Run the package
cmrunpkg
<oracle_toolkit_pkg>
Halting a package
To halt a package, run the following command:
# cmhaltpkg <package_name>
Deleting a package
To delete a package from the cluster, run the following command:
# cmdeleteconf -p <package_name>
Managing a package
35
This command prompts for a confirmation, before removing the package configuration from the
cluster binary file, unless you use the -f option.
36
Using HPE Serviceguard toolkit for Oracle
5 Oracle toolkit features
Alert mail notification
This feature facilitates you to configure email address to get the alert notification from toolkit
package. Alert mails are sent to configured email addresses in case of failure scenarios. It can
be a resource failure or altogether database failure that results in package failure.
Toolkit sends an alert email with failure messages in the following scenarios:
•
Listener failure.
Message: Oracle listener Listener1 failed in Oracle toolkit package Oracle_pkg on node
NODE1.
•
Multiple listeners failed.
Message: Oracle listener Listener1 failed in Oracle toolkit package Oracle_pkg on node
NODE1.
Message: Oracle listener Listener2 failed in Oracle toolkit package Oracle_pkg on node
NODE1.
•
Database hung.
If configured, alert mail will be sent for Oracle database hang detection. For example:
$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_hang_monitor 30
alert.
Message: Database hang detected in Oracle toolkit package Oracle_pkg on node NODE1.
•
Toolkit package failure.
Message: Oracle toolkit package Oracle_pkg failed on node NODE1.
Cluster verification feature for Oracle toolkit
Cluster verification is a proactive mechanism to identify cluster inconsistencies that adversely
affect toolkit package failover to an adoptive node.
Advantages of cluster verification
The important advantages of cluster verification are:
•
To identify inconsistencies in Serviceguard and the Oracle toolkit resources across package
nodes before you create and configure the Oracle toolkit package.
•
To automate the process of validating certain attribute values specified in the package
configuration file.
•
To achieve complete validation of cluster and application toolkit using single command
execution.
•
To build a steady cluster for high available solution.
NOTE: The verification for the Oracle configuration files and binaries are done only if they are
placed in the root filesystem.
You can use either the cmcheckconf –v or cmcheckconf –P commands to initiate the cluster
verification.
Run the cmcheckconf –v command to perform cluster wide verification of resources. This
command also verifies the packages that are presently deployed in the system. Run the
cmcheckconf -v 2 command to display the ERROR, WARNING, or INFO messages during
the package verification.
Alert mail notification
37
Run the cmcheckconf –P command to perform the package verification irrespective of the
state of the package in the cluster.
The following are the steps to initiate the package verification by using the cmcheckconf –P
command:
1. While the package is running, retrieve the current package configuration values using the
cmgetconf command.
For example: # cmgetconf -p <package_name> <package_name.conf>
2.
Run the cmcheckconf command to verify the package configuration file.
For example: # cmcheckconf –P <package_name.conf>
Use the cluster verification feature for the Oracle toolkit to:
•
Verify the presence of sqlplus, and opatch commands. If the command does not exist,
the console displays the following error messages:
ERROR: The Oracle command "$ORACLE_ORACLE_HOME/bin/sqlplus" is
missing. ERROR: The Oracle command
"$ORACLE_ORACLE_HOME/OPatch/opatch" is missing.
Reason: The Oracle command the sqlplus does not exist in the ${ORACLE_HOME}/bin/
and opatch command does not exist in the $ORACLE_ORACLE_HOME/OPatch/opatch
directories.
Solution: You must ensure that Oracle database software installation has been done properly.
If it is not installed, reinstall the same.
•
Verify for the consistency of package attributes.
◦
If the LISTENER attribute is set to no and if the oracle_listener_service is not
commented. Then, the console displays the following error message:
ERROR: The LISTENER parameter has been set to "no" but the
service_cmd has still the listener service
"oracle_listener_service". Comment out the
"oracle_listener_service" service.
Solution: Comment the oracle_listener_service.
◦
If the LISTENER attribute is set to yes, then, existence of listener.ora is checked.
If the configuration file does not exist, the console displays the following error message:
ERROR: Listener file
"$ORACLE_ORACLE_HOME/network/admin/listener.ora" is missing.
Solution: Create a listener.ora file in $ORACLE_ORACLE_HOME/network/admin
folder along with the required values or copy the configuration file from another node
where the listener is in running condition.
•
Verify if the PFILE/SPFILE files exist on all the nodes.
If both these files do not exist, the console displays the following error message:
ERROR: PFILE "${ORACLE_ORACLE_HOME}/dbs/init${sid_name}.ora" and
SPFILE "${ORACLE_ORACLE_HOME}/dbs/spfile${sid_name}.ora" are missing.
Solution: Create these files by using Oracle command or copy from the package node where
the Oracle database is in running condition.
•
Verify if the ORACLE and ASM users exist on all the nodes.
If both these users do not exist, the console displays the following error messages:
ERROR: Oracle user "$ORACLE_ORACLE_ADMIN" doesn't exist.
38
Oracle toolkit features
ERROR: Oracle ASM user \"$ORACLE_ASM_USER\" doesn't exist.
Solution: Create the Oracle and/or ASM instance users with user ID and Group ID same
as on other package nodes.
•
Verify whether the environment variables ORACLE_HOME and ORACLE_SID are set for the
Oracle user.
If both these variables are not set, the console displays the following info messages:
INFO: ORACLE_HOME environment variable is not set for
"${ORACLE_ORACLE_ADMIN}" user.
INFO: ORACLE_SID environment variable is not set for
"${ORACLE_ORACLE_ADMIN}" user.
Solution: Export the environment variables ORACLE_HOME and ORACLE_SID from the Oracle
user by adding them to the profile file.
•
Verify whether CRITICAL_PDB attribute is specified only for Oracle 12c container database.
If this attribute is set for non container database then the following error is displayed:
"ERROR: Specifying critical PDB is not supported with Oracle version
lesser than 12cR1"
This validation is applicable when package is created and also while performing the online
reconfiguration of the CRITICAL_PDB attribute.
•
Verify whether the PDB names listed is a valid PDB name that exists in the CDB. This
verification is applicable only during online reconfiguration of the package and when the
value specified for the CRITICAL_PDB is the list of names of pluggable databases, which
are considered to be critical. If the specified PDB does not exist, then the following error is
displayed:
"ERROR: Specified Critical PDB PDB_name does not exists in the
Container Database."
Support for sourcing user defined environment variables for Oracle instance
Oracle toolkit provides an option to set the environment variables to specific Oracle instance
during the package startup.
To set the environment variables specific to Oracle instance, do the following:
1. Set the value for the PARENT_ENVIRONMENT attribute to yes in the package configuration
file.
2. Define the environment variables in the {ORACLE_SID}_customer.conf file. For example,
orcl_customer.conf where ORACLE_SID = orcl.
3. Place the file in the $SGROOT/oracletoolkit directory.
WARNING! Hewlett Packard Enterprise recommends you to not override the Oracle toolkit
attributes defined in the package configuration through the {ORACLE_SID}_customer.conf
file.
NOTE: While creating Oracle package through Serviceguard Manager GUI,
{ORACLE_SID}_customer.conf file must be created through CLI.
Cluster verification feature for Oracle toolkit
39
6 Supporting Oracle features
Support for Oracle 12c Multitenant architecture
This section explains support for container databases. It also explains how to package and deploy
Oracle Multitenanat Container Databases (CDB) instances in a Serviceguard cluster using the
Oracle toolkit packages. This feature enables you to start, stop, and monitor the container database
(CDB) and the PDBs configured in it. With A.12.00.50 release, the support for failover of CDB
on PDB failure is introduced. Serviceguard monitors the CDB and PDB and triggers a failover
on a failure. This restarts the entire CDB on the adoptive node.
Starting CDB
During the package startup, CDB instance will be started. If any of the PDB fails to start or fails
to move toNORMAL state, then appropriate log message will be generated in the package log file.
The package start will succeed even if some of the PDB did not start.
The attribute START_MODE is used to determine the startup mode of PDB. When CDB is started,
based on START_MODE attribute value, Pluggable Database (PDB) will be opened. The following
are the three options supported by the Oracle toolkit for startup:
Mount—CDB and all PDB will be started. Also, CDB and all PDB including the seed PDB will
be mounted but not opened.
Open—CDB and all PDB will be started. Also, CDB and all PDB except the seed PDB will be
opened in the READ WRITE Mode.
Nomount—CDB will be started. Neither CDB nor PDB is mounted or opened.
Stopping CDB
During the package halt, all the PDBs are shut before CDB instance is shut down. If any of the
PDB fails to close, then appropriate log message will be generated in the package log file.
The option immediate is supported by the Oracle toolkit for stopping CDB. If the attribute
USER_SHUTDOWN_MODE is set to immediate in package configuration file, then all the PDBs
will be closed with immediate option along with CDB. If the attribute is not set to immediate,
CDB will be halted and all PDBs will be closed with no option. The package log contains the list
of PDBs that are not in NORMAL state during the package halt process. The database hang
detection monitoring service monitors the status of all PDBs.
NOTE:
•
This new feature is of CDB failover on PDB failure. When the status of PDB is UNUSABLE,
the Oracle toolkit sends an email alerts to the email ids that are registered in the package
configuration file. The package will not fail over when any of the PDBs configured in the CDB
fail. Package failover is initiated only when the CDB fails.
•
It is recommended that the filesystem used to store the PDB datafiles must be configured
in the Serviceguard package.
Monitoring PDB
In this release, a new attribute calledCRITICAL_PDB is introduced. You can configure critical
PDBs; failure of which, will initiate the package fail over, which results a restart of the CDB on
the adoptive node. The CRITICAL_PDB attribute can take the following values:
•
PDB names:
Names of the pluggable database, which user considers as critical in nature. If the PDB
names are specified, then on failure of any of the specified PDB, the package will be failed
over to the adoptive node. However, the non critical PDBs are still monitored but the failure
40
Supporting Oracle features
of which will not initiate the package failover. Any PDB failure that is, critical or non- critical
the notifications will be send to the email ids configured in the package.
•
Value as “any”
This value specifies that all of the pluggable database associated with the specified CDB
are monitored. If the health of the any one of the pluggable database fails, then package
fails over after retrying to restart the PDB.
•
Value as “none”
If the value specified is “none”, then the package will not be failed over in case of PDB failure.
The package will failover only in case of CDB failure.
Support for multiple listeners
This section explains support for multiple listeners with the Serviceguard toolkit for Oracle. It
enables you to configure:
•
Single service to monitor all the listeners together
•
A separate service to monitor each listener
NOTE: In a single package, it is not possible to configure the services using both the
approaches. You must either configure all the listeners using a single service, or use a separate
service for each listener.
Ensure that the elements in the LISTENER_RESTART array and the LISTENER_PASS array
correspond to those in the LISTENER_NAME array in the package configuration file. In a situation
where some listeners do not require a restart value and others do not require a password, ordering
the elements in the arrays becomes difficult. In such a case, you must set the
LISTENER_RESTART to 0 and the LISTENER_PASS to empty quotes ("").
The LISTENER_NAME, LISTENER_PASS, and LISTENER_RESTART are configured in the package
configuration file.
For example:
Attribute name
Description
tkit/oracle/oracle/LISTENER
yes
tkit/oracle/oracle/LISTENER_NAME
<listener_name1>
tkit/oracle/oracle/LISTENER_PASS
""
tkit/oracle/oracle/LISTENER_RESTART
0
tkit/oracle/oracle/LISTENER_NAME
<listener_name2>
tkit/oracle/oracle/LISTENER_PASS
""
tkit/oracle/oracle/LISTENER_RESTART
0
Single service to monitor all the listeners together
This is the default behavior. If one of the configured listeners fail, it does not impact the service.
However, if all the configured listeners fail, the service fails, and it leads to the failover of the
package to an alternate node. To enable single service to monitor all listeners, you must not pass
Support for multiple listeners
41
the listener name to the service command. The service_cmd in the package configuration file
appears as follows:
Attribute name
Description
service_name
oracle_listener_monitor
service_cmd
“$SGCONF/scripts/tkit/oracle/tkit_module.sh
oracle_monitor_listener ”
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
A separate service to monitor each listener
This service is recommended if listeners are critical. This approach of packaging listeners provides
high availability to listeners. If any one of the configured listeners fail, it leads to a failure of the
listener service, and the package fails over to an alternate node. In this case, the default
service_cmd in the package configuration file must be modified to include the listener name.
For example:
Attribute name
Description
service_name
oracle_listener_monitor_1
service_cmd
“$SGCONF/scripts/tkit/oracle/tkit_module.sh
oracle_monitor_listener <listener_name1>”
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
You must set the above attributes for each listener. For example:
Attribute name
Description
service_name
oracle_listener_monitor_2
service_cmd
“$SGCONF/scripts/tkit/oracle/tkit_module.sh
oracle_monitor_listener <listener_name2>”
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
Ensure that the LISTENER_NAME passed to the service_cmd, matches one of the listener's
names specified in the package configuration file.
42
Supporting Oracle features
Support for user defined database services
You can start and stop the user defined database services through the database package when
used with the Serviceguard toolkit for Oracle. To use this feature, you must set the Database
Service management policy to manual and start the database in open startup mode.
NOTE:
•
This feature is available only on systems running Oracle Clusterware.
•
If user defined DB services are configured to start with database package startup, then
database must be started in open mode. Set the package configuration file attribute
START_MODE to open.
The attribute, DB_SERVICE is used to start and stop the database service through the database
package. This attribute is commented by default. You can set the attribute DB_SERVICE to all
or specify the database service names that must be started and stopped by the database package.
To start and stop all the database services configured in the database managed by this package,
set this attribute to all.
For example: tkit/oracle/oracle/DB_SERVICE all
To start and stop one or more specific database services through this database package, you
must specify the service names using multiple instances of this attribute, as shown in the following
example:
Example:
•
tkit/oracle/oracle/DB_SERVICE <service1>
•
tkit/oracle/oracle/DB_SERVICE <service2>
•
tkit/oracle/oracle/DB_SERVICE <service3>
Support for database hang detection
You can configure a separate service that will detect the database hang and take appropriate
action. Database hang is detected by connecting to the database and checking its status. If this
process takes an unusually long time or if the toolkit is unable to retrieve the database status,
then it is assumed that the database is hung. You can configure two attributes when you configure
this service:
1. TIMEOUT: This attribute defines how long the script must wait for the database hang check
to return success. If the database health cannot be determined within this time after
connecting to the database, then it is assumed that the database is hung. It can have any
positive integer as value. The default value for TIMEOUT is 30 (seconds). This must not be
confused with the TIME_OUT package attribute or the service_halt_timeout attribute.
2. ACTION: This attribute defines the action that must be taken if a database hang is detected.
Currently, this attribute can take one of the following values:
•
log - Log a message: A message is logged to the package log every time a hang is
detected. If the MONITOR_INTERVAL attribute is set to 30 seconds, then a message is
logged to the package log file every 30 seconds.
•
failure - Failover the package to adoptive node.
The default value for ACTION is failure.
The syntax of the service command is as follows:
service_cmd "$SGCONF/scripts/tkit/oracle/tkit_module.sh
oracle_hang_monitor <TIMEOUT> <ACTION>"
Following is an example in which the TIMEOUT is set to 40 seconds and the ACTION is set to
failure:
Support for user defined database services
43
service_name db_hang_check
service_cmd "$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_hang_monitor 40 failure"
service_restart none
service_fail_fast_enabled no
service_halt_timeout 300
service_halt_on_maintenance no
Support for Oracle database backup mode
During the oracle database instance package start or package failover on the other cluster node,
if the database is in the online backup mode based on your input through the package attribute
DISABLE_BACKUP_MODE, the toolkit gets the database out of the backup mode. The valid
values for this parameter are yes and no. By default, the value is set to no.
For example: tkit/oracle/oracle/DISABLE_BACKUP_MODE no.
When DISABLE_BACKUP_MODE parameter is set to yes and the database is in the backup
mode, the Oracle database instance package start or failover on other node will alter the database
to remove the backup mode before starting. Also, START_MODE parameter should be set to
open. If Oracle database recovery is needed, then package fails to start with a following message
in the package log:
Unable to get the database out of the backup mode. You must get the database out of the backup
mode before starting the package. The toolkit does not take any action on database recovery.
If DISABLE_BACKUP_MODE is set to no then this feature will not be enabled.
44
Supporting Oracle features
7 Troubleshooting
This section explains some of the problem scenarios that you might encounter while using the
Serviceguard toolkit for Oracle in a Serviceguard cluster.
Problem scenario
Possible cause
Oracle database toolkit packages
startup fails, and package log
contains the following message:
Oracle database failed to start on this Look at the sub-directories for
node.
database and ASM instances under
$ORACLE_BASE/admin/, where log
and trace files for these instances are
deposited.
Oracle Instance startup failed.
Recommended action
Oracle database toolkit packages
startup fails, and package log
contains the following message:
Package attributes such as
Refer the Oracle logs to edit the
ORACLE_HOME, SID_NAME, PFILE package configuration file with
are not initialized with correct values. appropriate values. Apply the
configuration and start the package.
<file name > (parameter file): No such
file of directory.
User defined DB services do not start Oracle database is not started in
with package startup even when they open mode.
are configured to start with database
package.
If user defined DB services are
configured to start with database
package startup, then database must
be started in open mode.
Set the package configuration file
attribute START_MODE to open.
User defined DB services do not start Either the service name mentioned 1. Edit the package configuration file
with package startup and package
in the package configuration file is
with correct service name and
log shows:
wrong or the target Oracle database
reapply the package.
is not registered with Oracle
2. Log in as Oracle administrator to
Could not retrieve the status of
Clusterware.
set the database management
service name.
policy to MANUAL and register the
database with Oracle Clusterware.
For 10g:
#$ORACLE_HOME/bin/srvctl
modify database –d <dbname> -o
<oracle home> y manual.
For 11g:
#$ORACLE_HOME/bin/srvctl
modify database –d <dbname> -o
<oracle home> y manual.
NOTE: You must set the user
defined DB service management
policy to MANUAL in case of Oracle
11.2.0.1.
#$ORACLE_HOME/bin/srvctl
modify service –d <dbname> -s
<service name> -y MANUAL.
Failure in volume group deactivation Failure in killing all the processes
and unmounting the file system,
accessing the Volume group and File
resulting in package halt failure.
system which are currently used by
the Oracle application.
Perform these steps to ensure the
issue does not persist:
1. Edit the package configuration file.
2. Set the value of
fs_umount_retry_count to 5
and apply the configuration and
start the package.
45
8 Support and other resources
Accessing Hewlett Packard Enterprise Support
•
For live assistance, go to the Contact Hewlett Packard Enterprise Worldwide website:
www.hpe.com/assistance
•
To access documentation and support services, go to the Hewlett Packard Enterprise Support
Center website:
www.hpe.com/support/hpesc
Information to collect
•
Technical support registration number (if applicable)
•
Product name, model or version, and serial number
•
Operating system name and version
•
Firmware version
•
Error messages
•
Product-specific reports and logs
•
Add-on products or components
•
Third-party products or components
Accessing updates
•
Some software products provide a mechanism for accessing software updates through the
product interface. Review your product documentation to identify the recommended software
update method.
•
To download product updates, go to either of the following:
◦
Hewlett Packard Enterprise Support Center Get connected with updates page:
www.hpe.com/support/e-updates
◦
Software Depot website:
www.hpe.com/support/softwaredepot
•
To view and update your entitlements, and to link your contracts and warranties with your
profile, go to the Hewlett Packard Enterprise Support Center More Information on Access
to Support Materials page:
www.hpe.com/support/AccessToSupportMaterials
IMPORTANT: Access to some updates might require product entitlement when accessed
through the Hewlett Packard Enterprise Support Center. You must have an HP Passport
set up with relevant entitlements.
Websites
46
Website
Link
Hewlett Packard Enterprise Information Library
www.hpe.com/info/enterprise/docs
Hewlett Packard Enterprise Support Center
www.hpe.com/support/hpesc
Support and other resources
Website
Link
Contact Hewlett Packard Enterprise Worldwide
www.hpe.com/assistance
Subscription Service/Support Alerts
www.hpe.com/support/e-updates
Software Depot
www.hpe.com/support/softwaredepot
Customer Self Repair
www.hpe.com/support/selfrepair
Insight Remote Support
www.hpe.com/info/insightremotesupport/docs
Serviceguard Solutions for HP-UX
www.hpe.com/info/hpux-serviceguard-docs
Single Point of Connectivity Knowledge (SPOCK) Storage www.hpe.com/storage/spock
compatibility matrix
Storage white papers and analyst reports
www.hpe.com/storage/whitepapers
Customer self repair
Hewlett Packard Enterprise customer self repair (CSR) programs allow you to repair your product.
If a CSR part needs to be replaced, it will be shipped directly to you so that you can install it at
your convenience. Some parts do not qualify for CSR. Your Hewlett Packard Enterprise authorized
service provider will determine whether a repair can be accomplished by CSR.
For more information about CSR, contact your local service provider or go to the CSR website:
www.hpe.com/support/selfrepair
Remote support
Remote support is available with supported devices as part of your warranty or contractual support
agreement. It provides intelligent event diagnosis, and automatic, secure submission of hardware
event notifications to Hewlett Packard Enterprise, which will initiate a fast and accurate resolution
based on your product’s service level. Hewlett Packard Enterprise strongly recommends that
you register your device for remote support.
For more information and device support details, go to the following website:
www.hpe.com/info/insightremotesupport/docs
Documentation feedback
Hewlett Packard Enterprise is committed to providing documentation that meets your needs. To
help us improve the documentation, send any errors, suggestions, or comments to Documentation
Feedback (docsfeedback@hpe.com). When submitting your feedback, include the document
title, part number, edition, and publication date located on the front cover of the document. For
online help content, include the product name, product version, help edition, and publication date
located on the legal notices page.
Customer self repair
47
A Sample package configuration file for Oracle database
modular package without ASM
# **********************************************************************
# ****** HIGH AVAILABILITY PACKAGE CONFIGURATION FILE (template) *******
# **********************************************************************
# ******* Note: This file MUST be edited before it can be used. ********
# * For complete details about package parameters and how to set them, *
# * consult the Serviceguard manual.*
# **********************************************************************
package_name
oracle_pkg
package_description
"Oracle Toolkit Package"
node_name
*
script_log_file
$SGCONF/oracle_pkg/pkg.log
# ************ LINUX ORACLE TOOLKIT PARAMETERS ************
tkit/oracle/oracle/INSTANCE_TYPE
database
tkit/oracle/oracle/ORACLE_HOME
/oracle/app/oracle/product/11.2.0/dbhome_1
tkit/oracle/oracle/ORACLE_ADMIN
oracle
tkit/oracle/oracle/SID_NAME
oranew
tkit/oracle/oracle/START_MODE
open
tkit/oracle/oracle/ASM
no
tkit/oracle/oracle/LISTENER
yes
tkit/oracle/oracle/LISTENER_NAME
LISTENER
tkit/oracle/oracle/LISTENER_PASS
lis123
tkit/oracle/oracle/LISTENER_RESTART
2
tkit/oracle/oracle/PFILE
${ORACLE_ORACLE_HOME}/dbs/init${ORACLE_SID_NAME}.ora
tkit/oracle/oracle/MONITOR_PROCESSES
ora_pmon_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_dbw0_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_ckpt_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_smon_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_lgwr_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_reco_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_INTERVAL
30
tkit/oracle/oracle/TIME_OUT
30
tkit/oracle/oracle/PARENT_ENVIRONMENT
no
tkit/oracle/oracle/CLEANUP_BEFORE_STARTUP
no
tkit/oracle/oracle/USER_SHUTDOWN_MODE
abort
tkit/oracle/oracle/KILL_ASM_FOREGROUNDS
yes
tkit/oracle/oracle/DB_SERVICE
all
tkit/oracle/oracle/DISABLE_BACKUP_MODE
no
email_id
adc@domain.com
service_name
oracle_service
service_cmd
"$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_monitor"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
service_name
oracle_listener_service
service_cmd
"$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_monitor_listener"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
service_name
oracle_hang_service
service_cmd
"$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_hang_monitor 30 failure"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
ip_subnet_node
nodeA
ip_subnet_node
nodeB
Provide VG name if the database is configured in a VG.
vg
vgoracle
# FILESYSTEMS
fs_name
/dev/vg_ora/lvol1
#fs_server
fs_directory
/mntoracle
fs_type
"ext2"
fs_mount_opt
"-o rw"
#fs_umount_opt
#fs_fsck_opt
48
Sample package configuration file for Oracle database modular package without ASM
B Sample package configuration file for Oracle ASM
instance package and database modular package
ASM multi-node package configuration file
# **********************************************************************
# ****** HIGH AVAILABILITY PACKAGE CONFIGURATION FILE (template) *******
# **********************************************************************
# ******* Note: This file MUST be edited before it can be used. ********
# * For complete details about package parameters and how to set them,*
# * consult the Serviceguard manual.*
# **********************************************************************
package_name
oracle_asm_pkg
package_description
"Oracle Toolkit Package"
node_name
*
script_log_file
$SGCONF/oracle_asm_pkg/log
# ************ LINUX ORACLE TOOLKIT PARAMETERS ************
tkit/oracle/oracle/INSTANCE_TYPE
ASM
tkit/oracle/oracle/ORACLE_ADMIN
oracle
tkit/oracle/oracle/ASM
no
tkit/oracle/oracle/ASM_HOME
/grid/asm_home
tkit/oracle/oracle/ASM_USER
oracle
tkit/oracle/oracle/ASM_SID
+ASM
tkit/oracle/oracle/LISTENER
no
tkit/oracle/oracle/PFILE
${ORACLE_ASM_HOME}/dbs/init${ORACLE_ASM_SID}.ora
tkit/oracle/oracle/MONITOR_PROCESSES
asm_pmon_${ORACLE_ASM_SID}
tkit/oracle/oracle/MONITOR_PROCESSES
asm_dbw0_${ORACLE_ASM_SID}
tkit/oracle/oracle/MONITOR_PROCESSES
asm_ckpt_${ORACLE_ASM_SID}
tkit/oracle/oracle/MONITOR_PROCESSES
asm_smon_${ORACLE_ASM_SID}
tkit/oracle/oracle/MONITOR_PROCESSES
asm_lgwr_${ORACLE_ASM_SID}
tkit/oracle/oracle/MONITOR_PROCESSES
asm_gmon_${ORACLE_ASM_SID}
tkit/oracle/oracle/MONITOR_PROCESSES
asm_rbal_${ORACLE_ASM_SID}
tkit/oracle/oracle/MONITOR_INTERVAL
30
tkit/oracle/oracle/TIME_OUT
30
tkit/oracle/oracle/PARENT_ENVIRONMENT
no
tkit/oracle/oracle/CLEANUP_BEFORE_STARTUP
no
tkit/oracle/oracle/USER_SHUTDOWN_MODE
abort
tkit/oracle/oracle/KILL_ASM_FOREGROUNDS
yes
email_id
abc@hp.com
service_name
oracle_service
service_cmd
"$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_monitor"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
Oracle ASM database package
# **********************************************************************
# ****** HIGH AVAILABILITY PACKAGE CONFIGURATION FILE (template) *******
# **********************************************************************
# ******* Note: This file MUST be edited before it can be used. ********
# * For complete details about package parameters and how to set them, *
# * consult the Serviceguard manual.*
# **********************************************************************
package_name
oracle_asmdb_pkg
package_description
"Oracle Toolkit Package"
node_name
*
script_log_file
$SGCONF/oracle_asmdb_pkg/pkg.log
# ************ LINUX ORACLE TOOLKIT PARAMETERS ************
tkit/oracle/oracle/INSTANCE_TYPE
database
tkit/oracle/oracle/ORACLE_HOME
/oracle/app/oracle/product/11.2.0/dbhome_1
tkit/oracle/oracle/ORACLE_ADMIN
oracle
tkit/oracle/oracle/SID_NAME
asmdb
tkit/oracle/oracle/START_MODE
open
tkit/oracle/oracle/ASM
yes
tkit/oracle/oracle/ASM_DISKGROUP
ORA_ASM
tkit/oracle/oracle/ASM_HOME
/grid/asm_home
tkit/oracle/oracle/ASM_USER
oracle
tkit/oracle/oracle/ASM_SID
+ASM
tkit/oracle/oracle/LISTENER
yes
tkit/oracle/oracle/LISTENER_NAME
LISTENER
tkit/oracle/oracle/LISTENER_PASS
lis123
tkit/oracle/oracle/LISTENER_RESTART
2
tkit/oracle/oracle/PFILE
${ORACLE_ORACLE_HOME}/dbs/init${ORACLE_SID_NAME}.ora
tkit/oracle/oracle/MONITOR_PROCESSES
ora_pmon_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_dbw0_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_ckpt_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_smon_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_lgwr_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES
ora_reco_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_INTERVAL
30
tkit/oracle/oracle/TIME_OUT
30
49
tkit/oracle/oracle/PARENT_ENVIRONMENT
no
tkit/oracle/oracle/CLEANUP_BEFORE_STARTUP
no
tkit/oracle/oracle/USER_SHUTDOWN_MODE
abort
tkit/oracle/oracle/KILL_ASM_FOREGROUNDS
yes
tkit/oracle/oracle/DB_SERVICE
all
tkit/oracle/oracle/DISABLE_BACKUP_MODE
no
email_id
abc@hp.com
service_name
oracle_service
service_cmd
"$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_monitor"
service_restart
none
service_fail_fast_enabled
no
service_halt_timeout
300
service_halt_on_maintenance
no
ip_subnet_node
ip_subnet_node
50
nodeA
nodeB
Sample package configuration file for Oracle ASM instance package and database modular package
C Sample package configuration file for Oracle multitenant
database with pluggable databases configured for
monitoring# **********************************************************************
# ****** HIGH AVAILABILITY PACKAGE CONFIGURATION FILE (template) *******
# **********************************************************************
# ******* Note: This file MUST be edited before it can be used. ********
# * For complete details about package parameters and how to set them, *
# * consult the Serviceguard manual.*
# **********************************************************************
package_name oracle_pkg
package_description "Oracle Toolkit Package"
node_name *
script_log_file $SGCONF/oracle_pkg/pkg.log
# ************ LINUX ORACLE TOOLKIT PARAMETERS ************
tkit/oracle/oracle/INSTANCE_TYPE database
tkit/oracle/oracle/ORACLE_HOME /oracle/app/oracle/product/11.2.0/dbhome_1
tkit/oracle/oracle/ORACLE_ADMIN oracle
tkit/oracle/oracle/SID_NAME oranew
tkit/oracle/oracle/START_MODE open
tkit/oracle/oracle/ASM no
tkit/oracle/oracle/LISTENER yes
tkit/oracle/oracle/LISTENER_NAME LISTENER
tkit/oracle/oracle/LISTENER_PASS lis123
tkit/oracle/oracle/LISTENER_RESTART 2
tkit/oracle/oracle/PFILE ${ORACLE_ORACLE_HOME}/dbs/init${ORACLE_SID_NAME}.ora
tkit/oracle/oracle/MONITOR_PROCESSES ora_pmon_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES ora_dbw0_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES ora_ckpt_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES ora_smon_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES ora_lgwr_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_PROCESSES ora_reco_${ORACLE_SID_NAME}
tkit/oracle/oracle/MONITOR_INTERVAL 30
tkit/oracle/oracle/TIME_OUT 30
tkit/oracle/oracle/PARENT_ENVIRONMENT no
tkit/oracle/oracle/CLEANUP_BEFORE_STARTUP no
tkit/oracle/oracle/USER_SHUTDOWN_MODE abort
tkit/oracle/oracle/KILL_ASM_FOREGROUNDS yes
tkit/oracle/oracle/DB_SERVICE all
tkit/oracle/oracle/DISABLE_BACKUP_MODE no
tkit/oracle/oracle/CRITICAL_PDB any
email_id abc@hp.com
service_name oracle_service
service_cmd "$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_monitor"
service_restart none
service_fail_fast_enabled no
service_halt_timeout 300
service_halt_on_maintenance no
service_name oracle_listener_service
service_cmd "$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_monitor_listener"
service_restart none
service_fail_fast_enabled no
service_halt_timeout 300
service_halt_on_maintenance no
service_name oracle_hang_service
service_cmd "$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_hang_monitor 30 failure"
service_restart none
service_fail_fast_enabled no
service_halt_timeout 300
service_halt_on_maintenance no
service_name oracle_pdb_moitor_service
service_cmd "$SGCONF/scripts/tkit/oracle/tkit_module.sh oracle_pdb_monitor"
service_restart none
51
Glossary
$SGCONF
/usr/local/cmcluster/conf for RHEL
/opt/cmcluster/conf for SLES
$SGROOT
/usr/local/cmcluster in RedHat
/opt/cmcluster in SLES
ADF
Attribute definition file
ASM
Automatic Storage Management
CDB
Container Database
Configuration
directory mode
of operation
It allows you to maintain your own directory and copy all the toolkits scripts in this directory.
Linux
Computer operating system
MNP
Multi-node package
Non ASM
Non Automatic Storage Management
Package
A grouping of application services (individual Linux Processes) under Serviceguard
PDB
Pluggable Database
52
Glossary
Index
support for multiple listeners, 41
support for Multitenant architecture, 40
support for user defined database services, 43
A
accessing
updates, 46
Alert mail notification, 37
C
Cluster verification of Oracle toolkit, 37
Configuring modular ASM database package, 19
Configuring modular Oracle database package without
ASM, 13
contacting Hewlett Packard Enterprise, 46
customer self repair, 47
D
documentation
providing feedback on, 47
U
updates
accessing, 46
Using Serviceguard toolkit for Oracle, 13
W
websites, 46
customer self repair, 47
With Automatic Storage Management, 12
Without Automatic Storage Management, 11
Multiple instance configuration, 11
Shared configuration, 11
H
Hardware Support, 5
I
Installation
uninstallation, 6
M
Managing a package, 30
adding the package to the cluster, 30
Managing packages
deleting a package, 35
halting packages, 35
maintaining a package, 31
running packages, 30
O
Oracle Toolkit
Advantages, 5
Overview, 5
Prerequisites, 5
Oracle toolkit
troubleshooting, 45
Oracle toolkit after Installation
files and directories, 7
Oracle toolkit features, 37
R
remote support, 47
S
support
Hewlett Packard Enterprise, 46
Support for multiple listeners
separate service to monitor each listener, 42
Single service to monitor all the listeners together, 41
Supported configuration, 11
Supporting Oracle features, 40
support for database hang detection, 43
53
Download