Advanced settings

Configure mail, caching services, FTP, the operating system, and database monitoring from a host's Advanced tab.

The host's Advanced tab gathers configuration options for mail, caching services, file transfer, the operating system, and database monitoring. These options control the host's runtime environment.

The Advanced tab of a host
The Advanced tab of a host

This tab covers:

  • Mail settings - set up DomainKeys Identified Mail (DKIM) and a development mail catcher
  • Varnish options - tune the Varnish HTTP cache
  • RabbitMQ options - configure the RabbitMQ message broker plugins
  • FTP server options - SFTP and FTPS file-transfer access
  • Operating system - choose the OS, extra packages, and the maintenance window
  • Advanced database monitoring - deep monitoring for your databases
  • New Relic Infrastructure - send server metrics to your own New Relic account

Mail settings

Set up DKIM (your mail domain's FQDN and a selector) so receivers can authenticate your outbound mail. You can also enable a development mail catcher (Mailpit or Mailhog) that captures outgoing mail so you can inspect it without delivering it. See Email.

Varnish options

Varnish provides HTTP caching. You can tune Varnish behavior from the Advanced tab. These options appear once an application has Varnish enabled. For details on caching strategy and configuration, see Services.

The Varnish Options panel on the Advanced tab, with the cache size, custom VCL, Varnish flavor and Varnish modules settings
The Varnish Options panel on the Advanced tab, with the cache size, custom VCL, Varnish flavor and Varnish modules settings
Setting Description
Varnish Cache Size The memory Varnish uses to store cached content. It auto-scales to the server by default. Turn the toggle on to set your own size and unit.
Varnish Flavor Choose the Varnish build: Open Source or Enterprise. Open Source is free. Enterprise needs a separate license. Written to the host YAML as varnish_type.
Varnish Modules Available with the Open Source build. Turn it on to install the extra Varnish modules.
Custom VCL Turn this on to use your own Varnish Configuration Language (VCL) instead of the default.

By default, Varnish uses a default VCL that TurboStack tunes for your application type. To supply your own, turn on the custom VCL option and place your VCL file in /etc/varnish/conf.d/ on the server.

RabbitMQ options

RabbitMQ provides message queuing for your applications. The Advanced tab configures the broker itself. See Services for related service configuration.

This pane is only usable once RabbitMQ is in use on the host. Until then it shows the message that RabbitMQ is not activated, and asks you to first create an application with RabbitMQ enabled. Enable RabbitMQ on an application under Configure application > Technologies, then return here.

When RabbitMQ is active, you can select the broker plugins to install (rabbitmq_plugins). The field is a multi-select, so you can pick more than one:

Plugin What it adds
rabbitmq_prometheus Exposes broker metrics in the Prometheus format, so you can collect them in your own metrics tooling.
rabbitmq_shovel Moves messages from a queue on this broker to another broker.
rabbitmq_shovel_management Adds the shovel configuration and status to the RabbitMQ management interface.
rabbitmq_plugins: [rabbitmq_shovel, rabbitmq_shovel_management]

Publish the host to install the plugins you selected.

FTP server options

You can configure file transfer access, including SSH File Transfer Protocol (SFTP) and FTPS settings and the protocols you want to allow. These options appear once the host has an FTP user. For interactive shell access, see SSH access.

Enable Valid Certificate For FTP Server generates a Transport Layer Security (TLS) certificate for the FTP daemon using a hostname you choose. Turn the toggle on, then enter the FTP hostname. Clients that connect over FTPS then see a valid certificate instead of a self-signed one.

Operating system

You can select and configure the host's operating system and related settings.

The Operating System panel on the Advanced tab, with the Composer version, Supervisord support, OS extra packages and maintenance window settings
The Operating System panel on the Advanced tab, with the Composer version, Supervisord support, OS extra packages and maintenance window settings
Setting Description
OS selection Choose the operating system, such as Debian or AlmaLinux.
Composer version Choose the Composer version installed for your PHP applications (composer_version).
Supervisord support Install a process manager for long-running background processes (supervisor_enabled).
os_extra_packages Add extra OS packages - see Installing extra OS packages. Keep this list minimal.
Automatic update time The daily time when routine package updates that do not need a reboot are installed (system_packages_upgrade_time).
Maintenance window Set when updates that require a reboot are applied, so you can pick your least-critical time (maintenance). Add one or more day and hour windows.

Supervisor

Supervisord support (supervisor_enabled) installs a process manager on the host. A process manager keeps a long-running process running: it starts the process, restarts it when it exits, and collects its output in a log file. Use it for queue workers, message-queue consumers and other background processes that must not stop.

Each system user gets its own instance, so you configure your processes without root access:

Path What it is
~/.config/supervisor/conf.d/ Your program configuration files. A sample file is placed here for you.
~/.config/supervisor/log/ The log output of the processes you defined.

~ is your system user's home directory, for example /var/www/prod/. After you add or change a configuration file, apply it with the supervisorctl command over SSH.

TurboStack's own way of running background processes is a user system service, managed by systemd. That needs no host-level setting and is the better starting point: it is already used for the queue workers and consumers of the supported applications. Turn on Supervisord support when your application or deployment tooling expects a supervisor instead.

Windows update schedule

On a Windows host, the Operating System pane shows a Windows update schedule instead of the Linux settings above. The schedule is the Windows counterpart of the maintenance window. It sets the day and the hour when Windows updates are installed, so a reboot happens at a moment you choose.

The schedule is a table with a Day and an Hours column. Click Edit on the entry, select a day and an hour, then click Save. A new host starts with Sunday 09:00.

The Windows update schedule on a Windows host's Advanced tab, with a Sunday 09:00 entry and its Edit and Delete buttons
The Windows update schedule on a Windows host's Advanced tab, with a Sunday 09:00 entry and its Edit and Delete buttons

Advanced database monitoring

Advanced Database Monitoring collects query-level metrics for the databases on this host and sends them to a central monitoring master server, where you read the dashboards. Enable it when you need to see which queries are slow, not only that the database is busy. See Monitoring.

The Advanced Database Monitoring panel on the Advanced tab, with its enable toggle
The Advanced Database Monitoring panel on the Advanced tab, with its enable toggle

The pane is only usable when the host has a database service configured (MySQL, PostgreSQL, Microsoft SQL Server or MongoDB). Without one it shows No database server configured - add a database on the Services tab first.

Setting Description
Enable Turns advanced database monitoring on for this host. The remaining fields appear once it is on.
Master server hostname The host name of the monitoring master server that collects the metrics (pmm_master.server_hostname). Required when monitoring is enabled.
Sampling rate Under Advanced Settings. Metrics are collected from every Nth query (pmm_sampling_rate, default 50). A lower number gives more detail, and adds more load to this server and to the master.
pmm_master:
  server_hostname: monitoring.example.com
pmm_sampling_rate: 50

If you do not have a monitoring master server yet, you can run one on TurboStack - see Self-hosted platforms.

New Relic Infrastructure

The New Relic Infra pane connects the server itself to your own New Relic account. Server metrics such as processor, memory, disk and processes then appear next to the application data you already collect there. This is a bring-your-own-account setting: TurboStack installs and configures the agent, you supply the license key and keep your own New Relic subscription.

The pane only appears in the left menu when at least one application on this host has New Relic application performance monitoring enabled. Turn that on first under Configure application > Monitoring > New Relic APM - see Applications.

Field Description
License Key The license key of your New Relic account. Use the main account license key, not the separate infrastructure key.
Log Configuration Optional. Paste valid YAML that tells the infrastructure agent which log files to forward. TurboStack writes it to /etc/newrelic-infra/logging.d/customer.yml on the server, so use the format the agent expects there. Leave it empty to forward no logs.

Leave the license key empty to not install the infrastructure agent. Publish the host to apply either change.