Install Akabot Center 5x and MySQL on Microsoft Windows
This guide provides instructions to installing a single instance of akaBot Center version: 5.x with MySQL as the database engine. The target Operating System (OS) in this guideline is Microsoft Windows.
1. Prerequisites
1.1. Hardware and OS Requirements
| Configuration | Requirements |
| Hardware | RAM: 32GB or higher Core: 8 CPU or higher SSD: 512 GB |
| Operating System | Windows 10, 11, Server 2012 R2/2016/2019 |
1.2. Software Packages
The installation must be performed using an account with Administrator (root) privileges on the target machine.
You need to prepare the installation package according to the following list.
Note:
- If the computer where you're installing Center does not have an internet connection, please download the installation package externally and copy it to the machine.
- To avoid errors during installation with command line execution, please use a dedicated folder for akaBot Center installation and name the installation package directory without any spaces. For example: C:\akaBot
| # | Name | File Name | Version | Description | Download Link |
| 1 | akaBot Center | akaBot-center- 5.x.x.x.war | Newest version | akaBot Center installation package | akaBot provides through email after the customer makes a purchase. |
| 2 | Java Developer Kit | openlogic-openjdk-17.0.16 | 17.0.16 | Open logic JDK 17.0.16 | Download |
| 3 | Apache tomcat | apache-tomcat-10.1.57.exe | 10.1.57 | Web server Apache Tomcat | Download |
| 4 | ActiveMQ | apache-activemq- 5.15.1-bin.zip | 5.15.1 | ActiveMQ for Queue functionality in akaBot Center | Download |
| 5 | MySQL | Windows (x86, 32-bit), MSI Installer | 8.0.45 | The database engine of akaBot Center | Read Section 3.1for more details |
1.3. Network & Firewall Requirements
Ensure the following ports are open in Windows Defender Firewall (for on-premises / physical servers) or configured in Cloud Security Groups / Network Security Groups (NSGs) (for AWS EC2, Azure VM, GCP):
| Port | Protocol | Direction | Service / Component | Description & Access Scope |
|---|---|---|---|---|
8080 (or 443) | TCP | Inbound | Apache Tomcat / akaBot Center | Web UI and REST API for Users and akaBot Agents. |
8161 | TCP | Inbound | ActiveMQ Web Console | Administration web console for queue monitoring (restrict to admin IP/VPN). |
61616 | TCP | Inbound | ActiveMQ Broker (OpenWire) | JMS messaging port used by Center and Agents for queue tasks. |
3306 | TCP | Inbound / Outbound | MySQL Server | Database communication port between akaBot Center and MySQL. |
Tip for Cloud & Remote Access:
When accessing akaBot Center or ActiveMQ remotely (outside the server itself), replacelocalhostwith the server's Private IP (within LAN/VPC) or Public IP / Domain Name (e.g.,http://<SERVER_IP>:8080/). Ensure your cloud security group allows inbound traffic on that port from your client IP.
2. Java JDK 17 Installation
Run the installer -openlogic-openjdk-17.0.16 you have downloaded. After that, click "Next" to proceed.




- After Installation is complete, you will see the Complete Notification below. Simply click Finish. You have successfully installed JDK.

Note on JAVA_HOME Environment Variable:
- Verify
JAVA_HOMEby running the following command in Command Prompt:The output should point to your JDK 17 installation directory (e.g.,echo %JAVA_HOME%C:\Program Files\OpenLogic\jdk-17.0.16.8-hotspot). - If
JAVA_HOMEis not set or empty, configure it manually:- Open Windows Search, type
env, and select Edit the system environment variables. - Click Environment Variables....
- Under System variables, click New..., set Variable name to
JAVA_HOMEand Variable value to your JDK installation path (e.g.,C:\Program Files\OpenLogic\jdk-17.0.16.8-hotspot). - Find the
Pathvariable under System variables, select it, click Edit..., click New, and add%JAVA_HOME%\bin. - Click OK to save and apply changes, then open a new Command Prompt to verify with
echo %JAVA_HOME%andjava -version.
- Open Windows Search, type
3. MySQL installation
Note for Existing Database:
If you already have an existing database, you can skip Section 3 and proceed directly to Section 4. Simply ensure an empty database (e.g.,aka_orchestrator) is created and ready for connection in Section 6.2.2.
3.1. Install MySQL
Step 1: Kindly download MySQL 8.0

Step 2: Run the installer
- Select "Custom" option and click "Next"

- To run akaBot Center, you will need MySQL Server and MySQL Workbench.
- Under:
+MySQL Servers > MySQL Server, choose the newest for MySQL Server.
+Application > MySQL Workbench, choose the newest version for MySQL Workbench

- Click button "Next"

- After that, kindly click "Execute" and hit "Next"

- After products are successfully installed, click "Next" to continue process

- On the Accounts and Roles page, set a strong root password (e.g., replace
<YOUR_PASSWORD>with your own secret) and remember it — you will need it in later steps. Click "Next"

- Click "Execute" and wait till everything is finished. Click Finish.

- If you see this screen, we have successfully finished the installation. Click Finish.

3.2. Setup MySQL account to enable remote connection
Follow these steps to know how to setup remote connection with MySQL. This will help to install MySQL and akaBot Center in separated systems.
Test your MySQL from remote client using MySQL Workbench
- Open MySQL Workbench in other computer, click to the add connection button (see picture bellowed) to open Setup New Connection window.

- Input IP address of MySQL that you want to test, explorer in "HostName"
- Input your SQLUsername: root
- Click to Test Connection button

- After dialog "Connect to MySQL Server" appears, you enter password (you created in 3.1 >Step 2) for this account then hit "Ok" to test this connection

- You will see this dialog if everything is configured successfully.
- After connecting successful, you can browse remote database in detail using MySQL Workbench
3.3. Create MySQL Database for Center
- For the new/first-time installation, you must create a new database for your Center.
- Follow these steps to create a database with the name aka_orchestrator in a machine that is designed to install MySQL Database for Center.
Step 1: Open MySQL Workbench in the machine you want to create a MySQL Database

- Open MySQL Workbench, access local instance

Step 2: Click to (1) to open Create new database dialog

(2) input schema name=aka_orchestrator
(3) input the database name of Center
(4) input Charset =utf8 ,utf8_general_ci.
(5) Hit Apply after you finish all (1) (2) (3) (4).

Step 3: Hit Apply to create our LMS Database

Hit Finish

4. Apache Tomcat installation
4.1. Install Apache Tomcat
Apache Tomcat installation:
- Uncheck "Run Apache Tomcat"
- Uncheck "Show Readme"
- Click the "Finish" button to complete the installation.





The installation path for Apache Tomcat: %TOMCAT_PATH% = C:\Program Files\Apache Software Foundation\Tomcat 10.1
4.2. Apache Tomcat Configuration
4.2.1. Configure log settings
Step 1: Open the file %TOMCAT_PATH%\conf\logging.properties
Step 2: Add attribute maxDays to specify the maximum number of days that rotated access logs will be retained for before being deleted for the catalina, localhost, host-manager, manager logs. If not specified, the default value of-1will be used which means never delete old files.
- Example: keep 90 daysworth of history. Change the number at the end of the following rows:
catalina.org.apache.juli.AsyncFileHandler.maxDays= 90localhost.org.apache.juli.AsyncFileHandler.maxDays= 90manager.org.apache.juli.AsyncFileHandler.maxDays= 90host-manager.org.apache.juli.AsyncFileHandler.maxDays= 90

Step 3: Save changes and close the file.
Step 4: Open the file %TOMCAT_PATH%\conf\server.xml
Step 5: Un-Comment the line of log setting to turn on the log and add attribute maxDays as below:

Note: Only by opening in Notepad, can you edit the .xml file
These following steps illustrate how you can open in Notepad:
-
Click Run as administrator
-
Navigate to File\Open
-
Locate to your file in the list, remember select "All files" option



Step 6: Save changes and close the file
4.2.2. Other settings
Step 1: Navigate to the path %TOMCAT_PATH%\bin and double-click the file Tomcat10w.exe to open the Apache Tomcat Service configuration.

Step 2: On the General tab
- Select Startup type: Automatic
- Choose Apply to apply the configuration changes.

Step 3: On the Logging tab
(1) Log prefix: Remove "commons-daemon"
(2) Redirect Stdout: Remove "auto"
(3) Redirect Stderror: Remove "auto"
(4) Choose Apply to apply the configuration changes.

Step 4: On the Java tab
a. Adjust the Java Heap configuration:
-
Initial memory pool: Enter a value approx. 1/4 of the server's RAM (minimum 2048 MB).
- Example (Server RAM = 32 GB): Set Initial memory pool to 4096 MB (or 8192 MB).
- Example (Server RAM = 16 GB): Set Initial memory pool to 2048 MB (or 4096 MB).
-
Maximum memory pool: Enter a value approx. 1/2 of the server's RAM.
- Example (Server RAM = 32 GB): Set Maximum memory pool to 16384 MB (16 GB).
- Example (Server RAM = 16 GB): Set Maximum memory pool to 8192 MB (8 GB).
Note: Do not set Maximum memory pool larger than 1/2 of the server's RAM, as the operating system, ActiveMQ, and database engine require sufficient RAM to operate without OutOfMemory (OOM) failures.
b. Choose Apply to apply the configuration changes.

Step 5: Start the Tomcat Service
On the General tab, select Start to initiate the Apache Tomcat service.

4.3. Check Apache Tomcat Installation
Step 1: After installation and configuration, go to the Services screen and check the status of the Apache Tomcat service.
- If the Status is not Running, start the Apache Tomcat service.
- If the Status is Running, proceed to step 2.

Step 2: Access the URL http://localhost:8080 in Chrome to verify the successful installation of Apache Tomcat:

5. ActiveMQ Installation
5.1. Install ActiveMQ
Step 1: Extract the file "apache-activemq-5.15.1-bin.zip" to the desired installation path.
For example: ACTIVEMQ_PATH = C:\akaBot\apache-activemq-5.15.1
Note: The installation path should not contain any spaces.

Step 2: Open Command Prompt with Administrator privileges.

Step 3: Run the file %ACTIVEMQ_PATH%\bin\win64\InstallService.bat to install the ActiveMQ service.
Run command:C:\Windows\System32>C:\akaBot\apache-activemq-5.15.1\bin\win64\InstallService.bat
Step 4: Start the ActiveMQ service.

5.2. ActiveMQ Configuration
Step 1: Stop service ActiveMQ (if running).
Step 2: Open the file %ACTIVEMQ_PATH%\bin\win64\wrapper.conf and configure the parameters:
-
wrapper.java.command: Ensure ActiveMQ uses your installed JDK 17 explicitly to avoid startup failures on Windows:
wrapper.java.command=%JAVA_HOME%/bin/java.exe -
wrapper.java.initmemory: Enter the initial value for Java Heap memory in MB (e.g.,
1024for a 32 GB RAM server). -
wrapper.java.maxmemory: Enter the maximum value for Java Heap memory in MB (e.g.,
4096for a 32 GB RAM server).

Step 3 (Security Best Practice): Change the default Web Console credentials:
- Open %ACTIVEMQ_PATH%\conf\jetty-realm.properties in a text editor.
- Locate the line:
admin: admin, admin - Replace the default password
adminwith your secure password:admin: <YOUR_SECURE_PASSWORD>, admin - Save and close the file.
Step 4: Start ActiveMQ Service.

5.3. Check ActiveMQ Installation
Step 1: Check the Running status of the ActiveMQ service. If it is not running, start the service.

Step 2: Access the URL http://localhost:8161 to verify the successful installation of ActiveMQ.

6. akaBot Center Installation
Tip (for Virtual Machines / Cloud Environments):
If you are deploying on a Virtual Machine (e.g., VMware, Hyper-V) or Cloud instance (e.g., AWS EC2, Azure VM), it is strongly recommended to take a VM Checkpoint / Snapshot at this stage (after successfully installing and verifying JDK, Database, Tomcat, and ActiveMQ).
This allows you to quickly roll back to a clean, working foundation if any configuration issues arise during the akaBot Center setup without needing to reinstall prerequisite services.
Download akaBot-center- 5.x.x.x.war.
6.1. Copy and extract war file
Step 1: Stop Apache Tomcat service

Step 2: Delete all folders in %TOMCAT_PATH%/webapps.

Step 3: Copy the file akaBot-center-x.x.x.x.war to the %TOMCAT_PATH%/webapps/ directory and rename it to ROOT.war.

Step 4: Restart the Apache Tomcat service and wait for the ROOT.war to be extracted into the ROOT directory.

Step 5: Stop the Apache Tomcat service.
6.2. akaBot Center configuration
6.2.1. Config quartz.properties
Step 1: Stop the Apache Tomcat service (if the Apache Tomcat service is currently running).
Step 2: Modify the configuration in the file %TOMCAT_PATH%/webapps/ROOT/WEB-INF/classes/quartz.properties as follows:
1. Comment out the jobstore configuration for MSSQL.

2. Remove the "#" character at the beginning of the line for the jobstore configuration for MySQL to uncomment it.

6.2.2. Configure the MySQL Database Connection
Step 1: Navigate to the path %TOMCAT_PATH%/webapps/ROOT/WEB-INF/classes/config/
Step 2: Modify the configuration in both files: application-dev.yml and application-prod.yml
Remove the # characters at the beginning of the lines to uncomment the configuration and enable MySQL usage. Add the "#" characters at the beginning of the lines to comment out the configuration and disable MSSQL.
- application-dev.yml


- application-prod.yml


Save files after configuring.
6.2.3. Log setting
-
Open the file %TOMCAT_PATH%/webapps/ROOT/WEB-INF/classes/logback-spring.xml
-
Change the log level to ERROR
-
Change the setting in rolling log file as below:
- maxFileSize: Limit the size of each file. Ex: 200MB.
- maxHistory: The optional maxHistory property controls the maximum number of archive files to keep. Ex: 20
- totalSizeCap: The optional totalSizeCap property controls the total size of all archive files. Ex: 20GB

-
Save changes and close file
-
Start the Apache Tomcat service and access http://localhost:8080/ to verify the installation of akaBot Center.

- Log in using the following credentials:
- username: admin
- password: admin
- You will be redirected to the dashboard as shown below.

7. Troubleshooting
7.1. ActiveMQ
7.1.1. Unable to execute Java command
- Open the file %ACTIVEMQ_PATH%\bin\win64\wrapper.conf and configure the parameter:
wrapper.java.command=%JAVA_HOME%/bin/java.exe
![]()
7.1.2. Other Errors
Please check the error details in the log file of ActiveMQ: %ACTIVEMQ_PATH%\logs\data\wrapper.log
8. Backup and Disaster Recovery
To ensure business continuity, minimize downtime, and meet compliance requirements, a robust backup and disaster recovery strategy must cover what to back up, frequency and retention, and how to restore.
8.1. Strategy Selection by Infrastructure Capability
Choose your backup method based on your infrastructure capabilities rather than physical location:
- Method A: Snapshot-based Backup (Recommended for Snapshot-capable Infrastructure):
Applies to environments with a snapshot/checkpoint layer — including Cloud platforms (AWS EC2, Azure VM, GCP) and on-premises virtualization platforms (VMware vSphere, Hyper-V, Nutanix). - Method B: File & Database-level Backup (For Physical / Non-snapshot Environments):
Applies to bare-metal physical servers or environments requiring granular off-site archiving and secondary storage copies.
8.2. Method A: Snapshot-based Backup (Cloud / Virtual Machines)
If your infrastructure supports disk snapshots or machine images:
- Center & ActiveMQ Server (VM / EC2 Instance):
- Take regular snapshots or AMIs covering all attached storage volumes.
-
Important (ActiveMQ Data Persistence): Ensure the volume housing the ActiveMQ data directory (
%ACTIVEMQ_PATH%\data) is included in the snapshot scope. If ActiveMQ data resides on a separate volume and is omitted from the snapshot, in-flight message queue states will be lost upon recovery.
- Database (Cloud Managed / Virtualized Database):
- For managed databases, enable Automated Daily Backups with Point-In-Time Recovery (PITR) (recommended retention: 7 to 35 days).
- For self-hosted MySQL on VMs, schedule daily VM/volume-level snapshots in addition to native MySQL binary log backups.
- Always trigger a manual snapshot prior to any version upgrade or database migration.
- Shared File Storage:
- If using shared network storage (e.g., AWS EFS, Amazon FSx, NFS/SMB NAS) for
.nupkgpackages across multiple nodes, configure automated daily snapshot or backup policies (e.g., via AWS Backup).
- If using shared network storage (e.g., AWS EFS, Amazon FSx, NFS/SMB NAS) for
8.3. Method B: File & Database-level Backup Checklist
For bare-metal physical servers or secondary off-site backup archiving, follow this backup schedule:
| No | Component | Path / Location | Recommended Frequency | Retention Policy | Description |
|---|---|---|---|---|---|
| 1 | akaBot Center | MySQL Database (aka_orchestrator by default) | Daily full dump + Hourly binary log | 30–90 days | Database (MySQL) of akaBot Center. Export .sql dump. |
%TOMCAT_PATH%\filestorage | Daily incremental sync | 30 days | Folder containing .nupkg files from akaBot Studio published to akaBot Center. Use incremental/differential sync. | ||
%TOMCAT_PATH%\webapps\ROOT\WEB-INF\classes\config\application.yml | On change / Weekly | Indefinite | Base configuration file for akaBot Center. | ||
%TOMCAT_PATH%\webapps\ROOT\WEB-INF\classes\config\application-dev.yml | On change / Weekly | Indefinite | Development configuration file for akaBot Center. | ||
%TOMCAT_PATH%\webapps\ROOT\WEB-INF\classes\config\application-prod.yml | On change / Weekly | Indefinite | Production configuration file for akaBot Center (overrides application.yml in prod profile). | ||
%TOMCAT_PATH%\webapps\ROOT\WEB-INF\classes\config\quartz.properties | On change / Weekly | Indefinite | Quartz job scheduler database connection and thread configuration. | ||
%TOMCAT_PATH%\webapps\ROOT\WEB-INF\classes\license\license.lic | On initial & renewal | Indefinite | License activation file for akaBot Center. | ||
| 2 | ActiveMQ | %ACTIVEMQ_PATH%\data | Daily | 7–14 days | ActiveMQ message queue persistence directory. |
Application Configuration Files & Spring Profile Precedence:
Located in %TOMCAT_PATH%\webapps\ROOT\WEB-INF\classes\config\:
application.yml: Base configuration containing common framework defaults.application-prod.yml: Primary source of truth for Production. When Center runs with the production profile (-Dspring.profiles.active=prod), settings in this file override the baseapplication.yml.application-dev.yml: Used strictly for development/debugging environments.quartz.properties: Job scheduler database and thread pool settings.
9. Activate Licenses
Please follow the instruction via Activation