MMS Configuration Guide


Overview

TIBCO Streaming Model Management Server (MMS) uses YAML-based configuration (with JSON support) to configure different server properties. This guide explains the MMS configuration structure and how to modify it based on the user's environment.


Configuration Files

For local installations, the MMS server configuration file is located in $MMS_LOCAL_ENV_DIR/conf. For cloud installations, MMS server configuration is managed with a Kubernetes ConfigMap named artifact-management.

Users can generate a sample server configuration file by using the mms-launcher generate configuration command.


Key Configuration Properties

Artifact Management Cloud

It defines Kubernetes-related configurations for running MMS in a containerized environment.

artifactManagementCloud:
    artifactManagementRunningNamespace: "streaming-web"
    dataChannelContainerPort: 8080
    dataChannelMetadataStoragePath: "./.sw-data/classpath"
    deployStoragePath: "./.sw-data/deploy-storage"
    globalValuesConfigMapName: "helm-values"
    scoringServiceContainerPort: 2650
    tektonPipelineRunningNamespace: "streaming-web-deploy-service-tekton-pipelines"

Elasticsearch Configuration

It is used for logging and indexing data.

elasticsearch:
    artifactManagement:
        indices: [".ds-logs-apm.app.artifact_manager-*"]
    dataChannel:
        indices: [".ds-logs-apm.app.data_channel_server-*"]
    scoringServer:
        indices: [".ds-logs-apm.app.scoring_server-*"]
    streamingFlow:
        indices: [".ds-logs-apm.app.streaming_flow-*"]
    caCertificateFile: "/x/y/z/ca.crt"
        uris: "http://localhost:9200"
    username: ""
    password: ""

Internal API Listener

It configures the API service for inter-service communication.

internalAPIListener:
    listenPort: 1234
    idleTimeoutMS: 60000

Management Configuration

It specifies cache policies and log file locations.

management:
    maximumFileCacheTimeMinutes: 0
    serverLogPath: "./logs/artifact-server.log"

Maven Configuration

It defines paths for Maven dependencies and settings.

maven:
    localSettingsFile: "/a/b/settings.xml"
    mavenInstallation: "/opt/apache-maven-3.9.6"

Security and Authentication

Local Authentication Realm

It defines user authentication settings that are stored locally.

security:
    auth:
    localRealm:
        userDataFileURI: "https://my-server.mycompany.com/myusers.txt"

OpenID Connect Authentication

It is used for Single Sign-On (SSO).

security:
    auth:
    jwtRealm:
    jwtIdentityAttributeName: "emailAddress"
    jwtRoleAttributeName: "roles"
    jwtIssuer: "myIssuer"

Secure Transport Settings

It configures Transport Layer Security (TLS) for communication.

security:
    transport:
    enableSecureConnector: true
    secureConnector:
    keyStoreURI: "file:/a/keyStore.p12"
    keyStorePassword: "sample-key-store-password"
    trustStoreURI: "file:/a/trustStore.p12"

Logging Configuration

It defines log export behavior using OpenTelemetry.

openTelemetryLoggingInfo:
    exporterType: "OTLP_HTTP"
    maxExportBatchRecordCount: 512

Space Configuration

It defines data spaces and repository settings.

space:
    repositoryRefreshIntervalSeconds: 300
    spaces:
        name: "My Space"
        description: "my space description"
        repository:
        url: "https://github.com/my_repo"

Streaming Configuration

It manages Streaming service and cluster discovery.

streaming:
    localDiscovery:
    enabled: true

Applying the Configuration Changes

After modifying artifact-management.conf, stop and start the server to apply the changes. For more information, see MMS Launcher Guide.

After modifying the artifact-management ConfigMap, restart the artifact-management pods to apply the changes. For more information, see Cloud Installation.