<!--
 - Copyright (C) 2014-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/.
-->

<refentry>
  <info>
    <productname>ISC Kea</productname>
    <date>Dec 14, 2018</date>
    <edition>1.5.0</edition>
    <author>
      <personname/>
      <contrib>The Kea software has been written by a number of
        engineers working for ISC: Tomek Mrugalski, Stephen Morris, Marcin
        Siodelski, Thomas Markwalder, Francis Dupont, Jeremy C. Reed,
        Wlodek Wencel and Shawn Routhier.  That list is roughly in the
        chronological order in which the authors made their first
        contribution. For a complete list of authors and
        contributors, see AUTHORS file.</contrib><orgname>Internet Systems Consortium, Inc.</orgname></author>
  </info>

  <refmeta>
    <refentrytitle>keactrl</refentrytitle>
    <manvolnum>8</manvolnum>
    <refmiscinfo class="manual">Kea</refmiscinfo>
  </refmeta>

  <refnamediv>
    <refname>keactrl</refname>
    <refpurpose>Shell script for managing Kea</refpurpose>
  </refnamediv>

  <docinfo>
    <copyright>
      <year>2014-2018</year>
      <holder>Internet Systems Consortium, Inc. ("ISC")</holder>
    </copyright>
  </docinfo>

  <refsynopsisdiv>
    <cmdsynopsis sepchar=" ">
      <command>keactrl</command>
      <arg choice="opt" rep="norepeat">command</arg>
      <arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">keactrl-config-file</replaceable></option></arg>
      <arg choice="opt" rep="norepeat"><option>-s <replaceable class="parameter">server[,server,...]</replaceable></option></arg>
      <arg choice="opt" rep="norepeat"><option>-v</option></arg>
    </cmdsynopsis>
  </refsynopsisdiv>

  <refsect1>
    <title>DESCRIPTION</title>
    <para>
      keactrl is a shell script which controls the startup, shutdown
      and reconfiguration of the Kea servers (<command>kea-dhcp4</command>,
      <command>kea-dhcp6</command>, <command>kea-dhcp-ddns</command>,
      <command>kea-ctrl-agent</command> and <command>kea-netconf</command>).
      It also provides the means for checking the current status of
      the servers and determining the configuration files in use.
    </para>
  </refsect1>

  <refsect1>
    <title>CONFIGURATION FILE</title>
    <para>
     Depending on requirements, not all of the available servers need
     be run.  The keactrl configuration file sets which servers are
     enabled and which are disabled.  By default the configuration
     file is <filename>[kea-install-dir]/etc/kea/keactrl.conf</filename>.
    </para>
    <para>
      See the Kea Administrator's Guide for the documentation of the parameters
      in the <command>keactrl</command> configuration file.
    </para>
  </refsect1>

  <refsect1>
    <title>OPTIONS</title>
    <variablelist>
      <varlistentry>
        <term><option><replaceable class="parameter">command</replaceable></option></term>
        <listitem>
          <para>
            Command to be issued to the servers. It can be one of the following:
          </para>

          <variablelist>
            <varlistentry>
              <term>start</term>
              <listitem>
                <para>Start the servers.</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term>stop</term>
              <listitem>
                <para>Stop the servers.</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term>reload</term>
              <listitem>
                <para>Instructs the servers to re-read the kea
                configuration file. This command is not supported by
                the Netconf agent.</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term>status</term>
              <listitem>
                <para>Print the status of the servers.</para>
              </listitem>
            </varlistentry>

          </variablelist>


        </listitem>
      </varlistentry>

      <varlistentry>
        <term><option>-c|--ctrl-config <replaceable class="parameter">keactrl-config-file</replaceable></option></term>
        <listitem>
          <para>
            Specify the <command>keactrl</command> configuration file. Without
            this switch, the <command>keactrl</command> will attempt to use the
            file <filename>[kea-install-dir]/etc/kea/keactrl.conf</filename>.
          </para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><option>-s|--server <replaceable class="parameter">server[,server,...]</replaceable></option></term>
        <listitem>
          <para>
            Specifies a subset of the enabled servers to which the command should be issued.
            The list of servers should be separated by commas with no intervening spaces.
            Acceptable values are:
          </para>

          <variablelist>
            <varlistentry>
              <term>dhcp4</term>
              <listitem>
                <para>DHCPv4 server (<command>kea-dhcp4</command>).</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term>dhcp6</term>
              <listitem>
                <para>DHCPv6 server (<command>kea-dhcp6</command>).</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term>dhcp_ddns</term>
              <listitem>
                <para>DHCP DDNS server (<command>kea-dhcp-ddns</command>).</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term>ctrl_agent</term>
              <listitem>
                <para>Control Agent (<command>kea-ctrl-agent</command>).</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term>netconf</term>
              <listitem>
                <para>Netconf agent (<command>kea-netconf</command>).</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term>all</term>
              <listitem>
                <para>All servers (default) including Netconf if
                it was configured to be built.</para>
              </listitem>
            </varlistentry>

          </variablelist>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><option>-v|--version</option></term>
        <listitem>
          <para>
            Prints keactrl version and quits.
          </para>
        </listitem>
      </varlistentry>

    </variablelist>
  </refsect1>

  <refsect1>
    <title>DOCUMENTATION</title>
    <para>Kea comes with an extensive Kea User's Guide documentation
      that covers all aspects of running the Kea software -
      compilation, installation, configuration, configuration examples
      and many more. Kea also features a Kea Messages Manual, which
      lists all possible messages Kea can print with a brief
      description for each of them. Both documents are typically
      available in various formats (txt, html, pdf) with your Kea
      distribution. The Kea documentation is available at
      https://kb.isc.org/docs/kea-administrator-reference-manual .</para>
    <para>
      Kea source code is documented in the Kea Developer's Guide. Its
      on-line version is available at https://jenkins.isc.org/job/Kea_doc/doxygen/.
    </para>
    <para>
      The Kea project website is available at: https://kea.isc.org.
    </para>
  </refsect1>

  <refsect1>
    <title>MAILING LISTS AND SUPPORT</title>
    <para>
      There are two mailing lists available for Kea project. kea-users
      (kea-users at lists.isc.org) is intended for Kea users, while kea-dev
      (kea-dev at lists.isc.org) is intended for Kea developers, prospective
      contributors and other advanced users.  Both lists are available at
      http://lists.isc.org. The community provides best effort type of support
      on both of those lists.
    </para>
    <para>
      ISC provides professional support for Kea services. See
      https://www.isc.org/kea/ for details.
    </para>
  </refsect1>

  <refsect1>
    <title>SEE ALSO</title>
    <para>
      <citerefentry>
        <refentrytitle>kea-dhcp4</refentrytitle>
        <manvolnum>8</manvolnum>
      </citerefentry>,

      <citerefentry>
        <refentrytitle>kea-dhcp6</refentrytitle>
        <manvolnum>8</manvolnum>
      </citerefentry>,

      <citerefentry>
        <refentrytitle>kea-dhcp-ddns</refentrytitle>
        <manvolnum>8</manvolnum>
      </citerefentry>,

      <citerefentry>
        <refentrytitle>kea-ctrl-agent</refentrytitle>
        <manvolnum>8</manvolnum>
      </citerefentry>,

      <citerefentry>
        <refentrytitle>kea-netconf</refentrytitle>
        <manvolnum>8</manvolnum>
      </citerefentry>,

      <citerefentry>
        <refentrytitle>kea-admin</refentrytitle>
        <manvolnum>8</manvolnum>
      </citerefentry>,

      <citerefentry>
        <refentrytitle>kea-netconf</refentrytitle>
        <manvolnum>8</manvolnum>
      </citerefentry>,

      <citerefentry>
        <refentrytitle>perfdhcp</refentrytitle>
        <manvolnum>8</manvolnum>
      </citerefentry>,

      <citerefentry>
        <refentrytitle>kea-lfc</refentrytitle>
        <manvolnum>8</manvolnum>
      </citerefentry>,


      <citetitle>Kea Administrator's Guide</citetitle>.

    </para>
  </refsect1>

</refentry>
