The
crsctl
utility is used, along with the
srvctl
utility, to manage and monitor Oracle Clusterware resources and components.
crsctl
is stored under the GRID_HOME/bin directory and most
crsctl
commands are only available to Clusterware administrators. You can use
crsctl
from any node in the cluster. There are three different types of
crsctl
commands:
- Dual environment
crsctl
commands
- Oracle RAC environment
crsctl
commands
- Oracle Restart environment
crsctl
commands
Dual environment crsctl commands
The following lists the various
crsctl
commands and their functions are available for Oracle RAC and Oracle Restart environments:
-
crsctl add [resource|type]
-
[resource]
- Register resources to be managed by Clusterware. A resource might be an application process, a database, a service, a listener and so on.
-
[type]
- Create resource types
-
crcs check css
- Check the status of Cluster Synchronization Services (CSS).
-
crsctl delete [resource|type]
-
[resource]
- delete resources to be managed by Clusterware. A resource might be an application process, a database, a service, a listener and so on.
-
[type]
- delete resource types
-
crsctl get hostname
- Retrieves the host name of the local server
-
crsctl getperm [resource|type]
-
[resource]
- Get user and group permissions for a specific resource.
-
[type]
- Get permissions for a specific resource type.
-
crsctl modify[resource|type]
-
[resource]
- Modify attributes of a specific Clusterware resource.
-
[type]
- Modify attributes of a specific Clusterware type.
-
crsctl setperm [resource|type]
-
[resource]
- Set permissions for a specific Clusterware resource.
-
[type]
- Set permissions for a specific Clusterware type.
-
crsctl start resource
- Start idle resources in the cluster.
-
crsctl status [resource|type]
-
[resource]
- Determine the status of a specific Clusterware resource.
-
[type]
- Determine the status of a specific Clusterware type.
-
crsctl stop resource
Oracle RAC environment CRSCTL commands
The following lists the various
crsctl
commands and their functions which are available to manage the following components:
- Oracle Clusterware
- Oracle ASM
- CSS
- Cluster Time Synchronization Services
These commands are:
-
crsctl add [crs administrator|css votedisk|serverpool]
-
[crs administrator]
- Add a user to the list of cluster administrators.
-
[css votedisk]
- Add one or more voting disks to the cluster.
-
[serverpool]
- Add a server pool to the cluster.
-
crsctl check [cluster|crs|resource|ctss]
-
[cluster]
- Used to check the status of cluster. You can check the entire cluster or a specific node.
-
[crs]
- Checks the status of Oracle HA Services and Clusterware on the local server.
-
[resource]
- Check application specific agents assigned to a specific resource.
-
[ctss]
- Check the status of the Cluster Time Synchronization services
-
crsctl config crs
- Display the Oracle HA Services automatic startup configuration.
-
crsctl delete [crs administrator|css votedisk|node|serverpool]
-
[crs administrator]
- Remove a crs administrator.
-
[css votedisk]
- Remove a voting disk from the cluster.
-
[node]
- Remove a node from the cluster.
-
[serverpool]
- Remove a server pool from the cluster.
-
crsctl disable crs
- Do not allow automatic startup of Oracle High Availability Services when the server boots up.
-
crsctl enable crs
- Allow automatic startup of Oracle HA Services when the service boots up.
-
crsctl get [css|css ipmiaddr|nodename]
-
[css]
- Get the value of a specific parameter related to css.
-
[css ipmiaddr]
- get the address of the local IPMI device.
-
[nodename]
- Get the node name of the local node.
-
crsctl getperm serverpool
- Used to get permissions for a specific server pool.
-
crsctl lsmodules
- List components of modules available for debugging. You can list components for css, crs and evm.
-
crsctl modify serverpool
- Modify settings for a given server pool.
-
crsctl pin css
- Pin a node name with a specific node number.
-
crsctl query crs [administrator|activeversion|releaseversion|softwareversion]
-
[administrator]
- Display the list of users with Clusterware administrative privileges.
-
[activeversion]
- Display the active version of Clusterware on the local node.
-
[releaseversion]
- Display the release version of Clusterware.
-
[software version]
- Display the software version on a specific server in the cluster.
-
crsctl query css [ipnidevice|votedisk]
-
[ipnidevice]
- Determine if a IPMI device driver is present on the node the command is run on.
-
[votedisk]
- Display information on the voting disks.
-
crsctl relocate [resource|server]
-
[resource]
- Relocate resources to another server in the cluster.
-
[server]
- Relocate a server to a different server pool.
-
crsctl replace [discoverystring|votedisk]
-
[discoverystring]
- Replace the existing discovery string used to locate the voting disk files.
-
[votedisk]
- Move or replace the existing voting disks.
-
crsctl set css
- Set the value of a css parameter
-
crsctl set css ipmiaddr
- Store the address of the local IPMI device.
-
crsctl set css ipmiadmin
- Store the logon information of the IPMI administrator.
-
crsctl setperm serverpool
- Set permissions for a specific server pool.
-
crsctl start [cluster|crs]
-
[cluster]
- Start the Clusterware stack - Can be run from any node.
-
[crs]
- Start Oracle HA Services on the local server.
-
crsctl status [server|serverpool]
-
[server]
- Display the status and configuration of one or more servers.
-
[serverpool]
- Display the status and configuration of one or more server pools.
-
crsctl stop [cluster|crs]
-
[cluster]
- Stop the Oracle Clusterware stack on any node of the cluster.
-
[crs]
- Stop the Oracle HA Services on the local server.
-
crsctl unpin css
- Unpin one or more servers.
-
crsctl unset css
- Restore a css parameter to its default value.
Oracle Restart environment CRSCTL commands
The following lists the various
crsctl
commands and their functions that are available to manage the Oracle High Availability Services (OHAS) stack. This stack includes:
- Oracle High Availability Services daemon (ohasd)
- Oracle ASM
- Cluster Synchronization Services (OSS) if ASM is installed
These commands only impact the cluster node that they are run on. The Oracle Restart Environment CRSCTL commands are:
-
crsctl check has
- Check the status of ohasd
-
crsctl config has
- Display the automatic startup configuration of OHAS on the server.
-
crsctl disable has
- Disable OHAS services on the server when the server reboots.
-
crsctl enable has
- Enable OHAS services on the server when the server reboots.
-
crsctl query has [releaseversions|softwareversion]
-
releaseversions
- Display the release version of the Oracle Clusterware software on the local node.
-
softwareversion
- Display the software version on the local node.
-
crsctl start has
- Start OHAS on the local server.
-
crsctl stop has
- Stop OHAS on the local server.
Examples of Most Commonly Used CRSCTL commands
This section provides some examples of the use of the
crsctl
command to manage Oracle Clusterware Version 11 Release 2.
Checking the Cluster
Use the
crsctl
command to determine if the cluster is working on a specific node as seen in this example:
$GRID_HOME/bin/crsctl check crs
CRS-4638: Oracle High Availability Services is online
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
You can also use the
crsctl
command to check if CSS is running across all nodes of the cluster:
$GRID_HOME/bin/crsctl check cluster
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
The following
crsctl
command will provide a report on all the cluster resources and if they are running.
$GRID_HOME/bin/crsctl stat res -t
[oracle@rac1 oraagent_oracle]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
ONLINE ONLINE rac1
ora.LISTENER.lsnr
ONLINE ONLINE rac1
ora.asm
ONLINE ONLINE rac1 Started
ora.eons
ONLINE ONLINE rac1
ora.gsd
OFFLINE OFFLINE rac1
ora.net1.network
ONLINE ONLINE rac1
ora.ons
ONLINE ONLINE rac1
ora.registry.acfs
ONLINE ONLINE rac1
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE rac1
ora.oc4j
1 OFFLINE OFFLINE
ora.orcl.db
1 ONLINE ONLINE rac1 Open
ora.repos.db
1 OFFLINE OFFLINE
ora.rac1.vip
1 ONLINE ONLINE rac1
ora.scan1.vip
1 ONLINE ONLINE rac1
In the output above you see the status of each resource (for example the listener, asm, the database, the scan listener and so on. You might also want to use the
dig
command to check that the addresses that are being used are correct. For example:
dig @rac1.localhost
Starting and Stopping the Cluster
Use the
crsctl
command to start and stop the cluster on a specific node. This example starts the cluster and the following example stops the cluster.
$GRID_HOME/bin/crsctl start crs
$GRID_HOME/bin/crsctl stop crs
Enable or Disable Oracle Clusterware Daemons
Oracle Clusterware will automatically restart when a node is rebooted. There may be cases (like performing system maintenance) where you do not want clusterware to restart on a given node. The first command in the following example will keep Clusterware from stopping on the node that the command is executed on:. The second command in the following example will re-enable Clusterware on that node.
$GRID_HOME/bin/crsctl disable crs
$GRID_HOME/bin/crsctl enable crs
Managing the Voting Disks
The
crsctl
command is also useful for managing the voting disks. This command locates all the voting disks that you have allocated:
$GRID_HOME/bin/crsctl query css votedisk
You may want to add voting disks and the
crsctl
command is the way to do it. In this example we add a voting disk to a shared, non-ASM, disk system:
$GRID_HOME/bin/crsctl add css votedisk /ora05/shared/votedisk
You can add voting disks to ASM too, but the command syntax is a bit different as seen in this example where we use the
crsctl
command to add a voting disk to an ASM disk group called +VOTEDISK_DG:
$GRID_HOME/bin/crsctl replace votedisk +VOTEDISK_DG
We can also remove voting disks as seen in this example where we remove the voting disk we previously created (yes, we are a bit fickle!). Again, this is for non ASM filesystems:
$GRID_HOME/bin/crsctl delete css votedisk /ora05/shared/votedisk
You would delete a voting disk by using the voting disk GUID and the
crsctl
command as seen here:
$GRID_HOME/bin/crsctl delete css votedisk voting-disk-GUID
These commands can be executed without taking down the cluster and are very helpful when migrating voting disk to/from ASM. You can also move voting disks from one location to another using the
crsctl
command as seen here:
$GRID_HOME/bin/crsctl replace votedisk {+VOTEDISK_DG
Adding a Cluster Administrator
You can use the
crsctl
command to add a cluster administrator as seen in this example:
crsctl add crs administrator -u new_user_name
Removing a Cluster Administrator
You can use the
crsctl
command to add a cluster administrator as seen in this example:
crsctl delete crs administrator -u remove_user_name
Note that when enabling role-separate management, you will need to remove the * value as seen here:
crsctl delete crs administrator -u "*"
Listing Cluster Administrators
To list the users that are cluster administrators use the
crsctl
command as seen here:
crsctl query crs administrator
Relocate a Resource
Use the
crsctl
command if you have a resource on one host that you need to locate to another host. For example, if you wanted to locate a resource called delta_one from host rac1 to host rac2 then you would issue the following command:
$GRID_HOME/bin/crsctl relocate resource delta_one -n rac1 -s rac2