6.13 Customizing the Guest Image
You can customize the guest image for Exadata guest VMs that run Oracle Exadata System Software release 26.1.0 or later.
Oracle Exadata System Software release 26.1.0 introduces a gold guest image workflow allowing Exadata administrators to create, customize, seal, clone, and deploy customized guest images for Exadata database server virtual machines (VMs).
Using libguestfs tools (such as guestfish, virt-resize, and virt-customize), administrators can clone and modify a baseline system image, install application binaries and data, create or resize file systems, and perform other offline customizations. After sealing the gold image and making it available across the Exadata environment using Exascale storage, administrators can use Oracle Exadata
Deployment Assistant (OEDA) to quickly and consistently provision new guests using the customized images.
Before you begin, consider the following requirements, recommendations, and restrictions:
-
The Exadata system must use Oracle Exadata System Software release 26.1.0 or later. Likewise, the OEDA tools and baseline system image must be from Oracle Exadata System Software release 26.1.0 or later.
-
The Exadata system must be configured to use Exascale storage to host the guest image files.
-
Image modification is performed using
guestfishand otherlibguestfstools. To avoid potential issues with Oracle Exadata System Software updates on Exadata servers, Oracle recommends using a separate (non-Exadata) Linux host to perform image modification. -
Exadata system images contain a logical volume (LV) named
LVDoNotRemoveOrUse. This LV reserves space for maintenance operations performed by Exadata tools. If you add or alter a LV associated with a file system mounted on/,/var,/opt,/etc,/root, or/usr, recalculate and resizeLVDoNotRemoveOrUse. First-boot validation can fail ifLVDoNotRemoveOrUseis missing or undersized.Calculate the required size of
LVDoNotRemoveOrUsefrom the eligible mounted file systems in the root volume group. The eligible mount points are/,/var,/opt,/etc,/root, and/usr. For each eligible mounted LV, the required reservation for that LV is 4% of the LV size rounded up to the next whole GiB (minimum 1 GiB). Then, sum the required reservations for each LV to determine the total required size ofLVDoNotRemoveOrUse. Round each LV's reserve up before adding the values together. Do not calculate 4% of the combined LV sizes and round only once.Required LVDoNotRemoveOrUse size = sum(max(ceil(size(LV) * 0.04), 1 GiB)) for each eligible mounted LV -
Determine whether the image uses BIOS or UEFI boot before running bootloader commands under
guestfish. For BIOS images, mount/bootand rungrub2-install /dev/sda. For UEFI images, mount/bootand/boot/efi; do not run BIOS-only bootloader commands. -
Do not create nested mounts under
/opt,/etc,/root, or/usr. -
Do not make separate file systems for
/proc,/sys,/dev,/run,/srv,/sbin,/media,/lib,/lib64,/bin, or/selinux.
The following topics show representative examples of common guest image customizations. Use the commands and examples contained therein as the basis for your customizations: