Overview
The "Net Devices" node enables managing network devices via SSH by executing various operations such as saving the current device configuration, sending commands, rebooting devices, and retrieving running configurations. It is particularly useful in network automation workflows where administrators need to programmatically interact with network hardware for configuration management, monitoring, or maintenance.
For the Save Config operation specifically, the node saves the current configuration on the target network device, ensuring that any changes made are persisted. This is commonly used after applying configuration changes to prevent loss of settings after a reboot.
Practical examples:
- Automatically save device configuration after pushing new firewall rules.
- Schedule periodic backups of device configurations.
- Integrate with change management systems to confirm configuration persistence.
Properties
| Name | Meaning |
|---|---|
| Advanced Options | Collection of optional parameters to control connection and command execution behavior: |
| - Auto Disconnect | Whether to automatically disconnect from the device after command execution (default: true) |
| - Command Retry Count | Number of retry attempts if a command fails (1 to 5, default: 2) |
| - Command Timeout | Timeout in seconds for command execution (2 to 300, default: 10) |
| - Connection Pooling | Enable connection pooling for better performance (default: false) |
| - Connection Retry Count | Number of retry attempts if connection fails (1 to 10, default: 3) |
| - Connection Timeout | Timeout in seconds for establishing connection (3 to 300, default: 15) |
| - Fail on Error | Whether to fail the workflow on command errors (default: true) |
| - Fast Mode | Enable fast mode for simple commands, skipping setup steps (default: false) |
| - Retry Delay | Delay in seconds between retry attempts (1 to 60, default: 2) |
| - Reuse Connection | Whether to reuse existing connections when possible (default: false) |
Output
The node outputs an array of JSON objects, each representing the result of the operation for an input item. The structure includes:
success(boolean): Indicates if the operation succeeded.command(string): The name of the executed operation (saveConfigin this case).output(string): The textual output or response from the device after saving the config.deviceType(string): The type/model of the network device.host(string): The hostname or IP address of the device.timestamp(ISO string): When the operation was performed.executionTime(number): Duration in milliseconds taken to execute the operation.connectionRetries(number): Number of connection retry attempts configured.commandRetries(number): Number of command retry attempts configured.error(string, optional): Error message if the operation failed.
No binary data output is produced by this node.
Example output JSON snippet:
[
{
"success": true,
"command": "saveConfig",
"output": "Configuration saved successfully.",
"deviceType": "cisco_ios",
"host": "192.168.1.1",
"timestamp": "2024-06-01T12:00:00.000Z",
"executionTime": 1500,
"connectionRetries": 3,
"commandRetries": 2
}
]
Dependencies
- Requires valid credentials to connect to the network device over SSH, including host, port, username, authentication method (password or private key), and optionally jump host details.
- Uses an internal SSH connection handler utility to manage device communication.
- Requires the user to configure an API key credential for authentication with the device.
- Supports advanced options for connection and command retries, timeouts, and connection pooling.
- No external APIs beyond SSH connectivity are required.
Troubleshooting
- Connection failures: If the node cannot connect to the device, verify network reachability, correct host/port, and valid credentials. Adjust connection retry count and timeout settings if needed.
- Command execution errors: Errors during saving config may be due to insufficient permissions or device-specific command restrictions. Check device logs and ensure the user has appropriate privileges.
- Timeouts: Increase command or connection timeout values if operations take longer than expected.
- Fail on error: If enabled, the node will stop the workflow on errors; disable it to continue processing other items despite failures.
- Reuse connection issues: Enabling connection reuse can improve performance but may cause stale session problems; disable if unexpected errors occur.
- Fast mode: Skipping setup steps might cause failures on complex devices; disable if commands do not execute properly.
Common error messages:
"Failed to connect to device ... after X attempts."— indicates connection issues; check credentials and network."Command timeout after X seconds"— increase command timeout or check device responsiveness."Command execution failed after X attempts"— command failed repeatedly; verify command validity and device state.