(Click to open topic with navigation)
This topic provides instructions to upgrade Moab Web Services to the latest release version.
These instructions assume you are upgrading MWS from version 8.0 or later. If you are upgrading MWS from a version prior to 8.0, contact your Adaptive Computing account manger for more information.
You must deploy Moab Web Services on the same host as Moab Server (Moab Server Host). For documentation clarity, these instructions refer to the host for Moab Server and MWS Server as the MWS Server Host.
This section provides instructions for tasks that need to be performed before you upgrade Moab Web Services.
In this section:
Tomcat 7, 8 is required to run MWS 9.0 and later.
Oracle Java 8 Runtime Environment is the recommended Java environment, but Oracle Java 7 is also supported. All other versions of Java, including OpenJDK/IcedTea, GNU Compiler for Java, and so on cannot run MWS.
If you wish to upgrade to Java 8, refer to the 2.5.2.A Install Java instructions.
2.22.1.C Upgrade to MongoDB 3.2.x
Beginning with version 9.1.0, Moab Web Services requires MongoDB 3.2.x.
On the MWS MongoDB host, do the following:
[root]# rpm -qa | grep mongo
2.22.2 Back up the MongoDB Databases
This procedure is only applicable if you did not have to upgrade the MongoDB databases earlier in this topic. See 2.22.1.C Upgrade to MongoDB 3.2.x for more information.
On the MWS MongoDB server host, do the following:
[root]# cd /root [root]# mongodump -u admin_user -p secret1
2.22.3 Upgrade Moab Web Services
You must complete the tasks in 2.22.1 Before You Upgrade before upgrading MWS.
On the MWS Server Host, do the following:
[root]# mkdir /tmp/mws-install [root]# cd /tmp/mws-install
[root]# tar xvzf mws-9.1.1.1.tar.gz [root]# cd mws-9.1.1.1
[root]# systemctl stop tomcat.service [root]# rm -rf /usr/share/tomcat/webapps/mws /usr/share/tomcat/webapps/mws.war [root]# cp mws.war /usr/share/tomcat/webapps/ [root]# chown -R tomcat:tomcat /usr/share/tomcat/webapps/mws.war
[root]# cp -r /opt/mws /opt/mws-<version>-backup
[root]# mkdir -p \
/opt/mws/etc/mws.d \
/opt/mws/hooks \
/opt/mws/log \
/opt/mws/plugins \
/opt/mws/spool/hooks \
/opt/mws/utils
[root]# chown -R tomcat:tomcat /opt/mws
[root]# chmod -R 555 /opt/mws
[root]# chmod u+w \
/opt/mws/log \
/opt/mws/plugins \
/opt/mws/spool \
/opt/mws/spool/hooks \
/opt/mws/utils
Where <version> if the product version being backed up.
[root]# cd utils [root]# cp * /opt/mws/utils [root]# chown tomcat:tomcat /opt/mws/utils/*
Depending on your current MWS version, do the following as needed:
Version 9.1 removed the Insight PostreSQL database.
insight.server is the DNS name of the host on which the Insight Server is running.
// Any settings in this file may be overridden by any // file in the mws.d directory. // Change these to be whatever you like. auth.defaultUser.username = "moab-admin" auth.defaultUser.password = "changeme!" // Moab Workload Manager configuration. moab.secretKey = "<ENTER-KEY-HERE>" moab.server = "localhost" moab.port = 42559 moab.messageDigestAlgorithm = "SHA-1" // MongoDB configuration. // grails.mongo.username = "mws_user" // grails.mongo.password = "<ENTER-KEY-HERE>" // Insight configuration. // insight.server = "localhost" // insight.command.port = 5568 // insight.command.timeout.seconds = 5 // Message bus configuration. moab.messageQueue.port = 5570 // moab.messageQueue.secretKey = "<ENTER-KEY-HERE>" mws.messageQueue.address = "*" mws.messageQueue.port = 5564 // Sample OAuth Configuration grails.plugin.springsecurity.oauthProvider.clients = [ [ clientId : "viewpoint", clientSecret : "<ENTER-CLIENTSECRET-HERE>", authorizedGrantTypes: ["password"] ] ] // Sample LDAP Configurations // Sample OpenLDAP Configuration //ldap.server = "192.168.0.5" //ldap.port = 389 //ldap.baseDNs = ["dc=acme,dc=com"] //ldap.bindUser = "cn=Manager,dc=acme,dc=com" //ldap.password = "*****" //ldap.directory.type = "OpenLDAP Using InetOrgPerson Schema" // Sample Active Directory Configuration //ldap.server = "192.168.0.5" //ldap.port = 389 //ldap.baseDNs = ["CN=Users,DC=acme,DC=com","OU=Europe,DC=acme,DC=com"] //ldap.bindUser = "cn=Administrator,cn=Users,DC=acme,DC=com" //ldap.password = "*****" //ldap.directory.type = "Microsoft Active Directory" log4j = { // Configure an appender for the events log. def eventAppender = new org.apache.log4j.rolling.RollingFileAppender( name: 'events', layout: pattern(conversionPattern: "%m%n")) def rollingPolicy = new org.apache.log4j.rolling.TimeBasedRollingPolicy( fileNamePattern: '/opt/mws/log/events.%d{yyyy-MM-dd}', activeFileName: '/opt/mws/log/events.log') rollingPolicy.activateOptions() eventAppender.setRollingPolicy(rollingPolicy) // Configure an appender for the audit log. def auditAppender = new org.apache.log4j.rolling.RollingFileAppender( name: 'audit', layout: new com.ace.mws.logging.ACPatternLayout("%j\t\t\t%c{1}\t\t\t%m%n")) def auditRollingPolicy = new org.apache.log4j.rolling.TimeBasedRollingPolicy( fileNamePattern: '/opt/mws/log/audit.%d{yyyy-MM-dd}', activeFileName: '/opt/mws/log/audit.log') auditRollingPolicy.activateOptions() auditAppender.setRollingPolicy(auditRollingPolicy) appenders { rollingFile name: 'stacktrace', file: '/opt/mws/log/stacktrace.log', maxFileSize: '100MB' rollingFile name: 'rootLog', file: '/opt/mws/log/mws.log', maxFileSize: '100MB', //The maximum file size for a single log file maxBackupIndex: 10, //Retain only the 10 most recent log files, delete older logs to save space layout: new com.ace.mws.logging.ACPatternLayout(), //Configures the output format of each log entry threshold: org.apache.log4j.Level.ERROR //Ignore any logging entries less verbose than this threshold appender eventAppender appender auditAppender } // NOTE: This definition is a catch-all for any logger not defined below root { error 'rootLog' } // Individual logger configurations debug 'com.ace.mws', 'grails.app.conf.BootStrap', 'grails.app.controllers.com.ace.mws', 'grails.app.domain.com.ace.mws', 'grails.app.filters.com.ace.mws', 'grails.app.services.com.ace.mws', 'grails.app.tagLib.com.ace.mws', 'grails.app.jobs.com.ace.mws', 'grails.app.gapiParsers', 'grails.app.gapiRequests', 'grails.app.gapiSerializers', 'grails.app.translators', 'plugins' // MWS plugins info 'com.ace.mws.gapi.Connection', 'com.ace.mws.gapi.parsers', 'grails.app.service.grails.plugins.reloadconfig', 'com.ace.mws.gapi.serializers' off 'org.codehaus.groovy.grails.web.errors' // Logs event information to the events log, not the rootLog trace additivity: false, events: 'com.ace.mws.events.EventFlatFileWriter' // Logs audit information to the audit log, not the rootLog trace additivity: false, audit: 'mws.audit' }
[root]# cd /opt/mws/plugins [root]# rm *.jar
CATALINA_OPTS="-DMWS_HOME=/opt/mws -Xms256m -Xmx3g -XX:MaxPermSize=384m -Dfile.encoding=UTF8" JAVA_HOME="/usr/java/latest"
MaxPermSize is ignored using Java 8; and therefore can be omitted.
You will need to start the "tomcat" service. Starting the "tomcat6" service will install the wrong version of Tomcat.
[root]# systemctl start tomcat.service
You will see some sample queries and a few other actions.
If you encounter problems, or if MWS does not seem to be running, see the steps in 5.3 Moab Web Services Issues.