Licensing
Starting from AI Hub version 10.1,Altair Unit Licensingis the default licensing mechanism for Server, Job Agents and Scoring Agents. Please seeenforcing RapidMiner licenseif you need to still use RapidMiner licensing in your updated deployment of AI Hub.
RapidMiner AI Hub and its components like Scoring Agents and Job Agents require a valid license to be used and support the following licensing mechanisms:
- Altair Unit Licensing
- RapidMiner Licenseswhich can be retrieved frommy.www.turtlecreekpls.com
The following sections outline each mechanism separately.
From 10.1.0 to 10.1.2, environment variable for license configuration has changed. If you already have a 10.1.0 deployment, please ensure to changeLICENSE_ENABLE_ALTAIR=false
(RapidMiner licensing) toLICENSE_MODE=RAPIDMINER
orLICENSE_ENABLE_ALTAIR=true
(Altair licensing) toLICENSE_MODE=ALTAIR_UNIT
.
Altair Unit Licensing
Altair Unit Licensingis enabled by default for components of AI Hub.
To see whether Altair Unit Licensing is enabled, you can visit AI Hub Server's web page and go toManagement -> Licenses. You should seealtair_unit
as illustrated in the below image.
License Agent
The License Agent is a library included into each AI Hub Server component which reports information to the deployment's License Proxy instance.
License Agents send periodic heartbeats to their assigned License Proxy. The URL of the License Proxy to reach out to is determined byLICENSE_AGENT_PROXY_URL
.
In case the responsible License Proxy cannot reserve any new Altair Units, the License Agent shuts down the application.
License Agents identify their host system with amachineId
. Ensure that..._LICENSE_AGENT_MACHINE_ID=
is properly set for each application. This machine identifiermustbe the same for all applications residing on the same host and share the same CPU resources. Itmustbe different for different hosts. The identifier is used duringleveling.
See available environment variables for
License Proxy
The License Proxy is an application which managesAltair Unitsand communicates with anAltair Unit Manager. This Altair Unit Manager can be Altair One or a local deployed version of it.
The License Proxy provides means to manage information sent by License Agents in an AI Hub deployment by listening for heartbeats from all connected License Agents. It is a unique application within one deployment/cluster, but should be present for each cluster if there are multiple, e.g., environments for development, staging, or production.
Main functionality of the License Proxy:
- Draws and reserves units for AI Hub components from your Altair Unit Manager (5 unitsper CPU, leveling applied).
- Manages life cycle of License Agents, e.g. enforces a shut down of the underlying application if no units are available or there has been no heartbeat.
- Checks-in drawn units only after a certain timeout, so that AI Hub applications can be restarted and updated without directly giving back all drawn units
There are two ways how the License Proxy connects to an Altair Unit Manager: on premise and via Altair One. Those different modes require setting different environment variables which are described in the sections below.
On premise
默认情况下,启用了前提模式里面the License Proxy which setsLICENSE_PROXY_MODE=on_prem
. In addition, you need to provide the path to your on-premise license manager viaALTAIR_LICENSE_PATH
, e.g. withALTAIR_LICENSE_PATH=6200@network-address
, where6200
is the default port of the Altair license manager andnetwork-address
is a network address which the License Proxy needs to be able to connect to. This environment variable is required in any case except for a local Altair License Manager (which is highly unlikely in production setup).
Altair One
Altair One can be used to manage your units. For this, you need to setLICENSE_PROXY_MODE=altair_one
和提供必要的身份备用ion which depend on your use case.
The License Proxy uses file system access atLICENSE_PROXY_BASE_DIR/home
(also known as environment variableLICENSE_PROXY_HOME_DIR
). By default, this is located at/license-proxy/home
for the docker image. This location should be sticky, e.g. with a volume or host bind.
Property | Values | Description |
---|---|---|
LICENSE_UNIT_MANAGER_AUTHENTICATION_TYPE |
credentials orstatic_token |
Determines how your account is identified against Altair One, e.g. via a static token or with your username and password. |
LICENSE_UNIT_MANAGER_TOKEN |
|
Only required when authentication type is set tostatic_token . Set to specific Altair One token for your account. |
LICENSE_UNIT_MANAGER_USER_NAME |
|
Only required when authentication type is set tocredentials . Set to the user name of your Altair One account. |
LICENSE_UNIT_MANAGER_PASSWORD |
|
Only required when authentication type is set tocredentials . Set to the password of your Altair One account. |
LICENSE_UNIT_MANAGER_RESET_AUTH_TOKEN |
false |
Whenmode=altair_one : Resets any stored auth information when already persisted inLICENSE_PROXY_HOME_DIR . |
In case you see an error message similar toRequested version number is greater than version number in license (Version found in license is: x)
, please make sure to upgrade your Altair License Manager.
Leveling
Altair Unit licensing key metric are used CPU resources for which the License Proxy draws Altair Units from the configured Altair License Manager which can be deployed on-premise or use Altair One.
When applications reside on the same host, then only for the maximum number of CPU resources units are drawn. This is called leveling.
Example
- Application A reports 2 CPU and resides on host 1
- Application B reports 1 CPU and resides on host 1
- Application C reports 4 CPU and resides on host 2
- Application D reports 8 CPU and resides on host 2
Because application A and B and C and D reside on the same host. Units are only drawn for their maximum per host. In total, 2 (for A and B) and 8 (for C and D) units will be drawn.
Standalone Altair license for Scoring Agents
Standalone Altair license is only supported for edge devices running with the docker engine. Neither Kubernetes nor OpenShift deployments are supported.
The Scoring Agent is the only AI Hub Server application which also supports Altair standalone license (also known as node lock license).
By default, the.dat
license file needs to be made available inside the Scoring Agent's docker container at the location/scoring-agent/home/resources/licenses/altair_standalone.dat
. You can either copy the.dat
file into the created docker volume or manually bind the path to a host system path, e.g. with/home/user/my.dat:/scoring-agent/home/resources/licenses/altair_standalone.dat
.
In addition, you need to instruct the Scoring Agent to switch its license mode withLICENSE_MODE=ALTAIR_STANDALONE
.
因为standalone license files are bound to MAC addresses, you need to expose the MAC address of your license file for the Scoring Agent's docker container. This can be achieved in two ways:
- Set the MAC address of your license file as a docker container argument, e.g. with
——mac地址XX: XX: XX: XX: XX
- Set the docker container's network mode tohostwith
--network host
.
When configuration has been done properly, the Scoring Agent will start serving and print that it's using Altair standalone license:
InitializerService : Initializing Altair standalone license InitializerService : Successfully checked out feature 'RapidMinerAIHub' with version '22' InitializerService : Starting ALJDK check InitializerService : Initialized Altair standalone license successfully InitializerService : Altair standalone license information: RapidMinerAIHub (expires on yyyy-mm-dd at hh:mm)
RapidMiner Licensing
RapidMiner licenses forServer,Job AgentandScoring Agentare available in theLicensestab ofmy.www.turtlecreekpls.com.
To use RapidMiner licensing, you have the option to set the environment variableLICENSE_LICENSE
to the actual license content by copying and pasting it from the web interface, or you can place the license contents into the proper license location which depend on the application, though the environment variable keyLICENSE_LOCATION
是共享的。
Server
For RapidMiner Server to pick up the license, add the license viaLICENSE_LICENSE
or add a.lic
file with the license's content into the proper directory in the attached volume residing in/aihub/home/resources/rapidminer-server/license.lic
in the docker image.
For more information about thehome directoryand available environment variables, please look into thesettings table.
Scoring Agent
Scoring Agents work with a RTS license or a RapidMiner Server license. For the Server license you need to setSCORING_AGENT_ENABLE_SERVER_LICENSE=true
. In either case, you need to properly add the license viaLICENSE_LICENSE
or add a.lic
file with the license's content into the proper directory in the attached volume residing in/scoring-agent/home/resources/rapidminer-scoring-agent/license.lic
(RTS license) or/scoring-agent/home/resources/rapidminer-server/license.lic
(Server license) in the docker image.
For more information and available environment variables, please look into thesettings table.
Job Agent
Job Agents synchronize RapidMiner licenses automatically. You only need to setLICENSE_LOCATION
orLICENSE_LICENSE
when you’vedisabledresource synchronisation.
Job Agents work with the RapidMiner Server license. When a Job Agent starts, the proper license is retrieved from RapidMiner Server. If you've disabledresource synchronisation, then add the license viaLICENSE_LICENSE
or add a.lic
file with the license's content into the proper directory in the attached volume residing in/jobagent/home/resources/rapidminer-server/license.lic
in the docker image.
For more information about available environment variables, please look into thesettings table.
Enforce RapidMiner Licensing
Please make sure to properly set theLICENSE_MODE
environment variable for all applications, don’t leave it blank or comment it in in your deployment files Otherwise the applications fall back to Altair Unit licensing!
By default, AI Hub 10.1+ usesAltair Unit Licensing. If you like to useRapidMiner licensinginstead, setLICENSE_MODE=RAPIDMINER
for each deployed application. This will require valid RapidMiner licenses being available either set byLICENSE_LICENSE
orLICENSE_LOCATION
.