For whatever reasons, one may want to install and run Oracle’s UEK on CentOS. I tested that with a CentOS 7 VM instance and UEKR3. Everything was pretty straightforward and safe to do on a test machine, but I would certainly not recommend running this in production :)
Install the UEKR3 repo
Disable all OL7 yum channels and enable UEK3 only
The default yum repository for OL7 enables multiple channels (like Oracle Linux updates) which we don’t need (as we run CentOS7). We have to disable all of them and only enable UEK3.
yum-config-manager --disable ol7*
yum-config-manager --enable ol7_UEKR3
At this point running yum repolist should reveal the newly installed UEK repository:
repo id repo name status
base/7/x86_64 CentOS-7 - Base 8,465
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 7,301
extras/7/x86_64 CentOS-7 - Extras 104
ol7_UEKR3/x86_64 Latest Unbreakable Enterprise Kernel Release 3 for Oracle Linux 7 (x86_64) 131
updates/7/x86_64 CentOS-7 - Updates 1,688
Make kernel-uek the new default
This is optional if we want the new kernel-uek to be made default. Alternatively, specific kernels can be made default at any time using grub2-set-default.
sed -i 's/DEFAULTKERNEL=kernel/DEFAULTKERNEL=kernel=uek/' /etc/sysconfig/kernel
Import the OL7 RPM GPG key
rpm --import http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol7
yum install kernel-uek kernel-uek-devel
Confirm kernel-uek is default and reboot
After reboot everything was fine on my VM except for a minor glitch I had with NetworkManager when running the new kernel-uek. The Ethernet interface wasn’t able to get an IPv4 address automatically so I had to manually run dhclient $ETH_NAME. Not sure what caused the issue and I didn’t pay too much attention to it since I did this for testing purposes only.