Command Groups in rConfig V8 Core
Command Groups are the organisational layer that links devices to the CLI commands rConfig runs when it backs up their configuration. After reading this page you can plan a Command Group structure, create and edit groups, attach commands, and resolve the common errors that block device assignment.
What are Command Groups?
Section titled “What are Command Groups?”Every device in rConfig is assigned to exactly one Command Group. That group holds an ordered set of commands, and those commands determine what configuration data rConfig retrieves from each member device during both manual and scheduled backups.
When rConfig runs a backup, it:
- Reads the target device’s assigned Command Group.
- Retrieves the commands attached to that group.
- Connects to the device using its stored credentials.
- Runs each command in order.
- Captures and stores the output as configuration data.
This gives you a single place to control what gets collected from a population of similar devices, rather than configuring commands device by device.
Key rules
Section titled “Key rules”- One device belongs to one Command Group; one Command Group can hold many devices.
- A Command Group must have at least one attached command before any device can be assigned.
- Commands are independent entities attached to groups in a many-to-many relationship, so the same command can be reused across several groups.
- Manual and scheduled downloads both use the device’s Command Group assignment to decide which commands to run.
How to organise Command Groups
Section titled “How to organise Command Groups”Most teams design Command Groups around one or more of these factors:
- Vendor platform (Cisco IOS, Arista EOS, Juniper Junos)
- Device role (core, distribution, access layer)
- Geographic location (data centre, branch, remote site)
- Command requirements (full config versus operational state data)
Start with broader groups and subdivide only when command requirements genuinely differ. For example, split Cisco_Routers_BGP from Cisco_Routers_OSPF only if the routing protocol actually needs a different command set.
Example design patterns
Section titled “Example design patterns”Vendor-based
Section titled “Vendor-based”Group devices by vendor and platform. Best for multi-vendor environments where command syntax varies between platforms.
| Command Group | Member devices | Attached commands |
|---|---|---|
| Cisco_IOS_Routers | Router1, Router2, Router3 | show running-config, show ip route, show ip bgp neighbors, show ip protocols |
| Cisco_NX_Switches | Nexus_Core_1, Nexus_Core_2 | show running-config, show vpc, show interface status, show cdp neighbors detail |
| Arista_Switches | Arista_Leaf_1, Arista_Leaf_2 | show running-config, show ip route, show lldp neighbors, show interfaces status |
| Juniper_Firewalls | SRX_FW_1, SRX_FW_2 | show configuration, show security policies, show security zones |
Role-based
Section titled “Role-based”Group devices by network function. Suitable for single-vendor environments where role drives command needs.
| Command Group | Member devices | Attached commands |
|---|---|---|
| Core_Routers | BR_Core_1, US_Core_1, IRE_Core_1 | show running-config, show ip route, show ip bgp, show ip bgp summary |
| Distribution | Dist_Switch_1, Dist_Switch_2 | show running-config, show spanning-tree, show etherchannel summary |
| Access_Switches | Access_SW_1, Access_SW_2 | show running-config, show version, show mac address-table |
| Edge_Devices | Edge_1, Edge_2, Edge_3 | show running-config, show ip route, show interface status |
Hybrid
Section titled “Hybrid”Combine vendor and role for complex environments where both matter.
| Command Group | Member devices | Attached commands |
|---|---|---|
| Cisco_Core_BGP | Core_R1, Core_R2 | show running-config, show ip bgp, show ip bgp neighbors, show ip route bgp |
| Cisco_Core_OSPF | Core_R3, Core_R4 | show running-config, show ip ospf, show ip ospf neighbor, show ip route ospf |
| HP_Edge_Minimal | HP_Clos_1, HP_Clos_2 | show running-config |
| Cisco_Access_Standard | Switch1, Switch2, Switch3 | show running-config, show version, show lldp neighbors |
When to use this
Section titled “When to use this”Create or edit a Command Group whenever you onboard a new class of device, need a different command set for a group of devices, or are preparing devices for scheduled backups. You will also work here when a Command Group shows an error because it has no commands attached.
Prerequisites
Section titled “Prerequisites”- Administrative access to rConfig V8 Core
- The commands you intend to attach already created in the Commands interface
- A classification strategy for your device inventory (vendor, role, or location based)
Watch: adding and editing Command Groups
Section titled “Watch: adding and editing Command Groups”This video walks through the full workflow for adding and editing Command Groups, including attaching commands and resolving the no-commands error.
Add a new Command Group
Section titled “Add a new Command Group”- Navigate to Inventory > Command Groups from the main rConfig menu.
- Click Add Command Group in the top-right corner. The Command Group creation form opens.
- Enter a descriptive Name that follows your naming convention, for example
Cisco_IOS_Routersrather thanGroup1. Include the vendor, platform, or role where it helps. - Enter a Description explaining which devices belong in this group and any special command requirements. This text appears in device assignment workflows.
- Click Save. rConfig creates the group in a pending-commands state.
- From the Command Groups list, locate your new group and click the Commands action button (or Edit, then the commands section).
- Select commands from the available command library. Commands must already exist in the Commands interface before you can attach them.
- Click Save to finalise the command associations.
Verify the group
Section titled “Verify the group”After saving, confirm the group appears in the list without an error indicator and that all intended commands are attached. Assign a single device and run a manual download, then review the captured configuration to confirm every expected command output is present.
Naming conventions
Section titled “Naming conventions”Consistent names keep large estates maintainable. Useful patterns:
{Vendor}_{Platform}_{Role}, for exampleCisco_IOS_Core{Location}_{DeviceType}, for exampleDataCenter_Switches{Function}_{Protocol}, for exampleRouters_BGP
Avoid generic names like Group1, Test, or Misc, names that do not reflect their content, and special characters that can cause database issues.
Edit a Command Group
Section titled “Edit a Command Group”- Navigate to Inventory > Command Groups.
- Locate the target group and click the Edit action button.
- Modify the name, description, attached commands, or command order.
- Click Save to apply changes.
Manage commands within a group
Section titled “Manage commands within a group”Attach commands
Section titled “Attach commands”- Open the Command Group edit page.
- Select the Commands tab or section.
- Use search or filtering to find the commands you need in the available library.
- Add the commands, then click Save.
Command selection considerations:
- Order matters. Commands run in the order they appear in the group.
- Dependencies. Some commands rely on the device state left by a previous command.
- Performance. More commands increase download time and storage.
- Relevance. Only attach commands that produce useful output for the device class.
Command execution order
Section titled “Command execution order”Commands run sequentially in attached order. For modal devices, the order can be critical:
Correct order:1. enable (enter privileged mode)2. configure terminal (enter configuration mode)3. show running-config (capture configuration)
Incorrect order:1. show running-config (fails, not in privileged mode)2. enable3. configure terminalFor read-only show commands, order is less critical, but keep logical groupings together (all routing commands, then all interface commands) to make output easier to read.
Remove commands
Section titled “Remove commands”- Edit the Command Group.
- Open the commands section.
- Deselect or remove the target command.
- Click Save.
Command Groups in backups
Section titled “Command Groups in backups”Scheduled backups
Section titled “Scheduled backups”Scheduled tasks target Command Groups rather than individual devices, which makes bulk operations efficient. A single task can target several groups at once, and each device still runs only the commands from its own group.
Scheduled task: "Daily Configuration Backup"Target Command Groups: - Cisco_IOS_Routers (15 devices) - Cisco_NX_Switches (8 devices) - Arista_Switches (12 devices)
Result: 35 devices backed up, each running its assigned command set.For the full task workflow, see Scheduled Tasks.
Manual backups
Section titled “Manual backups”A manual download uses the device’s assigned Command Group to decide which commands to run. There is no way to override these commands during a manual download, which keeps backups consistent.
From the UI, open the device details page and click Download Configuration. rConfig retrieves the commands from the device’s Command Group, runs them, and displays the results.
From the CLI:
cd /var/www/html/rconfigphp artisan rconfig:download-device {device_id}The CLI command uses the Command Group assigned to the specified device.
Common gotchas
Section titled “Common gotchas”Resolve a Command Group with no commands
Section titled “Resolve a Command Group with no commands”A group with no commands shows an error indicator in the Command Groups list, with the message “This Command Group has no attached commands.” This is the normal intermediate state right after creation.
To resolve it:
- Click the Edit or Commands button for the affected group.
- Open the command attachment interface.
- Select at least one command from the library.
- Click Save.
- Confirm the error indicator has cleared from the list.
Attach commands immediately after creating a group to avoid accidental device assignments to an empty group.
Delete a Command Group
Section titled “Delete a Command Group”A group cannot be deleted while it is assigned to devices or referenced by scheduled tasks. To remove a group:
- Open the Command Group details page and review the assigned devices and any scheduled tasks that reference it.
- For each assigned device, open its settings, assign a different appropriate Command Group, and save.
- Edit any scheduled task that references the group, remove the group from the task targets (or delete the task), and save.
- Return to the Command Groups list and delete the now-unused group.
Performance considerations
Section titled “Performance considerations”The number and size of commands in a group directly affect backup duration. Large outputs (such as show tech-support), slow-responding devices, and high command counts all add time.
To keep backups fast:
- Right-size command sets. Include only commands whose output you actually use.
- Split config from operational data. Run a small daily group for
show running-configandshow startup-config, and a larger weekly group for inventory, routing, and interface state. Use separate scheduled tasks with different frequencies. - Avoid slow commands. Be cautious with
show tech-supporton large devices, and test new commands on a single device before adding them to a group. - Monitor and adjust. Review backup duration and optimise the groups that run longest.
As a rough guide, keep groups to around 5 to 10 commands and subdivide groups that grow much larger than a few hundred devices. None of these are hard limits, but performance degrades as command counts climb.
Common operations reference
Section titled “Common operations reference”| Operation | Path | Notes |
|---|---|---|
| Create Command Group | Inventory > Command Groups > Add | Attach commands before assigning devices |
| Edit Command Group | Inventory > Command Groups > Edit | Changes affect all member devices |
| Attach commands | Command Groups > Edit > Commands | Commands must exist before attachment |
| Assign device to group | Devices > Edit > Command Group | A device belongs to one group only |
| View group members | Command Groups > View > Devices | Shows all assigned devices |
| Delete Command Group | Command Groups > Delete | Remove all dependencies first |
What’s next
Section titled “What’s next”- Create and manage commands to build the command library you attach to groups.
- Add and manage devices and assign them to your Command Groups.
- Schedule automated backups that target your Command Groups.