Basic Troubleshooting Techniques
The following are some of the most common configuration issues that prevent the Oracle ASM configuration from working properly.
If you encountering errors similar to:
-
ORA-15075: disk(s) are not visible cluster-wide
-
ORA-15032: not all alterations performed
This could be the result of improper settings for the I/O layer, meaning that your disks are not properly configured.
Perform the following tasks to verify that the settings are correct:
-
On the CipherTrust Manager, in the Host Group that was created for the RAC cluster, verify that the host group for this configuration does NOT have the Cluster Group option set ( this option is only for GPFS, which is not supported with CTE).
-
Ensure that the GuardPoints for the block devices are set at the Host Group level. This ensures that each node receives identical GuardPoints.
-
Verify that the GuardPoints are active on all nodes. When the GuardPoints are set, go to each node and verify that they are set and guarded, using the WebUI or the
secfsd –status guard
command. If they do not guard correctly, make sure the device names are the same across all nodes. -
From ASM, make sure that the
asm_diskstring
parameter is modified to include the CTE devices and that the proper pathname is used, see Altering ASM_DISKSTRING on ASM.
Verifying Database Encryption
Option 1
The best way to verify the state of the data, without impacting anything in the existing environment, is to use the Oracle kfed
command. You can run this command against the native path of the existing GuardPoints and make sure it returns with valid header information. If it returns valid information with the GuardPoint in place, then this confirms that the data is properly encrypted. If it returns with invalid header information, then that indicates that the data is either clear, double encrypted, or not in the expected encrypted state. The syntax for running this command would look similar to the following but will vary based on your environment.
If the location is properly encrypted, following is an example of the viewable output:
System Response:
Option 2
The second option to verify the state of the data is to use the dd command. This requires you to specify some blocks and write it out to a file. After this completes, read the file using the strings command. You can do this while the device is in use. In the example below some sectors are skipped and it only dumps 10000 counts.
For example:
Option 3
The third option to verify the state of the data without impacting the existing environment is to use the strings command.
Note
The strings command cannot read a busy or large device.
You can run this command against the native path (/dev/<deviceName>
) of the existing GuardPoints (/dev/secvm/dev/<deviceName>
). By executing the strings command against the native path strings /dev/devicename | more
, this does not go through the SecVM device and therefore is not be decrypted. If it is encrypted the output should contain illegible text.