Installing orcharhino Server (Offline)

Use this guide to install orcharhino Server in a disconnected environment from synchronized repositories or ISO images. For more information, see Installing orcharhino Server.

This is an advanced installation method. ATIX AG recommends that you contact us first if you want to install orcharhino Server in a disconnected environment.

Offline Installation Requirements

Your system must meet the following requirements, regardless of whether it is a virtual or bare-metal machine:

Minimum Recommended

OS

Alma Linux 8, Oracle Linux 8, Red Hat Enterprise Linux 8, or Rocky Linux 8

For more information, see OS requirements.

CPU

4 cores

8 cores

RAM

20 GiB

32 GiB

HDD 1 (/)

30 GiB

50 GiB

HDD 2 (/var)

~ 40 GiB for each Enterprise Linux distribution

~ 80 GiB for each Debian or Ubuntu distribution

~ 500 GiB (or as appropriate) if you plan to maintain additional repositories or keep multiple versions of packages

orcharhino Server requires two hard drives; one is used for the root partition and the other one for the data repositories. This separation is essential for the creation of snapshots and backups. The Kickstart files provided by ATIX AG do not work with a single drive system.

The main directories on /var are:

  • /var/cache/pulp/

  • /var/lib/pulp/

  • /var/lib/pgsql/

While it is technically possible to use different partitions for those directories, ATIX AG does not recommend doing so as it will negatively affect the overall performance of your orcharhino.

Using symbolic links is not an option as they break orcharhino-installer and corrupt the SELinux context if introduced at a later stage.

Ensure that you allocate sufficient hard drive resources at the beginning. Running out of space for your data repositories during regular orcharhino usage leads to significant pain.

To create backups using orcharhino-maintain, which rely on LVM snapshots, ensure your LVM volume group where vg-data resides has more than 2 GiB free disk space available. The free disk space is used during the creation of the snapshot to store all changes that are made to the database.

ATIX AG does not support using third party repositories on your orcharhino Server or orcharhino Proxies. Resolving package conflicts or other issues due to third party or custom repositories is not part of your orcharhino support subscription. Please contact us if you have any questions.

Installing orcharhino Server Using Synchronized Repositories

Use this procedure to install orcharhino Server using synchronized repositories.

Preparing Content for Offline Installation

You have to download the necessary repositories from OCC to install orcharhino Server in a disconnected environment. This procedure describes how to synchronize all required packages to an existing host with a connection to OCC. Note that this is not the host orcharhino Server will be installed on, but it must run the same operating system as the host you will install orcharhino Server on. You can run orcharhino Server on Alma Linux 8, Oracle Linux 8, Red Hat Enterprise Linux 8, and Rocky Linux 8.

The preparation uses orcharhino-maintain to create two scripts to help you prepare your orcharhino Server offline installation. For more information, see orcharhino Server Offline Installation in the ATIX Service Portal.

Manually Registering a Host to OCC

Register your host to OCC to synchronize the necessary repositories to install orcharhino Server.

Prerequisite
  • You have a host with a connection to OCC. This host is used to synchronize content from OCC to an offline medium such as a DVD or flash drive. For more information, see prerequisites in Installing orcharhino Server.

Procedure
  1. Download the install_orcharhino.sh script from OCC:

    $ wget URL

    For the URL, see orcharhino Server Offline Installation in the ATIX Service Portal.

  2. Register your host to OCC:

    $ chmod +x install_orcharhino.sh
    $ ./install_orcharhino.sh ./My_orcharhino_Subscription_Key_File --or-version 6.7 --prepare
  3. Generate scripts and repository file:

    $ /opt/orcharhino/maintain/repo_map/repolist.py --offline -o 6.7 --latest-os --offline-path /My_Absolute_Path

Creating Local Repositories for orcharhino Server

Prerequisites
  • You have manually registered your host to OCC. For more information, see Manually Registering a Host to OCC.

  • You have at least 100 GiB of free disk space on your host. Run df -h to view available disk space.

Procedure
  1. Install the required packages to create local repositories:

    $ dnf install yum-utils
  2. Generate a local copy of each repository:

    $ chmod +x /tmp/synchronize_repositories.sh
    $ /tmp/synchronize_repositories.sh

You now have local file repositories in the path as specified in the repolist.py command, for example /media/my_disk/my_repos/.

Creating Local Repositories for orcharhino Clients

Depending on the operating systems of your managed hosts, you have to synchronize orcharhino Client repositories from OCC. Copy the synchronized orcharhino Client repositories to /media/my_disk/my_repos/.

Yum Repositories

For Yum repositories, you can use the same procedure as above to synchronize orcharhino Clients. This works for Alma Linux, Amazon Linux, CentOS, Oracle Linux, Red Hat Enterprise Linux, Rocky Linux, and SUSE Linux Enterprise Server.

APT Repositories

You can use debmirror to synchronize orcharhino Client repositories for Debian and Ubuntu:

$ debmirror -h OCC_Host_Name -r OCC_Repository_Path -a i368,amd64,all --no-check-gpg --dist=default,stable --section=all,main --method https Repository_Name

ATIX AG recommends using debmirror version 2.27 or higher. For OCC host name, repository path, and repository name, see orcharhino Server Offline Installation in the ATIX Service Portal.

Creating Local Operating System Repositories

Depending on the operating systems you want to provision, you also have to synchronize content to allow offline provisioning.

Installing orcharhino Server Offline

After preparing content for your offline installation, you can install orcharhino Server without any network connection other than to your local machine.

Activating Local Repositories

Prerequisites
Procedure
  1. Connect to the host you want to install orcharhino Server on:

    $ ssh root@orcharhino.example.com
  2. Empty all repository files:

    $ for f in /etc/yum.repos.d/almalinux*.repo; do echo "" > "${f}"; done

    The name of the .repo files depends on your operating system.

  3. Copy the orcharhino.repo file to /etc/yum.repos.d/:

    $ cp /media/my_disk/my_repos/orcharhino.repo /etc/yum.repos.d/
  4. Optional: View all enabled repositories:

    $ dnf repolist

Installing orcharhino Server in a Disconnected Environment

Use this procedure to install orcharhino Server in a disconnected environment.

Prerequisite
Procedure
  1. Start a distro sync:

    $ dnf distribution-synchronization
  2. Enable the dnf modules on your orcharhino Proxy:

    $ dnf module switch-to ruby:2.7 -y
    $ dnf module enable pki-core -y
    $ dnf module enable python36 python38 python39 -y
  3. Reboot your host:

    $ reboot now
  4. Install the orcharhino-installer package:

    $ dnf install orcharhino-installer
  5. Install orcharhino:

    $ /usr/share/orcharhino-installer/orcharhino-installer.sh

    If you want to add orcharhino Clients, provide the --clients-base-url='file:///media/my_disk/my_repos/or_clients/' parameter with the path to the orcharhino Client repositories.

    The orcharhino Client repositories have to be readable by Pulp. If SELinux is active, you have to set the context accordingly:

    $ chcon -t httpd_sys_rw_content_t -R /media/my_disk/my_repos/or_clients/

    Ensure to follow the directory structure from adding orcharhino Clients manually from the ATIX Service Portal.

    You can skip the graphical installation process by using --skip-gui, in which case you have to provide an answers.yaml file in /etc/orcharhino-installer/ instead.

    For more information, see Installing orcharhino Server Using the install_orcharhino.sh Script in Installing orcharhino Server.

You can continue with the Main Installation Steps in Installing orcharhino Server.

Installing orcharhino Server using ISO Images

Use this procedure to install orcharhino Server using ISO images.

Prerequisites
  • You have access to a host running AlmaLinux 8.8. For more information, see prerequisites in Installing orcharhino Server.

  • You have downloaded the orcharhino offline ISO image from ATIX AG. For more information, see orcharhino Server Offline Installation in the ATIX Service Portal.

  • You have downloaded the AlmaLinux 8.8 DVD ISO image from almalinux.org.

Limitation
  • Installing orcharhino Server using orcharhino offline ISO image is limited to orcharhino 6.7 on AlmaLinux 8.8.

Preparing Content for Offline Installation

Use this procedure to prepare the content for orcharhino Server 6.7.

Procedure
  1. Transfer the orcharhino offline ISO image and AlmaLinux 8.8 ISO image to /var/offline_iso/ on the host on which you want to install orcharhino Server on.

  2. Mount the orcharhino offline ISO image:

    $ mkdir -p /media/orcharhino_iso
    $ mount -o loop /var/offline_iso/or-6.7-dependencies-alma_linux_8.iso /media/orcharhino_iso/
  3. Mount the AlmaLinux 8.8 ISO image:

    $ mkdir -p /media/os_iso
    $ mount -o loop /var/offline_iso/AlmaLinux-8.8-x86_64-dvd.iso /media/os_iso/
  4. Empty all repository files:

    $ for f in /etc/yum.repos.d/almalinux*.repo; do echo "" > "${f}"; done
  5. Use the mounted ISO images as repositories in /etc/yum.repos.d/orcharhino.repo:

    [orcharhino]
    baseurl=file:///media/orcharhino_iso/
    enabled=1
    gpgcheck=0
    module_hotfixes=1
    name=orcharhino
    
    [almalinux_baseos]
    baseurl=file:///media/os_iso/BaseOS/
    enabled=1
    gpgcheck=0
    name=almalinux_baseos
    
    [almalinux_appstream]
    baseurl=file:///media/os_iso/AppStream/
    enabled=1
    gpgcheck=0
    name=almalinux_appstream
  6. Update the dnf cache:

    $ dnf makecache

Installing orcharhino Server Offline

Procedure
  1. Enable the required dnf modules:

    $ dnf module enable pki-core
    $ dnf module enable python36 python38 python39
  2. Install the orcharhino-installer:

    $ dnf install orcharhino-installer
  3. Disable package updates during the installation process:

    $ sed -i '/- name: "Update all packages"/,/^$/d' /usr/share/orcharhino-ansible/roles/system_update/tasks/main.yaml
    $ sed -i '/- name: "Update packages"/,/^$/d' /usr/share/orcharhino-ansible/roles/or_provisioning/tasks/run_upgrade.yaml
  4. Start the orcharhino installation process:

    $ /usr/share/orcharhino-installer/orcharhino-installer.sh

You can continue with the orcharhino Installer GUI in Installing orcharhino Server.