Deploy the Self-Hosted Engine in a Disconnected Environment

You must perform a fresh installation of Oracle Linux 8.8 (or later Oracle Linux 8 release) on a host that to be configured as a KVM host before deploying a self-hosted engine. You can download the installation Oracle Linux ISO for from the Oracle Software Delivery Cloud at https://edelivery.oracle.com.

Prerequisites

  1. Create a local mirror for the following repositories:
    • ol8_x86_64_baseos_latest
    • ol8_x86_64_appstream
    • ol8_x86_64_kvm_appstream
    • ol8_x86_64_ovirt45
    • ol8_x86_64_ovirt45_extras
    • ol8_x86_64_gluster_appstream
    • ol8_x86_64_addons
    • (For VDSM)ol8_x86_64_UEKR7

    For information on creating local mirrors of Oracle Linux repositories, see Mirror a Yum Repository on Oracle Linux and Using Software Distribution Mirrors.

  2. The local repositories cannot mimic the original repository names from the Oracle Yum Public server or ULN. Add a prefix to each repository to identify it as local. For example, prefix all local repositories with by local_:
    • local_ol8_baseos_latest
    • local_ol8_appstream
    • local_ol8_kvm_appstream
    • local_ol8_ovirt45
    • local_ol8_ovirt45_extras
    • local_ol8_gluster_appstream
    • local_ol8_UEKR7
  3. To configure the Oracle Linux hosts in your network to use the local repository for updates and package installation, create a file called /etc/yum.repos.d/local-ol8.repo that lists all local repositories.

    Important:

    The file must be named local-ol8.repo and must reside in the /etc/yum.repos.d directory.
  4. Follow the instructions in Oracle® Linux 8: Installing Oracle Linux documentation to install Oracle Linux 8.8 (or later Oracle Linux 8 release) on the host using the Minimal Install base environment. Refer to the Requirements and Scalability Limits section for an example of the partitioning schema.

    Caution:

    Do NOT select any other base environment than Minimal Install for the installation or your hosts will have incorrect qemu and libvirt versions, incorrect repositories configured, and no access to virtual machine consoles.

    Do not install any additional packages until after you have installed the Manager packages because they may cause dependency issues.

  5. Reboot the host.

Offline Installation

Before you begin, ensure that you have not made any changes to the Minimal Install of Oracle Linux.

  1. List active repositories and disable all active external repositories. For example:
    dnf repolist
    repo id           repo name
    ol8_UEKR7         Latest Unbreakable Enterprise Kernel Release 7 for Oracle Linux 8 (x86_64)
    ol8_appstream     Oracle Linux 8 Application Stream (x86_64)
    ol8_baseos_latest Oracle Linux 8 BaseOS Latest (x86_64)

    Disable the external repositories:

    dnf config-manager --disable ol8_UEKR7 ol8_appstream ol8_baseos_latest

    Alternatively, you can use a script, such as:

    for REPO in $( dnf repolist | awk '{print $1}' | tail -n +2 | grep -v local_ ); do dnf config-manager --disable ${REPO}; done
  2. Rerun dnf repolist to confirm no external repositories are active.
  3. So the installation can access the local repository, publish the local-ol8.repo file to /etc/yum.repos.d directory.
  4. Enable the local repositories, for example:
    dnf config-manager --enable local_ol8_UEKR7 local_ol8_appstream local_ol8_baseos_latest local_ol8_gluster_appstream local_ol8_kvm_appstream local_ovirt-4.5 local_ovirt-4.5-extra
  5. Rerun dnf repolist to confirm that the local repositories are active.
  6. When you install the release packages, some external repositories (ol8_gluster_appstream, ovirt-4.5, and ovirt-4.5-extra) are enabled. To prevent the installation from failing because it cannot access these external repositories, enable the dnf skip_if_unavailable option:
    dnf config-manager --save --setopt "skip_if_unavailable=True"
  7. Install the Oracle Linux Virtualization Manager Release 4.5 package.
    1. (Optional) Without internet access, installing the oracle-ovirt-release-45-el8 rpm package takes longer to complete. To speed up the installation, create an entry in the /etc/hosts file pointing yum.oracle.com to localhost, for example:
      echo '127.0.0.1  yum.oracle.com' >> /etc/hosts
    2. Install the release package:
      dnf install oracle-ovirt-release-45-el8

      Note:

      Installing the release package automatically enables/disables the required external repositories. With the skip_if_unavailable configuration, you will see some alerts on the screen that you can ignore.
  8. Rerun dnf repolist. If the installation enabled any external repository, disable them.
    for REPO in $( dnf repolist | awk '{print $1}' | tail -n +2 | grep -v local_ ); do dnf config-manager --disable ${REPO}; done
  9. If your host is running UEK R7:
    1. Install the Extra kernel modules package.
      # dnf install kernel-uek-modules-extra
    2. Install available updates for all installed packages:
      # dnf update
    3. Reboot the host.
  10. Install the ovirt-hosted-engine-setup and ovirt-engine-appliance rpm packages. Installing these packages together speeds up the deployment.
    dnf -y install ovirt-hosted-engine-setup ovirt-engine-appliance
  11. To instruct the setup process to perform an offline installation and not enable KeyCloak, create a file called /root/extra-vars.yml that contains the following:
    ---
    he_offline_deployment: true
    he_enable_keycloak: false

    Important:

    The file must begin with three en dashes (---)
  12. Deploy the self-hosted engine using the local repository:
    hosted-engine --deploy --4 --ansible-extra-vars="@/root/extra-vars.yml"
  13. Answer the on-screen questions to customize your deployment. Refer to the Engine Configuration Options.
  14. When the installation completes and the self-hosted engine starts, connect to it using ssh and add the same entry to the /etc/hosts file pointing yum.oracle.com to localhost:
    echo '127.0.0.1  yum.oracle.com' >> /etc/hosts