YumaPro Packages
There are several variants of YumaPro SDK in binary form. The installation is similar for all packages.
Packages are organized by release train (e.g., 19.10, 20.10, 21.10).
Note
The release train identifier represents the year and month of the initial release, similar to Ubuntu.
This numbering will change in a future release to use the YumaPro SEMVER numbering instead. This is more compliant with Linux packaging conventions.
The <version#> in the package name is the monthly version number
The first monthly release is in October (e.g., 23.10-1)
A snapshot release will be identified by its snapshot sequence (e.g. 23.10-1.1)
In most cases the latest version of the SDK should be used.
Binary Packages
There are several binary distributions available, depending on the license.
Refer to this feature comparison chart for details on the Core and Advanced Feature Sets.
Within the YumaPro download site, there are several folders with the same structure.
There is a directory for each release (e.g.
21.10-3).There is a directory for each platform in this directory (e.g.,
u1804). Select the package based on the required CPU architecture (e.g.amd64).
yumapro-sdk-basic
Basic Feature Set
No Posix Threads
This package is obsolete and no longer available to new customers
yumapro-sdk-core
Core Feature Set
No Posix Threads
yumapro-sdk
Advanced Feature Set
No Posix Threads
yumapro-sdk-eval
This is an evaluation version of the SDK:
Advanced Feature Set
No Posix Threads
yumapro-pthreads-basic
Basic Feature Set
With Posix Threads
This package is obsolete and no longer available to new customers
yumapro-pthreads-core
Core Feature Set
With Posix Threads
yumapro-pthreads
Advanced Feature Set
With Posix Threads
With yp-client Support
yumapro-pthreads-eval
This is an evaluation version of the SDK:
Advanced Feature Set
With Posix Threads
With yp-client Support
yumapro-snmp
This package contains the full SDK with the Simple Network Management Protocol (SNMP) supported.
Advanced Feature Set
No Posix Threads
SNMP Protocol
yumapro-gnmi
This package contains the full SDK with the gNMI and gRPC protocols supported.
Advanced Feature Set
No Posix Threads
Contains the yp-gnmi server distribution
Debian Packages
The Debian Packaging system is supported. Files with the ".deb" extension are Debian packages.
RPM Packages
The RPM Packaging system is supported. RPM packages are provided for selected platforms that do not support Debian Packages. Files with the ".rpm" extension are RPM packages.
Supported Linux Platforms
Each Linux-specific binary package is specific to a Linux distribution and CPU type.
The list of supported distributions and CPUs change over time. The current support is listed above, refer to Supported Distributions and Architectures
EVAL Version Restrictions
The evaluation version of YumaPro packages has some usage restrictions.
EVAL Version Expires in 65 Days
Most programs in the yumapro-sdk-eval and yumapro-pthreads-eval packages will stop working 65 days after the build date of the package. Binary packages are updated every month, so it should be possible to download a new package version before the 65 day limit is reached.
Error: EVAL version has expired
If the server is started with --log-level='debug4', then the version and build date will be printed at the start of the log file.
Example build-date:
version: 23.10-5-EVAL (23.5.0)
build-date: Feb 5 2024
EVAL Version of netconfd-pro Accepts 500 Requests
The evaluation server will stop accepting client requests after 500 NETCONF requests and 500 RESTCONF requests. The server will not shut down. Instead, an error will be returned for any client request.
The server must be manually restarted by Control-C or a signal.
Example: rpc- error returned when limit is reached
<?xml version="1.0" encoding="UTF-8"?>
<rpc-reply message-id="500"
xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"
xmlns:ncx="http://netconfcentral.org/ns/yuma-ncx"
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<rpc-error>
<error-type>rpc</error-type>
<error-tag>operation-failed</error-tag>
<error-severity>error</error-severity>
<error-app-tag>no-access</error-app-tag>
<error-path>/nc:rpc/nc:get</error-path>
<error-message xml:lang="en">request limit reached in evaluation version</error-message>
<error-info>
<error-number>398</error-number>
</error-info>
</rpc-error>
</rpc-reply>
Installing YumaPro SDK Binary Packages
Download the Correct YumaPro Package
Navigate to https://www.yumaworks.com/dld and log in with the credentials provided by YumaWorks.
Select a Package To Download
The root directory contains a number of directories, depending on the YumaPro license.
Documentation
Documentation is available online:
Install the Package
On Debian systems:
sudo dpkg -i yumapro-sdk-21.10-3.u1804.amd64.deb
On RPM systems:
sudo dnf install yumapro-sdk-21.10-3.fc34.x86_64.rpm
To quickly test the install run the server to just display its version:
> /usr/sbin/netconfd-pro --version
Starting netconfd-pro...
Copyright (c) 2008-2012, Andy Bierman, All Rights Reserved.
Copyright (c) 2012-2021, YumaWorks, Inc., All Rights Reserved.
netconfd-pro version 21.10-3-3fcf
>
To see which files are installed in more detail refer to Appendix: Installed Files at the end of this document.
Installing YumaPro SDK from Source Code
To install YumaPro SDK from source files, install the developer versions of the External Packages listed previously. Navigate to the YumaPro top level directory. The file "README" describes how to build YumaPro SDK and the build variables available. Below is an example. It is best to build, install, and if needed uninstall using the same build variables.
make EVERYTHING=1 USE_WERROR=1 DEBUG=1
sudo make install EVERYTHING=1 USE_WERROR=1 DEBUG=1
Note
If Server source code is used (e.g., yumapro-server2), the
yangcli-pro/yp-shell source code is not included and
EVERYTHING=1 will not work.
Substitute EVERYTHING=1 with the features to include such as WITH_RESTCONF=1.
Refer to the YumaPro Source Code Guide for more details.
Uninstalling YumaPro SDK
There are two ways to uninstall YumaPro SDK, depending on how the SDK was installed.
Uninstall a binary package
For installations from a binary package (.deb or .rpm), use the system package manager to remove it.
The package name to remove is the prefix at the beginning of the installer file name.
Sample installer file names:
yumapro-sdk-basic-20.10-12.2.u2004.amd64.deb
yumapro-sdk-basic-20.10-12.2.fc34.x86_64.rpm
Package name for both examples:
yumapro-sdk-basic
Ubuntu / Debian:
sudo dpkg --purge yumapro-sdk-basic
Fedora / RPM:
sudo rpm -e yumapro-sdk-basic
Uninstall a source build
For installations from source code, use the 'uninstall' target with 'make' and use the same build variables that were used during installation.
Template:
sudo make <build-variables> uninstall
Example:
sudo make EVERYTHING=1 DEBUG=1 DEBUG2=1 USE_WERROR=1 uninstall
Note
If the SDK was originally installed with:
sudo make EVERYTHING=1 DEBUG=1 DEBUG2=1 USE_WERROR=1 install
then use the same variables for uninstall (replace 'install' with 'uninstall').
Removing Files Not Needed By The Server
Installing yumapro-sdk and yumapro-pthreads SDK packages includes host platform developer tools that are not used by the server on a runtime platform.
Warning
This section is intended for runtime platforms where only 'netconfd-pro' is needed. Do not remove these files from a development system.
The file locations shown below are typical for Ubuntu and may be different on the platform. Refer to Appendix: Installed Files for a complete list.
Configuration sample files (/etc)
The configuration files installed in /etc/yumapro are samples and can be
deleted:
netconfd-pro-sample.conf
yangcli-pro-sample.conf
yangdiff-pro-sample.conf
yangdump-pro-sample.conf
SDK binaries (/usr/bin)
Some SDK tools installed in /usr/bin can be deleted:
make_sil_bundle
make_sil_dir_pro
make_sil_sa_bundle
make_sil_sa_dir
yangcli-pro
yangdiff-pro
yangdump-pro
yangdump-sdk
SDK headers (/usr/include)
All include files installed in /usr/include/yumapro can be deleted:
/usr/include/yumapro/*