/onos-ztp

Zero-Touch-Provisioning subsystem for ONOS (µONOS Architecture)

Primary LanguageGoApache License 2.0Apache-2.0

onos-ztp

Build Status Go Report Card License Coverage Status GoDoc

Zero-Touch Provisioning subsystem built using the µONOS architecture.

Design Objectives

Setting up and managing network infrastructure devices often requires elaborate procedures to be followed in order to maintain network integrity. The goal of this subsystem is to ease this burden for the operators and to make the lifecycle management of network infrastructure devices simpler, faster and more predictable.

This is accomplished by allowing the operators to predefine various classes or roles for the devices in the network and manage their configurations and pipeline definitions on per-class basis, thus increasing consistency and reducing toil.

This subsystem allows the operators to manage the role class configurations and pipeline definitions and in turn apply to the network devices through the onos-config and onos-control subsystems, respectively.

More documentation to be added.

Running onoz-ztp

The current implementation of the ZTP subsystem uses local file system storage for the role configuration; this is only temporary.

To start the server simply run:

> go run github.com/onosproject/onos-ztp/cmd/onos-ztp

You may then use the ONOS CLI ztp commands from the consolidated ONOS CLI program, e.g.

> onos ztp get roles
> onos ztp add role test/samplejson/leaf.json
> onos ztp add role test/samplejson/spine.json
> onos ztp get role leaf
> onos ztp remove role spine