• Print
  • Share
  • Dark
    Light

Kea build on Ubuntu

  • Updated on 17 Jan 2019
  • 2 minutes to read
  • Contributors

Ubuntu System-Specific Install Notes

Updated on 14-December-2018

This page documents Kea 1.5 installation on Ubuntu 18.04 LTS. While these instructions were thoroughly tested with Kea 1.5 at release time, if you are using the Sysrepo/Netconf or RADIUS integration with Kea, you might also wish to consult the Kea GitLab wiki pages, where we keep a running list of updates, changes, and hints. These two integrations have additional dependencies on other open source components that may change more frequently than our Kea releases.

Installing from Source (without sysrepo/netconf)

There are TWO scripts that need to be run to install Kea from source - the first sets up the development environment and the second installs Kea itself.

Script 1

# install the build environment
sudo apt -y install automake libtool pkg-config build-essential ccache
# install the dependencies
sudo apt -y install libboost-dev libboost-system-dev liblog4cplus-dev libssl-dev

Script 2

wget https://ftp.isc.org/isc/kea/1.5.0/kea-1.5.0.tar.gz
tar xvfz kea-1.5.0.tar.gz
cd kea-1.5.0

export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig
# export CC="ccache gcc" CXX="ccache g++"
declare -x PATH="/usr/lib64/ccache:$PATH"
autoreconf --install
./configure [your additional options here]
make -j4
sudo make install
echo "/usr/local/lib/hooks" > /etc/ld.so.conf.d/kea.conf
ldconfig

Installing with Postgres

If you want to compile Kea with PostgreSQL, install the following packages in addition to the ones above:

sudo apt-get install postgresql-server-dev-all libpq-dev 

Run configure and add --with-pgsql


Installing with Cassandra

To compile Kea with Cassandra, you must first install Cassandra. As this is a detailed procedure and subject to changes that ISC does not track, please find the documentation here: https://cassandra.apache.org/download/

Once the Cassandra libraries are installed, configure Kea by adding --enable-cql-static-lib to your configure options.


Development Environment

If you wish to compile Kea with unit-tests (not needed for users; only useful if you want to change Kea code and possibly contribute patches), you will need the following:

sudo apt-get install googletest libgtest-dev

Run configure and add --with-gtest-source=/usr/src/googletest.
/usr/src/googletest/ is the directory into which the Google test sources are stored.


Installing Kea from Git

If you are compiling from git source (development releases, etc), clone the git repository and reconfigure

sudo apt-get install git
git clone https://gitlab.isc.org/isc-projects/kea.git
cd kea
autoreconf --install

Note that the Kea source code will be stored in the directory kea with no versioning information.


Hooks library

If you are using hooks libraries, you should download the version-appropriate hooks and then extract the tarball into the root of the Kea source tree. This will create the directory premium in the Kea source tree into which the hooks library source code will be placed.

You will also need to regenerate the configure scripts using autoreconf:

cd kea-1.5.0
tar -xvfz ~/kea-subscription-1.5.0.tar.gz
autoreconf -if
./configure [appropriate options]

Installing dependencies for generating documentation (optional)

If you wish to generate the documentation:

sudo apt-get install elinks docbook-xsl doxygen xsltproc
./configure --enable-generate-docs
make
cd doc
make devel

Installing with FreeRADIUS or sysrepo/netconf

For instructions on installing with FreeRADIUS or sysrepo/netconf, please consult the Kea GitLab wiki.


Running

There is no startup script provided. Once Kea is correctly installed and configured for your environment, you will likely want to start it on boot. You can do so by simply adding the following to /etc/rc.local and enabling rc.local compatibility on your system.

#!/bin/bash
keactrl start
exit 0
Was this article helpful?