Porta On Prem VM Overview
Architecture
Section titled “Architecture”Requirements
Section titled “Requirements”Porta On Prem Virtual Machine requires the following minimum system configuration:
- A copy of the latest Porta On Prem Virtual Machine release as a zip file.
- This zip contains the
setup_vm.ps1script and the.ovaVM image file. - The image is an
.ovafile, which is a virtual machine image that can be imported into VirtualBox. - The image is a pre-configured Ubuntu image with Docker and Porta Manager already installed.
- This zip contains the
- VirtualBox 7.1.8 installed.
- Latest copy of the Porta On Prem application as a zip file.
- Minimum of 3 physical machines if running database replication.
| Component | Specification |
|---|---|
| Windows 11 64-bit | |
| VirtualBox 7.1.8 | |
| Intel i7 4th Generation (required: CPU with AVX2 support) | |
| 8GB RAM | |
| 100+GB free disk space |
Docker
Section titled “Docker”porta Container
Section titled “porta Container”- Role: Porta UI & API
- Published Ports:
- 8080 for UI
- 8000 for API
porta-db Container
Section titled “porta-db Container”- Role: Porta MySQL Database
- Published Ports:
- MySQL Client Ports:
- 3306 for
porta-db - 3307 for
porta-db-2 - 3308 for
porta-db-3
- 3306 for
- MySQL Replication Ports:
- 33061 for
porta-db - 33062 for
porta-db-2 - 33063 for
porta-db-3
- 33061 for
- MySQL Client Ports:
porta-socket Container
Section titled “porta-socket Container”- Role: Porta WebSocket Relay Server
- Published Ports: 6001
porta-redis Container
Section titled “porta-redis Container”- Role: Porta Redis Server
- Published Ports: 6379
Database
Section titled “Database”Porta On Prem runs three MySQL databases utilizing the MySQL standard Group Replication features.
Database Replication
Section titled “Database Replication”MySQL Group Replication provides distributed replication with automated coordination between servers in the group. Group replication ensures that the database service is continuously available.
The replication group operates in single-primary mode with automatic primary election, in which only one server accepts writes at a time. In the case of primary failure, the Porta backend will automatically attempt to reconnect to the newly elected primary.
Replication States
Section titled “Replication States”Possible values of member_state from performance_schema.replication_group_members:
| Description | |
|---|---|
ONLINE | The server is an active member of a group and in a fully functioning state. |
RECOVERING | The server has joined a group and is in the process of becoming an active member. |
OFFLINE | The Group Replication plugin is loaded but the member does not belong to any group. This status may briefly occur while a member is joining or rejoining group. |
UNREACHABLE | The local failure detector suspects that the member cannot be contacted, because the group’s messages are timing out. This can happen if a member is disconnected involuntarily. |
ERROR | The member is in an error state and is not functioning correctly as a group member. While a member is joining or rejoining a replication group, its status can be displayed as ERROR before the group completes the compatibility checks and accepts it as a member. |
WebSocket Server Failure & Failover
Section titled “WebSocket Server Failure & Failover”Porta On Prem monitors its connection to the WebSocket server and will automatically attempt to failover to the backup server if the connection is lost.
If the failed server comes back online, it will not replace the active server, but will act as the new “backup” server until the active server fails or otherwise shuts down.
Helpers
Section titled “Helpers”Helpers can be accessed from the Porta Manager Dashboard.
| Name | Description |
|---|---|
| Bootstrap this machine’s Porta database to create a replication group with this machine as primary. | |
| Start this machine’s Porta database replication. | |
| Stop this machine’s Porta database replication. | |
| Fixes Porta if this machine’s IP address changes after Porta is already installed. |
Installing Porta On Prem
Section titled “Installing Porta On Prem”Porta UI Logs
Section titled “Porta UI Logs”The front-end logs can be viewed in the Web Browser console. To access the logs, open the browser’s developer tools (F12) and select the Console tab.
Monitoring
Section titled “Monitoring”Viewing Database Health
Section titled “Viewing Database Health”A database health dashboard is available at http://<MACHINE-IP>:8000/health. This dashboard displays the results of ongoing database replication health checks.
Viewing Queued Tasks
Section titled “Viewing Queued Tasks”Some heavy-duty tasks, such as media conversion, are queued and run in the background. A minimal UI is available at http://<MACHINE-IP>:8000/horizon to monitor these tasks.
Socket.IO Admin UI
Section titled “Socket.IO Admin UI”View the Socket.IO Admin UI at http://<PORTA-MACHINE-IP>:8000/socketio-adminui to monitor the status of the Porta Socket Server. Please contact support@disguise.one for the login credentials.