Oracle Linux 9 Update 5 Template for Oracle Linux KVM Media Pack for x86_64 (64-bits)
=====================================================================================

Contents

        1. About the Template
        2. Creating an Oracle Linux KVM Guest Virtual Machine using Oracle Linux Virtualization Manager
        3. Known Issues

1. About the Template
=====================

        Oracle Linux VM Templates are provided as standard Open Virtualization Format Archive (.ova) files.

        The Oracle Linux 9 Media Pack contains the following file:

        File                            Version  Description
        ------------------------------  -------  --------------------------------------------------------------------
        OL9U5_x86_64-olvm-b253.ova          1.0  Appliance for Oracle Linux 9 Update 5 Template for Oracle Linux KVM
        OL9U5_x86_64-kvm-b253.qcow2         1.0  Oracle Linux 9 Update 5 virtual disk Template for Oracle Linux KVM

        Template virtual machine configuration:

        Template Name                   Kernel                                VCPU  RAM   Storage  Storage-Type
        ------------------------------  ------------------------------------  ----  ----  -------  ------------
        OL9U5_x86_64-olvm-b253.ova      5.15.0-302.167.6.el9uek.x86_64           4   8GB     37GB        Sparse
        OL9U5_x86_64-kvm-b253.qcow2     5.15.0-302.167.6.el9uek.x86_64         N/A   N/A     37GB        Sparse

        Oracle Linux configuration:

          * Oracle Linux is installed using the Minimal Install base environment.
          * The latest available errata are installed for all packages at the time of template creation.
          * The default boot target is multi-user.target (equivalent to run level 3 in previous Oracle Linux releases).
          * The firewall is enabled. The SELinux option is set to Enforcing.
          * The default boot kernel is Oracle Unbreakable Enterprise Kernel Release 7.

    The following packages are installed on the template:

        NetworkManager-libnm.x86_64
        NetworkManager.x86_64
        acl.x86_64
        alternatives.x86_64
        attr.x86_64
        audit-libs.x86_64
        authselect-libs.x86_64
        authselect.x86_64
        basesystem.noarch
        bash.x86_64
        bcache-tools.x86_64
        binutils-gold.x86_64
        binutils.x86_64
        btrfs-progs.x86_64
        bzip2-libs.x86_64
        ca-certificates.noarch
        checkpolicy.x86_64
        chrony.x86_64
        cloud-init.noarch
        cloud-utils-growpart.x86_64
        coreutils-common.x86_64
        coreutils.x86_64
        cpio.x86_64
        cracklib-dicts.x86_64
        cracklib.x86_64
        cronie-anacron.x86_64
        cronie.x86_64
        crontabs.noarch
        crypto-policies-scripts.noarch
        crypto-policies.noarch
        cryptsetup-libs.x86_64
        curl.x86_64
        cyrus-sasl-lib.x86_64
        dbus-broker.x86_64
        dbus-common.noarch
        dbus-libs.x86_64
        dbus.x86_64
        dejavu-sans-fonts.noarch
        device-mapper-event-libs.x86_64
        device-mapper-event.x86_64
        device-mapper-libs.x86_64
        device-mapper-persistent-data.x86_64
        device-mapper.x86_64
        dhcp-client.x86_64
        dhcp-common.noarch
        diffutils.x86_64
        dmidecode.x86_64
        dnf-data.noarch
        dnf-plugins-core.noarch
        dnf.noarch
        dracut-config-generic.x86_64
        dracut-network.x86_64
        dracut-squash.x86_64
        dracut.x86_64
        e2fsprogs-libs.x86_64
        e2fsprogs.x86_64
        elfutils-debuginfod-client.x86_64
        elfutils-default-yama-scope.noarch
        elfutils-libelf.x86_64
        elfutils-libs.x86_64
        ethtool.x86_64
        expat.x86_64
        file-libs.x86_64
        file.x86_64
        filesystem.x86_64
        findutils.x86_64
        firewalld-filesystem.noarch
        firewalld.noarch
        fonts-filesystem.noarch
        freetype.x86_64
        fuse-libs.x86_64
        gawk.x86_64
        gdbm-libs.x86_64
        gdisk.x86_64
        geolite2-city.noarch
        geolite2-country.noarch
        gettext-libs.x86_64
        gettext.x86_64
        glib2.x86_64
        glibc-common.x86_64
        glibc-langpack-en.x86_64
        glibc.x86_64
        gmp.x86_64
        gnupg2.x86_64
        gnutls.x86_64
        gobject-introspection.x86_64
        gpg-pubkey.(none)
        gpgme.x86_64
        graphite2.x86_64
        grep.x86_64
        groff-base.x86_64
        grub2-common.noarch
        grub2-pc-modules.noarch
        grub2-pc.x86_64
        grub2-tools-efi.x86_64
        grub2-tools-extra.x86_64
        grub2-tools-minimal.x86_64
        grub2-tools.x86_64
        grubby.x86_64
        gzip.x86_64
        harfbuzz.x86_64
        hostname.x86_64
        hwdata.noarch
        ima-evm-utils.x86_64
        inih.x86_64
        initscripts-rename-device.x86_64
        ipcalc.x86_64
        iproute.x86_64
        ipset-libs.x86_64
        ipset.x86_64
        iptables-libs.x86_64
        iptables-nft.x86_64
        iputils.x86_64
        jansson.x86_64
        jq.x86_64
        json-c.x86_64
        kbd-legacy.noarch
        kbd-misc.noarch
        kbd.x86_64
        kernel-tools-libs.x86_64
        kernel-tools.x86_64
        kernel-uek-core.x86_64
        kexec-tools.x86_64
        keyutils-libs.x86_64
        keyutils.x86_64
        kmod-libs.x86_64
        kmod.x86_64
        kpartx.x86_64
        krb5-libs.x86_64
        langpacks-core-en.noarch
        langpacks-core-font-en.noarch
        langpacks-en.noarch
        less.x86_64
        libacl.x86_64
        libaio.x86_64
        libarchive.x86_64
        libassuan.x86_64
        libattr.x86_64
        libblkid.x86_64
        libbpf.x86_64
        libbrotli.x86_64
        libcap-ng.x86_64
        libcap.x86_64
        libcbor.x86_64
        libcom_err.x86_64
        libcomps.x86_64
        libcurl.x86_64
        libdb.x86_64
        libdnf.x86_64
        libeconf.x86_64
        libedit.x86_64
        libestr.x86_64
        libevent.x86_64
        libfastjson.x86_64
        libfdisk.x86_64
        libffi.x86_64
        libfido2.x86_64
        libgcc.x86_64
        libgcrypt.x86_64
        libgomp.x86_64
        libgpg-error.x86_64
        libidn2.x86_64
        libkcapi-hmaccalc.x86_64
        libkcapi.x86_64
        libksba.x86_64
        libmaxminddb.x86_64
        libmnl.x86_64
        libmodulemd.x86_64
        libmount.x86_64
        libndp.x86_64
        libnetfilter_conntrack.x86_64
        libnfnetlink.x86_64
        libnftnl.x86_64
        libnghttp2.x86_64
        libnl3.x86_64
        libnvme.x86_64
        libpipeline.x86_64
        libpng.x86_64
        libpsl.x86_64
        libpwquality.x86_64
        librepo.x86_64
        libreport-filesystem.noarch
        libseccomp.x86_64
        libsecret.x86_64
        libselinux-utils.x86_64
        libselinux.x86_64
        libsemanage.x86_64
        libsepol.x86_64
        libsigsegv.x86_64
        libsmartcols.x86_64
        libsolv.x86_64
        libss.x86_64
        libssh-config.noarch
        libssh.x86_64
        libstdc++.x86_64
        libsysfs.x86_64
        libtasn1.x86_64
        libunistring.x86_64
        liburing.x86_64
        libuser.x86_64
        libutempter.x86_64
        libuuid.x86_64
        libverto.x86_64
        libxcrypt.x86_64
        libxml2.x86_64
        libyaml.x86_64
        libzstd.x86_64
        linux-firmware-core.noarch
        linux-firmware-whence.noarch
        logrotate.x86_64
        lua-libs.x86_64
        lvm2-libs.x86_64
        lvm2.x86_64
        lz4-libs.x86_64
        lzo.x86_64
        man-db.x86_64
        mpfr.x86_64
        ncurses-base.noarch
        ncurses-libs.x86_64
        ncurses.x86_64
        nettle.x86_64
        nftables.x86_64
        npth.x86_64
        numactl-libs.x86_64
        nvme-cli.x86_64
        nvmetcli.noarch
        oniguruma.x86_64
        openldap.x86_64
        openssh-clients.x86_64
        openssh-server.x86_64
        openssh.x86_64
        openssl-fips-provider-so.x86_64
        openssl-fips-provider.x86_64
        openssl-libs.x86_64
        openssl-pkcs11.x86_64
        openssl.x86_64
        oraclelinux-release-el9.x86_64
        oraclelinux-release.x86_64
        os-prober.x86_64
        p11-kit-trust.x86_64
        p11-kit.x86_64
        pam.x86_64
        passwd.x86_64
        pciutils-libs.x86_64
        pcre.x86_64
        pcre2-syntax.noarch
        pcre2.x86_64
        pigz.x86_64
        pinentry.x86_64
        policycoreutils.x86_64
        popt.x86_64
        procps-ng.x86_64
        psmisc.x86_64
        publicsuffix-list-dafsa.noarch
        python-unversioned-command.noarch
        python3-attrs.noarch
        python3-audit.x86_64
        python3-babel.noarch
        python3-chardet.noarch
        python3-configobj.noarch
        python3-configshell.noarch
        python3-dateutil.noarch
        python3-dbus.x86_64
        python3-distro.noarch
        python3-dnf-plugins-core.noarch
        python3-dnf.noarch
        python3-firewall.noarch
        python3-gobject-base-noarch.noarch
        python3-gobject-base.x86_64
        python3-gpg.x86_64
        python3-hawkey.x86_64
        python3-idna.noarch
        python3-jinja2.noarch
        python3-jsonpatch.noarch
        python3-jsonpointer.noarch
        python3-jsonschema.noarch
        python3-kmod.x86_64
        python3-libcomps.x86_64
        python3-libdnf.x86_64
        python3-libs.x86_64
        python3-libselinux.x86_64
        python3-libsemanage.x86_64
        python3-markupsafe.x86_64
        python3-netifaces.x86_64
        python3-nftables.x86_64
        python3-oauthlib.noarch
        python3-pip-wheel.noarch
        python3-policycoreutils.noarch
        python3-prettytable.noarch
        python3-pyparsing.noarch
        python3-pyrsistent.x86_64
        python3-pyserial.noarch
        python3-pysocks.noarch
        python3-pytz.noarch
        python3-pyyaml.x86_64
        python3-requests.noarch
        python3-rpm.x86_64
        python3-setools.x86_64
        python3-setuptools-wheel.noarch
        python3-setuptools.noarch
        python3-six.noarch
        python3-systemd.x86_64
        python3-urllib3.noarch
        python3-urwid.x86_64
        python3.x86_64
        qemu-guest-agent.x86_64
        readline.x86_64
        redhat-release.x86_64
        rootfiles.noarch
        rpm-build-libs.x86_64
        rpm-libs.x86_64
        rpm-plugin-audit.x86_64
        rpm-plugin-selinux.x86_64
        rpm-plugin-systemd-inhibit.x86_64
        rpm-sign-libs.x86_64
        rpm.x86_64
        rsyslog-logrotate.x86_64
        rsyslog.x86_64
        sed.x86_64
        selinux-policy-targeted.noarch
        selinux-policy.noarch
        setup.noarch
        shadow-utils.x86_64
        snappy.x86_64
        sqlite-libs.x86_64
        squashfs-tools.x86_64
        sudo.x86_64
        systemd-libs.x86_64
        systemd-pam.x86_64
        systemd-rpm-macros.noarch
        systemd-udev.x86_64
        systemd.x86_64
        tar.x86_64
        tpm2-tss.x86_64
        tzdata.noarch
        userspace-rcu.x86_64
        util-linux-core.x86_64
        util-linux.x86_64
        vim-minimal.x86_64
        virt-what.x86_64
        which.x86_64
        xfsprogs.x86_64
        xz-libs.x86_64
        xz.x86_64
        yum.noarch
        zlib.x86_64
        zstd.x86_64

2. Creating an Oracle Linux KVM Guest Virtual Machine using Oracle Linux Virtualization Manager
============================================================================================

        Detailed instructions are public available at:
        https://docs.oracle.com/en/virtualization/oracle-linux-virtualization-manager/getstart/template-vm-creation.html#template-ol-vm-create

        1) Copy the OVA file to a directory on the Oracle Linux KVM Host server with read/write permissions for vdsm user and kvm group (36:36).
        2) Navigate to Compute > Virtual Machines
        3) Click on the 'Menu Icon' or the 'kebab' button (three vertical dots next to the Create Snapshot) and select Import
        4) Select the Data Center to which the OVA should be imported.
        5) Select the source as Virtual Appliance (OVA)
        6) Select the Host which contains the OVA file and provide the full absolute path to the file.
        7) Then click Load
        8) This will list the VM present in the OVA file. Select the VM name and move it to the right hand side "Virtual Machines to Import" section of the window. Then click Next
        9) Check the Clone box and set the configuration for the VM, such as, Operating System, Network Interfaces, Disks, etc. Then click OK
           * A VM will be created from the OVA file in the Data Center selected while importing.

        With the Virtual Machine Created edit the same and Navigate to "Initial Run" Tab, select "Enable Cloud-Init/Sysprep" and supply following information (optional):
                *) VM Hostname
                *) Configure Timezone
                *) Authentication
                        *) Username
                        *) Password
                        *) Verify Password
                        *) SSH Authorized Keys
                        *) Regenerate SSH Keys
                *) Networks
                        *) DNS Servers
                        *) DNS Search Domains
                        *) In-guest Network Interface Name
                *) Custom script

        With options configured, proceed to start the Virtual Machine.

3. Known Issues
===============
        
        While trying to start a Virtual Machine based on an Oracle Linux KVM template using Oracle Linux Virtualization Manager, the following error appears:

        Error while executing action:
        - Cannot run VM. Selected display type is not supported by the operating system.
        Oracle Bug ==> 30429549 and 30500887
        
        Workaround / Solution ==> Edit the Virtual Machine Settings, open "Console" TAB and select "VGA" as "Video Type".