# ONES Orchestration

## Why do we need Network Orchestration?

Orchestration refers to tasks or actions required to achieve a set of objectives for your Network Infrastructure operations

A centralized application like ONES translates these objectives into a network configuration template, applies and monitors to validate the operational efficiency and functionality

<figure><img src="https://content.gitbook.com/content/OrvCJf2APqIxUU9MzPWN/blobs/tAff68U1pXcH0bz9Hyy4/png_20230206_154811_0000.png" alt=""><figcaption></figcaption></figure>

Automated tasks are performed on your Network Fabric in a purposeful order and each step is verified for success before moving to the next

## ONES Orchestration - Overview

ONES Orchestration function, referred to as Fabric Manager (FM), lets you compose, deploy, and validate network configurations across any SONiC, be it a Community version or a Vendor distro.

As part of the initial release, ONES Orchestration supports to&#x20;

* Create and configure CLOS topology for ToR, Leaf, Spine, and Super-Spine layers&#x20;
* Apply and validate configurations pre- and post-deployment&#x20;
* Compare running configs against applied configs at any point&#x20;
* Upgrade devices with a single click via ZTP or custom NOS images
* Restore & Backup configuration feature
* Support Spectrum-X Orchestration
* Yaml-based config for VXLAN, MCLAG, BGP IP CLOS & EVPN(L2VPN), EVPN Multihoming, L3 EVPN Symmetric IRB, L3EVPN symmetric IRB with MCLAG.
* RoCE configuration parameters supported
* Automate Configuration of interfaces, layer 3 interfaces, BGP-unnumbered and Common Services like NTP, SNMP, SYSLOG etc.

ONES Orchestration use cases are configured using a set of pre-defined YAML-based templates on ONES Web User Interface

<figure><img src="https://content.gitbook.com/content/OrvCJf2APqIxUU9MzPWN/blobs/9voW7MHYPW3qGN5rb4n0/Screenshot%202025-12-12%20at%201.48.55%E2%80%AFPM.png" alt=""><figcaption></figcaption></figure>

## FMCLI

### Fabric Manager CLI

FMCLI is an Industry standard Command Line Interface

Once the user installs Orchestrator Agent (Fabric Manager Agent) on the device, it enables FMCLI

FMCLI provides a user interface to configure all the open standard protocols and is user-friendly

To use FMCLI, the user can run **fmcli** command on the device to enter in the configuration mode and can configure the protocols or any other required feature

**Example of BGP config using fmcli**

```log
admin@fmcli:~$ fmcli
fmcli# configure terminal 
fmcli(config)# router bgp 1001
fmcli(config-router)# neighbor 10.10.10.1 remote-as 100
...
...
```

<details>

<summary>Supported FMCLI Features</summary>

* Zero Touch Provisioning
* Image Management
* Configuration Management
* Interface Management
* VLAN's
* Spanning Tree Protocol
* VXLAN
* L2 Forwarding Database
* LLDP
* LACP
* DHCP Relay
* IP Management
* ARP
* PING
* Traceroute
* Routing
* BGP\*
* NTP
* SYSLOG
* Platform Details
* SFLOW
* NAT
* Forward Error Correction
* BFD
* SNMP
* VRF
* AAA & TACACS
* Drop Counters
* ERSPAN
* IP Based ACL
* Prefix-list
* EVPN Multihoming
* Route-map&#x20;
* RoCE

</details>

### NetOps API

NetOps API can be used to integrate into customer-running applications, and can be used to perform the Day 1 and Day N configuration, Using NetOps API a user can do all the configurations and can also perform the Partial Configuration

#### Few Operations can be done By NetOps API

* Day-1 Operations: intent upload
* SONiC NOS upgrade
* Device Reboot&#x20;
* Difference between the Golden Config and running configuration
* Backup Configuration
* Replace Config&#x20;
  * If config is done by the ONES then only the user can use this replace option to modify the config.
* ZTP Upgrade

{% hint style="info" %}
For more Details on NetOps API check [OVD.ai](https://www.ovd.ai/)&#x20;
{% endhint %}
