Windows

Overview

This section describes how to install and configure MetaDefender (MD) Cluster Control Center on Windows systems. After installation, administrators can use MD Cluster Control Center to manage MD Cluster services from a centralized interface.

Prerequisites

Before installing the MD Cluster Control Center service, ensure the following requirements are met.

RequirementDescription
Operating SystemWindows 11 23H2+, Windows Server 2019+.
PrivilegesAdministrator privileges
Installation packagemd-cluster-control-center-<version>-1-x64.msi
Network accessRequired port is open (default port: 8892).
DependenciesMD Cluster Identity Service and PostgreSQL must be installed and reachable from the Control Center host.
Disk spaceA minimum of 10 0 GB of available disk space is required.

Create the ignition file

Create an ignition file in YAML format. This file contains the credentials and connection settings required for the service.

The file must include the following keys:

KeyDescription
identity.hostIP address or domain name of the MD Cluster Identity Service host. Do not use localhost or 127.0.0.1.
identity.portPort used by MD Cluster Identity Service.
identity.connection_keyA 4-64 character alphanumeric string (a-z, A-Z, 0-9) that matches the Identity Service connection key.
database.hostIP address or domain name of the PostgreSQL server.
database.portPort used by PostgreSQL.
database.userPostgreSQL user. SUPERUSER privileges are required during the initial setup.
database.passwordPostgreSQL user password.
secure.encryption_keyA 32-character plain text key containing only lowercase letters and digits.

Example ignition file:

YAML
Copy

Save the ignition file to the following path on the target machine:

Powershell
Copy

The ignition file contains sensitive credentials. This file can be safely deleted any time after the installation is complete.

Install the service

  1. Copy the installer file (.msi) to the target machine.
  2. Open PowerShell with Administrator privileges.
  3. Run the following command to start the installation in silent mode:
Powershell
Copy

Verify the service status

  1. Open PowerShell and run the following command:
Powershell
Copy
  1. Check the Running status in the output.
  2. If the service is not running, start it manually:
Powershell
Copy

Service management

ActionCommand (PowerShell)
Check service statusGet-Service -Name md-cluster-control-center
Start serviceStart-Service -Name md-cluster-control-center
Stop serviceStop-Service -Name md-cluster-control-center
Restart serviceRestart-Service -Name md-cluster-control-center

Customize the service configuration

During installation, MD Cluster Control Center generates a configuration file at:

Copy

To customize the service behavior:

  1. Open the configuration file in a text editor.
  2. Modify the required settings according to your environment.
  3. Save the changes.
  4. Restart the service to apply the new settings.
Powershell
Copy

Directory structure

  • C:\opswat\md_cluster_control_center.yml: Service ignition file.
  • C:\Program Files\OPSWAT\MetaDefender Cluster Control Center\md_cluster_control_center.yml: Service configuration file.
  • C:\Program Files\OPSWAT\MetaDefender Cluster Control Center\data\log\control-center.log: Service log file
  • C:\Program Files\OPSWAT\MetaDefender Cluster Control Center\data\log: Default log directory.

Log files

To check the service log, open the file C:\Program Files\OPSWAT\MetaDefender Cluster Control Center\data\log\control-center.log.

To check logs using Event Viewer:

  1. Open Event Viewer.
  2. Navigate to Windows Logs > Application.
  3. Look for events related to MD Cluster Control Center service.

Uninstall the service

Open PowerShell and run the following command:

Powershell
Copy

Troubleshooting

A. Service does not start

  1. Check the service status:
Powershell
Copy
  1. Review the application log and Event Viewer entries for Control Center errors.
  2. Verify that the configuration file contains valid values, then restart the service.

B. Installation fails

Possible causes:

  • Insufficient privileges.
  • Missing prerequisites.
  • The installer package does not match the target platform.

Solution:

  • Ensure the installation command is executed with Administrator privileges.
  • Confirm MD Cluster Identity Service and PostgreSQL are available.
  • Re-download or verify the installer package if the MSI exits unexpectedly.

C. Control Center cannot connect to Identity Service

Possible causes:

  • identity.host is incorrect.
  • Network connectivity issues.
  • Firewall restrictions.
  • identity.connection_key does not match the value configured on MD Cluster Identity Service.

Solution:

  • Verify identity.host, identity.port, and identity.connection_key in the ignition or configuration file.
  • Ensure MD Cluster Identity Service is running and reachable from the MD Cluster Control Center host.
  • Verify Windows Firewall rules allow traffic between the two services.
  • Do not use localhost or 127.0.0.1 for identity.host unless both services run on the same host and the deployment explicitly supports it.

D. Database connection fails

Possible causes:

  • PostgreSQL is not running.
  • Database credentials are incorrect.
  • PostgreSQL is not reachable from MD Cluster Control Center host.

Solution:

  • Verify PostgreSQL service status.
  • Confirm database.host, database.port, database.user, and database.password are correct.
  • Ensure firewall rules allow access to PostgreSQL.

Ignition file key reference

  • identity.host (Required)

    • Value type: string.
    • Description: IP address or domain name of the server hosting MD Cluster Identity Service. Avoid using localhost or 127.0.0.1.
  • identity.port (Required)

    • Value type: number.
    • Description: Port where MD Cluster Identity Service listens for client connections.
  • identity.connection_key (Required)

    • Value type: string.
    • Description: A 4-64 character string that contains only digits (0-9) and letters (a-z, A-Z). This value must match the connection key configured on MD Cluster Identity Service.
  • database.host (Required)

    • Value type: string.
    • Description: IP address or domain name of the PostgreSQL server.
  • database.port (Required)

    • Value type: number.
    • Description: Port where PostgreSQL listens for client connections.
  • database.user (Required)

    • Value type: string.
    • Description: PostgreSQL user account. SUPERUSER privilege is required during the initial setup.
  • database.password (Required)

    • Value type: string.
    • Description: PostgreSQL user password.
  • secure.encryption_key (Required)

    • Value type: string.
    • Description: A 32-character plain text key composed only of lowercase letters (a-z) and digits (0-9).
  • rest.port (Optional)

    • Value type: number.
    • Description: Port where MD Cluster Control Center listens for incoming connections. Default value is 8892.
  • rest.log_path (Optional)

    • Value type: string.
    • Description: Location where REST logs are written.
  • rest.log_level (Optional)

    • Value type: string.
    • Description: Level of REST log messages (dump, debug, info, warning, or error).
  • log.streams[@].log_type (Optional)

    • Value type: string.
    • Description: Type of log device (file or syslog).
  • log.streams[@].log_level (Optional)

    • Value type: string.
    • Description: Level of log message (dump, debug, info, warning, or error).
  • log.streams[@].log_path (Optional)

    • Value type: string.
    • Description: Location where logs are written. If log.streams[@].log_type is "file", the value is a file path. If log.streams[@].log_type is "syslog", the value can be [tcp/udp]://host:port for a remote syslog server or "local" for the local syslog server on supported platforms.
Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard