Install Akabot Center 5X and MSSQL on Microsoft Windows
This guide provides instructions to installing a single instance of akaBot Center version: 5.x with MSSQLas 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-*.exe | 10.1.54 | 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 | MS SQL Server | SQL2025-SSEI-Eval | 2025 | The database engine of akaBot Center | Read Section 3.1 for 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. |
1433 | TCP | Inbound / Outbound | MSSQL Server | Database communication port between akaBot Center and MSSQL. |
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. MSSQL 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 MSSQL
Download link: MSSQL 2025
3.2. Setup MSSQL
Step 1: Install
- Open setup file from your computer
- Select "Download media" option

- Click "Download"
Step 2: Open file
- Right-click to open the downloaded file in Windows Explorer.

- After that, a new DVD drive named SQLServer2025 (D:) will appear. Click it to open.

Step 3: Set up
- Open setup file from the computer

- Click Installation -1 and click New SQL Server standalone installation or add features to an existing installation -2

- Follow these steps below:




- Uncheck "Azure Extension for SQL Server" before clicking "Next"

- Tick box "Database Engine Services" then click button "Next"

- Wait for operation completing then click button "Back"

- Continue to click "Next"

- Tick Mixed Mode - 1, Enter password (example: sis@12345) - 2, Add Current User - 3 and click Next - 4


- Here is the successful screen. Click "Close"

3.3. Enable Remote Connection
Step 1: Open SQL Server Management Studio and connect to server.

(1) Open "Home" to copy this field and paste as server name

(2) Input password that you created in 3.2 > Step 3
(3) Tick "Trust Server certificate"
(4) Click "Connect"
Step 2: Open Properties SQLServer.

- Select Security and tick SQL Server and Windows Authentication mode.

Step 3: Open SQL Server Configuration Manager.
- Selected Protocols for MSSQLSERVER -> Enabled Named Pipes and TCP/IP

Step 4: Click "Restart" MSSQL Server Service.

3.4. Create new Database empty
Step 1:Open SQL Server Management Studio
Step 2: Right Click Databases -1 & click New Database-2

Step 3: Enter Database Name -1, click OK -2
- Ex: database name aka_orchestrator

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:

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 MySQL.

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

6.2.2. Configure the MSSQL 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
Removethe # characters at the beginning of the lines to uncomment the configuration and enable MSSQL usage. Add the "#" characters at the beginning of the lines to comment out the configuration and disable MySQL.
Input your username and password that you created in 3.2>Step 3.
- 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 MSSQL on VMs, schedule daily VM/volume-level snapshots in addition to native SQL transaction 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 | MSSQL Database (aka_orchestrator by default) | Daily full + Hourly log | 30–90 days | Database (MSSQL) of akaBot Center. Export .bak file. |
%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