Use an external License Manager

Connect Splunk Operator resources to an external License Manager.

Configure Splunk Operator custom resources to use an external License Manager by sharing pass4Symmkey and configuring the license manager URL. Share the same pass4Symmkey between the global secret object and the external License Manager, and configure splunk.license_master_url.

Note:

This procedure requires Splunk Enterprise container version 8.1.0 or higher.

  1. Configure pass4Symmkey (approach 1): set matching values in the global secret and on the License Manager.
    • Set up the desired plain-text pass4Symmkey in the global secret object (stored base64 encoded).
    • Set up the same plain-text pass4SymmKey in the [general] section of server.conf on the License Manager.
  2. Configure pass4Symmkey (approach 2): copy the value from the License Manager into the global secret.

    Retrieve the plain-text pass4SymmKey from the [general] stanza of server.conf on the License Manager. If the value is encrypted in the file, decrypt it with the following command (replace the placeholder with your encrypted value):

    CODE
    $SPLUNK_HOME/bin/splunk show-decrypted --value '...'

    Set up the decrypted value in the global secret object.

  3. Configure license_master_url through default.yml and a Kubernetes secret.

    Create default.yml with the license manager host or URL:

    CODE
    splunk:
      license_master_url: license-manager.splunk.mydomain.com

    Save the file as a secret:

    CODE
    kubectl create secret generic splunk-license-manager --from-file=default.yml

    Reference the secret and set defaultsUrl on the Standalone resource:

    CODE
    apiVersion: enterprise.splunk.com/v4
    kind: Standalone
    metadata:
      name: example
      namespace: splunk-operator
      finalizers:
      - enterprise.splunk.com/delete-pvc
    spec:
      volumes:
        - name: license-manager
          secret:
            secretName: splunk-license-manager
      defaultsUrl: /mnt/license-manager/default.yml
    Note:

    For an indexer cluster, the same default.yml is needed on the Cluster Manager custom resource and on all Indexer Cluster custom resources.