Installing Suite License Service

You install Suite License Service as part of your IBM solution to upload the license file to the Suite License Service server.

Before you begin

Before you install Suite License Service, review the supported installation modes.

Procedure

  1. Configure your entitlements.
    1. Create your namespace.
      For example, ibm-sls
    2. If you are using Suite License Service 3.7.0 or earlier versions, create a Docker secret that is named ibm-entitlement that contains your entitlement key for the IBM® Entitled Registry.
      ER_KEY=<your-er-key>
      oc new-project ibm-sls
      oc -n ibm-sls create secret docker-registry ibm-entitlement \
        --docker-server=cp.icr.io \
        --docker-username=cp \
        --docker-password=$ER_KEY
  2. Configure MongoDB credentials by creating a secret in the Suite License Service namespace that contains the following MongoDB credentials:
    cat <<EOF |oc apply -f -
    apiVersion: v1
    kind: Secret
    type: Opaque
    metadata:
      name: sls-mongo-credentials
      namespace: ibm-sls
    stringData:
      username: mongouser
      password: mongopwd
    EOF
  3. Select Operators > OperatorHub and enter Suite License Service as a keyword in the filter text box.
  4. Click the IBM Suite License Service tile.
  5. From the IBM Suite License Service page, click Install.
  6. Accept the default values for Update Channel and Installation Mode.
  7. Enable the Select a Namespace radio button and enter ibm-sls as the target namespace to install Suite License Service.
    For system stability, consider setting the Installation Mode to manual so that Suite License Service updates are not automatically applied when they are available. You can also set the starting CSV to a specific value to ensure that the version you install is the intended version.
  8. Click Install.
  9. Verify that the Suite License Service operator pod ibm-sls-controller-manager in the ibm-sls namespace is in Ready state.
  10. From Operators > Installed Operators, switch to the ibm-sls namespace and select the IBM Suite License Service operator.
  11. From the Operator Details page, click Create instance.
  12. Select configure by using the YAML view and enter one of the following YAML LicenseService CR templates:

    Bare Minimum

    apiVersion: sls.ibm.com/v1
    kind: LicenseService
    metadata:
      name: sls
      namespace: ibm-sls
    spec:
      license:
        accept: true
      mongo:
        configDb: admin
        nodes:
        - host: host1.domain.com
          port: 27017
        secretName: sls-mongo-credentials
        certificates:
        - alias: mongoca
          crt: |-
            -----BEGIN CERTIFICATE-----
            ...
            -----END CERTIFICATE-----

    All Filled

    apiVersion: sls.ibm.com/v1
    kind: LicenseService
    metadata:
      name: sls
      namespace: ibm-sls
    spec:
      license:
        accept: true
      domain: domain.com
      ca:
        secretName: ca-keypair
      mongo:
        configDb: admin
        nodes:
        - host: host1.domain.com
          port: 27017
        secretName: sls-mongo-credentials
        authMechanism: DEFAULT
        retryWrites: true
        certificates:
        - alias: mongoca
          crt: |-
            -----BEGIN CERTIFICATE-----
            ...
            -----END CERTIFICATE-----
  13. Click Create to deploy the LicenseService CR.

Results

The Suite License Service deployment can take up to 10 minutes. The Suite License Service deployment is finished when it reports that it is Ready under STATUS column. You can use the following command to check the instance state:

oc get -n ibm-sls licenseservice sls

NAME   VERSION   STATUS   INITIALIZED   LICENSEID      REGISTRATIONKEY                        AGE
sls    3.8.0     Ready    Initialized   0242ac110002   0121e6f8-a9ac-5d84-825f-ac455803d3c4   28d