Extend Device Components to Cluster Parents #8730

Closed
opened 2025-12-29 20:40:27 +01:00 by adam · 2 comments
Owner

Originally created by @ravinald on GitHub (Oct 7, 2023).

NetBox version

v3.6.1

Feature type

Change to existing functionality

Proposed functionality

Note: This feature type might actually be a little of all three -- Change to existing functionality, New functionality, and Data model extension

At a high level, the feature is to extend Device Components to Cluster parents via having a Cluster map to an existing Device that already has Components configured. This relationship would be optional during the Cluster creation.

At each component type (and form) would have a new BOOL to sets whether the values are inheritable by children when they are added to a cluster.

Some issues/considerations would be reconciling any Components that may already be configured on a Device being added to a Cluster object as a child. One possibility could to display a warning that adding a member will overwrite any existing Components and inherit all respective values from the parent.

Use case

Some network devices that operate in a cluster mode have floating IPs. Ostensibly the nodes have the same physical configuration and properties -- power, line cards, interfaces, etc. In a active/standby configuration, specifically, the standby node has the same interface configurations with the exception of, for example, management, in/out of band, tap, and console.

Currently Virtualization does not have much data related to Cluster parents and/or their children, and clusters of this type are not the same as Virtual Chassis, but reminiscent of them.

Database changes

Possibly. I don't want to prescribe how something like this would be best implemented. That said, some tables that may need to be touched are:

  1. dcim_{interface, consoleport, etc} - Add a BOOL is_inheritable which would be used when adding a Device to a Cluster.
  2. dcim_device - Add a BOOL is_cluster_parent which would be mutually exclusive with cluster_id.
  3. virtualization_cluster - Add device_id which will act as the parent device

External dependencies

No response

Edit: a word

Originally created by @ravinald on GitHub (Oct 7, 2023). ### NetBox version v3.6.1 ### Feature type Change to existing functionality ### Proposed functionality Note: This feature type might actually be a little of all three -- Change to existing functionality, New functionality, and Data model extension At a high level, the feature is to extend Device Components to Cluster parents via having a Cluster map to an existing Device that already has Components configured. This relationship would be optional during the Cluster creation. At each component type (and form) would have a new BOOL to sets whether the _values_ are inheritable by children when they are added to a cluster. Some issues/considerations would be reconciling any Components that may already be configured on a Device being added to a Cluster object as a _child_. One possibility could to display a warning that adding a member will overwrite any existing Components and inherit all respective values from the parent. ### Use case Some network devices that operate in a cluster mode have floating IPs. Ostensibly the nodes have the same physical configuration and properties -- power, line cards, interfaces, etc. In a active/standby configuration, specifically, the standby node has the same interface configurations with the exception of, for example, management, in/out of band, tap, and console. Currently Virtualization does not have much data related to Cluster parents and/or their children, and clusters of this type are not the same as Virtual Chassis, but reminiscent of them. ### Database changes Possibly. I don't want to prescribe how something like this would be best implemented. That said, some tables that may need to be touched are: 1. `dcim_{interface, consoleport, etc}` - Add a BOOL `is_inheritable` which would be used when adding a Device to a Cluster. 2. `dcim_device` - Add a BOOL `is_cluster_parent` which would be mutually exclusive with `cluster_id`. 3. `virtualization_cluster` - Add `device_id` which will act as the parent device ### External dependencies _No response_ Edit: a word
adam added the type: featurepending closurestatus: under review labels 2025-12-29 20:40:27 +01:00
adam closed this issue 2025-12-29 20:40:28 +01:00
Author
Owner

@github-actions[bot] commented on GitHub (Jan 24, 2024):

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Do not attempt to circumvent this process by "bumping" the issue; doing so will result in its immediate closure and you may be barred from participating in any future discussions. Please see our contributing guide.

@github-actions[bot] commented on GitHub (Jan 24, 2024): This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. **Do not** attempt to circumvent this process by "bumping" the issue; doing so will result in its immediate closure and you may be barred from participating in any future discussions. Please see our [contributing guide](https://github.com/netbox-community/netbox/blob/develop/CONTRIBUTING.md).
Author
Owner

@github-actions[bot] commented on GitHub (Feb 23, 2024):

This issue has been automatically closed due to lack of activity. In an effort to reduce noise, please do not comment any further. Note that the core maintainers may elect to reopen this issue at a later date if deemed necessary.

@github-actions[bot] commented on GitHub (Feb 23, 2024): This issue has been automatically closed due to lack of activity. In an effort to reduce noise, please do not comment any further. Note that the core maintainers may elect to reopen this issue at a later date if deemed necessary.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#8730