Offline Installation Mode (Linux)

Definitions

  • Build Server: A server with internet access used to generate the custom offline installation package. It must have the same Linux distribution and version as the target server. The build server downloads all necessary packages and dependencies for the offline installation of Syndeia Cloud (SC) and its supporting software.

  • Target Server: A server in an air-gapped environment (i.e., without internet access) where the Syndeia Cloud software and its dependencies will be deployed. This server must have the same Linux distribution and version as the build server to ensure compatibility with the generated offline installation package.

  • Offline Install Build Script: A script that runs on the build server to download all required packages and dependencies, and packages them along with Syndeia Cloud's installation files into a single zip file called the Offline Install Package.

  • Offline Install Package: The zip file generated by the Offline Install Build Script on the build server, containing all necessary installation files, dependencies, and the offline install setup script required for offline installation of Syndeia Cloud on the target server.

  • Offline Install Setup Script: A script included within the Offline Install Package that is run on the target server to set up a local repository, stage SC installation files, and prepare the environment for offline installation.


Overview

This procedure outlines the steps for deploying Syndeia Cloud (SC) in an air-gapped environment by generating a custom offline installation package using the Offline Install Build Script. It ensures that all necessary packages are prepared on a build server with internet access and then transferred to the target server for offline deployment. The general process is as follows:

  1. On the Build Server: Download the SC installation zip packages and required dependencies.

  2. On the Build Server: Run the Offline Install Build Script to generate the Offline Install Setup Package - a zip file that includes all necessary packages, dependencies, and the Offline Install Setup Script for the target server.

  3. Transfer: Move the Offline Install Setup Package from the build server to the target server in the air-gapped environment.

  4. On the Target Server: Extract the Offline Install Setup Package, run the Offline Install Setup Script to set up the local repository and stage all required deployment/upgrade packages.

  5. Continue with the normal Syndeia Cloud automated install/upgrade process.

Customers using a Red Hat distribution utilizing Subscription-Manager for package management should open a request on our helpdesk for additional assistance related to offline installation.

 


Prerequisites

  • Build Server: A server with internet access that must be running the same Linux distribution and version (either Alma Linux or RedHat Enterprise Linux (RHEL)) as the target Syndeia Cloud (SC) server. For example:

    • If your target SC server is running Alma Linux, ensure your build server is also running Alma Linux.

    • If your target SC server is running RedHat Enterprise Linux (RHEL), ensure your build server is also running RedHat Enterprise Linux (RHEL).

  • The following applications must already exist on the target and build servers:

    • unzip

    • python36 (python 3.6+)

    • zip (build server only)

    • wget (build server only)

  • The process described in this document requires a shell script and three zip files from the Syndeia_3.6_SP1 release package. These can be downloaded from the password-protected link provided in the Intercax Helpdesk ticket where you originally requested your Syndeia Cloud license. The specific files required for this process and their locations are listed below:

    • Build Script location:
      Syndeia_Cloud_3.6_SP1/Syndeia_Cloud_Utilities/Offline_Installation/

      • syndeia-cloud-offline-install-build.bash

    • Syndeia Cloud Install Packages Locations:
      Syndeia_Cloud_3.6_SP1/

      • syndeia-cloud-3.6-SP1_cassandra_zookeeper_kafka_setup.zip

      • syndeia-cloud-3.6-SP1_janusgraph_setup.zip

      • syndeia-cloud-3.6-SP1.zip


Steps

Part 1: Preparing the Offline Install Package on the Build Server

Step 1.1: Set Up the Build Server

  • Action: Verify that the build server meets all prerequisites.

  • Server: Build Server

  • Instructions:

1.1.1 - Ensure the build server is running the same Linux distribution and version as the target server.

1.1.2 - Install the required applications if they are not already installed:

sudo dnf install -y unzip wget zip
  • Sample Output:

[sudo] password for user: Last metadata expiration check: 0:01:45 ago on Fri 18 Oct 2024 08:30:12 AM UTC. Dependencies resolved. ================================================================================================================================================================== Package Architecture Version Repository Size ================================================================================================================================================================== Installing: unzip x86_64 6.0-46.el8 baseos 198 k wget x86_64 1.20.3-3.el8 baseos 733 k zip x86_64 3.0-23.el8 baseos 270 k Transaction Summary ================================================================================================================================================================== Install 3 Packages Total download size: 1.2 M Installed size: 2.8 M Downloading Packages: (1/3): unzip-6.0-46.el8.x86_64.rpm 518 kB/s | 198 kB 00:00 (2/3): wget-1.20.3-3.el8.x86_64.rpm 1.2 MB/s | 733 kB 00:00 (3/3): zip-3.0-23.el8.x86_64.rpm 781 kB/s | 270 kB 00:00 ------------------------------------------------------------------------------------------------------------------------------------------------------------------ Total 1.1 MB/s | 1.2 MB 00:01 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : unzip-6.0-46.el8.x86_64 1/3 Installing : wget-1.20.3-3.el8.x86_64 2/3 Installing : zip-3.0-23.el8.x86_64 3/3 Running scriptlet: zip-3.0-23.el8.x86_64 3/3 Verifying : unzip-6.0-46.el8.x86_64 1/3 Verifying : wget-1.20.3-3.el8.x86_64 2/3 Verifying : zip-3.0-23.el8.x86_64 3/3 Installed: unzip-6.0-46.el8.x86_64 wget-1.20.3-3.el8.x86_64 zip-3.0-23.el8.x86_64 Complete!

Step 1.2: Download Syndeia Cloud Packages

  • Action: Download the required Syndeia Cloud installation zip packages to a directory on the build server.

  • Server: Build Server

  • Instructions:

1.2.1 - Create a directory to store the SC packages:

mkdir -p ~/syndeia-cloud-packages && cd ~/syndeia-cloud-packages

1.2.2 - Download or move the following SC packages and syndeia-cloud-offline-install-build.bash into this directory. You can download them from the password protected link provided in the Intercax Helpdesk ticket where you originally requested your Syndeia Cloud license:

  • Syndeia_Cloud_3.6_SP1/syndeia-cloud-3.6-SP1_cassandra_zookeeper_kafka_setup.zip

  • Syndeia_Cloud_3.6_SP1/syndeia-cloud-3.6-SP1_janusgraph_setup.zip

  • Syndeia_Cloud_3.6_SP1/syndeia-cloud-3.6-SP1.zip

  • Syndeia_Cloud_3.6_SP1/Syndeia_Cloud_Utilities/Offline_Installation/syndeia-cloud-offline-install-build.bash

1.2.3 - Ensure the script has executable permissions:

  • Sample Output:

Step 1.3: Run the Offline Install Build Script

  • Action: Execute the build script to generate the Offline Install Package.

  • Server: Build Server

  • Instructions:

1.3.1 - Navigate to the directory containing the script and packages:

1.3.2 - Run the build script:

The script will perform the following:

- Check for required tools (wget, dnf, zip).

- Verify the presence of required SC packages.

- Download necessary dependencies and RPMs.

- Package everything into an Offline Install Package (a zip file) in your home directory.

  • Sample Output:

Step 1.4: Verify the Offline Install Package

  • Action: Ensure the Offline Install Package has been created successfully.

  • Server: Build Server

  • Instructions:

1.4.1 - Check the home directory for the zip file:

1.4.2 - Verify that the zip file size is reasonable ( more than 2GB ).

  • Sample Output:


Part 2: Transferring the Offline Install Setup Package to the Target Server

Step 2.1: Transfer the Package

  • Action: Move the Offline Install Package to the target server.

  • Server: Build Server and Target Server

  • Instructions:

Use a secure method to transfer the zip file to the target server. This could be via removable media (USB drive), secure copy over a network connection, or any method that complies with your organization's security policies.

Example using scp (if possible):

Alternatively, copy the zip file to removable media and then to the target server.

  • Sample Output:


Part 3: Setting Up the Offline Installation on the Target Server

Step 3.1: Extract the Offline Install Package

  • Action: Unzip the Offline Install Package on the target server.

  • Server: Target Server

  • Instructions:

3.1.1 - Unzip the package:

  • Sample Output:

Step 3.2: Run the Offline Install Setup Script

  • Action: Execute the syndeia-cloud-offline-install-setup.bash script to set up the local repository and prepare for installation.

  • Server: Target Server

  • Instructions:

3.2.1 - Navigate to the extracted directory:

3.2.2 - Ensure the script has executable permissions:

3.2.3 - Run the setup script:

  • The script will perform the following:

    • Check for required RPM files.

    • Install necessary tools (drpm, createrepo).

    • Set up a local RPM repository in /opt/syndeia-cloud-local-deps.

    • Create a YUM repository configuration with the highest priority.

    • Copy necessary RPMs and SC packages to the appropriate locations.

3.2.3 - Wait for the script to complete.

  • Sample Output:

Step 3.3: Verify the Local Repository

  • Action: Ensure the local repository is set up correctly.

  • Server: Target Server

  • Instructions:

3.3.1 - List the contents of the local repository to verify that it exists and that there are .rpm files inside:

3.3.1 - Check that the repository is recognized:

You should see an entry for syndeia-cloud-local-deps.

  • Sample Output:


Part 4: Continuing Automated Deployment or Upgrade

The target server should now be prepared for deployment or upgrade of Syndeia Cloud 3.6 SP1. You should continue the installation/upgrade process by following the page link appropriate to you below:

New Automated Deployment: Linux Automated Deployment: Linux

  • If you are performing a fresh install, continue installation from the “unzip all SC Packages” step of the Extract SC Media section.

Upgrade (3.5 SP2 -> 3.6 SP1 , 3.6 -> 3.6 SP1) https://intercax.atlassian.net/wiki/spaces/IN/pages/3566305281

  • If you are upgrading to 3.6 SP1 from 3.5 SP2 or 3.6 SP1, continue from https://intercax.atlassian.net/wiki/spaces/IN/pages/3566305447, omitting the first step. This step asks you to transfer the files to the non-root user’s home directory. The process outlined in this document should have already done that for you.


Limitations

Windows

Cassandra version 4+, a requirement for Syndeia Cloud 3.6 SP1, is no longer supported on Windows. Users running Syndeia Cloud on Windows are encouraged to migrate to a Linux instance. If continuing on Windows is necessary, virtualization and Docker solutions can be used to upgrade to 3.6 SP1. Supporting documentation is available at request for this scenario as well. For additional help please open a request on our helpdesk. Refer to the following page for additional details: Appendix W - Windows Server Support.