Installing the operator by running a script

To install the operator, you run a script to set up the operator environment, or run the setup and installation silently.

Before you begin

The deployoperator.py script uses the following utility tools and needs them to be installed on your client machine:

  • Kubernetes CLI
  • Python
  • container-samples repository from GitHub
To install the specified tools that are used by the deployoperator.py script, see topic Preparing a client to connect to the cluster.

If the script finds that any of these tools are missing on the client, it reports which tools are missing and provides a choice to install the tool.

About this task

You can run the deployoperator.py script interactively, or supply the a configuration file beforehand and run the script as a silent deployment.

Either way, you must prepare the values to enter (interactively when the script runs, or set in a configuration file before you run the script silently), for example, license acceptance, platform, namespace and repository.
Note: The setup script does not set any parameters in the custom resource (CR).

After you downloaded the container-samples repository, change the directory to the container-samples/scripts folder.

The script can be run from this location and has the following options:
python3 deployoperator.py --help

Usage: deployoperator.py [OPTIONS]

FileNet Content Manager Operator Deployment CLI.

Options:
  --version                      Show version and exit. 
  --help                         Show this message and exit.

Customization and Utils:
  --silent     --no-silent       Enable Silent Install (no prompts). [default: no-silent]
  --verbose    --no-verbose      Enable verbose logging. [default: no-verbose]
  --dryrun     --no-dryrun       Perform a dry run [default: no-dryrun]
The following command runs the script interactively:
python3 deployoperator.py
Tip: Before you run the script in silent mode, make sure that you fill the ./scripts/silent_config/silent_install_deployoperator.toml file and then run the following command:
python3 deployoperator.py --silent

Use the following steps to complete the setup.

Procedure

  1. Open a terminal or command prompt and log in to the target cluster as the <cluster-admin> user.
  2. Navigate to the directory where the container-samples repository was downloaded:
    cd ./container-samples/scripts
  3. Run the following command to install the necessary Python packages from the requirements.txt file:
    python3 -m pip install -r requirements.txt
  4. Run the operator deployment script.
    • Interactive:
      python3 deployoperator.py
    • Silent:
      python3 deployoperator.py --silent 
    The prerequisites validation for the script checks whether the required utility tools like Podman or Docker exist and if the connection to the cluster is successful. It also checks if the required descriptor files exist. If the prerequisites validation fails, the script flags the missing tools and files.

    For interactive deployments, provide the following values:

    1. Accept the license.
    2. Select the platform type: ROKS (1) or OCP (2) or CNCF (3).

      If you select ROKS (1) or OCP (2), support of the Operator Lifecycle Manager (OLM) is enabled for the IBM FileNet Content Manager operator.

      If you select CNCF, a YAML style deployment is enabled, and is not managed through Operator Lifecycle Manager (OLM).

    3. Validate your IBM Entitlement Registry key to access the container images.
    4. Enter your namespace.
    5. Specify if you want to deploy the FNCM operator using a global catalog namespace (GCN). The GCN uses the openshift-marketplace namespace. Operator instances in the same target namespace of FNCM deployment use a private catalog. This option is only available for Operator Lifecycle Manager (OLM) type installs. The default is No.
    The script displays the details of the artifacts that the operator deployment applies to your cluster.
  5. Monitor the operator pod until it shows a STATUS of "Running".
    kubectl get pods -w 

What to do next

To create a custom resource and run the prerequisite scripts, see topic Generating simple custom resource and deployment files.