Installing the IBM Spectrum Protect Plus operator in an airgap environment

If you plan to deploy an instance of the IBM Spectrum® Protect Plus server as a set of containers in an airgap environment, you must prepare your environment and install the IBM Spectrum Protect Plus operator.

Before you begin

Ensure that the following prerequisites are met:
  • All command and scripts must be run on a Linux® operating system.
  • The OpenShift® command-line interface (oc) must be installed in your environment.
  • The OpenShift cluster must be able to pull images from the private registry.
  • For the IBM Cloud Pak® for Multicloud Management environment, ensure that you complete the steps on the same hub cluster on which IBM Cloud Pak for Multicloud Management is installed.

Procedure

  1. On the server where Docker images are loaded, create a directory for downloading the package for installing IBM Spectrum Protect Plus as a set of containers. Issue the following command:
    mkdir -p sppimages
    where sppimages is the name of the directory where the installation package is downloaded.
  2. Download the installation package from IBM® Passport Advantage® Online to the sppimages directory that you created.
    • For a standard OpenShift cluster environment, download the following package: SPP_Vversion_FOR_OpenShift.tar.gz
    • For the IBM Cloud Pak for Multicloud Management environment, download the following package: SPP_Vversion_FOR_OpenShift_MCM.tar.gz

    where version specifies the version of IBM Spectrum Protect Plus that you are installing, such as 10.1.7.

    For the list of installation packages by component, and the links to the download site for the files, see technote 6330495.

  3. Extract the installation package by issuing the following commands:
    $ cd sppimages
    $ tar -xvf spp_installation_package
    where sppimages specifies the directory where the installation package is downloaded, and spp_installation_package specifies the name of the installation package that you downloaded.
    The sppimages directory is populated with the contents in the archive package. The contents in the package are similar to the following example:
    .
    ├── operator_version
    │   ├── catalog-source.yaml
    │   ├── image-content-source-policy.yaml
    │   ├── operator-group.yaml
    │   ├── role_binding.yaml
    │   ├── role.yaml
    │   ├── service_account.yaml
    │   ├── spp.ibm.com_ibmspps_crd.yaml
    │   └── spp-operator.voperator_version.clusterserviceversion.yaml
    ├── images
    │   ├── mongodb-36-rhel7.tar
    │   ├── nginx-116-rhel7.tar
    │   ├── postgresql-96.tar
    │   ├── Readme
    │   ├── redis-5-rhel7.tar
    │   ├── spp-awsebs.tar
    │   ├── spp-awsec2.tar
    │   ├── spp-kc.tar
    │   ├── spp-manager.tar
    │   ├── spp-node.tar
    │   ├── spp-operator.tar
    │   ├── spp.tar
    │   ├── spp-uinginx.tar
    │   ├── spp-vadp.tar
    │   └── version.yaml
    └── load_images.sh
    where operator_version is the IBM Spectrum Protect Plus operator version, for example, "1.0.0-570".
  4. Export the Docker registry to your private registry by issuing the following command:
    $ export DOCKER_REGISTRY=registry.example.com:5000
    where registry.example.com is the Docker registry address.
  5. If you have not already done so, log in to the private Docker registry by issuing the following command:
    $ docker login registry.example.com
    where registry.example.com is the Docker registry address.
  6. Run the load_images.sh script to tag and push the IBM Spectrum Protect Plus images to the private Docker registry:
    $ cd sppimages
    $ ./load_images.sh
    where sppimages specifies the directory where the installation package was extracted.
  7. From the sppimages directory, create a copy of the configuration directory to a temporary location by issuing the following command:
    $ cp -R ./operator_version /tmp/spp-operator
    where the folder name, operator_version, specifies the IBM Spectrum Protect Plus operator version. For example, issue the following command:
    $ cp -R ./1.0.0-570 /tmp/spp-operator
  8. Log in to the OpenShift cluster by issuing the following command:
    $ oc login
  9. Create a namespace (project) where the operator and IBM Spectrum Protect Plus instance will be installed:
    $ oc create namespace your_namespace
  10. Update the namespace values in the configuration files with the newly created namespace by issuing the following command:
    $ sed -i ‘s#{{ NAMESPACE }}#your_namespace#g’ /tmp/spp-operator/*
    where your_namespace is the namespace that you created for the operator and IBM Spectrum Protect Plus instance.
  11. Update the image registry values in the configuration files with your image registry by issuing the following command:
    $ sed -i ‘s#{{ IMAGE_REGISTRY }}#your_image_registry#g’ /tmp/spp-operator/*
    where your_image_registry is your private Docker registry address.
  12. Optional: Create an image pull secret to authenticate with your private Docker registry by taking the following actions:
    1. Create an image pull secret at the command line. For example, you can issue the following command:
      $ oc create -n your_namespace secret docker-registry your_image_pull_secret \
          --docker-server=your_image_registry \
          --docker-username=your_docker_username \
          --docker-password=your_docker_password \
          --docker-email=your_docker_email
      where your_image_pull_secret is the name of the image pull secret and your_image_registry is your private Docker registry address.
    2. In the following files:
      • service_account.yaml
      • spp-operator.voperator_version.clusterserviceversion.yaml
      where operator_version specifies the IBM Spectrum Protect Plus operator version, modify the imagePullSecrets field by replacing the default name with the name of the image pull secret that you created.
      ...
      spec: 
        imagePullSecrets:
        - name: your_image_pull_secret
      ...
  13. Apply the configuration files to install the operator by issuing the following commands in the order that is listed:
    $ oc apply -f /tmp/spp-operator/operator-group.yaml
    $ oc apply -f /tmp/spp-operator/role.yaml
    $ oc apply -f /tmp/spp-operator/service_account.yaml 
    $ oc apply -f /tmp/spp-operator/role_binding.yaml 
    $ oc apply -f /tmp/spp-operator/spp.ibm.com_ibmspps_crd.yaml 
    $ oc apply -f /tmp/spp-operator/spp-operator.voperator_version.clusterserviceversion.yaml
    where operator_version specifies the IBM Spectrum Protect Plus operator version, for example, "1.0.0-570".

Results

The IBM Spectrum Protect Plus operator is installed in the namespace that you created for IBM Spectrum Protect Plus.

What to do next

Create an instance of the IBM Spectrum Protect Plus server. For instructions, see Creating an IBM Spectrum Protect Plus instance.