kresd.systemd - Man Page
managing Knot Resolver 5.7.4 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.4/
Authors
kresd developers are mentioned in the AUTHORS file in the distribution.