Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
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
Automated tasks are performed on your Network Fabric in a purposeful order and each step is verified for success before moving to the next
12Hours
5Minutes
180
1Day
10Minutes
180
1Week
1Hour 10Minutes
180
2Weeks
2Hours 20Minutes
180
Time Series
Average between 2 data points
Data Points
Reference
1Hour
30sec
120
2Hours
40sec
180
4Hours
1Minute 20sec
180
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
Create and configure CLOS topology for ToR, Leaf, Spine, and Super-Spine layers
Apply and validate configurations pre- and post-deployment
Compare running configs against applied configs at any point
Upgrade devices with a single click via ZTP or custom NOS images
Restore & Backup configuration feature
Yaml-based config for VXLAN, MCLAG, BGP IP CLOS & EVPN(L2VPN), EVPN Multihoming, L3 EVPN Symmetric IRB, L3EVPN symmetric IRB with MCLAG.
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
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
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
Day-1 Operations: intent upload
SONiC NOS upgrade
Device Reboot
Difference between the Golden Config and running configuration //running & applied configuration
Backup Running Configuration
Replace Config
If config is done by the ONES then only the user can use this replace option to modify the config.
ZTP Upgrade
Open Networking Enterprise Suite (ONES) is a Network Orchestration, Visibility, and Assurance solution for multi-vendor and multi-NOS operated Network Infrastructure. ONES provides a one-stop solution from delivering deep visibility into your datacenter networks to extending 24x7 support functions for SONiC. It also hosts a powerful analytics engine that assists users to identify network issues and troubleshoot their networks, in case of common network anomalies and disruptions.
ONES uses Auto-discovery for SONiC devices and a YAML or CSV-based template for adding non-SONiC devices during the onboarding process and continuously collects streaming telemetry data from them to provide insights on;
Data Center Inventory
Network State
Platform and System Health
Control and Data Plane resource Utilisation
ONES monitors various control and data plane metrics to provide these insights.
ONESv2.1 application has the capability to trigger notifications via Slack app notifications when certain user-defined threshold values are breached.
In data centre operations, a rule engine with alerts for various metrics is essential for proactive monitoring and management of critical components and services. Rule Engine pushes the configured rule notification in case any device breaches the threshold value configured under the rule to SLACK Channel & Zendesk Support page.
Let's see the different types of rule engine metrics for specific Entity/features in a data centre environment
CPU and Memory Utilisation
Fan and PSU LED status
Traffic Bandwidth
ASIC Routes
ONES orchestration provide network admins to automate the fabric configuration using configuration templates for provisioning physical interfaces, layer 3 configuration for building IP-CLOS fabric using
BGP as a routing protocol including BGP-unnumbered
Symmetric/Asymmetric IRB
BGP Peering with PO
L2/L3 MC-LAG
ONES orchestration not only configures the fabric but also make sure the Fabric is operational by doing verifying the configuration at every stage.
ONES provides north bound API access for configurations originating from external orchestration tools.
A data lake is a centralized repository that allows you to store vast amounts of structured, semi-structured, and unstructured data in its raw format. Unlike traditional data warehouses where data is stored in a structured manner, a data lake retains the data in its native format until it's needed for analysis or processing. ONES provide the capability to store the RAW data of all the Metrics to Cloud and then user will be able to use that RAW data for any deployment or any other use cases.
Storage of Diverse Data Types: A data lake can store various types of data, including structured data (like relational databases), semi-structured data (like JSON, XML), and unstructured data (like documents, images, videos). This flexibility allows organizations to ingest and store data from different sources without the need for extensive preprocessing.
Scalable and Cost-Effective Storage: Data lakes are typically built on scalable storage systems, such as cloud-based object storage (e.g., Amazon S3, Azure Data Lake Storage) or Splunk . These systems can efficiently handle large volumes of data and offer cost-effective storage solutions.
Schema-on-Read Approach: In contrast to traditional data warehouses that use a schema-on-write approach (where data must be structured and conform to a predefined schema before storage), data lakes adopt a schema-on-read approach. This means that data is stored in its original form, and the schema is applied at the time of data retrieval or analysis. This flexibility allows users to apply different schemas and interpretations to the same dataset based on their analytical needs.
In summary, ONE DL provides a flexible and scalable platform for storing, managing, and analyzing diverse data types at scale. By leveraging a schema-on-read approach and supporting various analytics tools, ONES DL facilitate advanced data analytics and enable organizations to derive valuable insights from their data assets. However, proper governance, security, and metadata management are crucial to ensure the usability, reliability, and integrity of data lakes.
admin@fmcli:~$ fmcli
fmcli# configure terminal
fmcli(config)# router bgp 1001
fmcli(config-router)# neighbor 10.10.10.1 remote-as 100
...
...Traffic Utilisation
Software Compliance
Health Services
Traffic Errors and Discard Counters
BGP Neighbours flapping notification
Device down status
Link flap status
Device SSD Memory Utilization, Health and Temperature
ROCE Counters
EVPN MultiHoming
Layer2 Leaf-Spine (L2/L3 Mode)
Rack-to-Rack Deployment
BGP Peering over MC-LAG PeerLink
BGP Peering using separate Link between MC-LAG Peers
SFLOW
DHCP Relay
SAG / SVI
NTP, SNMP, SYSLOG
Incremental Config update for L2VNI/L3VNI
Enhanced backup and restore options via UI
Enhanced API support - Config Replace
Support for Big Data Processing and Analytics: Data lakes serve as a foundational component for big data analytics and processing. Users can perform various analytics tasks, including exploratory data analysis, data mining, machine learning, and real-time analytics, directly on the data lake. Tools like Apache Spark, Apache Hive, and Presto are commonly used for querying and processing data stored in data lakes.
Support for Data Discovery and Self-Service Analytics: Data lakes enable data discovery and self-service analytics, empowering users to explore and analyze data without extensive dependencies on IT teams. Data scientists, analysts, and business users can access relevant data directly from the data lake, speeding up insights generation and decision-making processes.
ONES is a support application for SONiC stack. It is designed for customer's engineering team such as SRE’s, HW and SW engineering teams for their daily network diagnosis and troubleshooting needs. In addition to that ONES exposes the API to integrate with external tools or customer homegrown applications.
ONES application provides HTTPs over standard port 443 supporting both self-signed and CA signed certificates.
HTTPS Support CA Signed
HTTPS Self Signed
ONES utilizes gRPC infrastructure to communicate with switch agents. TLS (Transport Layer Security) is the primary security protocol used by gRPC to secure communication between the client and the server. TLS provides authentication, confidentiality, and integrity of data. Authentication is achieved using digital certificates, which verify the identity of the client and the server.
With an added extra layer of security, ONESv2.1 support Certificate based communication between switches and ONES Controller, and all the metrics will be streamed using the certificate-based encryption
Transport Layer Security (TLS) is a crucial protocol that ensures secure communication between ONES Controller and Agent, Whenever Agent will register to ONES server and further it will start sending the update it will encapsulate all the metrics and will do the encryption based on certificate provided at the time of installation, by using this all the communication will be encrypted between ONES agent and ONES controller TLS relies on digital certificates issued by trusted Certificate Authorities (CAs) to authenticate servers and sometimes clients. These certificates validate the identity of the entities involved in the communication and establish trust in the encrypted connection.
Role Based Access
ONES provide RBAC support for creating dedicated user accounts. it has a superadmin account which can manage these user accounts for control and permissions
Secure Access to Application
ONES Application provides HTTPS over standard port 443 supporting both self-signed and CA-signed certificates
Secure Access to switches
Auto-discovery communication between Agent and collector using a secure channel(SSL/TLS) with certificates (self-signed and CA-signed certificates
API Access
ONES Application provides HTTPS over standard port 443 supporting both self-signed and CA-signed certificates, the API is available via time-bound authentication tokens.
Installation Allow user to add DataLake end point
Agent installation Allow user to add one more controller IP without reinstallation of ONES-Agent
New Topology Page with more filters
Device SSD Details
Temperature
Health
SSD Resource Check
Temperature
Health
Memory
Yaml Config Illustrator
Multivendor SONiC Support
Improved Session Management
Seamless Copy-Paste Functionality
SSD Temperature
SSD Health
SSD Memory
Device Down
Integration of Splunk
Integration of Amazon S3
Used Memory
Total Memory
Device Reachability status
Cloud Service (DataLake)
Splunk
Amazone S3
License Page modification
CISCO NXOS (GRPC)
Over 70 Pre-Validated Templates for Streamlined Network Operations
PFC Counters
Queue Transmit Counters
ONES Installation follows the below steps in the order sequence of:
License Readiness
Preparing and Installing ONES Application machine
Installing ONES Agents on SONiC Switches for Orchestrator and Telemetry
Enabling OpenConfig on non-SONiC Switches for Telemetry
After installation of ONES application user needs to contact AVIZ support to generate a trail license, trail license works for 8 devices and upto 30 days a customer can use.
ONES Application License (As per device count)
Telemetry Visibility (Monitor, inventory, analytics)
Add/remove Non-SONiC devices via YAML or CSV
Support (Zendesk)- Ability to open a ticket with inventory dump
Syslog access, Console/SSH access for device
To obtain a license, contact support@aviznetworks.com providing the below details;
License Duration - In Years (1-5)
Devices Count - 8, 16, 32, 64, 128, 256, 512 or 1024
ONES installation ID
Email ID: (For Account creation)
In the current release, ONES can support managing up to 1024 devices. For ONES Application Installation, the system hardware requirements vary based on the number of devices to manage;
These ports has to be enable on ONES Controller
These ports has to be enable on Device(Switch)
HTTPS port has to be enable if a firewall is present in between User-machine and ONES-Controller
SSH is enabled
Network Reachability from ONES Application
OpenConfig feature is enabled (for non-SONiC Switches)
Google Chrome version 107 or later
Mozilla Firefox version 106 or later
Support up to 64 devices
128
Support up to 128 devices
256
Support up to 256 devices
512
Support up to 512 devices
1024
Support up to 1024 devices
Free(30 Days Trial)
Support up to 8 devices
128GB
6 TB or more
512
x86/x64 based,
32-core CPU
256GB
12 TB or more
1024
x86/x64 based,
64-core CPU
512GB
20 TB or more
sudo apt-get install docker-compose
docker-compose version
Install Python3
sudo apt-get install python3
python3 –-version
Install Python3-pip
sudo apt-get install python3-pip
pip3 –-version
Install Paramiko
sudo apt-get install python3-paramiko
pip show paramiko
Install SCP-Client
sudo pip3 install scp
pip show scp
8080
stream-processer
8093
ksqldb-server
8088
kafka-connect
8083
schema-registry
8081
broker
29092, 9101, 9092
Zookeeper
2181
ONES Collector
50053
8/16/32/64
x86/x64 based,
16-core CPU
32GB
160GB/320GB/640GB/1.2 TB
128
x86/x64 based,
16-core CPU
64GB
3 TB or more
256
Ubuntu 18.0 or later
docker, docker-compose
python3, python3-pip
paramiko
scp
Ubuntu Server
Installer file (Version 18 or higher)
lsb_release -a
Update to latest packages
sudo apt-get update
NA
Install Docker
sudo apt-get install docker.io
docker ps
ONES Collector
50053
Switch Access over SSH
22
ONES Monitoring
50052
gNMI Gateway (Telemetry)
9339
ONES Telemetry Database
5432
ONES Orchestrator
8787
ONES Orchestrator Database
2345
pty-server
8885
ONES Web GUI
443
x86/x64 based,
32-core CPU
Install Docker-compose
API-Server
200K events/sec: Start with a minimum of an m5.4xlarge instance.
Up to 400K events/sec: Scale up to an m5.8xlarge instance.
Up to 600K events/sec: Opt for an m5.12xlarge instance.
For higher volumes: Continue scaling in similar increments.
Copy the ONE-DL package to AWS Instance
Untar the ONE-DL package
Modify the .env file with given input
Run ./one-dl-multitenant-installer.sh
Document the `instance_id`, `vpc_id`, `region`, and `security_group_id` of the provisioned instance.ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ tar -xvf one-dl.tar.gz
docker-compose.yml
one-dl-multitenant-installer.sh
.envZOOKEEPER_SERVER_VALUE= //Public DNS
KAFKA_SERVER_VALUE= //Public DNS
SCHEMA_REGISTRY_SERVER_VALUE=
INSTANCE_ID= //Instance ID
VPC_ID= //VPC ID
REGION= //REGION ID
SG_ID= //SG IDsudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
apt-cache policy docker-ce
sudo apt install docker-ce
mkdir -p ~/.docker/cli-plugins/
curl -SL https://github.com/docker/compose/releases/download/v2.3.3/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose
docker compose version
aviz@aviz % ssh -i ones-dl-qa.pem ubuntu@34.215.5.89
Welcome to Ubuntu 22.04.3 LTS (GNU/Linux 6.2.0-1018-aws x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/pro
System information as of Thu Mar 7 06:17:12 UTC 2024
System load: 0.01513671875 Processes: 224
Usage of /: 1.0% of 247.92GB Users logged in: 1
ZOOKEEPER_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
KAFKA_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
SCHEMA_REGISTRY_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
INSTANCE_ID=i-06e36f82c35173cc9
VPC_ID=vpc-09a64a3439e9c1022
REGION=us-west-2
SG_ID=sg-0057cdb5b97e1d218
~
".env" 7L, 323B 1,1 All
Memory usage: 0% IPv4 address for docker0: 172.17.0.1
Swap usage: 0% IPv4 address for ens5: 172.31.28.5
Expanded Security Maintenance for Applications is not enabled.
39 updates can be applied immediately.
25 of these updates are standard security updates.
To see these additional updates run: apt list --upgradable
7 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm
Last login: Thu Mar 7 06:10:37 2024 from 18.237.140.163
ubuntu@ip-172-31-28-5:~$
ubuntu@ip-172-31-28-5:~$ pwd
/home/ubuntu
ubuntu@ip-172-31-28-5:~$ cd ONES-DL-CLOUD/
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ pwd
/home/ubuntu/ONES-DL-CLOUD
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ ls
one-dl.tar.gz
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ tar -xvf one-dl.tar.gz
docker-compose.yml
one-dl-multitenant-installer.sh
.env
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ vi .env
ZOOKEEPER_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
KAFKA_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
SCHEMA_REGISTRY_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
INSTANCE_ID=i-06e36f82c35173cc9
VPC_ID=vpc-09a64a3439e9c1022
REGION=us-west-2
SG_ID=sg-0057cdb5b97e1d218
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ cat .env
ZOOKEEPER_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
KAFKA_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
SCHEMA_REGISTRY_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
INSTANCE_ID=i-06e36f82c35173cc9
VPC_ID=vpc-09a64a3439e9c1022
REGION=us-west-2
SG_ID=sg-0057cdb5b97e1d218
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ cp .env .env-backup
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ cat .env-backup
ZOOKEEPER_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
KAFKA_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
SCHEMA_REGISTRY_SERVER_VALUE=ec2-35-93-19-159.us-west-2.compute.amazonaws.com
INSTANCE_ID=i-06e36f82c35173cc9
VPC_ID=vpc-09a64a3439e9c1022
REGION=us-west-2
SG_ID=sg-0057cdb5b97e1d218
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ ls
docker-compose.yml one-dl-multitenant-installer.sh one-dl.tar.gz
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ ./one-dl-multitenant-installer.sh
SHELL=/bin/bash
REGION=us-west-2
KAFKA_SERVER_VALUE=ec2-34-215-5-89.us-west-2.compute.amazonaws.com
PWD=/home/ubuntu/ONES-DL-CLOUD
LOGNAME=ubuntu
XDG_SESSION_TYPE=tty
SCHEMA_REGISTRY_SERVER_VALUE=ec2-34-215-5-89.us-west-2.compute.amazonaws.com
MOTD_SHOWN=pam
HOME=/home/ubuntu
LANG=C.UTF-8
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
VPC_ID=vpc-09a64a3439e9c1022
LC_TERMINAL=iTerm2
SSH_CONNECTION=43.224.130.156 61180 172.31.28.5 22
LESSCLOSE=/usr/bin/lesspipe %s %s
XDG_SESSION_CLASS=user
TERM=xterm-256color
LESSOPEN=| /usr/bin/lesspipe %s
USER=ubuntu
SG_ID=sg-04c3752b777d8f77e
LC_TERMINAL_VERSION=3.4.16
SHLVL=2
XDG_SESSION_ID=5
LC_CTYPE=C.UTF-8
XDG_RUNTIME_DIR=/run/user/1000
SSH_CLIENT=43.224.130.156 61180 22
XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop
ZOOKEEPER_SERVER_VALUE=ec2-34-215-5-89.us-west-2.compute.amazonaws.com
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
INSTANCE_ID=i-01300eb6edb18273b
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
SSH_TTY=/dev/pts/1
OLDPWD=/home/ubuntu
_=/usr/bin/env
us-west-2 i-01300eb6edb18273b vpc-09a64a3439e9c1022 sg-04c3752b777d8f77e
Error response from daemon: No such container: zookeeper
Error response from daemon: No such container: kafka
Error response from daemon: No such container: schema-registry
Error response from daemon: No such container: kafka-connect
Error response from daemon: No such container: zookeeper
Error response from daemon: No such container: kafka
Error response from daemon: No such container: schema-registry
Error response from daemon: No such container: kafka-connect
{
"Return": true,
"SecurityGroupRules": [
{
"SecurityGroupRuleId": "sgr-07f887d736a7c773c",
"GroupId": "sg-04c3752b777d8f77e",
"GroupOwnerId": "259789323334",
"IsEgress": false,
"IpProtocol": "tcp",
"FromPort": 29092,
"ToPort": 29092,
"CidrIpv4": "0.0.0.0/0"
}
]
}
{
"Return": true,
"SecurityGroupRules": [
{
"SecurityGroupRuleId": "sgr-0d446cf43dbf8c55a",
"GroupId": "sg-04c3752b777d8f77e",
"GroupOwnerId": "259789323334",
"IsEgress": false,
"IpProtocol": "tcp",
"FromPort": 9092,
"ToPort": 9092,
"CidrIpv4": "0.0.0.0/0"
}
]
}
{
"Return": true,
"SecurityGroupRules": [
{
"SecurityGroupRuleId": "sgr-08d752b5cbfea8b1c",
"GroupId": "sg-04c3752b777d8f77e",
"GroupOwnerId": "259789323334",
"IsEgress": false,
"IpProtocol": "tcp",
"FromPort": 2181,
"ToPort": 2181,
"CidrIpv4": "0.0.0.0/0"
}
]
}
{
"Return": true,
"SecurityGroupRules": [
{
"SecurityGroupRuleId": "sgr-058962812f2650b4e",
"GroupId": "sg-04c3752b777d8f77e",
"GroupOwnerId": "259789323334",
"IsEgress": false,
"IpProtocol": "tcp",
"FromPort": 8083,
"ToPort": 8083,
"CidrIpv4": "0.0.0.0/0"
}
]
}
{
"Return": true,
"SecurityGroupRules": [
{
"SecurityGroupRuleId": "sgr-03a801549ac17a74d",
"GroupId": "sg-04c3752b777d8f77e",
"GroupOwnerId": "259789323334",
"IsEgress": false,
"IpProtocol": "tcp",
"FromPort": 8081,
"ToPort": 8081,
"CidrIpv4": "0.0.0.0/0"
}
]
}
{
"Return": true,
"SecurityGroupRules": [
{
"SecurityGroupRuleId": "sgr-01ae4abe9d99c0086",
"GroupId": "sg-04c3752b777d8f77e",
"GroupOwnerId": "259789323334",
"IsEgress": false,
"IpProtocol": "tcp",
"FromPort": 8181,
"ToPort": 8181,
"CidrIpv4": "0.0.0.0/0"
}
]
}
[+] Running 10/10
✔ zookeeper 9 layers [⣿⣿⣿⣿⣿⣿⣿⣿⣿] 0B/0B Pulled 5.1s
✔ 23828d760c7b Pull complete 0.6s
✔ e2670537dceb Pull complete 0.5s
✔ 3c059ccfa418 Pull complete 0.6s
✔ a23d33d59f2a Pull complete 0.7s
✔ 842a648f5439 Pull complete 0.9s
✔ 278244c5561f Pull complete 0.9s
✔ 0ab51e87b8dc Pull complete 1.0s
✔ 26ff518a75d1 Pull complete 1.4s
✔ 050c7bc3a5c4 Pull complete 1.1s
[+] Running 1/1
✔ Container zookeeper Started 4.2s
[+] Running 12/12
✔ kafka 11 layers [⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿] 0B/0B Pulled 9.4s
✔ fe36fc382320 Pull complete 0.7s
✔ 4250354b4fb7 Pull complete 2.1s
✔ c4c5f447179d Pull complete 0.3s
✔ 17fe3a92262f Pull complete 0.6s
✔ 5420596c14ab Pull complete 1.1s
✔ 0e55377ebe37 Pull complete 0.9s
✔ da7039bb2113 Pull complete 1.1s
✔ d389b3791c2e Pull complete 1.4s
✔ c24709eccb2a Pull complete 1.4s
✔ ad79ffd84e00 Pull complete 2.4s
✔ 218229bf30d9 Pull complete 1.7s
[+] Running 1/1
✔ Container kafka Started 5.7s
[+] Running 12/12
✔ schema-registry 11 layers [⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿] 0B/0B Pulled 17.9s
✔ fe36fc382320 Already exists 0.0s
✔ 4250354b4fb7 Already exists 0.0s
✔ c4c5f447179d Already exists 0.0s
✔ 17fe3a92262f Already exists 0.0s
✔ 5420596c14ab Already exists 0.0s
✔ 0e55377ebe37 Already exists 0.0s
✔ da7039bb2113 Already exists 0.0s
✔ d389b3791c2e Already exists 0.0s
✔ c24709eccb2a Already exists 0.0s
✔ e69ded016b1a Pull complete 8.9s
✔ 83e8ec805f43 Pull complete 0.3s
[+] Running 1/1
✔ Container schema-registry Started 18.7s
[+] Running 21/21
✔ kafka-connect 20 layers [⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿] 0B/0B Pulled 18.1s
✔ a49367d57626 Pull complete 0.7s
✔ eeec2f37f4a0 Pull complete 2.8s
✔ ae805807db54 Pull complete 1.4s
✔ c553584e96cc Pull complete 1.1s
✔ 28769e081b94 Pull complete 2.4s
✔ 151cf144f79d Pull complete 1.9s
✔ 04292bb11042 Pull complete 2.3s
✔ c2e0c70921ea Pull complete 2.7s
✔ e8d7f71a6ca4 Pull complete 2.9s
✔ eb27eb7b8f05 Pull complete 4.7s
✔ 9bb8b7d5f6a0 Pull complete 3.3s
✔ 302eaef771e0 Pull complete 11.7s
✔ 1d0d5b44b6f1 Pull complete 3.8s
✔ 22df7873ee50 Pull complete 4.4s
✔ 4f4fb700ef54 Pull complete 4.7s
✔ 972adc085ab6 Pull complete 7.0s
✔ c4f994822767 Pull complete 6.1s
✔ 70547799762d Pull complete 7.0s
✔ 3f0c034e271c Pull complete 7.5s
✔ b6195a937e7b Pull complete 7.7s
[+] Running 1/1
✔ Container kafka-connect Started 4.6s
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$
ubuntu@ip-172-31-28-5:~/ONES-DL-CLOUD$ sudo su
root@ip-172-31-28-5:/home/ubuntu/ONES-DL-CLOUD# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ab8aa46cc746 avizdock/kafka-connect:latest "/etc/confluent/dock…" 28 seconds ago Up 23 seconds (health: starting) kafka-connect
346522f4baf5 confluentinc/cp-schema-registry "/etc/confluent/dock…" About a minute ago Up About a minute schema-registry
23c50c44bc5b confluentinc/cp-kafka:latest "/etc/confluent/dock…" 2 minutes ago Up 2 minutes kafka
633eba10034d zookeeper "/docker-entrypoint.…" 3 minutes ago Up 3 minutes zookeeper
root@ip-172-31-28-5:/home/ubuntu/ONES-DL-CLOUD#CISCO NXOS support its own way to stream telemetry data using GRPC, we can enable GRPC and can get offered metrics from the device
switch-1# configure terminal
switch-1(config)#
switch-1# feature grpc
switch-1(config)#
switch(config)# grpc use-vrf defaultswitch# show run grpc
!Command: show running-config grpc
!Running configuration last done at: Mon Jan 29 13:59:36 2024
!Time: Mon Jan 29 14:06:27 2024
version 9.3(9) Bios:version 04.18
feature grpc
grpc use-vrf defaultswitch# show grpc gnmi service statistics
=============
gRPC Endpoint
=============
Vrf : management
Server address : [::]:50051
Status : Running - certificate expired
Cert notBefore : Jan 10 07:07:03 2024 GMT
Cert notAfter : Jan 11 07:07:03 2024 GMT
Max concurrent calls : 8
Listen calls : 1
Active calls : 0
Number of created calls : 32
Number of bad calls : 29
Subscription stream/once/poll : 15/0/0
Max gNMI::Get concurrent : 5
Max grpc message size : 8388608
gNMI Synchronous calls : 20496
gNMI Synchronous errors : 0
gNMI Adapter errors : 0
gNMI Dtx errors : 0
=============
gRPC Endpoint
=============
Vrf : default
Server address : [::]:50051
Status : Running - certificate expired
Cert notBefore : Jan 10 07:07:03 2024 GMT
Cert notAfter : Jan 11 07:07:03 2024 GMT
Max concurrent calls : 8
Listen calls : 1
Active calls : 0
Number of created calls : 1
Number of bad calls : 0
Subscription stream/once/poll : 0/0/0
Max gNMI::Get concurrent : 5
Max grpc message size : 8388608
gNMI Synchronous calls : 0
gNMI Synchronous errors : 0
gNMI Adapter errors : 0
gNMI Dtx errors : 0
switch# show grpc gnmi rpc summary
=============
gRPC Endpoint
=============
Vrf : management
Server address : [::]:50051
Status : Running - certificate expired
Cert notBefore : Jan 10 07:07:03 2024 GMT
Cert notAfter : Jan 11 07:07:03 2024 GMT
Capability rpcs : 20474
Capability errors : 0
Get rpcs : 22
Get errors : 0
Set rpcs : 0
Set errors : 0
Resource Exhausted : 0
Option Unsupported : 0
Invalid Argument : 0
Operation Aborted : 0
Internal Error : 0
Unknown Error : 0
RPC Type State Last Activity Cnt Req Cnt Resp Client
--------------- ---------- -------------- ---------- ---------- ----------------------------------------
Subscribe Listen 01/29 08:42:41 0 0
=============
gRPC Endpoint
=============
Vrf : default
Server address : [::]:50051
Status : Running - certificate expired
Cert notBefore : Jan 10 07:07:03 2024 GMT
Cert notAfter : Jan 11 07:07:03 2024 GMT
Capability rpcs : 0
Capability errors : 0
Get rpcs : 0
Get errors : 0
Set rpcs : 0
Set errors : 0
Resource Exhausted : 0
Option Unsupported : 0
Invalid Argument : 0
Operation Aborted : 0
Internal Error : 0
Unknown Error : 0
RPC Type State Last Activity Cnt Req Cnt Resp Client
--------------- ---------- -------------- ---------- ---------- ----------------------------------------
Subscribe Listen 01/10 08:12:32 0 0
switch#
switch# show grpc gnmi transactions
=============
gRPC Endpoint
=============
Vrf : management
Server address : [::]:50051
Status : Running - certificate expired
Cert notBefore : Jan 10 07:07:03 2024 GMT
Cert notAfter : Jan 11 07:07:03 2024 GMT
RPC DataType Session Time In Duration(ms) Status
------------ ---------- --------------- -------------------- ------------ ------
Capabilities - 0 01/29 12:04:07 0 0
Capabilities - 0 01/29 12:03:47 0 0
Capabilities - 0 01/29 12:03:35 0 0
Get ALL 3698131864 01/29 08:43:34 1186 0
...
...
...
switch# show telemetry yang direct-path cisco-nxos-device
1) Cisco-NX-OS-device:System/lldp-items
2) Cisco-NX-OS-device:System/mac-items
3) Cisco-NX-OS-device:System/intf-items
4) Cisco-NX-OS-device:System/procsys-items
5) Cisco-NX-OS-device:System/ipqos-items/queuing-items/policy-items/out-items
6) Cisco-NX-OS-device:System/ch-itemsWork with Aviz Sales/Support contact to create an account on Aviz Networks Support Portal
Login to with your account credentials
Click on the Downloads section, under ONES, click to download ONES Release 2.1
Copy ONES Release 2.1 package (qcow2) to KVM Hypervisor Server
If your host server has Ubuntu Desktop and virt-manager installed you can use it to deploy the VM. Make sure you can start the Virtual Machine Manager and that it connects successfully to the local hypervisor.
Creating a VM with virt-manager is very straightforward, Use the following steps to deploy the ONES-Application
File -> New Virtual Machine -> Import existing disk image -> Forward
Now the ONES Application is ready to use
Create an XML configuration file from the following template using vi
Create a Linux bridge configuration file (bridged-network.xml) for libvirt from the following template
Define the Linux bridge for the VM
Start the VM
If you see a permission error run the virsh command with sudo may fix the issue
Check the VM status
Click on the Downloads section, under ONES, and click to download ONES Release 2.1
ONES-2.1.0 OVA support below Versions of VMware Family
Login to ESXI >> Create / Register VM
Choose Deploy a virtual machine from an OVF or OVA file >> NEXT
Give it a Valid Name >> Click to select Files or drag/drop (upload from the download folder)
Choose the downloaded OVA package >> NEXT
Choose preferred storage to run ONES-2.1.0 VM >> NEXT
Choose a Network Adapter to provide DHCP IP to ONES App (Management interface/Eth0) >> NEXT
Verify all the inputs >> FINISH
ONES is Ready to use >> Power On the ONES VM
Once logging into the server CLI using below credentials, please continue with the next steps that is Ones Agent Installation
Username: aviz
Password: Aviz@123python3 vm-hdd-expand.py<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
<name>ONES_VM01</name>
<memory unit='KiB'>4194304</memory>
<currentMemory unit='KiB'>4194304</currentMemory>
<vcpu placement='static'>4</vcpu>
<resource>
<partition>/machine</partition>
</resource>
<os>
<type arch='x86_64' machine='pc-i440fx-1.5'>hvm</type>
<boot dev='hd'/>
</os>
<features>
<acpi/>
<apic/>
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='writeback'/>
<source file='/home/oper/taas_vm/ones.qcow2' />
<target bus='virtio' dev='vda'/>
</disk>
<serial type='pty'>
<source path='/dev/pts/3'/>
<target port='0'/>
</serial>
<!-- Management interface eth0 -->
<interface type='network'>
<model type='e1000' />
<source network='br0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x00' function='0x0'/>
</interface>
<controller type='usb' index='0'/>
<memballoon model='virtio'>
<alias name='balloon0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</memballoon>
</devices>
</domain>Line #2 The Name of the VM
Line #3 The amount of System Memory for the VM
Line #4 The amount of System Memory for the VM
Line #5 The number of vCPU Core for the VM
Line #25 The Path to the qcow2 VM image file
Line #35 The name of the Linux bridge on the host machine<network>
<name>br0</name>
<forward mode="bridge" />
<bridge name="br0" />
</network>Line #4 the name of the Linux bridge on the host machine#Execute the below command to attach the VM to the Linux Bridge
sonic@sonic-39:~$ virsh net-define bridged-network.xml
sonic@sonic-39:~$ virsh net-start br0
sonic@sonic-39:~$ virsh net-autostart br0
sonic@sonic-39:~$ virsh net-list
Name State Autostart Persistent
----------------------------------------------------------
br0 active yes yes
sonic@sonic-39:~$ virsh create <VM XML configuration file>
#sonic@sonic-39:~$ virsh create ones.xml
#Domain ONES_VM01 created from ones.xml
#sonic@sonic-39:~$
sonic@sonic-39:~$ virsh list
Id Name State
----------------------------------------------------
8 ONES_VM01 running
sonic@sonic-39:~$ Username: aviz
Password: Aviz@123Deep Telemetry for ASIC and Switch Hardware
Device Inventory details on
Network Operating System (NOS)
Firmware versions - ONIE, BIOS, and CPLD
Hardware SKU, Model, ASIC, and Serial Number
Platform Components – Fan, PSU, Sensors
Link/Interface Health – Speed, Connectivity, Transceivers/Cables
Inventory Operations
Adding/Removing devices using YAML or CSV file
Agent Status Monitoring
Device Monitoring
Device Up/Down State based on Agent and Agent-less
Region and Zone Mapping
Device Roles – Access, Leaf-Spine, Super-Spine
Device Storage monitoring
SSD Temperature
SSD health
SSD memory
Network Compliance with version checks on
Telemetry Agent
Orchestrator Agent
ONIE, NOS, and Linux Distros versions
Resource Trends
CPU and Memory Utilization
PSU and Fan Readings
ASIC Capacity for Routes and ACLs
Software and Kernel Route capacity
Packet Counters – IN/OUT, Errors/Discards
Topology View
Device Connectivity view across Roles and Location
Link/Connectivity Status
Device or Component failure count
Routing Protocol
BGP 2 Byte and 4 Byte AS
BGP Neighbors
Advertised and Received Prefixes
Local AS Number
VXLAN
MGLAG
LACP
RoCE
Orchestrator Use Cases
YAML-based Configuration push
Image Management via ZTP
BGP Numbered(IPv4 & IPv6) and Unnumbered Configuration
BGP Peering with Port-Channel
NTP, SNMP, SFLOW, and SYSLOG Configuration
VXLAN
Symmetric/Asymmetric IRB
L2/L3 MC-LAG
EVPN MultiHoming
Layer2 Leaf-Spine (L2/L3 Mode)
Leaf only Deployment
BGP Peering over MC-LAG PeerLink
BGP Peering using separate Link between MC-LAG Peers
DHCP Relay
SAG / SVI
Licensing
Application License
Telemetry Agent License
Orchestrator Agent License
User Management
Add/Edit/Delete User
Role Management
API Access for configurations originating from External Orchestration Tools
Rule Engine
Slack Channel for push notification
Zendesk ticket generation
Rules status
Cloud Integration for DL
Splunk
Amazon S3
ONES allows users to leverage pre-defined templates, and customize them for Ports, IPv4/IPv6 Routes, BGP-Unnumbered, and Switch Services (NTP, SNMP, SYSLOG, ZTP, etc.) functions
VMware ESXI
ESXi 7.0 U2
ESXi 7.0
ESXi 6.5
VMware Fusion
Fusion 13.x
Fusion 12.2.x
Fusion 12.x
VMware Workstation
Workstation 17.x
Workstation 16.2.x
Workstation 16.x
Navigate to Configurations >> Configure Devices
Allows you to configure new devices
Supports valid YAML files
You can download the sample YAML file, edit it, and upload it again with the desired configuration
While configuring the topology, users can utilize the "Visualize YAML" feature to preview the structure and layout.
Navigate to Configurations >> Configure Devices >> <Upload Valid YAML> >> Visualize YAML
NOTE: Follow the to know more about configuration and all the possible use cases.
This section explains how users can add/manage/remove the devices using ONES.
Navigate to Inventory >> Devices
Using this tab, user can:
Onboard the non-sonic(Agent-Less) device to the application using Add devices
Syslogs capture
Upgrade the device using Custom Upgrade
The user needs to make sure, The devices have a unique name, otherwise, there will issue while plotting the full topology view(Topology Page).
Agent-based devices auto-discover the ONES-App and get registered automatically on the ONES Inventory page
To Onboard the Agent-Less devices user needs to add them manually
Navigate to Inventory
This page gives the control to onboard the devices with two options
Add Devices using the YAML Editor
Upload the CSV file containing the device list
The movement user chooses CSV upload, then the YAML Editor will be disabled
Click on Add Devices
Upload Device Inventory using YAML Editor
Navigate to Inventory >> Devices >> Add Devices >> Use YAML
Cumulus: cumulus
Arista: arista
Cisco: cisco-nxos
SONiC: sonic
Make sure to use the correct indentation for the YAML files
Click Save & Apply
ONES Application is now ready to manage the added devices
Click on Add Devices
Upload Device Inventory using CSV File
Navigate to Inventory >> Devices >> Add Devices >> Use CSV
Use the below format to add devices to the application
Select CVS file to Upload >> Choose CSV file containing devices entry >>
Upload & Add
Role / Region: Shows the device roles and regions
SKU / ASIC: Shows the device hardware SKU and ASIC vendor
Port / Max Speed
Shows the number of ports per device and max port speed on the device
PSUs / Fans: Shows the total number of Power supplies and Fans present on a particular device
NOS Image: Shows the details of the network operating system running on the device and when it was last updated
ONIE Version: Shows which ONIE version is running on the device and when the last reboot time of the device
Agent Version / Network OS: Shows the agent version running on the device and the current active OS version on the device
Navigate to Inventory >> Devices >> Remove Devices
Choose the devices to be removed & confirm
once the user clicks on confirm, the Inventory page will remove the device
If the devices are agent-based they will get added again after some time, if the user wants to remove the agent-based devices, then the user needs to uninstall the agent from the device
Now the selected devices have been removed from the ONES application
This feature gives the control to upgrade the device to the new version
An HTTP image link is required to use the custom upgrade
Select any of the devices to upgrade to the new version
Click on Custom Upgrade
put the new Image URL and then Submit
It will show the status as In Progress
Using this page a user can directly upgrade the box
Select any of the devices to upgrade via ZTP
Click on Upgrade via ZTP
Click on Yes
Here we will see how we can reboot a device using
We have the option to choose one or multiple devices at a time to reboot
Choose one of the devices that we want to reboot
Click on Reboot
Click on Yes
In data centre operations, a rule engine with alerts for various metrics is essential for proactive monitoring and management of critical components and services. Let's see the different types of rule engine alerts for specific metrics in a data centre environment
CPU and Memory Alerts
Fan and Power Supply Unit Alerts
Traffic Bandwidth
ASIC IPv4 & IPv6 Routes
BGP Neighbour Alerts
Health Services
Device Down Alerts
SSD Health, temperature and memory usage alert
Device Queue counters
PFC counters
Traffic Errors and Discard Counters
frr and syncd services CPU utilization status
Rule Engine pushes the configured rule notification in case any device breaches the threshold value configured under the rule to
Slack channel
Zendesk Support ticket
To use Rule Engine feature User needs to setup first Slack channel integration or Zendesk Support integration
Reboot individual devices or multiple devices by selecting them in one click
Remove the devices
Complete Inventory can be downloaded in CSV format
Click on the number of ports to get a detailed view of all the ports on a particular device
Agent status / Last contact: Latest status of the Agent and when it was last communicated with that Agent.
Connect: Using this feature we directly get the CLI access of the device
SSH Connect
Console Connect
Details: This last option we can again use to get the details of the device
There are two types of Rule a user can configure
Entity Based
Allow a user to create Rules per device
Allow user to include or exclude the devices from the rule
Entity by Property
Allow a user to create Rules by using HwSKU, Role, OS Version across all the managed devices
Rule Name: The user can choose any related name
For: The user can choose 2 options
Metrics: Metrics depend on the above (For: Device/Interface) condition
Measure: Metrics are measured in three diff ways
MIN
When Measured Value is: This option allows a user to choose what condition has to match when the measured value is
EQ: Equal to
NEQ: Not Equal to
Notify: The user can choose the integrated SLACK Channel
Create Ticker: Zendesk Users can choose this to raise the Zendesk support ticket
Weekly Digest: Slack Users can choose this for Weekly Digest to SLACK Channel
Rule Name: The user can choose any related name
Filter: user can filter the rule for all managed devices by
HWSKU
Select: this option depends on the Filter category, possible values are
Select HWSKU :
Select ROLE :
When Measured Value is: This option allows a user to choose what condition has to match when the measured value is
EQ: Equal to
NEQ: Not Equal to
Notify: The user can choose the integrated SLACK Channel
Create Ticker: Zendesk Users can choose this to raise the Zendesk support ticket
Weekly Digest: Slack Users can choose this for Weekly Digest to SLACK Channel
inventory:
- ipAddress: "10.4.4.61"
layer: "Spine"
region: "San Jose"
azId: 1
brickId: 1
user: "admin"
password: "YourPaSsWoRd"
type: "cumulus"
- ipAddress: "10.4.4.62"
layer: "Spine"
region: "San Jose"
azId: 1
brickId: 1
user: "admin"
password: "YourPaSsWoRd"
type: "arista"
- ipAddress: "10.4.4.63"
layer: "Spine"
region: "San Jose"
azId: 1
brickId: 1
user: "admin"
password: "YourPaSsWoRd"
type: cisco-nxos
- ipAddress: "10.4.4.64"
layer: "Spine"
region: "San Jose"
azId: 1
brickId: 1
user: "admin"
password: "YourPaSsWoRd"
type: "sonic"
Device CPU Core Temperature
Device CPU Utilization
Device Down
Device Memory Utilization
Device Queue Transmit Counter
FAN Speed
Failed FANs
Failed PSUs
PSU Temperature
SSD Health
SSD Temeperature
SSD Used Memory Percent
frr CPU Utilization
syncd CPU Utilization
Interface Queue Transmit Counters
Traffic InDiscards
Traffic InErrors
Traffic OutDiscards
Traffic OutErrors
Traffic Rx Utilization
Traffic Tx Utilization
Transceiver Rx Power
Transceiver Temperature
Transceiver Tx Power
Transceiver Voltage
MAX
Period: Measured metrics can be verified with a buffer of a timer
5 min
10 min
15 min
30 min
1 hour
LE: Less than Equal to
GT: Greater than
LT: Less than
Critical Threshold: The user can set a Critical value on which push notification will be triggered
Warning Threshold: The user can set a Warning value on which push notification will be triggered
Stop notifying after: The user can choose a value of occurrence then it will not trigger the same in the next 24 hours
OS Version
For: The user can choose 2 options
Device CPU Core Temperature
Device CPU Utilization
Device Down
Device Memory Utilization
Device Queue Counter
FAN Speed
Failed FANs
Failed PSUs
PSU Temperature
SSD Health
SSD Temeperature
SSD Used Memory Percent
frr CPU Utilization
syncd CPU Utilization
Traffic InDiscards
Traffic InErrors
Traffic OutDiscards
Traffic OutErrors
Traffic Rx Utilization
Traffic Tx Utilization
Transceiver Rx Power
Transceiver Temperature
Transceiver Tx Power
Transceiver Voltage
Metrics: Metrics depend on the above (For: Device/Interface) condition
Measure: Metrics are measured in three diff ways
MIN
AVG
MAX
Period: Measured metrics can be verified with a buffer of a timer
5 min
10 min
15 min
30 min
1 hour
LE: Less than Equal to
GT: Greater than
LT: Less than
Critical Threshold: The user can set a Critical value on which push notification will be triggered
Warning Threshold: The user can set a Warning value on which push notification will be triggered
Stop notifying after: The user can choose a value of occurrence then it will not trigger the same in the next 24 hours
1. Create a Channel for ONES-App push notification
login to api.slack.com & choose Your apps
Create an App
Choose From scratch
Provide any App Name and choose the workspace where the user wants to get the push notification & Create App
Choose Incoming Webhook and Activate Incoming Webhooks & Add New Worbhook to workspace
Select the configured Channel & Allow
Copy the newly created webhook link
Open ONES-App and select Integration >> Messaging
Add Channel & Paste the Webhook URL
After saving it will be available to use while creating any rule using Rule Engine feature
ONES2.1 allows the use of DataLake, users can integrate 2 different platforms and ONES provides the capability to store the RAW data of all the Metrics in the Cloud and then the user will be able to use that RAW data for any deployment or any other use cases.
Splunk
Amazon S3
ONES DL provides a flexible and scalable platform for storing, managing, and analyzing diverse data types at scale. By leveraging a schema-on-read approach and supporting various analytics tools, ONES DL facilitate advanced data analytics and enables organizations to derive valuable insights from their data assets. However, proper governance, security, and metadata management are crucial to ensure the usability, reliability, and integrity of data lakes.
When a user creates a rule, and the threshold value is exceeded, alerts will be generated. These alerts will also be displayed on this page.
Notifications from the Alerts Page are always sent to:
Zendesk Support: Integrated Zendesk Support systems will receive all push notifications.
SLACK Channel: If integrated, notifications will also be sent to the configured SLACK channel.
Alert Page: It will always display the alerts on ONES Alert page
Alert Management
Count of alerts related to feature
Alert Name
First seen of the alert
Last seen of the alert
Expand Option is used to check the payload and total alerts
Time Scale Alert Updates
Users can choose the time range to check the more alerts
Alert Page allows a user to download the report in CSV format with a time range
1. Create a Channel for ONES-App push notification
login to api.slack.com & choose Your apps
Create an App
Choose From scratch
Provide any App Name and choose the workspace where the user wants to get the push notification & Create App
Choose Incoming Webhook and Activate Incoming Webhooks & Add New Worbhook to workspace
Select the configured Channel & Allow
Copy the newly created webhook link
Open ONES-App and select Integration >> Messaging
Add Channel & Paste the Webhook URL
After saving it will be available to use while creating any rule using Rule Engine feature
This section explains how large data centers can be designed seamlessly using ONES.
Most fabric orchestration solutions available today are complex and often difficult to understand. ONES provides simple and effective tools, such as predefined templates (YAML file), to configure data centers at scale. ONES allows a customized way of configuring devices that includes enhancements to the standard configuration.
Speed config for the Host Facing port should be updated before Orchestration if there is any change in the default speed config.
Ex: Interface speed is 25G, but you can use it with 10G Transceiver. In such cases, user needs to update speed.
Save Config:
Copy to File:
Restore Config: //If needed only
You need to provide the following inputs to configure the devices:
This section explains the device configuration procedures, that gets applied seamlessly across the entire fabric
Navigate to Configurations >> Devices
Click on the Configure Devices button in the top right corner. This opens a new screen with a sample device configuration. You can edit the configurations directly in the UI to make the desired changes. You can also download the sample YAML file by clicking on Download YAML button, provided at the bottom of the above screen, make new changes and upload the YAML file using Upload YAML button.
Inventory: Specify how many devices you want to add in any particular role - Super Spine, Spine, Leaf, and ToR.
Connectivity: Specify the parameters required to establish link connectivity such as:
Device switch ID: unique ID for every device, required to correctly render the topology
Switch name: hostname of the device
IP address: management address of the device
Autonomous System Number (ASN)
BGP: Specify if you want to enable regular BGP peering or BGP unnumbered peering.
PhysicalIfCfg: Enable or disable FEC and change the MTU settings on all the links being configured.
ASN: Assign a BGP ASN (Autonomous System Number) from the specified pool. Dynamic assigning ASN will be implemented in ONES release 2.0. For release 1.0, you need to specify the ASN under the device configuration, as shown in the sample YAML file.
IPv4Pool: Assign IP pools to different subnets. ONES automatically divides the subnets according to the number of available links.
ONES application uses IPv4 subnets for:
Interfaces
Loopbacks
Host interfaces
To configure BGP neighborship
IPv6Pool: Assign IPv6 subnet.
ONES application uses:
IPv6 subnet for interfaces
Subnets to configure BGP neighborship
Automatically advertise these subnets in BGP
NTP: Provide the NTP server address, to enable NTP. You can choose your desired timezone.
SYSLOG: Provide the SYSLOG server address, to enable SYSLOG.
SNMP: Provide the SNMP server address, to enable SNMP.
Parameters: Provide user the ability to enable VXLAN and related Parameters.
Navigate to Configurations >> Devices >> Configure Devices
Click on Apply Configs button in the bottom right corner of the above screen, to push the configs across the entire fabric.
ONES provides real-time updates when the devices are being configured and validates the configurations automatically to ensure the network is ready to use.
You will see the below screen, after the configurations are successfully verified:
With Few versions of FRR, when user gives reboot, existing config is erased and default config is pushed to FRR. This will lead to missing the configuration for users. below is the workaround config in this situation
Go inside BGP Container & Open docker_init.sh
Look for "Split" Keyword & Comment out the statemets inside that with if conditions
Add a new line which writes Service integrated in vtysh.conf
Configuration Page allows a user to connect to the device using console access or using SSH method too.
Navigate >> Configurations >> Devices >> Connect
User can choose SSH or console option to access the device.
Console Logs show the exact configuration loaded on the device and the overview of the config loaded as per YAML & Derived Host IP Range can be viewed from the "Derived_Config:" section
Navigate >> Configurations >> Devices >> Console Logs
Click on the Console Log of the device
This section describes the configuration feature of ONES using which you can check the applied and running configurations.
Navigate >> Configurations >> Devices >> Config
Click on Config
This section describes the compare configuration feature of ONES using which you can compare the applied and running configurations.
Navigate >> Configurations >> Devices >> Compare Configs
Compare Config
This page allows the user to compare applied configurations to the running configuration of a selected device.
The user should select only one device from the list and perform 'Compare Config' on this page, it may take several minutes to fetch the running configuration from the device
YAML Editor will appear with two windows comparing applied and running configurations as depicted in the below picture
The difference in configuration is highlighted with colour coding in the respective window of the configuration
This Section describe the use of Backup & Restore Configuration across all the managed devices
Navigate >> Configurations >> Devices >> Backup & Restore Configs
Using this feature, a user will be able to take multiple backups and will be able to restore the backup at any time.
Select Backup & Restore Configs
Give a Tag Name to the device & Select the device, the device you want to take a backup config
Submit the task
Once submitted the config will backup with the given name & can be used to restore the config at any time in future
Select Backup & Restore Configs
Select Restore Config
Click on the drop-down button of the device on which the user wants to restore the config
Select the backup a user wants to restore from the Backups Available list
Then Submit the backup & Click on Yes to confirm
The device should not have any IP, VLAN, Portchannel, BGP, SAG, or MCLAG config on any of the Interfaces to avoid overlapping during the orchestration and run into cleanup issues.
Post that, the user needs to save the config to a file, in case of any orchestration failure, or misconfiguration user can rollback to the saved config.
Update Speed:
Device Credentials: Username & Password.
MCLAG: Multichassis Link Aggregation
Links: links connected with another device
ONES automatically advertises these subnets in BGP
Africa/Bissau
Africa/Blantyre
Africa/Brazzaville
Africa/Bujumbura
Africa/Cairo
Africa/Casablanca
Africa/Ceuta
Africa/Conakry
Africa/Dakar
Africa/Dar_es_Salaam
Africa/Djibouti
Africa/Douala
Africa/El_Aaiun
Africa/Freetown
Africa/Gaborone
Africa/Harare
Africa/Johannesburg
Africa/Juba
Africa/Kampala
Africa/Khartoum
Africa/Kigali
Africa/Kinshasa
Africa/Lagos
Africa/Libreville
Africa/Lome
Africa/Luanda
Africa/Lubumbashi
Africa/Lusaka
Africa/Malabo
Africa/Maputo
Africa/Maseru
Africa/Mbabane
Africa/Mogadishu
Africa/Monrovia
Africa/Nairobi
Africa/Ndjamena
Africa/Niamey
Africa/Nouakchott
Africa/Ouagadougou
Africa/Porto-Novo
Africa/Sao_Tome
Africa/Timbuktu
Africa/Tripoli
Africa/Tunis
Africa/Windhoek
America/Adak
America/Anchorage
America/Anguilla
America/Antigua
America/Araguaina
America/Argentina/Buenos_Aires
America/Argentina/Catamarca
America/Argentina/ComodRivadavia
America/Argentina/Cordoba
America/Argentina/Jujuy
America/Argentina/La_Rioja
America/Argentina/Mendoza
America/Argentina/Rio_Gallegos
America/Argentina/Salta
America/Argentina/San_Juan
America/Argentina/San_Luis
America/Argentina/Tucuman
America/Argentina/Ushuaia
America/Aruba
America/Asuncion
America/Atikokan
America/Atka
America/Bahia
America/Bahia_Banderas
America/Barbados
America/Belem
America/Belize
America/Blanc-Sablon
America/Boa_Vista
America/Bogota
America/Boise
America/Buenos_Aires
America/Cambridge_Bay
America/Campo_Grande
America/Cancun
America/Caracas
America/Catamarca
America/Cayenne
America/Cayman
America/Chicago
America/Chihuahua
America/Ciudad_Juarez
America/Coral_Harbour
America/Cordoba
America/Costa_Rica
America/Creston
America/Cuiaba
America/Curacao
America/Danmarkshavn
America/Dawson
America/Dawson_Creek
America/Denver
America/Detroit
America/Dominica
America/Edmonton
America/Eirunepe
America/El_Salvador
America/Ensenada
America/Fort_Nelson
America/Fort_Wayne
America/Fortaleza
America/Glace_Bay
America/Godthab
America/Goose_Bay
America/Grand_Turk
America/Grenada
America/Guadeloupe
America/Guatemala
America/Guayaquil
America/Guyana
America/Halifax
America/Havana
America/Hermosillo
America/Indiana/Indianapolis
America/Indiana/Knox
America/Indiana/Marengo
America/Indiana/Petersburg
America/Indiana/Tell_City
America/Indiana/Vevay
America/Indiana/Vincennes
America/Indiana/Winamac
America/Indianapolis
America/Inuvik
America/Iqaluit
America/Jamaica
America/Jujuy
America/Juneau
America/Kentucky/Louisville
America/Kentucky/Monticello
America/Knox_IN
America/Kralendijk
America/La_Paz
America/Lima
America/Los_Angeles
America/Louisville
America/Lower_Princes
America/Maceio
America/Managua
America/Manaus
America/Marigot
America/Martinique
America/Matamoros
America/Mazatlan
America/Mendoza
America/Menominee
America/Merida
America/Metlakatla
America/Mexico_City
America/Miquelon
America/Moncton
America/Monterrey
America/Montevideo
America/Montreal
America/Montserrat
America/Nassau
America/New_York
America/Nipigon
America/Nome
America/Noronha
America/North_Dakota/Beulah
America/North_Dakota/Center
America/North_Dakota/New_Salem
America/Nuuk
America/Ojinaga
America/Panama
America/Pangnirtung
America/Paramaribo
America/Phoenix
America/Port-au-Prince
America/Port_of_Spain
America/Porto_Acre
America/Porto_Velho
America/Puerto_Rico
America/Punta_Arenas
America/Rainy_River
America/Rankin_Inlet
America/Recife
America/Regina
America/Resolute
America/Rio_Branco
America/Rosario
America/Santa_Isabel
America/Santarem
America/Santiago
America/Santo_Domingo
America/Sao_Paulo
America/Scoresbysund
America/Shiprock
America/Sitka
America/St_Barthelemy
America/St_Johns
America/St_Kitts
America/St_Lucia
America/St_Thomas
America/St_Vincent
America/Swift_Current
America/Tegucigalpa
America/Thule
America/Thunder_Bay
America/Tijuana
America/Toronto
America/Tortola
America/Vancouver
America/Virgin
America/Whitehorse
America/Winnipeg
America/Yakutat
America/Yellowknife
Antarctica/Casey
Antarctica/Davis
Antarctica/DumontDUrville
Antarctica/Macquarie
Antarctica/Mawson
Antarctica/McMurdo
Antarctica/Palmer
Antarctica/Rothera
Antarctica/South_Pole
Antarctica/Syowa
Antarctica/Troll
Antarctica/Vostok
Arctic/Longyearbyen
Asia/Aden
Asia/Almaty
Asia/Amman
Asia/Anadyr
Asia/Aqtau
Asia/Aqtobe
Asia/Ashgabat
Asia/Ashkhabad
Asia/Atyrau
Asia/Baghdad
Asia/Bahrain
Asia/Baku
Asia/Bangkok
Asia/Barnaul
Asia/Beirut
Asia/Bishkek
Asia/Brunei
Asia/Calcutta
Asia/Chita
Asia/Choibalsan
Asia/Chongqing
Asia/Chungking
Asia/Colombo
Asia/Dacca
Asia/Damascus
Asia/Dhaka
Asia/Dili
Asia/Dubai
Asia/Dushanbe
Asia/Famagusta
Asia/Gaza
Asia/Harbin
Asia/Hebron
Asia/Ho_Chi_Minh
Asia/Hong_Kong
Asia/Hovd
Asia/Irkutsk
Asia/Istanbul
Asia/Jakarta
Asia/Jayapura
Asia/Jerusalem
Asia/Kabul
Asia/Kamchatka
Asia/Karachi
Asia/Kashgar
Asia/Kathmandu
Asia/Katmandu
Asia/Khandyga
Asia/Kolkata
Asia/Krasnoyarsk
Asia/Kuala_Lumpur
Asia/Kuching
Asia/Kuwait
Asia/Macao
Asia/Macau
Asia/Magadan
Asia/Makassar
Asia/Manila
Asia/Muscat
Asia/Nicosia
Asia/Novokuznetsk
Asia/Novosibirsk
Asia/Omsk
Asia/Oral
Asia/Phnom_Penh
Asia/Pontianak
Asia/Pyongyang
Asia/Qatar
Asia/Qostanay
Asia/Qyzylorda
Asia/Rangoon
Asia/Riyadh
Asia/Saigon
Asia/Sakhalin
Asia/Samarkand
Asia/Seoul
Asia/Shanghai
Asia/Singapore
Asia/Srednekolymsk
Asia/Taipei
Asia/Tashkent
Asia/Tbilisi
Asia/Tehran
Asia/Tel_Aviv
Asia/Thimbu
Asia/Thimphu
Asia/Tokyo
Asia/Tomsk
Asia/Ujung_Pandang
Asia/Ulaanbaatar
Asia/Ulan_Bator
Asia/Urumqi
Asia/Ust-Nera
Asia/Vientiane
Asia/Vladivostok
Asia/Yakutsk
Asia/Yangon
Asia/Yekaterinburg
Asia/Yerevan
Atlantic/Azores
Atlantic/Bermuda
Atlantic/Canary
Atlantic/Cape_Verde
Atlantic/Faeroe
Atlantic/Faroe
Atlantic/Jan_Mayen
Atlantic/Madeira
Atlantic/Reykjavik
Atlantic/South_Georgia
Atlantic/St_Helena
Atlantic/Stanley
Australia/ACT
Australia/Adelaide
Australia/Brisbane
Australia/Broken_Hill
Australia/Canberra
Australia/Currie
Australia/Darwin
Australia/Eucla
Australia/Hobart
Australia/LHI
Australia/Lindeman
Australia/Lord_Howe
Australia/Melbourne
Australia/NSW
Australia/North
Australia/Perth
Australia/Queensland
Australia/South
Australia/Sydney
Australia/Tasmania
Australia/Victoria
Australia/West
Australia/Yancowinna
Brazil/Acre
Brazil/DeNoronha
Brazil/East
Brazil/West
CET
CST6CDT
Canada/Atlantic
Canada/Central
Canada/Eastern
Canada/Mountain
Canada/Newfoundland
Canada/Pacific
Canada/Saskatchewan
Canada/Yukon
Chile/Continental
Chile/EasterIsland
Cuba
EET
EST
EST5EDT
Egypt
Eire
Etc/GMT
Etc/GMT+0
Etc/GMT+1
Etc/GMT+10
Etc/GMT+11
Etc/GMT+12
Etc/GMT+2
Etc/GMT+3
Etc/GMT+4
Etc/GMT+5
Etc/GMT+6
Etc/GMT+7
Etc/GMT+8
Etc/GMT+9
Etc/GMT-0
Etc/GMT-1
Etc/GMT-10
Etc/GMT-11
Etc/GMT-12
Etc/GMT-13
Etc/GMT-14
Etc/GMT-2
Etc/GMT-3
Etc/GMT-4
Etc/GMT-5
Etc/GMT-6
Etc/GMT-7
Etc/GMT-8
Etc/GMT-9
Etc/GMT0
Etc/Greenwich
Etc/UCT
Etc/UTC
Etc/Universal
Etc/Zulu
Europe/Amsterdam
Europe/Andorra
Europe/Astrakhan
Europe/Athens
Europe/Belfast
Europe/Belgrade
Europe/Berlin
Europe/Bratislava
Europe/Brussels
Europe/Bucharest
Europe/Budapest
Europe/Busingen
Europe/Chisinau
Europe/Copenhagen
Europe/Dublin
Europe/Gibraltar
Europe/Guernsey
Europe/Helsinki
Europe/Isle_of_Man
Europe/Istanbul
Europe/Jersey
Europe/Kaliningrad
Europe/Kiev
Europe/Kirov
Europe/Kyiv
Europe/Lisbon
Europe/Ljubljana
Europe/London
Europe/Luxembourg
Europe/Madrid
Europe/Malta
Europe/Mariehamn
Europe/Minsk
Europe/Monaco
Europe/Moscow
Europe/Nicosia
Europe/Oslo
Europe/Paris
Europe/Podgorica
Europe/Prague
Europe/Riga
Europe/Rome
Europe/Samara
Europe/San_Marino
Europe/Sarajevo
Europe/Saratov
Europe/Simferopol
Europe/Skopje
Europe/Sofia
Europe/Stockholm
Europe/Tallinn
Europe/Tirane
Europe/Tiraspol
Europe/Ulyanovsk
Europe/Uzhgorod
Europe/Vaduz
Europe/Vatican
Europe/Vienna
Europe/Vilnius
Europe/Volgograd
Europe/Warsaw
Europe/Zagreb
Europe/Zaporozhye
Europe/Zurich
Factory
GB
GB-Eire
GMT
GMT+0
GMT-0
GMT0
Greenwich
HST
Hongkong
Iceland
Indian/Antananarivo
Indian/Chagos
Indian/Christmas
Indian/Cocos
Indian/Comoro
Indian/Kerguelen
Indian/Mahe
Indian/Maldives
Indian/Mauritius
Indian/Mayotte
Indian/Reunion
Iran
Israel
Jamaica
Japan
Kwajalein
Libya
MET
MST
MST7MDT
Mexico/BajaNorte
Mexico/BajaSur
Mexico/General
NZ
NZ-CHAT
Navajo
PRC
PST8PDT
Pacific/Apia
Pacific/Auckland
Pacific/Bougainville
Pacific/Chatham
Pacific/Chuuk
Pacific/Easter
Pacific/Efate
Pacific/Enderbury
Pacific/Fakaofo
Pacific/Fiji
Pacific/Funafuti
Pacific/Galapagos
Pacific/Gambier
Pacific/Guadalcanal
Pacific/Guam
Pacific/Honolulu
Pacific/Johnston
Pacific/Kanton
Pacific/Kiritimati
Pacific/Kosrae
Pacific/Kwajalein
Pacific/Majuro
Pacific/Marquesas
Pacific/Midway
Pacific/Nauru
Pacific/Niue
Pacific/Norfolk
Pacific/Noumea
Pacific/Pago_Pago
Pacific/Palau
Pacific/Pitcairn
Pacific/Pohnpei
Pacific/Ponape
Pacific/Port_Moresby
Pacific/Rarotonga
Pacific/Saipan
Pacific/Samoa
Pacific/Tahiti
Pacific/Tarawa
Pacific/Tongatapu
Pacific/Truk
Pacific/Wake
Pacific/Wallis
Pacific/Yap
Poland
Portugal
ROC
ROK
Singapore
SystemV/AST4
SystemV/AST4ADT
SystemV/CST6
SystemV/CST6CDT
SystemV/EST5
SystemV/EST5EDT
SystemV/HST10
SystemV/MST7
SystemV/MST7MDT
SystemV/PST8
SystemV/PST8PDT
SystemV/YST9
SystemV/YST9YDT
Turkey
UCT
US/Alaska
US/Aleutian
US/Arizona
US/Central
US/East-Indiana
US/Eastern
US/Hawaii
US/Indiana-Starke
US/Michigan
US/Mountain
US/Pacific
US/Samoa
UTC
Universal
W-SU
WET
Zulu
Commit the docker Changes
Backup & Restore Configs: using this user can take device config backup and can use later to restore the configuration
This option is used to connect to device via SSH
here user can get the console logs of the particular device
using this option user can get the details on the applied config and the intended config of the device
Compare the applied config vs running config on the selected device and highlight the diff changes, if any
Configure Devices
Allows to make the config changes directly in the in-built UI editor
Download YAML
Download the sample YAML file and make the required changes
Upload YAML
Upload the modified YAML file
Device configuration is not yet started
In case of the user has not applied any feature like (VXLAN, MCLAG and so on..)
Device configuration is in progress
The device configuration has failed. Move the cursor to the failed option to see the Error message.
Device configuration is completed successfully
Host Logs shows the exact configuration loaded on the device and the overview of the config loaded as per YAML
is used to configure or modify a configuration when we need to add several other devices with the same file
IPv4Pool:
Loopback: 19.168.10.0/24
LeafSpine: 20.168.10.0/24
LeafTor: 30.168.10.0/24
Host: 49.0.0.0/24root@Leaf-1:/home/admin# docker commit bgp
sha256:c67656393b902cf7bf514094a219eb75f5bf45340023848be51e26632344caa3sudo config save -ysudo cp /etc/sonic/config_db.json /host/backup_config_db.jsonsudo config reload /host/backup_config_db_json -y
sudo config save -ysudo cp /etc/sonic/config_db.json /host/backup_config_db.jsonsudo config reload /host/backup_config_db_json -yInventory:
SSpines: 2 #Define the count of devices in the SuperSpine role
Spines: 2 #Define the count of devices in the Spine role
Leafs: 2 #Define the count of devices in the Leaf role
Tors: 1 #Define the count of devices in the Tor roleConnectivity:
SSpine: [] #A role that does not have any device, presented as []
Spine: #Delcare all details, the device needs to update.
- switchId: 1 #Every device we define for a given Role should have an ID that is unique to that Role.
switchName: EC01 #Use the hostname of the switch
ipAddress: 10.4.4.61 #Management IP address of the device to connect
ASN: 1001 #BGP Local AS number
Credentials: #User needs to enter device credentials
user: admin
password: YourPaSsWoRd
mclag: #used to create multichassis link aggregation
enabled: True #used to activate mclag property
peer: L2 #Neighbor Device ID (Leaf Switch 2), Peer can be Spine or Leaf device
keepalive_vlan: 10 #Vlan to use for Keepalive messages
isoverl3: true #for L2 MCLAG use false, For L3 MCLAG use true
Links: #The links between all the devices we manage
#SS indicates SuperSpine Role
#S indicates Spine Role
#L indicates Leaf Role
#T indicates Tor Role
#H indicates Host port
#The next number is device's unique ID from the same respective Role
#Then interface name and number
- link: S1_Ethernet96 | L1_Ethernet96
#S1_Ethernet96 : Spine Role, Switch ID 1 with Interface Ethernet 96
is connected to
#L1_Ethernet96 : Leaf Role, Switch ID 1 with Interface Ethernet 96
staticLink: True #True indicates the status is up
properties: #This indicates the use of link properties
mode:
#L2-Trunk #Used as Layer-2 Trunk
#vlan: 200 #Vlan used for mclag
#mc_po_group: 200 #Po number for mclag
#vrf: 1 #VRF to be used for mclag, vrf is mendate in symmetric IRB
#L2-Access #Used as Layer-2 Access
#vlan: 200 #Vlan used for mclag
#L3-V4 #Only with Host peer
#mc_po_group: 201 #Po number to be used
#L3-V6 #Only with Host peer
#mc_po_group: 201 #Po number to be used
#MC-LAG #Only when we need MC-LAG between links
#MC-LAG-BGP #BGP Neighbourship between MC-Lag Peers using Peer LinkBGP:
#BGP_U If set to False, this configures regular BGP peering.
#BGP_U If set to True, this configures BGP unnumbered peering
#ND_RA is reserved for future development
BGP_U: False
ND_RA: 30 PhysicalIfCfg:
FEC: On #Possible values are On or Off
MTU: 8000 #MTU value a user wants to change
AdminStatus: Up #Set the status UP ASN:
SSpine: 10000-20000
Spine: 21000-50000
Leaf: 51000-60000
Tor: 61000-70000IPv6Pool:
LeafSpine: #Define IPv6 Pool
LeafTor: #Define IPv6 Pool
Host: #Define IPv6 PoolNTP:
server: 128.138.141.172
timezone: Asia/KolkataSYSLOG:
server: 10.1.1.11
SNMP:
trapserver: 10.1.1.11Parameters:
vlan: 200-205
vni: 20000-20005
anycast_gateway: 100.10.0.0/23
anycast_mac: 00:11:22:33:44:55
hosts_per_vlan: 10
routing_symmetric: True # True / False to indicate its symmetric routing or asymmetric routing
irb_vlan: 300-305 # irb vlan is separate input and should not overlap with vxlan vni
irb_vni: 30000-30005 # irb vni is separate input and should not overlap with vxlan vni
sag: False # True for Anycast Gateway otherwise False root@Leaf-1:/# vi /usr/bin/docker_init.shelif [ "$CONFIG_TYPE" == "split" ]; then
#echo "no service integrated-vtysh-config" > /etc/frr/vtysh.conf
rm -f /etc/frr/frr.confelif [ "$CONFIG_TYPE" == "split" ]; then
#echo "no service integrated-vtysh-config" > /etc/frr/vtysh.conf
echo "service integrated-vtysh-config" > /etc/frr/vtysh.conf
rm -f /etc/frr/frr.confsudo config interface speed Ethernet0 10000elif [ "$CONFIG_TYPE" == "split" ]; then
#echo "no service integrated-vtysh-config" > /etc/frr/vtysh.conf
echo "service integrated-vtysh-config" > /etc/frr/vtysh.conf
#rm -f /etc/frr/frr.conf



ONES Function
Device/Switch Count
Telemetry for Visibility
1024
Orchestration
1024