-
Notifications
You must be signed in to change notification settings - Fork 146
/
Copy pathlfc.xml
103 lines (89 loc) · 4.61 KB
/
lfc.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<!--
- Copyright (C) 2015-2018 Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-->
<!-- Converted by db4-upgrade version 1.1 -->
<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="kea-lfc">
<title>The LFC process</title>
<section xml:id="kea-lfc-overview">
<title>Overview</title>
<para><command>kea-lfc</command> is a service process that removes
redundant information from the files used to provide persistent storage
for the memfile data base backend. This service is written to run as a
stand alone process.
</para>
<para>While <command>kea-lfc</command> can be started externally, there is
usually no need to do this. <command>kea-lfc</command> is run on a periodic
basis by the Kea DHCP servers.
</para>
<para>The process operates on a set of files, using them for input and output
of the lease entries and to indicate where it is in the process in case of an
interruption. Currently the caller must supply names for all of the files, in
the future this requirement may be relaxed with the process getting the names
from either the configuration file or from defaults.
</para>
</section>
<section xml:id="kea-lfc-usage">
<title>Command Line Options</title>
<para><command>kea-lfc</command> is run as follows:
<screen>
kea-lfc [-4 | -6] -c config-file -p pid-file -x previous-file -i copy-file -o output-file -f finish-file
</screen>
</para>
<para>The argument <command>-4</command> or <command>-6</command> selects the protocol
version of the lease files.
</para>
<para>The <command>-c</command> argument specifies the configuration file. This is
required, but not currently used by the process.
</para>
<para>The <command>-p</command> argument specifies the PID file. When the
<command>kea-lfc</command> process starts it attempts to determine if another
instance of the process is already running by examining the pid file. If one
is already running the new process is terminated. If one isn't running it writes
its pid into the pid file.
</para>
<para>The other filenames specify where the <command>kea-lfc</command> process
should look for input, write its output and use for bookkeeping.
<itemizedlist>
<listitem><simpara>
<command>previous</command> —
When <command>kea-lfc</command> starts this
is the result of any previous run of <command>kea-lfc</command>.
When <command>kea-lfc</command> finishes it is the result of this run.
If <command>kea-lfc</command> is interrupted before completing,
this file may not exist.
</simpara></listitem>
<listitem><simpara>
<command>input</command> —
Before the DHCP server invokes <command>kea-lfc</command> it will
move the current lease file here and then call <command>kea-lfc</command>
with this file.
</simpara></listitem>
<listitem><simpara>
<command>output</command> —
The temporary file <command>kea-lfc</command> should use to write the leases.
Upon completion of writing this file, it will be moved to the finish file
(see below).
</simpara></listitem>
<listitem><simpara>
<command>finish</command> —
Another temporary file <command>kea-lfc</command> uses for bookkeeping. When
<command>kea-lfc</command> completes writing the outputfile it moves it to this
file name. After <command>kea-lfc</command> finishes deleting the other files
(previous and input) it moves this file to previous lease file. By moving the
files in this fashion the <command>kea-lfc</command> and the DHCP server
processes can determine the correct file to use even if one of the
processes was interrupted before completing its task.
</simpara></listitem>
</itemizedlist>
</para>
<para>There are several additional arguments mostly for debugging purposes.
<command>-d</command> Sets the logging level to debug. <command>-v</command> and
<command>-V</command> print out version stamps with <command>-V</command> providing
a longer form. <command>-h</command> prints out the usage string.
</para>
</section>
</chapter>