Usually, default settings are fit for everyone, but sometimes flexVDI components must be further configured to your needs. flexvdi-config is the main configuration utility, but not-so-common options can be set through various configuration files.

flexVDI Agent

The flexVDI Agent is configured by editing the file /etc/flexvdi/flexvdi-agent.conf. Editing it will automatically reload the flexvdi-agent service, so you do not need to do it explicitly. This is an INI-formated text file that configures the CherryPy engine. Values are integers, booleans or strings. For boolean values, case-insensitive values "true", "yes" and 1 all mean true, and anything else means false. The configuration file also contains the following flexVDI-specific sections:


When the flexVDI Agent is also in charge of keeping the flexVDI Manager instance up and running, it uses another configuration file at /etc/flexvdi/flexvdi-agent-watchdog.conf. It must contain a JSON object with information on how to check that the flexVDI Manager instance is alive, and restart it when needed. This file is created and maintained automatically when the Manager is installed, upgraded or moved to a different volume, so you should not need to modify it.

The following keys are recognized, and all of them are mandatory (no default values):

Log files

Log messages are output to /var/log/flexvdi/flexvdi-agent.log, as configured in the flexvdi-agent.conf file. This file is rotated every 10MB and the last 10 files are kept. Besides, since Libvirt is used to manage virtual machines, you should also check the files in directory /var/log/libvirt. In particular, a log file is created for each virtual machine in the /var/log/libvirt/qemu directory. Although they use very small space, their number can grow quite fast if you use volatile desktops. Keep an eye on this directory to delete the log files of virtual machines that you do not need anymore.

flexVDI Manager

The flexVDI Manager instance is a virtual machine running CentOS 7.5, with the flexvdi-manager service and a mongodb database. You can log into this virtual machine with SSH, user root and the Manager password you have configured with flexvdi-config (the password is flexvdi by default).

This virtual machine's persistent storage consists of two disk images. The first one, vda, contains one partition with the operating system and the binary code of flexvdi-manager and mongodb. It is replaced every time you upgrade the Manager version, so everything you install to this disk will be deleted.

The second one, vdb, contains a partition that is mounted in /flexvdi/external with the following directories:

If you ever run out of space in the vdb disk (e.g. your log or database files have grown too much) you can just stop the flexVDI Manager instance and make its data disk image bigger. On the next restart, the partition and file system it includes will be resized automatically as needed. For instance, if your flexVDI Manager data image is in /var/lib/flexvdi/local and you wanted it to have 1GB more of space, you would run:

# virsh destroy flexVDI Manager
# qemu-img resize /var/lib/flexvdi/local/flexvdi-manager-data +1G

After some minutes, the flexVDI Agent will restart the flexVDI Manager instance and the new space will be available. Never shrink the image file, it will end in data corruption.


Since flexVDI 3.1, the configuration for the flexvdi-manager service is divided into two files, /flexvdi/external/manager/application.conf and /flexvdi/external/manager/flexvdi.conf, where the first one includes the second. The application.conf file configures the Play and Akka Frameworks, so it uses the HOCON file format. The flexvdi.conf file configures the flexVDI Manager features.

Do not change Play and Akka configuration unless you know what you are doing.

The flexVDI properties are:

Log files

The flexVDI Manager's log files are stored in /flexvdi/external/log/manager*.log. The MongoDB log files are stored in /var/log/mongodb/mongod.log.

The logging configuration resides in the file /flexvdi/external/manager/logger.xml. It is an XML log file that configures Logback, check its documentation for details. The default configuration is:

Usually, if you need additional messages to be recorded, set the DEBUG level in the correct logger and restart the flexvdi-manager service.

TLS certificate

If you want to use your own TLS certificate for HTTPS connections on port 443 (e.g. to access the Dashboard web application), you can overwrite the file /flexvdi/external/manager/nginx.cert with a PEM-formated file that contains both the certificate and the private key.