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 language none -- 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 language none -- 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.
- Make backup
Create tar/zip archive of artifact repository
folder and application install folder using tar/zip commands on Source. FlexDeploy. For example,
...
, 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
filefiles 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.