kresd.systemd(7)

NAME
kresd.systemd - managing Knot Resolver 5.7.5 through systemd.

SYNOPSIS
kresd@.service
kresd.target
system-kresd.slice

DESCRIPTION

This manual page describes how to manage kresd using systemd units.

QUICKSTART

    systemctl start kresd@1 - single instance of kresd, responding on localhost

CONCURRENT DAEMONS

kresd daemon can be executed in multiple independent processes, which are managed with systemd via systemd templates (see systemd.unit(5)). Each systemd service instance of kresd (kresd@.service) represents a single, independent kresd process.

If you have more than one CPU core available, a single running kresd daemon will only be able to make use of one core at a time, leaving the other cores idle. If you want kresd to take advantage of all available cores, while sharing both cache and sockets, you should enable and start as many instances of the kresd@.service as you have cores. Typically, each instance is just named kresd@N.service, where N is a decimal number. For example, to enable and start 3 concurrent daemons:

    systemctl enable --now kresd@1.service kresd@2.service kresd@3.service

The systemd-managed kresd service set is grouped in the system-kresd.slice slice. The slice includes all running daemons (instances of kresd@.service).

EXAMPLES

To start a single kresd instance and enable it at boot:
    systemctl enable --now kresd@1.service

To restart (or stop) all running instances, you can use a glob expression. Please note that glob can't be used to start or enable instances.
    systemctl restart 'kresd@*'

Bash users can also use Brace Expansion to enable or start multiple instances, instead of listing them manually.
    systemctl enable --now kresd@{1..4}.service

To start all enabled kresd daemons, you can also use the provided kresd.target:
    systemctl start kresd.target

SEE ALSO
kresd(8), systemd.unit(5), https://knot-resolver.readthedocs.io/en/v5.7.5/

AUTHORS
kresd developers are mentioned in the AUTHORS file in the distribution.