Upgrading EFM

To upgrade to the latest version of Edge Flow Manager (EFM), you must download the tar file, uncompress the tar file, configure properties, stop the old server, and start the new server.

  1. Download the tar file of the latest release.
  2. Unzip the tar file.
  3. Configure the following:
    1. Copy over any custom configuration property values from the previous install to the new install.
    2. In order to not lose any data, confirm that the database properties that start with efm.db.* match identically to the previous install so that the new version of the server connects to the old database. If you are using H2 database, do not forget to sync the content of the database folder between the old and the new installation.
    3. Set the efm.encryption.password property.
      This is a master password used for encrypting sensitive data saved to the EFM server. You can set it through the efm.properties file, a command line argument, or an OS environment variable.
      By default, the EFM application uses AES encryption. The encryption key used is deterministically derived from an encryption password that the admin user must provide to the application at runtime. The property that is read for the encryption password is efm.encryption.password. You can set the value for this property in following ways:
      • As a command line argument: ./bin/efm.sh --efm.encryption.password=myEfmPassword
      • As a Java System Property: -Defm.encryption.password=myEfmPassword
      • As an OS environment variable: export EFM_ENCRYPTION_PASSWORD=myEfmPassword
      • As a key/value pair in the efm.properties file: efm.encryption.password=myEfmPassword
      The derived encryption key length is determined by your Java Runtime Environment encryption strength profiles.
      • Unlimited Strength Encryption active: AES 256-bit key
      • Unlimited Strength Encryption inactive: AES 128-bit key

      It is strongly recommended to enable Unlimited Strength Encryption in your Java Runtime Environment.

  4. Optional. Configure EFM to run as a service using, for example, init.d or systemd depending on your Linux distribution.
  5. Stop the old server.
  6. Start the new server.
    • Use the following command to run as a background process:
      /path/to/efm-<version>/bin/efm.sh start
    • You can install EFM as an OS service and start it by using the OS service commands. For example, use the following command if EFM is installed as an OS service:
      service efm start