Send kea-dev mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
https://lists.isc.org/mailman/listinfo/kea-dev
or, via email, send a message with subject or body 'help' to
[email protected]
You can reach the person managing the list at
[email protected]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of kea-dev digest..."
Today's Topics:
1. Kea YANG NETCONF support & build from source (ISC Kea)
2. Re: Kea YANG NETCONF support & build from source (Andrei Pavel)
----------------------------------------------------------------------
Message: 1
Date: Mon, 27 Jun 2022 18:47:36 +0200
From: ISC Kea <[email protected]>
To: [email protected]
Subject: [kea-dev] Kea YANG NETCONF support & build from source
Message-ID: <[email protected]>
Content-Type: text/plain; charset="utf-8"
Hello everyone and Kea developers :-),
I am new to ISC Kea. I am interested in building and using ISC Kea with
support for YANG and NETCONF.
My first questions: is it still a thing in 2022? Is it still relevant? Is
the support of NETCONF/YANG still on the roadmap of Kea?
Are Kea developers working on this feature? Are there plans to update and
improve docuementation about this feature?
I saw this YANG/NETCONF feature in ISC Kea documentation, as well as in
several blog posts:
* 2016:
https://www.isc.org/blogs/ietf-hackathon-in-berlin-kea-and-yangnetconf/
* 14 Dec 2018: https://www.isc.org/blogs/kea-1-5/
I was NOT able to find any pre-built Kea package with NETCONF/YANG support
on the official ISC repo.
https://cloudsmith.io/~isc/repos/
Then I was inspired by this Kea post which was probably written in 2019 (or
before).
https://kb.isc.org/docs/building-a-kea-testbed-with-netconf
This gives a step by step procedure to achieve using YANG/NETCONF with ISC
Kea.
It was a nice start, but this documentation seems outdated and obsolete for
some steps (example : daemon sysrepod does not seem to exist anymore).
Then, I understood that in order to build ISC Kea from source with
option "--with-libyang
--with-sysrepo", I need the following dependencies (in that order):
libyang
libyang-cpp
sysrepo
sysrepo-cpp
zlib
libssh
libnetconf2
netopeer2
Most of those dependencies are found here: https://github.com/CESNET/.
Currently, I am working on building each of the previous components
(libyang, libyang-cpp, sysrepo, sysrepo-cpp, zlib, libssh, libnetconf2,
netopeer2).
I do that by using a multi-stage build in a containeur with "podman build".
Each stage I build a component and reuse it in the next stage.
My current biggest struggle is to make sure all those dependencies are at
the right version.
I also struggled with the version of CMake. Example : "libyang-cpp" need a
version of CMake that is newer than the one on the Debian apt mirror.
But I was able to install the proper version of CMake.
Then I needed C++ packages (for "libyang-cpp" and "sysrepo-cpp", docktest
or trompeloeil).
I install them with conan C++ package manager.
But even with these precautions, I was still missing some things.
For example, "libyang-cpp" were crashing, probably because I was not using
the devel branch but a precise TAG.
Or later, the Kea build ./configure script was not able to find
"sysrepo-cpp", even though it was build successfuly (I think).
Therefore, I need some guidances about the support of NETCONF in Kea.
Thank you for your time reading this post. I hope you can help me
understand a few thing!
Do you have a Slack or a chat?
--
A Kea (new) user
PS: Do not worry about the strange email adresses, I am simply using an
email alias handler from SimpleLogin: https://simplelogin.io/.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<https://lists.isc.org/pipermail/kea-dev/attachments/20220627/b3aec78a/attachment-0001.htm>
------------------------------
Message: 2
Date: Mon, 27 Jun 2022 22:32:35 +0300
From: Andrei Pavel <[email protected]>
To: [email protected]
Subject: Re: [kea-dev] Kea YANG NETCONF support & build from source
Message-ID: <[email protected]>
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Hi there,
Kea currently supports libyang1 and the associated sysrepo version. You
can find exact versions and instructions on how to install them from
sources in the Kea Administrator's Manual:
https://kea.readthedocs.io/en/kea-2.1.6/arm/integrations.html?highlight=yang#yang-netconf.
--with-libyang and --with-sysrepo need to point to the respective
installations, or they can be passed as-is if libyang and sysrepo were
installed in their default locations, without having a prefix set at
build time as mentioned here:
https://kea.readthedocs.io/en/latest/arm/install.html?highlight=libyang#build-requirements.
Be careful if compilation is seemingly successful. There is currently a
bug that causes Kea to not report an error if there is a problem with
the dependencies, you can follow it here:
https://gitlab.isc.org/isc-projects/kea/-/issues/2143. Until that gets
fixed, look at config.report after running ./configure to check if
libyang and sysrepo were succesfully compiled in. If they were not,
check config.log for a meaningful error. You can check other known
issues by following the "netconf" label in Gitlab:
https://gitlab.isc.org/isc-projects/kea/-/issues?scope=all&state=opened&label_name[]=netconf.
We try to stay compatible with all other dependencies as they are
released and made available by various operating systems. libyang and
sysrepo are not readily packaged by all supported OSs and if they are,
the versions vary significantly, along with their APIs that Kea uses.
For that reason, although not impossible, it's difficult for Kea to
support all versions and also for Kea to be packaged with these
dependencies, so we proceed in increments until the situation becomes
more stable.
--
Best regards!
Andrei Pavel, ISC
On 27/06/2022 19:47, ISC Kea wrote:
> Hello everyone and Kea developers :-),
>
> I am new to ISC Kea. I am interested in building and using ISC Kea
> with support for YANG and NETCONF.
>
> My first questions: is it still a thing in 2022? Is it still relevant?
> Is the support of NETCONF/YANG still on the roadmap of Kea?
> Are Kea developers working on this feature? Are there plans to update
> and improve docuementation about this feature?
>
> I saw this YANG/NETCONF feature in ISC Kea documentation, as well as
> in several blog posts:
> * 2016:
> https://www.isc.org/blogs/ietf-hackathon-in-berlin-kea-and-yangnetconf/
> * 14 Dec 2018: https://www.isc.org/blogs/kea-1-5/
>
> I was NOT able to find any pre-built Kea package with NETCONF/YANG
> support on the official ISC repo.
> https://cloudsmith.io/~isc/repos/
>
> Then I was inspired by this Kea post which was probably written in
> 2019 (or before).
> https://kb.isc.org/docs/building-a-kea-testbed-with-netconf
> This gives a step by step procedure to achieve using YANG/NETCONF with
> ISC Kea.
> It was a nice start, but this documentation seems outdated and
> obsolete for some steps (example : daemon sysrepod does not seem to
> exist anymore).
>
> Then, I understood that in order to build ISC Kea from source with
> option "--with-libyang --with-sysrepo", I need the following
> dependencies (in that order):
> libyang
> libyang-cpp
> sysrepo
> sysrepo-cpp
> zlib
> libssh
> libnetconf2
> netopeer2
>
> Most of those dependencies are found here: https://github.com/CESNET/.
>
> Currently, I am working on building each of the previous components
> (libyang, libyang-cpp, sysrepo, sysrepo-cpp, zlib, libssh,
> libnetconf2, netopeer2).
> I do that by using a multi-stage build in a containeur with "podman
> build".
> Each stage I build a component and reuse it in the next stage.
>
> My current biggest struggle is to make sure all those dependencies are
> at the right version.
> I also struggled with the version of CMake. Example : "libyang-cpp"
> need a version of CMake that is newer than the one on the Debian apt
> mirror.
> But I was able to install the proper version of CMake.
>
> Then I needed C++ packages (for "libyang-cpp" and "sysrepo-cpp",
> docktest or trompeloeil).
> I install them with conan C++ package manager.
>
> But even with these precautions, I was still missing some things.
> For example, "libyang-cpp" were crashing, probably because I was not
> using the devel branch but a precise TAG.
> Or later, the Kea build ./configure script was not able to find
> "sysrepo-cpp", even though it was build successfuly (I think).
>
> Therefore, I need some guidances about the support of NETCONF in Kea.
>
> Thank you for your time reading this post. I hope you can help me
> understand a few thing!
> Do you have a Slack or a chat?
>
> --
> A Kea (new) user
>
> PS: Do not worry about the strange email adresses, I am simply using
> an email alias handler from SimpleLogin: https://simplelogin.io/.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<https://lists.isc.org/pipermail/kea-dev/attachments/20220627/0189f1c0/attachment.htm>
------------------------------
Subject: Digest Footer
_______________________________________________
kea-dev mailing list
[email protected]
https://lists.isc.org/mailman/listinfo/kea-dev
------------------------------
End of kea-dev Digest, Vol 79, Issue 3
**************************************