# Stork 0.5.0, March 6th, 2020, Release Notes Welcome to the Stork 0.5.0 release. This is the fifth development release of the Stork project, which aims to provide a modern, responsive, and scalable dashboard solution with a well-defined REST API interface. The long-term goal of the project is to provide a monitoring and management solution for BIND 9, Kea DHCP, and more. Features introduced in this version: 1. **Shared networks**. Stork is now able to retrieve shared network information, understand which subnets belong to it, and display that information in a meaningful way. The new shared networks view shows an aggregated list of all networks configured, on all the Kea servers that Stork monitors. The configuration information is now stored in a Stork database. This makes the Stork UI more responsive and allows it to better handle a larger number of concurrent users. (#151, #165) 2. **Pool utilization**. Stork is now able to retrieve lease statistics from Kea (#166) and is able to calculate pool utilization for each subnet. Pool utilization is shown for subnets, both in the subnets and shared networks views. (#168, #173) 3. **Preliminary Prometheus and Grafana support**. Work is underway to implement Prometheus and Grafana support. At this time, the Stork agent is able to retrieve statistics from Kea and export the data in a format that is understandable by Prometheus. Support for this capability in BIND is currently handled using the third-party bind-exporter tool, but in the near term that functionality is expected to be provided by the Stork agent. An initial Grafana template for Kea DHCPv4 has been defined. (#167). 4. **Data model improvements**. Many changes were introduced to the data model; in particular, subnets and networks information are stored in additional tables. This allows a much more robust analysis of the current configuration and run-time state. (#165, #172). 5. **Agent communications manager**. The Stork agent now schedules communication with monitored BIND 9 and Kea apps. This way, it is able to handle multiple requests coming from the Stork server, queue them, and send the responses when they become available. (#162). 6. **Bug fixes**. Many assorted bugs were fixed and "quality-of-life" improvements were implemented. Stork now displays loaded hooks correctly (#138); removing and re-adding machines no longer causes errors (#148); when a machine is deleted, all related apps running on it are removed correctly (#159); the total number of entries (subnets, networks) is now displayed (#160); and parsing the prefix delegation pool is now handled correctly (#179). 7. **Traffic generator**. To better test and demonstrate Stork operations, a traffic generator tool has been developed. It can generate traffic for multiple Kea subnets, thus emulating actual networks, in particular with regards to pool utilization. (#9, #167, #189) ## Release Model Stork has monthly development releases on the first Wednesday of each month (with some exceptions around holidays). The first major release, version 0.8, is planned for the spring of 2020. We encourage users to test the development releases and report back their findings on the stork-dev mailing list, available at https://lists.isc.org/mailman/listinfo/stork-dev. This text references issue numbers. For more details, visit the Stork GitLab page at https://gitlab.isc.org/isc-projects/stork/issues. ## License This version of Stork is released under the Mozilla Public License, version 2.0. https://www.mozilla.org/en-US/MPL/2.0 ## Download The Stork source and PGP signature for this release may be downloaded from: https://ftp.isc.org/isc/stork The signature was generated with the ISC code signing key which is available at: https://www.isc.org/pgpkey ISC provides documentation in the Stork Administrator Reference Manual. It is currently available only in the source form in the docs/ directory, and the Sphinx tool is required to build it. This is expected to change in a future release. We ask users of this software to please let us know how it worked for you and what operating system you tested on. Feel free to share your feedback on the stork-dev mailing list (https://lists.isc.org/mailman/listinfo/stork-dev). We would also like to hear whether the documentation is adequate and accurate. Please open tickets in the Stork GitLab project for bugs, documentation omissions and errors, and enhancement requests. We want to hear from you even if everything worked. ## Support Professional support for Stork will become available once it reaches the 1.0 milestone. Existing ISC customers that consider themselves *very* early adopters may get involved in the development process, including roadmap, features planning, and early testing, but the software maturity level does not constitute a typical professional service before the 1.0 milestone. Free best-effort support is provided by our user community via a mailing list. Information on all public email lists is available at https://www.isc.org/mailinglists/. If you have any comments or questions about working with Stork, please share them to the stork-dev List (https://lists.isc.org/mailman/listinfo/stork-dev). Bugs and feature requests may be submitted via GitLab at https://gitlab.isc.org/isc-projects/stork/issues. ## Changes The following summarizes changes and important upgrade notes since the Stork 0.4.0 release. ``` * 37 [bug] marcin Improved shared network detection mechanism to take into account the family of the subnets belonging to the shared network. This prevents the issue whereby two IPv4 and IPv6 subnets belonging to separate shared networks having the same name would be shown as belonging to the same shared network in the UI. (Gitlab #180) * 36 [func] godfryd Added presenting IP addresses utilization within subnets and subnet statistics, e.g. a number of assigned addresses, in the UI (subnets and shared networks pages). Statistics are fetched from the monitored Kea apps periodically and can be manually refreshed in the UI. (Gitlab #178, #185) * 35 [func] marcin Corrected a bug in the Stork server which caused failures when parsing prefix delegation pools from the Kea configurations. The Server subsequently refused to monitor the Kea apps including prefix delegation pools. (Gitlab #179) * 34 [func] godfryd Added support for Prometheus & Grafana in the demo installation. Added preconfigured Prometheus & Grafana containers to docker-compose. Added Kea and BIND 9 Prometheus exporters. Implementated Kea exporter in Go and embedded it in Stork Agent. It is based on kea_exporter in python: https://github.com/mweinelt/kea-exporter Implemented DHCP simulator as web app for the demo installation. Internally it starts perfdhcp for selected subnet with indicated parameters. (Gitlab #167) * 33 [func] marcin New data model is now used by the server to hold the information about the subnets and shared networks. There is no visible change to the UI yet. This change mostly affects how the data is stored in the database. (Gitlab #172) * 32 [func] marcin Created data model for shared networks, subnets and pools and implemented mechanism to match configurations of Kea apps with these structures in the database. This mechanism is not yet used by the server when adding new apps via the UI. (Gitlab #165) * 31 [func] godfryd Added querying lease stats from Kea apps periodically. Stats are not yet presented in the UI. (Gitlab #166) * 30 [func] marcin Created data model for services and implemented a mechanism to to automatically associate a new Kea application with a High Availability service when the application is configured to use High Availability. This mechanism is not yet used by the server when the Kea application is added via the UI. The usage of this mechanism will be added in the future tickets. (Gitlab #137) * 29 [func] godfryd Added initial support for DHCP shared networks. They are presented on dedicated page. Subnets page now is also presenting subnets that belong to shared networks. (Gitlab #151) ``` Thank you again to everyone who assisted us in making this release possible. We look forward to receiving your feedback.