Skip to content

Porta On Prem VM Overview

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.ps1 script and the.ova VM image file.
    • The image is an.ova file, 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.
  • 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.
ComponentSpecification
Operating SystemWindows 11 64-bit
HypervisorVirtualBox 7.1.8
CPUIntel i7 4th Generation (required: CPU with AVX2 support)
Memory8GB RAM
Storage100+GB free disk space
  • Role: Porta UI & API
  • Published Ports:
    • 8080 for UI
    • 8000 for API
  • Role: Porta MySQL Database
  • Published Ports:
    • MySQL Client Ports:
      • 3306 for porta-db
      • 3307 for porta-db-2
      • 3308 for porta-db-3
    • MySQL Replication Ports:
      • 33061 for porta-db
      • 33062 for porta-db-2
      • 33063 for porta-db-3
  • Role: Porta WebSocket Relay Server
  • Published Ports: 6001
  • Role: Porta Redis Server
  • Published Ports: 6379

Porta On Prem runs three MySQL databases utilizing the MySQL standard Group Replication features.

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.

Possible values of member_state from performance_schema.replication_group_members:

Member StateDescription
ONLINEThe server is an active member of a group and in a fully functioning state.
RECOVERINGThe server has joined a group and is in the process of becoming
an active member.
OFFLINEThe 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.
UNREACHABLEThe 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.
ERRORThe 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.

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 can be accessed from the Porta Manager Dashboard.

NameDescription
Bootstrap DatabaseBootstrap this machine’s Porta database to create a replication group with this machine as primary.
Start ReplicationStart this machine’s Porta database replication.
Stop ReplicationStop this machine’s Porta database replication.
Fix IP SettingsFixes Porta if this machine’s IP address changes after Porta is already installed.

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.

A database health dashboard is available at http://<MACHINE-IP>:8000/health. This dashboard displays the results of ongoing database replication health checks.

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.

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.