From: Vasek Sraier Date: Mon, 9 Jan 2023 22:21:01 +0000 (+0100) Subject: doc: moved command rosetta to upgrade guide X-Git-Tag: v6.0.0a1~11^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cd5bafa200fda1dd7e357d4873d21a39ac13413f;p=thirdparty%2Fknot-resolver.git doc: moved command rosetta to upgrade guide --- diff --git a/doc/manager-rosetta.rst b/doc/manager-rosetta.rst deleted file mode 100644 index 0d3f0a7f1..000000000 --- a/doc/manager-rosetta.rst +++ /dev/null @@ -1,25 +0,0 @@ -.. SPDX-License-Identifier: GPL-3.0-or-later - -With the release of version 6, there is a new way to configure and control your running ``kresd`` instances -so that you don't have to configure multiple systemd services. The new Knot Resolver Manager handles it for you. -In the table below, you can find comparison of how things were done before and how they can be done now. - -====================== -Administration changes -====================== - -========================================== =========================================================================================== ================================================================== -Task How to do it now How it was done before -========================================== =========================================================================================== ================================================================== -start resolver ``systemctl start knot-resolver`` ``systemctl start kresd@1`` -stop resolver ``systemctl stop knot-resolver`` ``systemctl stop kresd@1`` -start resolver with 4 worker processes set ``/workers`` to 4 in the config file manually start 4 services by ``systemctl start kresd@{1,2,3,4}`` -rolling restart after updating config ``systemctl reload knot-resolver`` (or use API or ``kresctl``) manually restart individual ``kresd@`` services one by one -open logs of all instances ``journalctl -u knot-resolver`` ``journalctl -u system-kresd.slice`` -open log of a single kresd instances ``journalctl -u knot-resolver _PID=xxx`` ``journalctl -u kresd@1`` -updating config programatically use HTTP API or ``kresctl`` command write a custom tool to generate new config and restart ``kresd``'s -handling errors during config changes HTTP API just reports error, resolver keeps running with previous config custom tools for every user -validate new config ``kresctl validate path/to/new/config.yml`` (not fully bullet proof), then try to run it run ``kresd`` with the config and see if it fails -look at the Lua config ``kresctl convert path/to/new/config.yml`` ``cat /path/to/config.conf`` -gather metrics point Prometheus etc. at the single HTTP API collect metrics manually from all individual processes -========================================== =========================================================================================== ================================================================== diff --git a/doc/upgrading-to-6.rst b/doc/upgrading-to-6.rst index 28af55404..b8aa0831c 100644 --- a/doc/upgrading-to-6.rst +++ b/doc/upgrading-to-6.rst @@ -6,4 +6,36 @@ Upgrading to 6.0.0 from 5.x.x ***************************** +Version 6 of Knot Resolver brings one significant change - it introduces *Knot Resolver Manager* - a new way for interacting with Knot Resolver. The Manager brings several new features: +* **new declarative configuration** +* HTTP API to change configuration on the fly without downtime +* it hides complexities of running multiple instances of ``kresd`` + +Now, you might be worried about the future of ``kresd``. No worries, you can use ``kresd`` directly the same way you did before, nothing changes there right now. However, in the long run, we might make breaking changes in the way ``kresd`` is configured and using it directly is from now on considered advanced. + +With the release of version 6, there is a new way to configure and control your running ``kresd`` instances +so that you don't have to configure multiple systemd services. The new Knot Resolver Manager handles it for you. +In the table below, you can find comparison of how things were done before and how they can be done now. + + +Command rosetta +=============== + +In the table below, you can compare the way Knot Resolver was used before and how it can be used now. + +========================================== =========================================================================================== ================================================================== +Task How to do it now How it was done before +========================================== =========================================================================================== ================================================================== +start resolver ``systemctl start knot-resolver`` ``systemctl start kresd@1`` +stop resolver ``systemctl stop knot-resolver`` ``systemctl stop kresd@1`` +start resolver with 4 worker processes set ``/workers`` to 4 in the config file manually start 4 services by ``systemctl start kresd@{1,2,3,4}`` +rolling restart after updating config ``systemctl reload knot-resolver`` (or use API or ``kresctl``) manually restart individual ``kresd@`` services one by one +open logs of all instances ``journalctl -u knot-resolver`` ``journalctl -u system-kresd.slice`` +open log of a single kresd instances ``journalctl -u knot-resolver _PID=xxx`` ``journalctl -u kresd@1`` +updating config programatically use HTTP API or ``kresctl`` command write a custom tool to generate new config and restart ``kresd``'s +handling errors during config changes HTTP API just reports error, resolver keeps running with previous config custom tools for every user +validate new config ``kresctl validate path/to/new/config.yml`` (not fully bullet proof), then try to run it run ``kresd`` with the config and see if it fails +look at the Lua config ``kresctl convert path/to/new/config.yml`` ``cat /path/to/config.conf`` +gather metrics point Prometheus etc. at the single HTTP API collect metrics manually from all individual processes +========================================== =========================================================================================== ================================================================== \ No newline at end of file