-
The Anterius project is developed as part of the Google Summer of Code '18 program, with the objective to create a GUI dashboard for the Kea DHCP server that provides monitoring and configuration capabilities to users.
-
The GUI and base functionality has been adapted from the GLASS dashboard created for ISC DHCP server.
-
Anterius functionality has been modified to support interaction with Kea servers running on remote systems, by incorporating features from the REST API exposed by the Kea Control Agent.
-
Anterius supports monitoring and configuration of both DHCPv4 and DHCPv6 servers (provided they are operational at the selected control agent interface).
-
Anterius is also designed to interface with multiple server host machines by switching between control agent destination addresses.
The home page provides a monitoring dashboard for the connected server that compiles realtime statistics and critical operating information:
- Current Kea Server Hostname
- Operational status of Kea servers (DHCP v4/v6) and current selection.
- DHCP Leases per second / minute
- Total Active Leases
- Shared Network Distribution & Utilization
- Subnet Distribution & Utilization
- A detailed information page can be viewed for each individual shared network and subnet defined by the server that provides entity specific data such as utilization, pools, total, assigned and available no. of leases.
- Page also presents tables listing the Host Reservations defined in n/w configuration and Lease Information for currently active leases from the network. Shared network page includes a list of subnets contained in the network.
- The DHCP configuration interface can be used to view and make modifications to the current server config file.
- Config changes can be validated with the server thru the CA API to test for errors.
- Updated and validated config files can be applied to the server if confirmed by the user.
- Anterius also provides a feature to apply configuration changes for specific networks entities (subnet/shared-network) accessible thru the edit config button available in the network detailed info pages.
- Config modifications can be reviewed from the File Editor tab where changes are highlighted.
- Config page also provides an option to save a snapshot of the current config file which can be accessed as depicted below.
- The Snapshot centre provides admins features like viewing previously created config checkpoints and also validate and restore the config files with user confirmation.
- Anterius provides a server operation management page to execute start / stop / restart commands for DHCP v4/v6 servers. (Please note this feature is only supported for a local machine server until these commands are added to the Control Agent API)
- Anterius includes a Log streaming page displays the syslogd output from Kea servers in real-time allowing admins to review and save logs to a text file. (Please note this feature is only supported for a local machine server, remote log streaming feature is planned to be added in a future release)
- The alerting function allows admins to set custom thresholds for subnet and shared network utilization
-
Alert Levels:
- Default 80 (Warning)
- Default 95 (Critical)
-
Alert Delivery Methods
- SMS
(Instructions for Debian/Ubuntu based systems)
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - sudo apt-get install -y nodejs
- Clone source code from Github
git clone https://github.com/isc-projects/kea-anterius.git cd kea-anterius
- Install node modules and run
sudo npm install sudo npm start
- 'npm start' command launches the nodejs server, browse to http://localhost:3000 to use the interface.
-
Anterius interface can be configured to work with a Kea server instance running either on a remote system or the local machine.
-
This characteristic is dependant on the address parameter set for the Kea Control Agent that provides API access to the server.
-
To run the Kea Server with its default configuration or specified config file, use the kea control command as shown:
~$ keactrl start -s dhcp4
~$ keactrl start -s dhcp4 -c /path/to/kea-dhcp4.conf
- Activate the Kea Control Agent using the following command (change -c conf file path if required):
~$ kea-ctrl-agent -c /usr/local/etc/kea/kea-ctrl-agent.conf
- Check status of Kea DHCPv4 and Kea Control Agent (both must be active) using the command:
~$ keactrl status
- Kea Control Agent(CA) runs on port 8000 by default, defined in the CA config file. Please refer to the Kea Control Agent Documentation for setting CA parameters and addtional info.
-
To select server host machine, browse to the Anterius Settings option from the menu and select from the list of available hostnames.
-
Navigate to the Kea Hostname List in the settings page to add/edit/delete server host machine details.
- For local server (default mode), set address = localhost:8000
- For remote server, set address = <public_ip:port>