CentOS 8 images on Linode vs official images
New on Linode so I may not have seen this in documentation anywhere yet - if so, please point me in the right direction!
I recently created a new virtual machine locally running CentOS 8 with a minimal install from the official image from the CentOS project.
Then I created a new linode with CentOS 8 with the image provided by Linode.
I've installed the same software on both, MariaDB and nginx from the CentOS repositories and PHP-FPM from Remi's repository. Both are running the same versions of all or very close, only a difference on patch version.
The two images don't seem to be the same as I keep running into minor issues that I need to fix on the linode that I don't see on the vm from the official image.
Are there any differences in default configurations that are listed somewhere?
If not, can I download and use the Linode image for my local virtual machine? I intend to use it as a staging environment and want it to be as close to an exact copy of the production environment as possible.
The major differences between the Linode-supplied distro and the upstream distro are in the kernel. One of our engineers wrote up a post that explains the major differences between the upstream kernel and the Linode kernel, and I've listed the major points below:
- Linode kernel has very few to no patches
- Linode kernel does not use kernel modules
- Kernel features are limited to those that have been built-in
- The command
zcat /proc/config.gzwill list your kernel options when run from your Linode
So, if I wanted to enable FIPS-mode, I'd need to either replace just the kernel or I'd want to upload a custom boot-image (with standard CentOS kernels)? Or does the Linode hypervisor make FIPS-mode a non-starter.
For something like that I'd recommend booting up your Linode with GRUB 2 so that it'll use the CentOS-supplied kernel. We have a guide on changing the kernel your Linode boots with here:
OK, learning something new, I have to check my messages in the dashboard to see if someone has replied. Better late than never I guess :-)
Thanks, seems like the best option for me then is to upload a custom boot image to be sure I have the same setup on both sides.
I should probably suggest somewhere that Linode should notify before installing that the default CentOS 8 image is not the standard one.
Thanks for the help!
All cloud providers modify the base OS images to some degree to optimise for their own environment, usually the kernel. Canonical (Ubuntu) even produce packages specifically for the bigger clouds (AWS, GCP, Azure etc.)
AFAIK the only real difference in Linode’s images is the kernel, which you can choose which to boot in your Linode’s Profile.