環境:RHEL 7.3 + Oracle 12.2.0.1 RAC
現象:acfs資源狀態不正常,asmca圖形也沒有acfs相關內容,無法使用acfs。
1.具體現象
使用crsctl stat res -t -init查詢,ora.drivers.acfs是OFFLINE狀態:$ crsctl stat res -t -init
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.drivers.acfs
1 ONLINE OFFLINE STABLE
--------------------------------------------------------------------------------
使用lsmod|grep oracle查詢,沒有acfs內容:
$ lsmod|grep oracle
oracleadvm 776830 1
oracleoks 654476 1 oracleadvm
嘗試重裝acfs,也會在卸載時就報錯不支持:
# /u01/app/12.2.0/grid/bin/acfsroot uninstall
ACFS-9459: ADVM/ACFS is not supported on this OS version: '3.10.0-514.el7.x86_64'
2.定位bug
確認OS內核版本:[root@db90 ~]# uname -a
Linux db90 3.10.0-514.el7.x86_64 #1 SMP Wed Oct 19 11:24:13 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@db90 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.3 (Maipo)
結合MOS最終匹配定位是Bug 25078431導致。
3.解決問題
我這里選擇應用最新的PSU(其中ACFS補丁集包含了25078431這個補丁),開始應用補丁時遇到一個問題如下:[root@db90 grid]# /u01/app/12.2.0/grid/OPatch/opatchauto apply /home/grid/28828733
...
==Following patches FAILED in analysis for apply:
Patch: /home/grid/28828733/28822515
Log: /u01/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-22_23-09-21PM_1.log
Reason: Failed during Analysis: CheckSystemCommandsAvailable Failed, [ Prerequisite Status: FAILED, Prerequisite output:
The details are:
Missing command :fuser]
After fixing the cause of failure Run opatchauto resume
看起來是缺失fuser命令,使用yum安裝即可,需要注意fuser對應的是psmisc:
yum install psmisc
再次嘗試應用補丁成功:
[root@db90 grid]# /u01/app/12.2.0/grid/OPatch/opatchauto apply /home/grid/28828733
OPatchauto session is initiated at Tue Jan 22 23:19:47 2019
System initialization log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchautodb/systemconfig2019-01-22_11-19-54PM.log.
Session log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/opatchauto2019-01-22_11-20-52PM.log
The id for this session is BPVQ
Executing OPatch prereq operations to verify patch applicability on home /u01/app/12.2.0/grid
Executing OPatch prereq operations to verify patch applicability on home /u01/app/oracle/product/12.2.0/db_1
Patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/db_1
Patch applicability verified successfully on home /u01/app/12.2.0/grid
Verifying SQL patch applicability on home /u01/app/oracle/product/12.2.0/db_1
SQL patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/db_1
Preparing to bring down database service on home /u01/app/oracle/product/12.2.0/db_1
Successfully prepared home /u01/app/oracle/product/12.2.0/db_1 to bring down database service
Bringing down CRS service on home /u01/app/12.2.0/grid
Prepatch operation log file location: /u01/app/grid/crsdata/db90/crsconfig/crspatch_db90_2019-01-22_11-27-13PM.log
CRS service brought down successfully on home /u01/app/12.2.0/grid
Performing prepatch operation on home /u01/app/oracle/product/12.2.0/db_1
Perpatch operation completed successfully on home /u01/app/oracle/product/12.2.0/db_1
Start applying binary patch on home /u01/app/oracle/product/12.2.0/db_1
Binary patch applied successfully on home /u01/app/oracle/product/12.2.0/db_1
Performing postpatch operation on home /u01/app/oracle/product/12.2.0/db_1
Postpatch operation completed successfully on home /u01/app/oracle/product/12.2.0/db_1
Start applying binary patch on home /u01/app/12.2.0/grid
Binary patch applied successfully on home /u01/app/12.2.0/grid
Starting CRS service on home /u01/app/12.2.0/grid
Postpatch operation log file location: /u01/app/grid/crsdata/db90/crsconfig/crspatch_db90_2019-01-22_11-39-37PM.log
CRS service started successfully on home /u01/app/12.2.0/grid
Preparing home /u01/app/oracle/product/12.2.0/db_1 after database service restarted
No step execution required.........
Trying to apply SQL patch on home /u01/app/oracle/product/12.2.0/db_1
SQL patch applied successfully on home /u01/app/oracle/product/12.2.0/db_1
OPatchAuto successful.
--------------------------------Summary--------------------------------
Patching is completed successfully. Please find the summary as follows:
Host:db90
RAC Home:/u01/app/oracle/product/12.2.0/db_1
Version:12.2.0.1.0
Summary:
==Following patches were SKIPPED:
Patch: /home/grid/28828733/28864846
Reason: This patch is not applicable to this specified target type - "rac_database"
Patch: /home/grid/28828733/26839277
Reason: This patch is not applicable to this specified target type - "rac_database"
Patch: /home/grid/28828733/28566910
Reason: This patch is not applicable to this specified target type - "rac_database"
==Following patches were SUCCESSFULLY applied:
Patch: /home/grid/28828733/28822515
Log: /u01/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-22_23-32-21PM_1.log
Patch: /home/grid/28828733/28870605
Log: /u01/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-22_23-32-21PM_1.log
Host:db90
CRS Home:/u01/app/12.2.0/grid
Version:12.2.0.1.0
Summary:
==Following patches were SUCCESSFULLY applied:
Patch: /home/grid/28828733/26839277
Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-22_23-35-03PM_1.log
Patch: /home/grid/28828733/28566910
Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-22_23-35-03PM_1.log
Patch: /home/grid/28828733/28822515
Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-22_23-35-03PM_1.log
Patch: /home/grid/28828733/28864846
Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-22_23-35-03PM_1.log
Patch: /home/grid/28828733/28870605
Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-22_23-35-03PM_1.log
OPatchauto session completed at Wed Jan 23 00:27:54 2019
Time taken to complete the session 68 minutes, 7 seconds
[root@db90 grid]#
在成功應用補丁之后,crsctl stat res -t -init查看acfs資源已恢復正常ONLINE:
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.drivers.acfs
1 ONLINE ONLINE db90 STABLE
--------------------------------------------------------------------------------
此時再次lsmod|grep oracle查詢,已經可以看到oracleacfs部分:
$ lsmod|grep oracle
oracleacfs 4786907 0
oracleadvm 781814 0
oracleoks 634589 2 oracleacfs,oracleadvm
asmca也已經正常顯示出acfs相關內容。
Reference:
- ACFS Support On OS Platforms (Certification Matrix). (文檔 ID 1369107.1)
- ACFS-9459: ADVM/ACFS is not supported on this OS version: '3.10.0-514.el7.x86_64' (文檔 ID 2205623.1)
- Bug 25078431 - Linux: Loading of oracleacfs.ko failed on kernel 3.10.0-514 (文檔 ID 25078431.8)
- How To Install/Reinstall Or Deinstall ACFS Modules/Installation Manually? (文檔 ID 1371067.1)