# ONES Orchestration Agent Installation

On the ONES Application server, go to ONES-3.1.0/ones\_fm\_agent

<mark style="color:blue;">`root@ones-application:~$ cd /ONES-3.1.0/ones_fm_agent`</mark>

### Installation (Agent Install on multiple switches at the same time)&#x20;

* Enter device details (Management IP, Username, Password ) in device\_info.csv

<mark style="color:blue;">`root@ones-application:/ONES-3.1.0/ones_fm_agent:~$ vi device_info.csv`</mark>

```
ip,user,passwd
10.20.3.12,admin,YourPaSsWoRd
...
...
...
```

* Save the file&#x20;
* Execute the installation script

## Supported Deployment Methods

All these supported methods can be implemented by a single script

1. Installation: install FMCLI
2. uninstallation: Uninstall FMCLI
3. installresetconfig:  Install FMCLI and reset the configuration
4. upgrade: Upgrade FMCLI to the latest version
5. install\_withQOS: Install FMCLI and enable QoS feature
6. installresetconfig\_withQOS: Install FMCLI, reset the configuration, and enable QoS feature

### Installation

<mark style="color:blue;">`root@ones-application:/ONES-3.1/ones_fm_agent:~$ ./deploy_fmcli.sh`</mark>

```log
root@ones-application:/ONES-3.1/ones_fm_agent# ./deploy_fmcli.sh
Available options for FMCLI installation:
1) install
   - Install FMCLI
2) uninstall
   - Uninstall FMCLI
3) installresetconfig
   - Install FMCLI and reset the configuration
4) upgrade
   - Upgrade FMCLI to the latest version
5) install_withQOS
   - Install FMCLI and enable QoS feature
6) installresetconfig_withQOS
   - Install FMCLI, reset the configuration, and enable QoS feature

Please enter your choice (1-6) to proceed with the FMCLI installation: 1

Installer will proceed with FMCLI-install ...

e2ef8a51359d: Loading layer [==================================================>]  72.54MB/72.54MB
ae2d55769c5e: Loading layer [==================================================>]  7.401MB/7.401MB
3054512b6f71: Loading layer [==================================================>]  31.35MB/31.35MB
997b8e79e84f: Loading layer [==================================================>]   5.12kB/5.12kB
e6c5004ee77f: Loading layer [==================================================>]   11.7MB/11.7MB
f58d795dfab9: Loading layer [==================================================>]   2.56kB/2.56kB
ed46ea0f4e17: Loading layer [==================================================>]  31.74MB/31.74MB
1c38a701a3d6: Loading layer [==================================================>]   42.7MB/42.7MB
c4456c24c820: Loading layer [==================================================>]  1.421MB/1.421MB
Loaded image: avizdock/agent_installer:latest
Docker image 'avizdock/agent_installer:latest' is loaded.
0395e7f3ca200006767cec01c285730e2083be3a3080763acccd7a6a456e6022

Docker container 'agent_installer' is running.
CONTAINER ID   IMAGE                             COMMAND     CREATED              STATUS         PORTS     NAMES
0395e7f3ca20   avizdock/agent_installer:latest   "python3"   About a minute ago   Up 2 seconds             agent_installer

Docker container 'ones-fm' is running.
Update success for 10.20.3.12
/usr/local/lib/python3.8/site-packages/paramiko/pkey.py:82: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from this module in 48.0.0.
  "cipher": algorithms.TripleDES,
/usr/local/lib/python3.8/site-packages/paramiko/transport.py:253: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from this module in 48.0.0.
  "class": algorithms.TripleDES,
Ignore below Error if Installing Agent via docker installer

ones-fm container is not running

Operation = install
##### params = {'ip': '10.20.3.12', 'passwd': 'YourPaSsWoRd', 'user': 'admin', 'server_ip': '172.17.0.2', 'fm_port': None} #####
###############Connecting to switch###############
<paramiko.client.SSHClient object at 0x7fc3e99a4070>
Connection to switch 10.20.3.12 successfull.....................
/home/ones_fm_agent
Creating work directory  on the device 10.20.3.12........
Work Directory ones-fm_1740143859_4471154 created successfully on the device 10.20.3.12 .............
Copying FMCLI_Installer.py to directory ones-fm_1740143859_4471154 on the device 10.20.3.12 .............
Debug command used:: sudo ls ones-fm_1740143859_4471154/FMCLI_Installer.py
The file 'ones-fm_1740143859_4471154/FMCLI_Installer.py' copy success on the device.
Copying FMCLI_Installer.py to directory ones-fm_1740143859_4471154 successful on the device 10.20.3.12 .............
Copying fmcli-app.tgz to directory ones-fm_1740143859_4471154 on the device 10.20.3.12 .............
Debug command used:: sudo ls ones-fm_1740143859_4471154/fmcli-app.tgz
The file 'ones-fm_1740143859_4471154/fmcli-app.tgz' copy success on the device.
Copying fmcli-app.tgz to directory ones-fm_1740143859_4471154 successful on the device 10.20.3.12 .............
File '/usr/lib/frr/frr-reload.py' exists in container 'bgp'
Skip scp as File: /usr/lib/frr/frr-reload.py exits inside bgp container

#################### Installing FMCLI on the device 10.20.3.12 ######################
####### Debug LOGS on the device 10.20.3.12 #######
fmcli-app/
fmcli-app/libcligen.so.6.2
fmcli-app/ip_validate
fmcli-app/fmcli_read_db_schema
fmcli-app/fmclimain.service
fmcli-app/fmcli_composer.py
fmcli-app/fmcli
fmcli-app/fmcli.version
fmcli-app/fmcli.cli
fmcli-app/fmcli.sh
fmcli-app/fmcli_composer_mapping.cfg
fmcli-app/libhiredis.so.1.1.0
cli
cli/fmcli-app-amd.tgz
Extracting cli/fmcli-app-amd.tgz...
Installing Aviz-FMCLI ..........
Aviz-FMCLI installation successful........
FMCLI version: 3.1.55

Created symlink /etc/systemd/system/multi-user.target.wants/fmclimain.service → /etc/systemd/system/fmclimain.service.
/tmp/fmcliStartup.init

FM-Agent installed successfully on the device 10.20.3.12........
####### Deleting ones-fm_1740143859_4471154 dir on the device 10.20.3.12 #######
Deployment of FM-Agent to switch 10.20.3.12 is Completed
FMCLI install Result
{'10.20.3.12': {'status': 'PASS', 'fmcli_version': '3.1.55'}}
╒═════════╤════════════╤══════════════════╤═════════════════╕
│   SL.No │ Device     │ install Result   │ FMCLI Version   │
╞═════════╪════════════╪══════════════════╪═════════════════╡
│       1 │ 10.20.3.12 │ PASS             │ 3.1.55          │
╘═════════╧════════════╧══════════════════╧═════════════════╛
agent_installer
Docker agent_installer has been stopped
agent_installer
Docker agent_installer has been removed
Untagged: avizdock/agent_installer:latest
Deleted: sha256:b115eb21a63518b47079a0f9b25ed56e8dd807a4aa054dc18efb1d5635b9728d
Deleted: sha256:a2052350dbedd8d19d573f1f81a333af50d33c157dd565c6fb3ea19ff32d7869
Deleted: sha256:403906165705c1c4c263865c7d2e8560424306ef76cc7dfd319565e1036a4b49
Deleted: sha256:71d4c516421d0cd5b08b0c7f7ddff68182ca799815c621e1bf1d7c2a247820f2
Deleted: sha256:ed5221ab4eb63334a3121c173d4b6e0fb882b13eb0de6f1daa781908da91a464
Deleted: sha256:11b1633cb703032b065434387b48194f3e97a57aaddc61a31aa2918a1fd32780
Deleted: sha256:aa353210edce17d0370066fc6184cff9e2a9197884e6f43a0ad1fd32b630f8de
Deleted: sha256:b23b2f4af61d8cc745c6bea66be93bd59b97c3971c36466ae4ea345f52fdfc67
Deleted: sha256:b55ff4d1eb4dd15edbc9ffc15b1bd5771cd09c371b0e7c44cbcbd5c5f62ec76a
Deleted: sha256:e2ef8a51359d088511d34c725305c220294a1fcd5fe5e5dbe4d698c7239ce2c9
Docker avizdock/agent_installer:latest image has been removed


```

<figure><img src="https://21707399-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2kx3WmNibhYYGgtbf7Ky%2Fuploads%2FNx5dUSMfOlMMqkpDkzXq%2FScreenshot%202025-02-21%20at%207.00.59%E2%80%AFPM.png?alt=media&#x26;token=ef6af1a5-ba7e-4cc4-a674-b4cc1cf3c9c8" alt=""><figcaption></figcaption></figure>

<mark style="color:blue;">`root@Switch:~$ sudo fmcli`</mark>

```
root@Switch:~$ sudo fmcli 
fmcli# 
```

### Uninstallation

<mark style="color:blue;">`root@ones-application:/ONES-3.1.0/ones_fm_agent:~$ ./deploy_fmcli.sh`</mark>

```log
Available options for FMCLI installation:
1) install
   - Install FMCLI
2) uninstall
   - Uninstall FMCLI
3) installresetconfig
   - Install FMCLI and reset the configuration
4) upgrade
   - Upgrade FMCLI to the latest version
5) install_withQOS
   - Install FMCLI and enable QoS feature
6) installresetconfig_withQOS
   - Install FMCLI, reset the configuration, and enable QoS feature

Please enter your choice (1-6) to proceed with the FMCLI installation: 2

Installer will proceed with FMCLI-uninstall ...

e2ef8a51359d: Loading layer [==================================================>]  72.54MB/72.54MB
ae2d55769c5e: Loading layer [==================================================>]  7.401MB/7.401MB
3054512b6f71: Loading layer [==================================================>]  31.35MB/31.35MB
997b8e79e84f: Loading layer [==================================================>]   5.12kB/5.12kB
e6c5004ee77f: Loading layer [==================================================>]   11.7MB/11.7MB
f58d795dfab9: Loading layer [==================================================>]   2.56kB/2.56kB
ed46ea0f4e17: Loading layer [==================================================>]  31.74MB/31.74MB
1c38a701a3d6: Loading layer [==================================================>]   42.7MB/42.7MB
c4456c24c820: Loading layer [==================================================>]  1.421MB/1.421MB
Loaded image: avizdock/agent_installer:latest
Docker image 'avizdock/agent_installer:latest' is loaded.
02c7d8d96c0ef910dff24d9004c6198584d9efa2a8dc901f4d7676f919b82e5e

Docker container 'agent_installer' is running.
CONTAINER ID   IMAGE                             COMMAND     CREATED          STATUS                  PORTS     NAMES
02c7d8d96c0e   avizdock/agent_installer:latest   "python3"   25 seconds ago   Up Less than a second             agent_installer

Docker container 'ones-fm' is running.
Update success for 10.20.3.12
/usr/local/lib/python3.8/site-packages/paramiko/pkey.py:82: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from this module in 48.0.0.
  "cipher": algorithms.TripleDES,
/usr/local/lib/python3.8/site-packages/paramiko/transport.py:253: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from this module in 48.0.0.
  "class": algorithms.TripleDES,
Ignore below Error if Installing Agent via docker installer

ones-fm container is not running

Operation = uninstall
##### params = {'ip': '10.20.3.12', 'passwd': 'YourPaSsWoRd', 'user': 'admin', 'server_ip': '172.17.0.2', 'fm_port': None} #####
###############Connecting to switch###############
<paramiko.client.SSHClient object at 0x7f7834d1c070>
Connection to switch 10.20.3.12 successfull.....................
/home/ones_fm_agent
############### Uninstalling FM Agent ###############
FMCLI uninstall Result
{'10.20.3.12': {'status': 'PASS', 'fmcli_version': '3.1.55'}}
╒═════════╤════════════╤════════════════════╤═════════════════╕
│   SL.No │ Device     │ uninstall Result   │ FMCLI Version   │
╞═════════╪════════════╪════════════════════╪═════════════════╡
│       1 │ 10.20.3.12 │ PASS               │ 3.1.55          │
╘═════════╧════════════╧════════════════════╧═════════════════╛
agent_installer
Docker agent_installer has been stopped
agent_installer
Docker agent_installer has been removed
Untagged: avizdock/agent_installer:latest
Deleted: sha256:b115eb21a63518b47079a0f9b25ed56e8dd807a4aa054dc18efb1d5635b9728d
Deleted: sha256:a2052350dbedd8d19d573f1f81a333af50d33c157dd565c6fb3ea19ff32d7869
Deleted: sha256:403906165705c1c4c263865c7d2e8560424306ef76cc7dfd319565e1036a4b49
Deleted: sha256:71d4c516421d0cd5b08b0c7f7ddff68182ca799815c621e1bf1d7c2a247820f2
Deleted: sha256:ed5221ab4eb63334a3121c173d4b6e0fb882b13eb0de6f1daa781908da91a464
Deleted: sha256:11b1633cb703032b065434387b48194f3e97a57aaddc61a31aa2918a1fd32780
Deleted: sha256:aa353210edce17d0370066fc6184cff9e2a9197884e6f43a0ad1fd32b630f8de
Deleted: sha256:b23b2f4af61d8cc745c6bea66be93bd59b97c3971c36466ae4ea345f52fdfc67
Deleted: sha256:b55ff4d1eb4dd15edbc9ffc15b1bd5771cd09c371b0e7c44cbcbd5c5f62ec76a
Deleted: sha256:e2ef8a51359d088511d34c725305c220294a1fcd5fe5e5dbe4d698c7239ce2c9
Docker avizdock/agent_installer:latest image has been removed

```

### Installation with a config cleanup

{% hint style="info" %}
using this process, Script will clear the base config like port--channel related config, IP related config, VXLAN related config and more related configuration.

<mark style="color:blue;">`Using the same way user can choose other options to use FM agent`</mark>
{% endhint %}
