Running ZFlow on AWS Elastic Beanstalk


Below are the prerequisites for running ZFlow on Elastic Beanstalk for Tomcat.

  • RDS MySQL (for MySQL Database)
  • EFS (Elastic File System for mounting a file system to Elastic Beanstalk instances)




Creating AWS Elastic Beanstalk Environment

From your AWS Console, type in Elastic Beanstalk in the search field and select Elastic Beanstalk from the search list.


This will take you to the Elastic Beanstalk console


Create a new Elastic Beanstalk Environment




Configure the Elastic Beanstalk Environment as shown below

  1. Select “Web server environment”
  2. Give a name for the Application
  3. Use the default environment name (or give a name)
  4. Give a domain name for the elastic beanstalk application (you can use the default)
  5. Provide a description


Configure the platform

  1. Select “Managed platform”
  2. Select “Tomcat” for the Platform
  3. Use Tomcat 8.5 with Corretto 11 on Amazon Linux 2 (or Tomcat 9 with Corretto 11 on Amazon Linux 2023)
  4. Select Sample Application
  5. Select “High Availability”


  1. Use the existing service and select the default
  2. For EC2 Key Pair, you have the option of leaving it blank or selecting a key pair that you can use (this will allow you to ssh into Elastic Beanstalk instances)
  3. Use the default for EC2 instance profile



Configure networking, database

You can leave this section empty (uses defaults if nothing is selected)



Configure instance traffic and scaling

You can use defaults in this section




Use 1 for min instances and 2 for max instances as a start









Configure updates, monitoring, and logging





Submit to launch the Elastic Beanstalk environment


It will take a few minutes for the environment to launch


You will see the note “Environment successfully launched” when the system is ready


You should see the following Sample App page when you select the Domain link of Elastic Beanstalk Environment.

Setting up Elastic File System (EFS)

Type in EFS in the Search Bar and create


Create a new File system











Establish network connectivity between EFS and Elastic Beanstalk Environment
























Create a database for ZFlow in MySQL RDS

You can skip this section if you are not responsible for Database setup. We recommend reviewing the following instructions from AWS for setting up an RDS MySQL and using it with the Elastic Beanstalk Environment


Configure Environment Parameters for Elastic Beanstalk



Enter the parameters and select Apply as shown below. Let the environment restart with the new parameters



Uploading ZFlow war file in Elastic Beanstalk

Once the environment parameters are configured, upload the







Configuring admin and DB parameters for ZFlow Install

After deployment, the following screen will come up. Enter appropriate details and submit to set the parameters. The installation script will run upon restarting the app server.

The configuration parameters below are based on the assumption that you have already created the database for ZFlow in the MySQL RDS server and appropriate authorization to the database is given to the database user (MySQL Database Username).

The database server JDBC connection string (MySQL Database Server Address) is along the lines shown below.



Restart the app servers from the Elastic Beanstalk console


After a successful restart, you should see the following screen. You can log in with the ZFlow admin email and password from the previous step.