Versions Compared

Key

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

This process is useful in many situations, for example, Initial proof of concept is completed and production installation needs to be done on different Server and Database.

These steps are provided as guidelines and extreme care must be taken during such migrations. This process is setup set up for Tomcat but variation variations of this process can be applied to WebLogic as well.

Warning

Make sure the source environment is Stopped before proceeding so that we have an accurate copy.

Export-Import Database

  • Export data from source FlexDeploy database.

  • Import data into target FlexDeploy database.

Export Metrics Data

  • Startup InfluxDB so that the time series data can be exported from the source database.

    Code Block
    languagenone
    -- Start up InfluxDB.You can determine working folder by looking at flexagon.fd.application.root system property
    cd /flexdeploy/apache-tomcat-flexdeploy/bin
    ./influxd-start.sh
  • Take a backup of the data present in the source Influx database.

    Code Block
    languagenone
    -- Create a backup of all the data and resources in the source InfluxDB
    cd /flexdeploy/influxdb
    mkdir backup
    ./influx backup ./backup/
    tar -czvf /app/backup/flexdeploy_influx_data.tar.gz ./backup/*
    rm -rf ./backup
  • Copy tar files to the target FlexDeploy server and extract it in the same location as the source.

    Code Block
    cd /flexdeploy/influxdb
    mkdir restore
    tar -xzvf /app/backup/flexdeploy_influx_data.tar.gz -C ./restore
  • Stop the Influx database running on the source server.

    Code Block
    -- Stop InfluxDB. You can determine working folder by looking at flexagon.fd.application.root system property
    cd /flexdeploy/apache-tomcat-flexdeploy/bin
    ./influxd-stop.sh

Copy Artifact Repository, Plugins Folder, Application Binaries

Goal is to just copy the installation and artifact repository to target server. If artifacts and install is done under one common folder, then you can just create one tar for entire set of folders.

  • Create tar/zip archive of artifact repository, application binaries, plugins folder etc. on Source server. If you have all folders under one root folder which can be copied then archive entire folder that contains artifact repository, application binaries, plugins folder.

    Code Block
    -- tar/zip artifacts files, You can determine artifacts repository folder by looking at flexagon.fd.repository.root system property on server command line
    cd /flexdeploy/artifacts
    tar -czvf /app/backup/flexdeploy_artifacts.tar.gz *
    -- tar/zip plugins folder, You can determine working folder by looking at flexagon.fd.application.root system property on server command line
    cd /flexdeploy/application/plugins
    tar -czvf /app/backup/flexdeploy_plugins.tar.gz *
    -- tar/zip influxdb folder, You can determine working folder by looking at flexagon.fd.application.root system property on server command line
    cd /flexdeploy/influxdb
    tar -czvf /app/backup/flexdeploy_influx.tar.gz *
  • Copy tar files to target FlexDeploy server and extract it in same location as source. If location is different, some files may need adjustment. (For example, setenv.sh, config.yaml)

    Code Block
    -- extract artifacts files, You can determine artifacts repository folder by looking at flexagon.fd.repository.root system property on server command line
    cd /flexdeploy/artifacts
    rm -rf *
    tar -xzvf /app/backup/flexdeploy_artifacts_prod.tar.gz
    -- extract plugins folder, You can determine working folder by looking at flexagon.fd.application.root system property on server command line
    cd /flexdeploy/application/plugins
    rm -rf *
    tar -xzvf /app/backup/flexdeploy_plugins.tar.gz
    -- extract plugins folder, You can determine working folder by looking at flexagon.fd.application.root system property on server command line
    cd /flexdeploy/influxdb
    rm -rf *
    tar -xzvf /app/backup/flexdeploy_influx.tar.gz

Import Metrics Data

  • Start up the Influx database so that the time series data can be imported into the target.

  • Initialize InfluxDB with org on the target server.

    Code Block
    -- Initialize InfluxDB org. You can determine working folder by looking at flexagon.fd.application.root system property on server command line
    cd /flexdeploy/influxdb
    -- Modify the values in the command below to what you used in the installer config in the source server
    ./influx setup --bucket flexbucket --token <token> --org flexdeploy --username=flexuser --password=<password> --host=http://localhost:8086 --force
  • Import data backed up from the source to the target Influx database.

    Code Block
    -- Import all the data from the source InfluxDB. You can determine working folder by looking at flexagon.fd.application.root system property on server command line
    cd /flexdeploy/influxdb
    ./influx restore --full ./restore/
    rm -rf ./restore
  • Stop the Influx database running on the target server.

  • Verify that the config.yaml in /flexdeploy/influxdb/config directory reference to a valid path for the bolt-path, engine-path and the sqlite-path attributes

Final configuration and start server

Warning

Do not start yet as copied installation is still pointing to source database.

  • Update context.xml with target database URL and password for fd_admin user.

  • Now start target FlexDeploy and validate it.

  • Update System Settings as appropriate.

    • Change FD_SERVER_BASE_URL.

    • Change SMTP_FROM_ADDRESS. This will make sure that emails are coming from different

  • address
    • addresses for Test FlexDeploy.