SEBA 2.0-alpha Release Notes
Major new features to SEBA include the following:
Technology profiles provide technology specific data to devices. The NEM and Voltha are technology-agnostic and treat profiles as opaque data, which is passed through the system to the appropriate devices. The NEM was extended with data modeling to allows these opaque profiles to be attached to subscribers on a per-subscriber basis. Profiles may be configured in the NEM via TOSCA, gRPC API, or the NEM's graphical user interface. Due to the opaque nature of the data, configuration using TOSCA is likely the most convenient mechanism.
Speed (Bandwidth) Profiles
Bandwidth profiles allow upstream and downstream bandwidth specifications to be created and attached to subscribers on a per-subscriber basis. Modeling to manage these profiles was created in the NEM, the sadis server was extended to report these profiles, and ONOS extended to retrieve the data using sadis. As with Technology Profiles, Speed Profiles may also be configured through the NEM via TOSCA, gRPC API, or the NEM GUI.
The workflow was modified to allow the administrator to persistently disable an ONU, preventing the workflow from re-enabling that ONU automatically.
CORD Platform Improvements
SEBA transitioned from the CORD 6.1 platform to the CORD 7.0 platform, which has the following major changes:
New command-line interface (cordctl)
A new command-line interface was created,
cordctl, that administrators may use to manage
the NEM. This tool provides an alternate interface to many of the functions that
may also be done using the NEM GUI.
corctl is written in the go programming language
and installs to an administrator's computer as a single binary.
The NEM API was extended to provide additional data about versioning and database
operational status, which can be viewed using
Backup and Restore
Backup and Restore features have been added for the NEM data model. These features
may be invoked using the
cordctl tool described above, or invoked by other third-party
tools using the NEM's gRPC API. Backup stores the contents to a file that is downloaded
to the administrator's computer, and restore uploads that file and uses it to replace the
current database contents.
In Service Software Upgrade (ISSU)
In Service Software Upgrade of NEM services allows new services to be added or existing services to be upgraded on a live deployment. The NEM is paused while this upgrade occurs. Live data is migrated from the old version of the data model to the new version. Unwanted services may be subsequently unloaded and their data discarded.
NEM modeling cleanup and validation tools
Several obsolete models were removed from the NEM's core data model. Validation was
implemented in the
xproto language that is used to describe models within the data
model to promote consistent use of fields and options. An analysis was performed on
the use of declarative and feedback state, and tools were created to make this
analysis easier for developers.
Base image changes
The base image for several NEM-related components was changed from Ubuntu to Alpine in order to promote smaller container sizes.
TOSCA Loader improvements
The TOSCA loader was modified to retry internally rather than relying on Kubernetes as a retry mechanism. This results in faster and more predictable deployments.
The following improvements were made to the GUI:
The GUI was improved to hide fields such as backend_status and policy_status for models that do not require those fields.
Performance issues with Chrome browsers were resolved.
Issues with broken navigation between related models were resolved.
SEBA-in-a-Box has been extended to allow easy configuration of multiple Ponsim OLTs, ONUs, and RGs.
A gRPC API was implemented for BBSIM that allows information about simulated devices to be retrieved and updated, as well as to trigger simulated alarms.
The following FCAPS improvements were made:
Kafka-topic-exporter was updated to use a configuration file, and to use logging consistent with other SEBA components.
The operational status of the RADIUS accounting server is collected, published to Kafka, and processed by kafka-topic-exporter, where it is then made available in Prometheus on the NEM.
Field naming of various event payloads was made more consistent.
Periodic ONU Test actions were enabled to collect optical data from ONUs and publish it to Kafka.
The following component versions comprise the SEBA 2.0 Release:
ONOS and NEM
xosproject/att-workflow-driver-synchronizer:1.2.3 xosproject/tosca-loader:1.3.0 xosproject/kubernetes-synchronizer:1.2.1 xosproject/tosca-loader:1.3.0 confluentinc/cp-kafka:5.0.1 gcr.io/google_samples/k8szk:v3 registry:2.7.1 quay.io/coreos/etcd:v3.2.18 quay.io/coreos/etcd:v3.2.18 quay.io/coreos/etcd:v3.2.18 quay.io/coreos/etcd-operator:v0.9.3 quay.io/coreos/etcd-operator:v0.9.3 quay.io/coreos/etcd-operator:v0.9.3 onosproject/onos:1.13.9 docker.elastic.co/beats/filebeat-oss:6.4.2 opencord/sadis-server:1.1.0 xosproject/fabric-synchronizer:2.2.1 xosproject/fabric-crossconnect-synchronizer:1.2.1 xosproject/onos-synchronizer:2.1.1 xosproject/rcord-synchronizer:1.3.2 xosproject/tosca-loader:1.3.1 xosproject/volt-synchronizer:2.2.4 xosproject/chameleon:3.3.0 xosproject/xos-core:3.2.9 postgres:10.3-alpine xosproject/xos-gui:1.0.6 xosproject/xos-tosca:1.3.0 xosproject/xos-rest-gw:2.0.2
gcr.io/google_containers/defaultbackend:1.4 tpdock/freeradius:2.2.9 voltha/voltha-netconf:voltha-1.7 quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.10.2 voltha/voltha-ofagent:voltha-1.7 voltha/voltha-cli:voltha-1.7 voltha/voltha-voltha:voltha-1.7 voltha/voltha-envoy:voltha-1.7
aaa: 1.9.0 sadis: 3.1.0 olt: 3.0.1 dhcpl2relay: 1.6.0 Kafka: 1.1.0
openolt: voltha-1.7.0 (use Debian package openolt-1_7_0.deb)