nautobot-app-device-onboarding
nautobot-app-device-onboarding copied to clipboard
Arista 'eos' Device Onboarding Plugin issue
Environment
- Python version: 3.8.10
- Nautobot version: 1.2.5
- nautobot-device-onboarding version: 1.1.1
All platforms onboarded like ios, csr, xrv9k, junos and nxos(nxapi) are all onboarded successfully except for Arista device. which\ getting the failed reason = fail-general and message to just = 'errors' with NO specific/detailed error exception.
Steps to Reproduce
- Installed the Nautobot Device Onbaording App sucessfully using this Youtube Tutorial "https://www.youtube.com/watch?v=iThUlvAvadM&t=631s".
- Followed the Onboarding Process using nautobot github repo "https://github.com/nautobot/nautobot-plugin-device-onboarding".
- Used Eve-NG lab setup and all devices are accessible.
- Only NXOS and EOS are needed special onboarding process base don the above mentioned Github repo where Device Platforms and transport port/s should be statically populated onto the onboarding plugin based on the open/configured API transport port/s onto the remote devices.
Expected Behavior
Onboarding status "succeeded"
Observed Behavior
All platforms onboarded like ios, csr, xrv9k, junos and nxos(nxapi) are all onboarded successfully except for Arista device. which getting the failed reason = fail-general and message to just = 'errors' with NO specific/detailed error exception.

Tried to used napalm via the nautobot server and got a successful API call to the arista device.
nautobot@devuser-virtual-machine:~$ napalm --vendor eos --user nautobot -p root123 -o "enable_password='root123'" \arista-sw-01 call get_facts
{
"hostname": "arista-sw-01",
"fqdn": "arista-sw-01",
"vendor": "Arista",
"model": "vEOS-lab",
"serial_number": "C52F6BABAA9608AD9828D42A4FB36867",
"os_version": "4.27.0F-24305004.4270F",
"uptime": 8273,
"interface_list": [
"Ethernet1",
"Ethernet2",
"Ethernet3",
"Ethernet4",
"Ethernet5",
"Ethernet6",
"Ethernet7",
"Ethernet8",
"Management1"
]
}
Tried arista eAPI Web interface and the eAPI transport 443 was also confirmed working.

by the way, I'm new to Nautobot platform, I'm just trying to ask if this is might be a bug or something I did wrong in the installation of the plugin where it affects only the Arista device onboarding. Tried also to join 'networktocode' slack channel and waiting for responses. Thanks in advance.
@chris-navarro, have you been able to successfully onboard your Arista eos devices?
I'm seeing the following @scetron @mzbroch
Socket error during eAPI connection: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)
When I take the code out of the back end and run it in the same virtual environment everything works great.
I'm seeing the following @scetron @mzbroch
Socket error during eAPI connection: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)When I take the code out of the back end and run it in the same virtual environment everything works great.
- Please troubleshoot this always directly from the Nautobot worker (for the same environment)
- Please re-try connecting via CLI and napalm tools
- Please re-try connecting through python shell and initiate napalm directly
- Please include all OS versions, python versions, Arista OS versions and SSL versions
- Same environment as the worker ✅
- CLI and NAPALM tools ✅
- Same as (2)
- OS Versions:
lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye
python3 -V
Python 3.9.2
spine-3#show version
Arista vEOS-lab
Hardware version:
Serial number: 6E551F0361576465D8F10F9CEA369668
Hardware MAC address: 5254.00bc.3bf0
System MAC address: 5254.00bc.3bf0
Software image version: 4.29.0.2F
Architecture: i686
Internal build version: 4.29.0.2F-29226602.42902F
Internal build ID: 9ceb3a8f-ea28-475b-b761-3ade7d1593b8
Image format version: 1.0
Image optimization: None
Uptime: 4 days, 0 hours and 45 minutes
Total memory: 4000256 kB
Free memory: 3199060 kB
TLS Protocols: 1.0 1.1 1.2
Also attempted to move to just TLS 1.2 following this blog post, same error. https://medium.com/@what_if/disable-tls-1-0-on-arista-eapi-7bc27d016bbb
Please retest with the following:
-
[ ] Nautobot Platform object is created:
- [ ] Platform name is
arista_eos - [ ] Platform slug is
arista_eos - [ ] Platform NAPALM driver is
eos
- [ ] Platform name is
-
[ ] Onboarding task is created:
- [ ] Port is manually selected to
443 - [ ] Platform is manually selected to
arista_eos
- [ ] Port is manually selected to
I am able to repeat this error while using non-SSL port, like tcp_80, during an onboarding.
You have nailed this on the head of what this is. I was using the beautiful feature of the auto discovery, which used SSH before hand. The auto discovery is what would build the Manufacturer/Platform in the past, which has been a terrific feature.
This may turn into a feature request then to allow device types after auto discovery to change over to port 443?
This may turn into a feature request then to allow device types after auto discovery to change over to port 443?
This is already tracked via #17 .