It is a controversial question whether to use ASMLIB for managing disks for a ASM instance but I don’t want to start a new discussion about it in this post. I want to talk about updating ASMLIB after or before updating kernel version.
We know that the ASMLIB driver is kernel dependent and has to be updated to match the kernel version. We have to go to the Oracle site, find the proper version for ASMLIB driver, download it and install. But beginning oracleasm-support version 2.1.0 and higher we can use the embedded function “update-driver” which can help us to save time and simplify the process of updating ASMLIB driver.
How does it work? As example, we have installed Linux with kernel version 2.6.18-194.8.1.0.1.el5 x86_64 but ASMLIB driver is for the old kernel version 2.6.18-194.3.1.
As result we are getting an error trying to start ASMLIB.
[[email protected] ~]# /usr/sbin/oracleasm init Creating /dev/oracleasm mount point: /dev/oracleasm Loading module "oracleasm": failed Unable to load module "oracleasm" [[email protected] ~]#
Instead searching, downloading and installing the new driver you can just run “oracleasm update-driver” and automatically get the updated version for the driver.
[[email protected] ~]# /usr/sbin/oracleasm update-driver Kernel: 2.6.18-194.8.1.0.1.el5 x86_64 Driver name: oracleasm-2.6.18-194.8.1.0.1.el5 Fetching Obsoletes list for channel: el5_x86_64_latest... ######################################## Fetching rpm headers... ######################################## Name Version Rel ---------------------------------------------------------- oracleasm-2.6.18-194.8.1.0.1.el5 2.0.5 1.el5 x86_64 Testing package set / solving RPM inter-dependencies... ######################################## oracleasm-2.6.18-194.8.1.0. ########################## Done. Preparing ########################################### [100%] Installing... 1:oracleasm-2.6.18-194.8.########################################### [100%] [[email protected] ~]# /usr/sbin/oracleasm init Loading module "oracleasm": oracleasm Mounting ASMlib driver filesystem: /dev/oracleasm [[email protected] var]# /etc/init.d/oracleasm start Initializing the Oracle ASMLib driver: [ OK ] Scanning the system for Oracle ASMLib disks: [ OK ] [[email protected] var]# /etc/init.d/oracleasm listdisks DATADISK1 [[email protected] var]#
Voila! We have an updated working driver.
And, we also have some options for this feature:
-d allows us only download the driver.
-n allows only determine what driver would be updated without taking any action.
1 Comment. Leave new
[…] Otochkin discovered how to upgrade ASMLib the easy way. Gleb is my team mate and I just noticed that his previous post about Golden Gate has 130 (!) […]