Installing the Container Backup Support operator and instance at the Kubernetes command line

You can use the command line in the Kubernetes environment to install the Container Backup Support operator and instance from the IBM® Entitled Registry.

Before you begin

Ensure that you complete the tasks in Preparing to install the Container Backup Support operator on Kubernetes.

About this task

To install the Container Backup Support operator and instance, you must create and apply the operator group, operator subscription, and custom resource for Container Backup Support.

Procedure

  1. Create the operator group for Container Backup Support:
    1. Create a file named baas-k8s-operatorgroup.yaml that contains the following configuration:
      apiVersion: operators.coreos.com/v1
      kind: OperatorGroup
      metadata:
        name: baas-ibmsppc
        namespace: baas
        annotations:
          olm.providedAPIs: IBMSPPC.v1.sppc.ibm.com
      spec:
        targetNamespaces:
        - baas
    2. Apply the YAML file that you created by issuing the following command:
      kubectl apply -f ./baas-k8s-operatorgroup.yaml
  2. Create the subscription for Container Backup Support:
    1. Create a file named baas-k8s-subscription.yaml that contains the following configuration:
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: baas-operator
        namespace: baas
      spec:
        channel: v1.4
        installPlanApproval: Automatic
        name: ibmsppc-operator
        source: ibm-sppc-operator
        sourceNamespace: olm
    2. Apply the YAML file that you created by issuing the following command:
      kubectl apply -f ./baas-k8s-subscription.yaml
    The Container Backup Support operator is deployed.
  3. Install the Container Backup Support instance by completing the following steps:
    1. Create the custom resource for Container Backup Support by saving the following block of information to a file named baas-values-cr.yaml:
      apiVersion: sppc.ibm.com/v1
      kind: IBMSPPC
      metadata:
        namespace: baas
        name: ibmsppc-entitled-registry
      spec:
        state: present
        version: 10.1.10
        license: 
          accept: false | true
        use_nodeport: false
        product_loglevel: INFO | WARNING | ERROR | DEBUG
        cluster_name: create_a_cluster_name
        image_registry_namespace: your_docker_registry_namespace
        image_registry: your_docker_registry
        image_registry_secret: baas-registry-secret 
        spp_port: your_protectplus_server_port
        spp_ips: your_protectplus_server_ip
        spp_fqdn: your_protectplus_server_FQDN_name
        networkPolicy:
          cluster_api_serverips:
            - kubernetes_host_ip1
            - kubernetes_host_ip2
            - kubernetes_host_ip3
          cluster_api_serverport: your_cluster_api_port
          cluster_cidr: x.x.x.x/y
          is_server_installed_on_another_cluster: false
          other_cluster_cidr_block: '24'
        minio_storage_class: name_of_storageclass_to_use_with_minio 
        velero_namespace: spp-velero
        cluster_nodes_fqdn:
          - cluster_node-fqdn-controlplane-1
          - cluster_node-fqdn-controlplane-2
          - cluster_node-fqdn-worker-1
          - cluster_node-fqdn-worker-2
          - cluster_node-fqdn-worker-3

      For information about the values to use in the baas-values-cr.yaml file, see Setting up configuration parameters in the baas-values-cr.yaml file.

    2. Apply the custom resource by issuing the following command:
      kubectl apply -f ./baas-values-cr.yaml

Results

If the Container Backup Support instance is created successfully, the operator deploys all the pods that are required to run Container Backup Support. All the pods will load and change to the Running state after a few minutes. When all pods are running, the deployment is completed.

To verify that all pods are in the Running state and no components are missing, issue the following command:
kubectl get pods -n baas
The list of pods in the output is similar to the following example:
NAME                                                   READY   STATUS    RESTARTS   AGE
baas-controller-864896f5d7-4swfn                       1/1     Running   0          96m
baas-entity-operator-56fcc7d487-grhd2                  3/3     Running   0          92m
baas-kafka-0                                           1/1     Running   0          93m
baas-minio-0                                           1/1     Running   0          95m
baas-scheduler-6689768455-tlph4                        1/1     Running   0          95m
baas-spp-agent-756f4cfcfb-h24kd                        1/1     Running   0          94m
baas-transaction-manager-86f4fb9447-9lbfp              3/3     Running   0          94m
baas-transaction-manager-86f4fb9447-r9m25              3/3     Running   0          94m
baas-transaction-manager-86f4fb9447-zcfmb              3/3     Running   0          94m
baas-zookeeper-0                                       1/1     Running   0          94m
baas-zookeeper-1                                       1/1     Running   0          94m
baas-zookeeper-2                                       1/1     Running   0          94m
ibmsppc-operator-controller-manager-7cfc58ff9c-r9rlf   2/2     Running   0          97m
strimzi-cluster-operator-v0.26.0-bd668f7cb-ghtcq       1/1     Running   0          97m

What to do next

Complete post-installation tasks. For instructions, see Post-installation tasks for Container Backup Support.