You are viewing the RapidMiner Server documentation for version 9.0 -Check here for latest version
Using JBoss EAP 6.4 GA version
RapidMiner Server is bundled withJBoss EAP Alphaversions due to licensing restrictions. If you have the necessary license to run theJBoss EAP 6.4 GAversion then you can also use it to run RapidMiner Server. The following steps are required to use theJBoss EAP 6.4 GA version:
Setting up the application server
RapidMiner Server requires configuration changes to the defaultJBoss EAPconfiguration. Normally the RapidMiner Server installer takes care of these changes but because of licensing restrictions the installer is shipped with theJBoss EAP Alphaversion. As a result to run RapidMiner Server on aJBoss EAP GAinstance you will need to manually perform the necessary configurations. The following sections will guide you step by step how to do so.
JBoss boot modules
Regardless of whether you are running the JBoss EAP under Windows, OS X or Linux the respective bootstrap scripts located in thebin
folder need to be modified by adding thejboss-modules
jar和下面的引导类路径JVM option:-Xbootclasspath/a:\"$JBOSS_HOME/jboss-modules.jar\"
if [ "x$LAUNCH_JBOSS_IN_BACKGROUND" = "x" ]; then # Execute the JVM in the foreground eval \"$JAVA\" -D\"[Standalone]\" $JAVA_OPTS \ \"-Dorg.jboss.boot.log.file="$JBOSS_LOG_DIR"/server.log\" \ \"-Dlogging.configuration=file:"$JBOSS_CONFIG_DIR"/logging.properties\" \
-Xbootclasspath/a:\"$JBOSS_HOME/jboss-modules.jar\" \
-jar \""$JBOSS_HOME"/jboss-modules.jar\" \ $MODULE_OPTS \ -mp \""${JBOSS_MODULEPATH}"\" \ -jaxpmodule "javax.xml.jaxp-provider" \ org.jboss.as.standalone \ -Djboss.home.dir=\""$JBOSS_HOME"\" \ -Djboss.server.base.dir=\""$JBOSS_BASE_DIR"\" \ "$SERVER_OPTS" JBOSS_STATUS=$? else # Execute the JVM in the background eval \"$JAVA\" -D\"[Standalone]\" $JAVA_OPTS \ \"-Dorg.jboss.boot.log.file="$JBOSS_LOG_DIR"/server.log\" \ \"-Dlogging.configuration=file:"$JBOSS_CONFIG_DIR"/logging.properties\" \
-Xbootclasspath/a:\"$JBOSS_HOME/jboss-modules.jar\" \
-jar \""$JBOSS_HOME"/jboss-modules.jar\" \ $MODULE_OPTS \ -mp \""${JBOSS_MODULEPATH}"\" \ -jaxpmodule "javax.xml.jaxp-provider" \ org.jboss.as.standalone \ -Djboss.home.dir=\""$JBOSS_HOME"\" \ -Djboss.server.base.dir=\""$JBOSS_BASE_DIR"\" \ "$SERVER_OPTS" "&" JBOSS_PID=$!
:RESTART if x%XLOGGC% == x ( "%JAVA%" %JAVA_OPTS% ^ "-Dorg.jboss.boot.log.file=%JBOSS_LOG_DIR%\server.log" ^ "-Dlogging.configuration=file:%JBOSS_CONFIG_DIR%/logging.properties" ^
-Xbootclasspath / a:“% JBOSS_HOME % \ jboss-modules.jar" ^
-jar "%JBOSS_HOME%\jboss-modules.jar" ^ %MODULE_OPTS% ^ -mp "%JBOSS_MODULEPATH%" ^ -jaxpmodule "javax.xml.jaxp-provider" ^ org.jboss.as.standalone ^ "-Djboss.home.dir=%JBOSS_HOME%" ^ %SERVER_OPTS% ) else ( "%JAVA%" -Xloggc:%XLOGGC% %JAVA_OPTS% ^ "-Dorg.jboss.boot.log.file=%JBOSS_LOG_DIR%\server.log" ^ "-Dlogging.configuration=file:%JBOSS_CONFIG_DIR%/logging.properties" ^
-Xbootclasspath / a:“% JBOSS_HOME % \ jboss-modules.jar" ^
-jar "%JBOSS_HOME%\jboss-modules.jar" ^ %MODULE_OPTS% ^ -mp "%JBOSS_MODULEPATH%" ^ -jaxpmodule "javax.xml.jaxp-provider" ^ org.jboss.as.standalone ^ "-Djboss.home.dir=%JBOSS_HOME%" ^ %SERVER_OPTS% )
RapidMiner Server home directory
The RapidMiner Serverhome directory哪里是你的RapidMiner服务器的配置和吗data are stored. The folder needs to be created manually and we recommend to choose a location outside of the application server structure. In the following article the RapidMiner Server home is referred toRM_HOME
and should not be confused with the JBoss home directoryJBOSS_HOME
. As every configuration should be stored withinRM_HOME
move the folderJBOSS_HOME/standalone/configuation
toRM_HOME/configuration
. Please also make sure to create the following directories:
RM_HOME/data
RM_HOME/log
RM_HOME/resources/licenses
JBoss JVM options configuration
JBoss EAP needs to be started with specific JVM options for RapidMiner Server to work as expected. Apply the highlighted changes tobin/standalone.conf.bat
file for Windows platforms or the/bin/standalone.conf
file in the case of Linux and OS X platforms. The JVM maximum memory can be adjusted by creating theRM_HOME/configuration/max-memory.conf
file.
8192M
The expected value in the file is a number followed by letter ‘M’ which signifies the size of memory in MB. In this example the maximum amount of memory that RapidMiner Server may allocate is 8192 MB.
The amount set in themax-memory.conf
file MUST be greater than theXms
option specified in/bin/standalone.conf
or/bin/standalone.conf.bat
depending on your platform.
Change place holder"%%%%%JAVA_LOCATION%%%%%"
to the path of your jre/jdk installation and make sure that it’s version iscompatiblewith the RapidMiner Server version you want to install.
Change place holder"%%%%%RM_HOME_LOCATION%%%%%"
to a path of your choice. We recommend a location outside of the application server.
## -*- shell-script -*- ###################################################### ## ## ## JBoss Bootstrap Script Configuration ## ## ## ############################################################################## # # This file is optional; it may be removed if not needed. # # # Specify the maximum file descriptor limit, use "max" or "maximum" to use # the default, as queried by the system. # # Defaults to "maximum" # #MAX_FD="maximum" # # Specify the profiler configuration file to load. # # Default is to not load profiler configuration file. # #PROFILER="" # # Specify the location of the Java home directory. If set then $JAVA will # be defined to $JAVA_HOME/bin/java, else $JAVA will be "java". #
JAVA_HOME="%%%%%JAVA_LOCATION%%%%%"
# # Specify the exact Java VM executable to use. # #JAVA="" if [ "x$JBOSS_MODULES_SYSTEM_PKGS" = "x" ]; then JBOSS_MODULES_SYSTEM_PKGS="org.jboss.byteman" fi # Uncomment the following line to prevent manipulation of JVM options # by shell scripts. # #PRESERVE_JAVA_OPTS=true # # Use Xmx settings file introduced in RapidMiner Server 7.2 # MAX_MEMORY_CONFIG_FILE="$DIRNAME/../standalone/configuration/max-memory.conf" if [ -r "$MAX_MEMORY_CONFIG_FILE" ]; then MAX_MEMORY_CONFIG=$(cat "$MAX_MEMORY_CONFIG_FILE") else MAX_MEMORY_CONFIG="2048m" fi # # Specify options to pass to the Java VM. # if [ "x$JAVA_OPTS" = "x" ]; then JAVA_OPTS="-Xms1303m -Xmx$MAX_MEMORY_CONFIG -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true" JAVA_OPTS="$JAVA_OPTS -XX:+UseG1GC -XX:MaxGCPauseMillis=50" JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true" JAVA_OPTS="$JAVA_OPTS -Djboss.modules.policy-permissions=true" JAVA_OPTS="$JAVA_OPTS -Duser.country=US -Duser.language=en"
# Set pooled JNDI connection timeout in milliseconds JAVA_OPTS="$JAVA_OPTS -Dcom.sun.jndi.ldap.connect.pool.timeout=300000"
else echo "JAVA_OPTS already set in environment; overriding default settings with values: $JAVA_OPTS" fi # Sample JPDA settings for remote socket debugging #JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,address=8787,server=y,suspend=n" # Sample JPDA settings for shared memory debugging #JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_shmem,server=y,suspend=n,address=jboss" # Uncomment to not use JBoss Modules lockless mode #JAVA_OPTS="$JAVA_OPTS -Djboss.modules.lockless=false" # Uncomment to gather JBoss Modules metrics #JAVA_OPTS="$JAVA_OPTS -Djboss.modules.metrics=true" # Uncomment this to run with a security manager enabled # SECMGR="true"
# Specify the RapidMiner Server home directory. RAPIDMINER_SERVER_HOME="%%%%%RM_HOME_LOCATION%%%%%" JAVA_OPTS="$JAVA_OPTS -Drmserver.home.dir=$RAPIDMINER_SERVER_HOME" JAVA_OPTS="$JAVA_OPTS -Djboss.server.log.dir=$RAPIDMINER_SERVER_HOME/log" JAVA_OPTS="$JAVA_OPTS -Djboss.server.config.dir=$RAPIDMINER_SERVER_HOME/configuration" JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"
Change place holder"%%%%%JAVA_LOCATION%%%%%"
to the path of your jre/jdk installation and make sure that it’s version iscompatiblewith the RapidMiner Server version you want to install.
Change place holder"%%%%%RM_HOME_LOCATION%%%%%"
to a path of your choice. We recommend a location outside of the application server.
rem ### -*- batch file -*- ###################################################### rem # ## rem # JBoss Bootstrap Script Configuration ## rem # ## rem ############################################################################# rem # $Id: run.conf.bat 88820 2009-05-13 15:25:44Z dimitris@jboss.org $ rem # rem # This batch file is executed by run.bat to initialize the environment rem # variables that run.bat uses. It is recommended to use this file to rem # configure these variables, rather than modifying run.bat itself. rem # rem Uncomment the following line to disable manipulation of JAVA_OPTS (JVM parameters) rem set PRESERVE_JAVA_OPTS=true rem # removed because when installing RA necessary options are defined; -xrs parameter of service would trigger skip rem if not "x%JAVA_OPTS%" == "x" ( rem echo "JAVA_OPTS already set in environment; overriding default settings with values: %JAVA_OPTS%" rem goto JAVA_OPTS_SET rem ) rem # rem # Specify the JBoss Profiler configuration file to load. rem # rem # Default is to not load a JBoss Profiler configuration file. rem # rem set "PROFILER=%JBOSS_HOME%\bin\jboss-profiler.properties" rem # rem # Specify the location of the Java home directory (it is recommended that rem # this always be set). If set, then "%JAVA_HOME%\bin\java" will be used as rem # the Java VM executable; otherwise, "%JAVA%" will be used (see below). rem #
set "JAVA_HOME=%%%%%JAVA_LOCATION%%%%%"
rem # rem #指定的Java VM执行to use - only used if JAVA_HOME is rem # not set. Default is "java". rem # rem set "JAVA=C:\opt\jdk1.6.0_23\bin\java" rem # rem # Specify options to pass to the Java VM. Note, there are some additional rem # options that are always passed by run.bat. rem # rem # Use Xmx settings file introduced in RapidMiner Server 7.2 if exist %DIRNAME%\..\standalone\configuration\max-memory.conf ( set /p MAX_MEMORY_CONFIG=<%DIRNAME%\..\standalone\configuration\max-memory.conf ) else ( set MAX_MEMORY_CONFIG=2048m ) rem # JVM memory allocation pool parameters - modify as appropriate. set "JAVA_OPTS=%JAVA_OPTS% -Xms1303M -Xmx%MAX_MEMORY_CONFIG% -XX:MaxPermSize=256M" set "JAVA_OPTS=%JAVA_OPTS% -XX:+UseG1GC -XX:MaxGCPauseMillis=50" rem # Prefer IPv4 set "JAVA_OPTS=%JAVA_OPTS% -Djava.net.preferIPv4Stack=true"
rem # Set pooled JNDI connection timeout in milliseconds set "JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.jndi.ldap.connect.pool.timeout=300000"
rem # Set the jboss.modules.policy-permissions property to true by default. set "JAVA_OPTS=%JAVA_OPTS% -Djboss.modules.policy-permissions=true " rem # Make Byteman classes visible in all module loaders rem # This is necessary to inject Byteman rules into AS7 deployments set "JAVA_OPTS=%JAVA_OPTS% -Djboss.modules.system.pkgs=org.jboss.byteman" rem # Set to english logging set "JAVA_OPTS=%JAVA_OPTS% -Duser.country=US -Duser.language=en" rem # Sample JPDA settings for remote socket debugging rem set "JAVA_OPTS=%JAVA_OPTS% -agentlib:jdwp=transport=dt_socket,address=8787,server=y,suspend=n" rem # Sample JPDA settings for shared memory debugging rem set "JAVA_OPTS=%JAVA_OPTS% -agentlib:jdwp=transport=dt_shmem,address=jboss,server=y,suspend=n" rem # Use JBoss Modules lockless mode rem set "JAVA_OPTS=%JAVA_OPTS% -Djboss.modules.lockless=true" rem # Uncomment this to run with a security manager enabled rem set "SECMGR=true" :JAVA_OPTS_SET
rem #主文件夹集合”JAVA_OPTS = % JAVA_OPTS % -Drmserver.home.dir=%%%%%RM_HOME_LOCATION%%%%%" rem # Set log folder set "JAVA_OPTS=%JAVA_OPTS% -Djboss.server.log.dir=%%%%%RM_HOME_LOCATION%%%%%\log" rem # Set configuration folder set "JAVA_OPTS=%JAVA_OPTS% -Djboss.server.config.dir=%%%%%RM_HOME_LOCATION%%%%%\configuration" rem # Set UTF-8 file encoding set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF-8"
JDBC driver configuration
Configure the JDBC driver to allow connection to your repository database. JBoss GA does not come with bundled JDBC drivers so you will need to download the driver and store it to the appropriate location undermodules/system/layers/base
folder. Depending on the underlying database you are using the full path will differ:
- Microsoft SQL Server: create the
com/mssql/main
subfolder structure inside the base folder and copy the driver library (for examplemssql-jdbc-6.4.0.jre8.jar
) into it. - MySQL: create the
com/mysql/main
subfolder structure inside the base folder and copy the driver library (for examplemysql-connector-java-8.0.11.jar
) into it. - Oracle: create the
oracle/main
subfolder structure inside the base folder and copy the driver library (for exampleojdbc7-12.1.0.2.jar
) into it. - PostgreSQL: create the
org/postgresql/main
subfolder structure inside the base folder and copy the driver library (for examplepostgresql-42.2.2.jar
) into it.
You also need to register the JDBC driver library by creating amodule.xml
file in the same folder the driver is stored. Depending on the driver and version you will need to modify thename="..."
andpath="..."
attributes.
Modify JBoss database configuration
Now that JBoss is able to use the JDBC driver you need to add a data source and register the JDBC driver instandalone/configuration/standalone.xml
.
The data source describes the connection to the RapidMiner Server repository database while the driver defines the Java class that implements the JDBC driver class. Data source and driver definition may vary depending on the type of database you use.
You need to add thedatasource
and thedriver
tags underdatasources
tag. Also do not forget to change:
- the
according to your JDBC driver,... - the
and...
depending on the JDBC driver class,... - the
,...
depending on the JDBC driver library you configured. - within the new
datasource
element, update thesecurity
element with the correctuser-name
andpassword
.
<数据源jta = " true " jndi名称=“java: / jdbc /快速AnalyticsDS" pool-name="RapidAnalyticsDS" enabled="true" use-java-context="false" use-ccm="true"> jdbc:sqlserver://dbhost:1433;databaseName=dbschema;SelectMethod=cursor; mssql-jdbc-6.4.0.jre8.jar 5 50 false false FailingConnectionOnly dbuser dbpassword false true 5000 com.microsoft.sqlserver.jdbc.SQLServerDriver com.microsoft.sqlserver.jdbc.SQLServerDriver
<数据源jta = " true " jndi名称=“java: / jdbc /快速AnalyticsDS" pool-name="RapidAnalyticsDS" enabled="true" use-java-context="false" use-ccm="true"> jdbc:mysql://dbhost:3306/dbschema true mysql-connector-java-8.0.11.jar TRANSACTION_READ_COMMITTED 0 20 true false FailingConnectionOnly dbuser dbpassword false true 5000 0 false com.mysql.jdbc.Driver com.mysql.jdbc.Driver
<数据源jta = " true " jndi名称=“java: / jdbc /快速AnalyticsDS" pool-name="RapidAnalyticsDS" enabled="true" use-java-context="false" use-ccm="true"> jdbc:oracle:thin:@dbhost:1521:dbschema ojdbc7-12.1.0.2.jar TRANSACTION_READ_COMMITTED 5 100 true false FailingConnectionOnly dbuser dbpassword false true 5000 oracle.jdbc.driver.OracleDriver oracle.jdbc.driver.OracleDriver
<数据源jta = " true " jndi名称=“java: / jdbc /快速AnalyticsDS" pool-name="RapidAnalyticsDS" enabled="true" use-java-context="false" use-ccm="true"> jdbc:postgresql://dbhost:5432/dbschema postgresql-42.2.2 dbuser dbpassword false true 5000 org.postgresql.Driver org.postgresql.Driver
Disable Subdeployment Class Loader Isolation
To disable Subdeployment class loader Isolation within an ear file locate the
element within thestandalone/configuration/standalone.xml
and replace the
element with
.
Modify JBoss security configuration
Thestandalone/configuration/standalone.xml
file needs to be adjusted with an additionalsecurity-domain
element with attributename="RapidAnalyticsEJBDomain"
that defines the security domain used by RapidMiner Server for authentication and access control. This element needs to be placed within thesecurity-domains
element:
<安全域> <安全域的名字= c“其他”ache-type="default">
If you want to use Radoop on RapidMiner Server as well, you will also need to add the security groupradoop-kerberos
to thesecurity-domains
element. The security domainshadoop_default
,Client_simple
andClient
are only necessary if you want to connect to a MapR cluster.
In order to enableLDAPauthentication you will need to create thelocal-security.properties
and store it in the/standalone/configuration
folder. Then follow the steps as explained inChanging LDAP settingsguide
JBoss virtual server configuration
RapidMiner Server additionally requires changes to virtual server configuration instandalone/configuration/standalone.xml
file. Locate the virtual server subsystem with attributexmlns="urn:jboss:domain:web:2.2"
. There be sure to make the following changes:
- change
default-virtual-server
attribute to have the value"ra-host"
- add a
virtual-server
element with the following attributes and its values:name="ra-host"
,enable-welcome-root="false"
anddefault-web-module="ROOT"
- inside the
virtual-server
element create analias
element with an attributename
whose value is the host name RapidMiner server will be accessible, for example
"%%%%%SERVER_HOST%%%%%"
to the address RapidMiner Server should be accessible from.
JBoss interface configuration
The JBoss application server needs to be configured on which address the application as well as the management endpoints of the server should be accessed. To do this theinterfaces
and
elements need to be adapted in thestandalone/configuration/standalone.xml
configuration file. Specifically:
- adjust the nested
interface
elements with name attribute valuesmanagement
,public
,unsecure
to contain aninet-address
element as follows:
.Be sure to change
%%%%%SERVER_HOST%%%%%
placeholder to the address you set previously asalias
name whenconfiguring the virtual serverelement - add an additional
interface
element of which the attributename
isany
and has a nested
element - locate the
element and change it'sdefault-interface
attribute value to"any"
.
Configure the WSDL SOAP address
To configure thesoap:address
element which the RapidMiner Server WSDL lists you will need to update the
element in thestandalone/configuration/standalone.xml
with the address%%%%%SERVER_HOST%%%%%
you set duringthe JBoss interface configurationstep.
Bind RapidMiner Server to a specific address (Optional)
It is possible to bind the Rapidminer Server access to specific address. To do this you need first to configure avirtual serveraddress andassign it to an interface. Once you have completed these steps locate the
element in thestandalone/configuration/standalone.xml
文件和改变它default-interface
attribute value to"public"
.
Change the default http port (Optional)
The default port for the http requests directed to RapidMiner Server (currently 8080) can be changed via thestandalone/configuration/standalone.xml
. Locate the
and the nested
element of which the attributename
has"http"
value. Change theport
attribute accordingly.
JBoss virtual SMTP configuration (Optional)
To be able to send automated e-mails from RadpidMiner Server, the JBoss virtual SMTP configuration needs to be adjusted. This step is optional and can be skipped if you do not require the e-mail functionality of RapidMiner Server.
Locate themail-session
tag withinstandalone/configuration/standalone.xml
and change the following:
- update the
jndi-name
attribute to value"java:/Mail"
- add the
debug
attribute with value"false"
- add the
from
attribute with the value you want to appear as the sender of the e-mail, for example no-reply@www.turtlecreekpls.com - change the nested
smtp-server
element from empty element tag to an element with start and end tags. Within the element add alogin-name
element with the attributesname
andpassword
for the smtp server user that will be used to send the e-mail.
"%%%%%MAIL_SENDER%%%%%"
to the email address you want to appear as the sender of the e-mail, and placeholders%%%%%MAIL_USER%%%%%
,%%%%%MAIL_PASSWORD%%%%%
to the credentials of the user that will be used to send the e-mail by the smtp server.
"%%%%%MAIL_SENDER%%%%%"
to the email address you want to appear as the sender of the e-mail, and placeholders%%%%%MAIL_USER%%%%%
,%%%%%MAIL_PASSWORD%%%%%
to the credentials of the user that will be used to send the e-mail by the smtp server.
"%%%%%MAIL_SENDER%%%%%"
to the email address you want to appear as the sender of the e-mail, and placeholders%%%%%MAIL_USER%%%%%
,%%%%%MAIL_PASSWORD%%%%%
to the credentials of the user that will be used to send the e-mail by the smtp server.
"%%%%%MAIL_SENDER%%%%%"
to the email address you want to appear as the sender of the e-mail, and placeholders%%%%%MAIL_USER%%%%%
,%%%%%MAIL_PASSWORD%%%%%
to the credentials of the user that will be used to send the e-mail by the smtp server.
"%%%%%MAIL_SENDER%%%%%"
to the email address you want to appear as the sender of the e-mail, and placeholders%%%%%MAIL_USER%%%%%
,%%%%%MAIL_PASSWORD%%%%%
to the credentials of the user that will be used to send the e-mail by the smtp server.
"%%%%%MAIL_SENDER%%%%%"
to the email address you want to appear as the sender of the e-mail, and placeholders%%%%%MAIL_USER%%%%%
,%%%%%MAIL_PASSWORD%%%%%
to the credentials of the user that will be used to send the e-mail by the smtp server.
Deploying the application
Check theDownloading RapidMiner Serversection on how you can download the latest RapidMiner Server installer and follow the instructions as described in theInstalling the full server packagesection. After the installation is completed, copy the files from the recently installed RapidMiner Server instance to the JBoss GA version:
RM_HOME/configuration/execution.properties
JBOSS_HOME/standalone/deployments/rapidminer-server-*.ear
JBOSS_HOME/standalone/deployments/rapidminer-execution-jobservice-*.war
The next step is tostartup RapidMiner Server.
After the successful login you may be prompted to take a series ofconfiguration stepsand finally to add a RapidMiner Serverlicense. Copyyour RapidMiner Server license keyand click onSubmit. The installation is now completed and the RapidMiner Server home page should be displayed.