docs.unity.cn
    Show / Hide Table of Contents

    Unity Licensing Server administration

    After your Unity Licensing Server is up and running, here are some common administration tasks you might need to perform:

    Checking the status of your server

    Use the status command to perform the following health checks and display the results:

    Health Check Description
    HttpConfigHealthCheck Kestrel configuration
    ServerLicenseHealthCheck Status of licenses and delegations
    LicensingHealthCheck License configuration and signing key
    DatabaseHealthCheck Status of the connection to the database
    PluginInformationProvider Server plug-ins

    You can also see the status of these health checks on the Extended test report.

    Run the status command with the following syntax:

    • Linux: ./Unity.Licensing.Server status
    • Windows: .\Unity.Licensing.Server.exe status

    The output looks similar to this:

    Server Version: 1.7.0.7cc2de3
    Healthy
    HttpConfig: Healthy
    HTTP config is healthy
      [OK] Kestrel: Found config section Kestrel
      [OK] Kestrel:Endpoints:HTTP:Url: Found valid config Kestrel:Endpoints:HTTP:Url: http://10.255.255.148:80
    ServerLicense: Healthy
    Server license and delegation are valid
      [OK] ServerLicense::Context::FirstPhysicalAddress: 48:2a:e3:87:3b:19
      [OK] ServerLicense::Context::Platform: Win32NT
      [OK] ServerLicense::Context::ProcessorCount: 12
      [OK] ServerLicense::Context::MachineName: LAPTOP-2Q28U8QR
      [OK] ServerLicense::ContextCount: Found 4 out of 4 context values
      [OK] ServerLicense::EntitlementGroup::test-licenseServer_3573567292644_1: EntitlementGroup: test-licenseServer_3573567292644_1 (from: test-licenseServer_3573567292644_1-20200925_145658.xml) has valid server entitlements
      [OK] ServerLicense::EntitlementGroupCount: Found 1 valid server license(s)
      [OK] ServerLicense::Delegation::test-licenseServer-delegation-20200925_145658.xml: Found valid server delegation: C:\Users\user.name\AppData\Local\Unity\licenses\delegations\test-licenseServer-delegation-20200925_145658.xml
      [OK] ServerLicense::DelegationsCount: Found 1 valid server delegations
    LicensingConfig: Healthy
    Licensing configuration is healthy
      [OK] licensing: Found config section licensing
      [OK] licensing:licenseSigningCertLoading: Successfully loaded license signing key
    Plugins: Healthy
    Plugins
      [OK] PluginAssemblies: 0
      [OK] RegisteredPlugins: 0
    Database: Healthy
    Connection state for Microsoft.Data.Sqlite.SqliteConnection is Open
      [OK] ConnectionStatus: Connection state for Microsoft.Data.Sqlite.SqliteConnection is Open
    Successfully started the licensing server: http://10.255.255.148:80/v1/admin/status
    Press Ctrl+C to shut down...
    

    Renewing licenses on the server

    At the end of the subscription term, if you choose to renew your subscription, you must update the license on the licensing server. To update the license, repeat the instructions on Downloading and importing the license archive file after the you renew the subscription.

    If the licensing server version is earlier than 1.10, you must also manually delete the old delegation files. For details, see this support article.

    Note

    The new license becomes available for download from Unity ID only after the expiration of the current subscription term. Once the current subscription term has expired, there is a grace period of one month to renew the license on the server. If you don't renew the license before this grace period ends, the license stops working. You must download and update the license during the grace period to avoid service outages.

    Impact of license renewals on client configuration

    The same rules from Impact of license updates on client configuration apply when importing a license from a renewed subscription.

    Applying changes to licenses on the server

    If you negotiated a change to your Floating Licensing subscription with Unity, such as adding or removing seats, you'll need to repeat the process of importing the subscription's license to the server. Follow the process in Downloading and importing the license archive file.

    Impact of license updates on client configuration

    License updates don't affect clients that use the default toolset.

    For clients specifying a toolset:

    • With servers at version 1.10 and earlier, toolset values must match the EntitlementGroupId of the server license. This means that when you update the server license, you must update the toolset values accordingly on the client configuration.

    • Starting with version 1.11, license updates should have no impact on the toolset selection. The licensing server allows for variations in the incremental part of the toolset, which means that there should be no impact on the clients configured with a specific toolset.

    The licensing server import command shows the new toolset, which is typically similar to the old one with an incremented number at the end. For example, after the first update, the LicenseServer_3573461705080_1 toolset becomes LicenseServer_3573461705080_2.

    Advanced server configuration

    When you've completed a successful setup of your floating licensing server, you can find the licensing-server-config.json file in the Licensing server data root directory.

    To modify configuration not covered by the setup command, you can edit the licensing-server-config.json file. The following example includes all configuration parameters:

    {
        "Logging": {
            "LogLevel": {
                "Default": "Warning"
            }
        },
        "AllowedHosts": "*",
        "Kestrel": {
            "Endpoints": {
                "HTTPS": {
                    "Url": "https://*:443",
                    "Certificate": {
                        "Path": "[Full path of HTTPS PFX certificate - see Warning below]",
                        "Password": "[Password for HTTPS PFX certificate]"
                    }
                }
            }
        },
        "licensing": {
            "serverId": "[Server name, to be set by setup CLI command]",
            "licenseUsernameObfuscation": false,
            "floatingLeaseRenewIntervalInMinutes": "15",
            "floatingLicenseExpirationInMinutes": "480",
            "licenseSigningCertificatePassword": "[Encrypted password of license signing certificate]",
            "PluginsDirectory": "Plugins",
            "defaultToolset": "[default license entitlement group Id]"
        },
        "adminIpAllowlist": "127.0.0.1;10.20.30.40;localhost",
        "serverDirectory": "[Full directory path for Licensing Server executable]",
        "serverVersion": "[Licensing Server version]"
    }
    
    Note

    On Windows, when using backslashes in a string with double quotes, you must use two backslashes for every instance of a backslash.

    Advanced configuration keys

    Advanced configuration keys include:

    Key Description
    floatingLeaseRenewIntervalInMinutes Specifies how long the server holds a lease for the client. If the server doesn't receive a ping for a specific lease before the end of this interval, it will release the license associated to that lease.

    The default setting is 15 minutes.
    floatingLicenseExpirationInMinutes Specifies the expiration time of the issued client license.

    The default setting is 8 hours.
    licenseSigningCertificatePassword The encrypted password of the signing certificate in PFX format.

    The import command automatically sets this value.
    PluginsDirectory The full path of the directory the server reads plug-ins from.
    adminIpAllowlist Specifies the permitted IP addresses that can access administrator endpoints as a semicolon separated string.

    The licensing server doesn't support wildcard characters or subnets.
    defaultToolset Stores the identifier of the default product license.

    If multiple product licenses are available on the server and the client doesn't request a specific product license, the server allocates the default license. If the default value isn't set, the server allocates the first available license from the list.

    To find all available product identifiers, open the Extended test report and locate the licenseEntitlementGroupId field in the serverLicenses section.

    Additional resources

    • Troubleshooting the Unity Floating Licensing server
    Back to top Copyright © 2023 Unity Technologies
    Generated by DocFX