12 Administering Oracle ASM Filter Driver
Oracle ASM Filter Driver (Oracle ASMFD) simplifies the configuration and management of disk devices by eliminating the need to rebind disk devices used with Oracle ASM each time the system is restarted.
This section contains the following topics:
-
Determining Whether Oracle ASM Filter Driver Has Been Configured
-
Updating the Oracle ASM Filter Driver AFD_DISKSTRING Parameter
-
Updating the Oracle ASM ASM_DISKSTRING Parameter for Oracle ASM Filter Driver Disks
-
Setting, Clearing, and Scanning Oracle ASM Filter Driver Labels
WARNING:
When configuring Oracle ASM, including Oracle ASMFD, do not manually modify or erase the contents of Oracle ASM disks or modify any files, including configuration files.
Note:
-
The configuration for Oracle ASMFD can now be enabled with a check box to be an automated process during Oracle Grid Infrastructure installation.
-
If ASMLIB is installed and configured for an existing Oracle ASM installation, then you must explicitly uninstall the existing ASMLIB configuration before installing and configuring Oracle ASMFD.
-
Oracle ASM Filter Driver (Oracle ASMFD) is available on Linux systems starting with Oracle Database 12c Release 1 (12.1.0.2). Oracle ASMFD is available on Solaris systems starting with Oracle Database 12c Release 2 (12.2.0.1).
-
In the steps of the procedures described in the topics of this section, the
$ORACLE_HOME
environmental variable is set to the directory path of the Oracle Grid Infrastructure home. Commands that show#
as the operating system prompt must be run as the root user. Commands that show$
as the operating system prompt should be run as the owner of Oracle Grid Infrastructure home
See Also:
-
Oracle Database Installation Guide for Linux for information about installing and configuring Oracle ASMFD on Oracle Standalone Server
-
My Oracle Support articles about Oracle ASMFD available at My Oracle Support (
https://support.oracle.com
) for additional information about Oracle ASMFD, such as supported operating system platforms (certification matrix) or configuration issues. -
ASMCMD Oracle ASM Filter Driver Management Commands for information about the ASMCMD commands for administering Oracle ASMFD
-
About ASMCMD for information about all the ASMCMD commands
-
Managing Oracle ASM Filter Driver With Oracle Enterprise Manager for information about using Oracle Enterprise Manager to administer Oracle ASMFD
About Oracle ASM Filter Driver
Oracle ASM Filter Driver (Oracle ASMFD) is a kernel module that resides in the I/O path of the Oracle ASM disks. Oracle ASM uses the filter driver to validate write I/O requests to Oracle ASM disks.
Oracle ASMFD simplifies the configuration and management of disk devices by eliminating the need to rebind disk devices used with Oracle ASM each time the system is restarted.
Oracle ASM Filter Driver rejects any I/O requests that are invalid. This action eliminates accidental overwrites of Oracle ASM disks that would cause corruption in the disks and files within the disk group. For example, the Oracle ASM Filter Driver filters out all non-Oracle I/Os which could cause accidental overwrites.
About Oracle ASMLIB and Oracle ASM Filter Driver
Starting with Oracle Grid Infrastructure 12c Release 2 (12.2), Oracle ASM Filter Driver (Oracle ASMFD) cannot be installed and configured if Oracle ASMLIB has been installed on the system. If you want to install and configure Oracle ASMFD, you must first uninstall Oracle ASMLIB.
See Also:
-
Oracle Grid Infrastructure Installation and Upgrade Guide for Linux for information about installing and configuring Oracle ASMFD on Oracle Grid Infrastructure, and deinstalling Oracle ASMLIB
About Partition Tables and Oracle ASM Filter Driver
Extended partition tables are not supported with Oracle ASM filter driver (ASMFD) in Oracle Automatic Storage Management 12.2 Release 1 (12.2.0.1).
Determining Whether Oracle ASM Filter Driver Has Been Configured
The value of the AFD_STATE
parameter of
SYS_ASMFD_PROPERTIES
specifies whether Oracle ASMFD is configured for
the Oracle ASM instance.
You can check the state of Oracle ASMFD with the ASMCMD afd_state
command. For example:
$ $ORACLE_HOME/bin/asmcmd afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'DEFAULT' on host 'myhost'
To determine if Oracles ASMFD is present on the host, you can also display the value of AFD_STATE
from SYS_CONTEXT
. You must run the query on the Oracle ASM instance.
If the value of AFD_STATE
is equal to NOT
AVAILABLE
, then Oracle ASMFD is not configured.
SQL> SELECT SYS_CONTEXT('SYS_ASMFD_PROPERTIES', 'AFD_STATE') FROM DUAL; SYS_CONTEXT('SYS_ASMFD_PROPERTIES','AFD_STATE') -------------------------------------------------------------------------------- NOT AVAILABLE
A value of CONFIGURED
means that Oracle ASMFD is completely set up and the Oracle ASM instance can register with the driver.
SQL> SELECT SYS_CONTEXT('SYS_ASMFD_PROPERTIES', 'AFD_STATE') FROM DUAL; SYS_CONTEXT('SYS_ASMFD_PROPERTIES','AFD_STATE') -------------------------------------------------------------------------------- CONFIGURED
Updating the Oracle ASM Filter Driver AFD_DISKSTRING Parameter
The AFD_DISKSTRING
parameter specifies the Oracle ASMFD disk discovery string that is used to identify the disks to be managed by Oracle ASMFD.
You can set and display the AFD_DISKSTRING
parameter with the ASMCMD afd_dsset
and afd_dgset
commands. For example:
$ $ORACLE_HOME/bin/asmcmd afd_dsset '/dev/rdsk/mydisks/*' $ $ORACLE_HOME/bin/asmcmd afd_dsget AFD discovery string: /dev/rdsk/mydisks/*
You can also set the AFD_DISKSTRING
with the ALTER
SYSTEM
SQL statement. A label is created in the disk header of those disks identified by the Oracle ASMFD disk discovery string.
SQL> ALTER SYSTEM AFD_DISKSTRING SET '/dev/disk0','/dev/disk1','/devices/dsk/*'; System altered.
You can retrieve the value of AFD_DISKSTRING
parameter with the following query.
SQL> SELECT SYS_CONTEXT('SYS_ASMFD_PROPERTIES', 'AFD_DISKSTRING') FROM DUAL; SYS_CONTEXT('SYS_ASMFD_PROPERTIES','AFD_DISKSTRING') -------------------------------------------------------------------------------- '/dev/disk0','/dev/disk1','/devices/dsk/*'
See Also:
-
Updating the Oracle ASM ASM_DISKSTRING Parameter for Oracle ASM Filter Driver Disks for information about updating the Oracle ASM disk discovery string
-
ASM_DISKSTRING for information about the
ASM_DISKSTRING
initialization parameter -
afd_dsget for information about displaying the Oracle ASMFD disk discovery string
-
afd_dsset for information about setting the Oracle ASMFD disk discovery string
Updating the Oracle ASM ASM_DISKSTRING Parameter for Oracle ASM Filter Driver Disks
You can update the Oracle ASM disk discovery string to add or remove Oracle ASMFD disk label names to and from the ASM_DIKSTRING
initialization parameter.
For example, you can add the Oracle ASMFD disks to the ASM_DIKSTRING
initialization parameter as follows:
ASM_DISKSTRING = 'AFD:DISK0', 'AFD:DISK1', '/dev/rdsk/mydisks/*'
Or you can set the ASM_DIKSTRING
initialization parameter as follows:
ASM_DISKSTRING = 'AFD:*', '/dev/rdsk/mydisks/*'
You can display and set the Oracle ASM disk discovery string with the ASMCMD dsget
and dsset
commands. For example, you can set the Oracle ASM disk discovery string to add Oracle ASMFD disks as follows:
$ $ORACLE_HOME/bin/asmcmd dsset 'AFD:*,/dev/rdsk/mydisks/*'
You can remove previously added Oracle ASMFD disks as follows:
$ $ORACLE_HOME/bin/asmcmd dsset '/dev/rdsk/mydisks/*'
See Also:
-
Updating the Oracle ASM Filter Driver AFD_DISKSTRING Parameter for information about updating the Oracle ASMFD disk discovery string
-
ASM_DISKSTRING for information about the
ASM_DISKSTRING
initialization parameter -
afd_dsget for information about displaying the Oracle ASMFD disk discovery string
-
afd_dsset for information about setting the Oracle ASMFD disk discovery string
Setting, Clearing, and Scanning Oracle ASM Filter Driver Labels
Setting a label provisions a disk to be used by Oracle ASMFD. After the label is set, the specified disk is managed by Oracle ASMFD.
You can add, remove, and scan labels with the ASMCMD afd_label
, afd_unlabel
, and afd_scan
commands. For example:
$ $ORACLE_HOME/bin/asmcmd afd_label 'disk0' '/dev/rdsk/mydisks/disk0' $ $ORACLE_HOME/bin/asmcmd afd_unlabel 'disk0' $ $ORACLE_HOME/bin/asmcmd afd_scan '/dev/rdsk/mydisks/*'
In addition, Oracle ASM Configuration Assistant (ASMCA) provides support for adding and removing labels on Oracle ASMFD disks.
You can also manage labels with SQL statements. You can set a label with the ALTER
SYSTEM
LABEL
SET
SQL statement. For example:
SQL> ALTER SYSTEM LABEL SET 'disk0' TO '/dev/disk0'; System altered. SQL> SELECT UPPER(path) FROM V$ASM_DISK ORDER BY PATH; UPPER(PATH) -------------------------------------------------------------------------------- AFD:DISK0
When you run the statement, you can use the optional RENAME
or MIGRATE
option. If a disk was previously provisioned for Oracle ASMFD, you can rename the label with the RENAME
option. Note that the device should not be managed with Oracle ASMFD when the command is run. If a disk was previously used for an Oracle ASM disk group and the disk group has been dismounted, then you can label this disk using the MIGRATE
option.
You can use ALTER
SYSTEM
LABEL
CLEAR
to remove the label from a device and stop Oracle ASMFD from managing the device. For example:
SQL> ALTER SYSTEM LABEL CLEAR 'disk0'; System altered.
You can use ALTER
SYSTEM
LABEL
SCAN
on remote nodes after the ALTER
SYSTEM
LABEL
SET
command is run on the local node.
Because ALTER
SYSTEM
LABEL
SET
statement writes the label on the disk header and the disk is shared across nodes, the same statement is not run on other nodes of the cluster.
If the device-path is not specified, then the statement uses the AFD_DISKSTRING
parameter value to perform the scan operation.
SQL> ALTER SYSTEM LABEL SCAN
See Also:
-
afd_label for information about adding labels on Oracle ASMFD disks
-
afd_unlabel for information about removing labels on Oracle ASMFD disks
-
afd_scan for information about scanning labels on Oracle ASMFD disks
-
Managing Disk Groups with ASMCA for information about using ASMCA to administer disk groups
Deconfiguring Oracle ASM Filter Driver
You can deconfigure Oracle ASM Filter Driver (Oracle ASMFD) if it has been configured on your system.
This section contains the following topics:
See Also:
- ASMCMD Oracle ASM Filter Driver Management Commands for information about the ASMCMD commands for administering Oracle ASMFD
-
Oracle Clusterware Administration and Deployment Guide for information about using CRSCTL commands
Deconfiguring Oracle ASM Filter Driver in an Oracle Grid Infrastructure Clusterware Environment
Perform the following steps to deconfigure Oracle ASM Filter Driver in an Oracle Clusterware environment:
-
Update the Oracle ASM disk discovery string to enable Oracle ASM to discover disk devices after Oracle ASMFD is deconfigured.
-
As the Oracle Grid Infrastructure owner list the nodes and node roles in your cluster by running the following command on any node:
$ $ORACLE_HOME/bin/olsnodes -a
-
On each Hub and Leaf node, do the following, either in rolling or non-rolling mode:
-
Log in as the
root
user and stop Oracle Grid Infrastructure:# $ORACLE_HOME/bin/crsctl stop crs
If the command returns any error, then stop Oracle Grid Infrastructure forcibly as follows:
# $ORACLE_HOME/bin/crsctl stop crs -f
-
As
root
, stop Oracle ACFS kernel modules to ensure the most reliable shutdown:# $ORACLE_HOME/bin/acfsload stop
-
As
root
, deconfigure Oracle ASMFD:# $ORACLE_HOME/bin/asmcmd afd_deconfigure
-
If the storage devices are owned by
root
, set the permissions required by the Oracle Grid Infrastructure user to access the devices. -
As
root
, start ACFS kernel modules:# $ORACLE_HOME/bin/acfsload start
-
As
root
, start the Oracle Clusterware stack on the node:# $ORACLE_HOME/bin/crsctl start crs
-
As the Oracle Grid Infrastructure owner verify the status of Oracle ASMFD:
$ $ORACLE_HOME/bin/asmcmd afd_state
-
-
As the Oracle Grid Infrastructure owner update the Oracle ASM discovery string to remove the Oracle ASMFD path:
$ $ORACLE_HOME/bin/asmcmd dsget $ $ORACLE_HOME/bin/asmcmd dsset
old_diskstring
Check the current value of the Oracle ASM disk discovery string before updating the value. The
old_diskstring
value is the old disk discovery string value before updating with theAFD:
(Oracle ASMFD) paths.
See Also:
-
Updating the Oracle ASM ASM_DISKSTRING Parameter for Oracle ASM Filter Driver Disks for information about updating the Oracle ASM disk discovery string
-
Updating the Oracle ASM Filter Driver AFD_DISKSTRING Parameter for information about updating the Oracle ASM Filter Driver discovery disk discovery string
-
Oracle Advanced Cluster File System Administrator's Guide for information about the
acfsload
command -
Determining Whether Oracle ASM Filter Driver Has Been Configured for information about checking on the state of the Oracle ASM Filter Driver
- Oracle Grid Infrastructure Installation and Upgrade Guide for Microsoft Windows for information about configuring device persistence for Oracle ASM
Deconfiguring Oracle ASM Filter Driver in an Oracle Grid Infrastructure Standalone (Oracle Restart) Environment
Perform the following steps to deconfigure Oracle ASM Filter Driver in an Oracle Grid Infrastructure standalone environment:
-
Update the Oracle ASM disk discovery string to enable Oracle ASM to discover disk devices after Oracle ASMFD is deconfigured.
-
Log in as the
root
user and stop Oracle Grid Infrastructure for a standalone server using the following command:# $ORACLE_HOME/bin/crsctl stop has
If the previous command returns an error, then use the following command:
# $ORACLE_HOME/bin/crsctl stop has -f
-
As
root
, stop Oracle ACFS kernel modules to ensure the most reliable shutdown:# $ORACLE_HOME/bin/acfsload stop
-
As
root
, deconfigure Oracle ASMFD:# $ORACLE_HOME/bin/asmcmd afd_deconfigure
-
If the storage devices are owned by
root
, set the permissions required by the Oracle Grid Infrastructure user to access the devices. -
As
root
, start ACFS kernel modules:# $ORACLE_HOME/bin/acfsload start
-
As
root
, start Oracle Grid Infrastructure for a standalone server:# $ORACLE_HOME/bin/crsctl start has
-
As the Oracle Grid Infrastructure standalone server owner verify the Oracle ASMFD status:
$ $ORACLE_HOME/bin/asmcmd afd_state
-
As the Oracle Grid Infrastructure standalone server owner update the Oracle ASM disk discovery string to remove the Oracle ASMFD paths:
$ $ORACLE_HOME/bin/asmcmd dsget
$ $ORACLE_HOME/bin/asmcmd dsset old_diskstring
Check the current value of the Oracle ASM disk discovery string before updating the value. The old_diskstring
value is the old disk discovery string value before updating with the AFD:
(Oracle ASMFD) paths.
See Also:
-
Updating the Oracle ASM ASM_DISKSTRING Parameter for Oracle ASM Filter Driver Disks for information about updating the Oracle ASM disk discovery string
-
Updating the Oracle ASM Filter Driver AFD_DISKSTRING Parameter for information about updating the Oracle ASM Filter Driver discovery disk discovery string
-
Oracle Advanced Cluster File System Administrator's Guide for information about the
acfsload
command -
Determining Whether Oracle ASM Filter Driver Has Been Configured for information about checking on the state of the Oracle ASM Filter Driver
- Oracle Grid Infrastructure Installation and Upgrade Guide for Microsoft Windows for information about configuring device persistence for Oracle ASM
Oracle ASM Filter Driver Commands
This section describes the Oracle ASM Filter Driver (ASMFD) commands that are used during installation to manage Oracle ASM Filter Driver. These commands are located in the /bin
directory of the Oracle Grid Infrastructure home.
afdload
Purpose
afdload
loads or unloads the Oracle ASM Filter Driver.
Syntax
afdload { start | stop } [ -s ]
Table 12-1 contains the options available with the afdload
command.
Table 12-1 Options for the afdload command
Option | Description |
---|---|
|
Loads the Oracle ASM Filter Driver. |
|
Unloads the Oracle ASM Filter Driver. |
|
Operate in silent mode. |
Description
You can use afdload
to manually load or unload the Oracle ASM Filter Driver.
Before unloading driver with the stop
option, you must dismount disk groups and shut down Oracle ASM.
root
or administrator privilege is required to run afdload
.
Examples
The following is an example of the use of afdload
to stop (unload) the Oracle ASM Filter Driver.
# afdload stop
afddriverstate
Purpose
afddriverstate
provides information on the current state of the Oracle ASM Filter Driver.
Syntax
afddriverstate [-orahome ORACLE_HOME ]
{ installed | loaded | version | supported } [-s]
Table 12-2 contains the options available with the afddriverstate command.
Table 12-2 Options for the afddriverstate command
Option | Description |
---|---|
|
Specifies the Oracle Grid Infrastructure home in which the user has permission to execute the |
|
Determines whether Oracle ASM Filter Driver is installed on the system. |
|
Determines whether the Oracle ASM Filter Driver is loaded in memory. |
|
Reports the currently installed version of the Oracle ASM Filter Driver system software. |
|
Reports whether the system is a supported kernel for Oracle ASM Filter Driver. |
|
Specifies silent mode when running the command. |
Description
You can use afddriverstate
to display detailed information on the current state of the Oracle ASM Filter Driver.
Examples
The following is an example of the use of afddriverstate
.
$ afddriverstate version AFD-9325: Driver operating system kernel version = 2.6.39-400.3.0.el6uek.x86_64(x86_64). AFD-9326: Driver Oracle version = 150728. AFD-9212: Driver build version = MAIN.