Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page provides instructions for upgrading a FlexDeploy installation from version 5.3.0.5 or lower to 5.4. This instructions will upgrade Tomcat from version 8.5.11 to 9.0.34.

Make sure you have downloaded new version of FlexDeploy and unzipped it, so it can be accessed during upgrade process.

Upgrade Instructions

Step 1. Stop the Tomcat server. Use shutdown.sh on Linux and shutdown.bat on Windows.

...

Step 3. Upgrade the FlexDeploy schemas

Include Page
FlexDeploy Schema Upgrade
FlexDeploy Schema Upgrade

...

Step 4. Take a backup of the and delete entire apache-tomcat-flexdeploy folder (this will be replaced by new copy). It will be required since the old configuration files will need to be referenced. See example below for Linux.

Code Block
languagebash
themeRDark

...

# Assuming FLEXDEPLOY_HOME environment variable is set, it should be parent folder of apache-tomcat-flexdeploy
cd $FLEXDEPLOY_HOME
mv apache-tomcat-flexdeploy/ apache-tomcat-flexdeploy-53/

...

Step 5. Copy apache-tomcat-flexdeploy folder from distribution zip.

If you had placed additional libraries in apache-tomcat-flexdeploy folder and copy over the new one from the distribution zip.Step 6. Next copy over context.xml from the old install and overwrite the new one. This is located in <FlexDeploy Home>/lib folder, then you will need to copy them from backup folder. Examples might be JDBC driver (for Oracle drivers there is additional detail in step 6), CyberArk libraries for Tomcat connection pool provider etc. 

Code Block
languagebash
themeRDark
titleLinux Example
cd $FLEXDEPLOY_HOME
mkdir apache-tomcat-flexdeploy
# assuming download zip has been unzipped in UNZIPPED_FLEXDEPLOY folder. 
cd $UNZIPPED_FLEXDEPLOY/apache-tomcat-flexdeploy
cp -R * $FLEXDEPLOY_HOME/apache-tomcat-flexdeploy/
cd $FLEXDEPLOY_HOME/apache-tomcat-flexdeploy/
chmod +x ./bin/*.sh

...

Step 6. Copy the context.xml file from the backup folder (step 4) into <FlexDeploy Home>/apache-tomcat-flexdeploy/conf

Code Block
languagebash
themeRDark
titleLinux Example
cd $FLEXDEPLOY_HOME/apache-tomcat-flexdeploy-53/conf/
cp context.xml ../../apache-tomcat-flexdeploy/conf/

Step 7. Now edit the new If using Oracle database, it is recommended to use UCP connection pool (see details below), otherwise go to Step 7.

  • Download the Oracle JDBC 8 driver from https://www.oracle.com/database/technologies/appdev/jdbc-ucp-19c-downloads.html. For example, ojdbc8-full.tar.gz.
  • Remove ojdbc jar files like ojdbc*.jar or ojdbc*dms.jar from <FlexDeploy Home>/apache-tomcat-flexdeploy/lib.
  • Copy ojdbc8.jar, ons.jar anducp.jar from downloaded jdbc driver to <FlexDeploy Home>/apache-tomcat-flexdeploy/lib.
  • Update <FlexDeploy Home>/apache-tomcat-flexdeploy/conf/context.xml as shown below.
Code Block
languagexml
themeRDark
titleOracle
<Resource name="jdbc/flexdbDS" auth="Container"
    type="oracle.ucp.jdbc.PoolDataSource"
    factory="oracle.ucp.jdbc.PoolDataSourceImpl"

    connectionFactoryClassName="oracle.jdbc.pool.OracleDataSource"
    minPoolSize="0"
    maxPoolSize="100"
    initialPoolSize="0"
    autoCommit="false"
    inactiveConnectionTimeout="300"

    url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=**HOSTNAME**)(PORT=**PORT**)))(CONNECT_DATA=(SERVICE_NAME=**SERVICE_NAME**)))"
    user="fd_admin"
    password="**FD_ADMIN_PASSWORD**"

    fastConnectionFailoverEnabled="true"

    validationQuery="select 1 from dual"
    testOnBorrow="true"

    useLocalSessionState="true"
    defaultAutoCommit="false"/>
  • URL must be in the format listed in the example, the JDBC short format of host:sid:port should not be used.
  • If RAC is used for the database, multiple nodes can be listed in the address list of the URL or it can point to the scan listener for the cluster.
  • Sample URL for a RAC implementation that has a primary and secondary scan listener connecting to to a service name GOLD-CLOUD. This includes connection timeout, retry, and retry delay settings.
Code Block
themeRDark
titleSample RAC URL
url="jdbc:oracle:thin:@(DESCRIPTION = CONNECT_TIMEOUT=120) (RETRY_COUNT=20) (RETRY_DELAY=3) (TRANSPORT_CONNECT_TIMEOUT=3) (ADDRESS_LIST =(LOAD_BALANCE=on) (ADDRESS = (PROTOCOL = TCP) (HOST=primary-scan) (PORT=1521))) (ADDRESS_LIST =(LOAD_BALANCE=on) (ADDRESS = (PROTOCOL = TCP) (HOST=secondary-scan) (PORT=1521))) (CONNECT_DATA=(SERVICE_NAME = gold-cloud)))"

...

Step 7. Edit the server.xml and modify the HTTP/HTTPS ports to match that of the original file which was backed up in Step step 4. This file is located in the<FlexDeploy Home>/apache-tomcat-flexdeploy/conf folder.  DO NOT simply copy over the backup file as there are other changes which must be preserved.

...

Step 8. SetEnvCopy setenv.sh (on Linux) or SetEnv.bat (on Windows) will also need to be modified. Only the one for your operating system needs to be edited. These are located in  and setenv.bat from the backup folder (step 4) into<FlexDeploy Home>/apache-tomcat-flexdeploy/bin.In Particular pay attention to the top few lines, if it is pointing directly to the JDK somewhere that will need to be changed. Also the install root, and repository root are important to pay attention to, as these are commonly changed options. If any other options are configured those will also need to be configured in the new file. Essentially any modifications that were made to the original file need to be made to the new one also.

Code Block
languagebash
themeRDark
titleLinux Example
cd $FLEXDEPLOY_HOME/apache-tomcat-flexdeploy/bin
cp ../../apache-tomcat-flexdeploy-53/bin/setenv* .
chmod 775 setenv*

...

Step 9. Copy plugins from download zip for auto upload.

...