version: '1.0'
generics:
- name: ManagementServer
namespace: Network
description: Generic model for network management server (dns, ntp, and dhcp).
label: Network Management Servers
human_friendly_id:
- name__value
display_label: name__value
order_by:
- name__value
include_in_menu: true
attributes:
- name: name
kind: Text
order_weight: 1000
- name: description
kind: Text
order_weight: 1100
optional: true
- name: status
kind: Dropdown
choices:
- name: active
label: Active
description: Fully operational and currently in service.
color: '#7fbf7f'
- name: provisioning
label: Provisioning
description: In the process of being set up and configured.
color: '#ffff7f'
- name: maintenance
label: Maintenance
description: Undergoing routine maintenance or repairs.
color: '#ffd27f'
- name: drained
label: Drained
description: Temporarily taken out of service.
color: '#bfbfbf'
relationships:
- name: location
peer: LocationGeneric
optional: true
cardinality: many
- name: ip_addresses
peer: InfraIPAddress
optional: true
cardinality: many
kind: Component
- name: GenericElement
namespace: Topology
description: Base model for elements
label: Generic Topology Element
icon: carbon:network-3-reference
human_friendly_id:
- name__value
display_label: name__value
order_by:
- name__value
include_in_menu: false
menu_placement: TopologyTopology
attributes:
- name: name
kind: Text
order_weight: 1000
- name: description
kind: Text
order_weight: 1100
optional: true
- name: quantity
kind: Number
order_weight: 1200
relationships:
- name: topology
peer: TopologyTopology
cardinality: one
kind: Parent
optional: false
- name: NetworkStrategy
namespace: Topology
description: Generic model for network strategies (underlays and overlays).
label: Network Strategy
icon: iconoir:strategy
human_friendly_id:
- name__value
display_label: name__value
order_by:
- name__value
include_in_menu: true
menu_placement: TopologyTopology
attributes:
- name: name
kind: Text
order_weight: 1000
- name: description
kind: Text
order_weight: 1100
optional: true
relationships:
- name: topology
peer: TopologyTopology
optional: true
cardinality: many
nodes:
- name: Topology
namespace: Topology
description: A Topology represents the entire network pod.
label: Topology
icon: carbon:network-3
human_friendly_id:
- name__value
display_label: name__value
order_by:
- name__value
inherit_from:
- CoreArtifactTarget
attributes:
- name: name
kind: Text
unique: true
order_weight: 1000
- name: description
kind: Text
optional: true
order_weight: 1100
relationships:
- name: elements
peer: TopologyGenericElement
optional: true
cardinality: many
kind: Component
- name: strategy
peer: TopologyNetworkStrategy
optional: true
cardinality: one
kind: Component
- name: location
peer: LocationGeneric
optional: true
cardinality: one
kind: Attribute
- name: devices
peer: DcimGenericDevice
optional: true
cardinality: many
kind: Component
- name: network_services
peer: TopologyNetworkService
optional: true
cardinality: many
kind: Component
- name: MPLSStrategy
namespace: Topology
description: Specific strategy attributes for MPLS.
label: MPLS Strategy
icon: eos-icons:neural-network
inherit_from:
- TopologyNetworkStrategy
menu_placement: TopologyNetworkStrategy
include_in_menu: false
human_friendly_id:
- name__value
order_by:
- name__value
display_label: name__value
attributes:
- name: underlay
kind: Dropdown
choices:
- name: ospf
label: OSPF
- name: isis
label: ISIS
- name: bgp
label: BGP
- name: overlay
kind: Dropdown
choices:
- name: ldp
label: LDP
- name: rsvp
label: RSVP
- name: segment_routing
label: Segment Routing
- name: EVPNStrategy
namespace: Topology
description: Specific strategy attributes for EVPN.
label: EVPN Strategy
icon: carbon:load-balancer-network
inherit_from:
- TopologyNetworkStrategy
menu_placement: TopologyNetworkStrategy
include_in_menu: false
human_friendly_id:
- name__value
order_by:
- name__value
display_label: name__value
attributes:
- name: underlay
kind: Dropdown
choices:
- name: ebgp
label: EBGP
- name: ospf
label: OSPF
- name: isis
label: ISIS
- name: overlay
kind: Dropdown
choices:
- name: ebgp
label: EBGP
- name: ibgp
label: IBGP
- name: PhysicalElement
namespace: Topology
description: Physical aspect of topology elements.
label: Physical Topology Element
icon: carbon:network-3-reference
menu_placement: TopologyTopology
human_friendly_id:
- name__value
order_by:
- name__value
display_label: name__value
inherit_from:
- TopologyGenericElement
attributes:
- name: mtu
kind: Number
default_value: 1500
order_weight: 3000
- name: border
kind: Boolean
label: Is a Topology Border
default_value: false
order_weight: 2400
- name: mlag_support
kind: Boolean
label: MLAG Support
default_value: false
order_weight: 2500
- name: device_role
label: Role
kind: Dropdown
choices:
- name: spine
color: '#ffb3ba'
- name: leaf
color: '#ffdfba'
- name: pe_router
color: '#baffc9'
- name: p_router
color: '#bae1ff'
- name: route_reflector
color: '#ffbaba'
- name: cpe
color: '#f2bae1'
- name: firewall
color: '#c5a3ff'
order_weight: 1300
relationships:
- name: device_type
label: Type
peer: DcimDeviceType
optional: true
cardinality: one
kind: Attribute
order_weight: 1400
- name: DhcpOption
namespace: Network
description: Represents a configurable option within a Dhcp server.
label: Dhcp Option
icon: gis:globe-options
menu_placement: NetworkManagementServer
include_in_menu: false
human_friendly_id:
- name__value
display_label: name__value
order_by:
- name__value
attributes:
- name: name
kind: Text
order_weight: 1000
- name: description
kind: Text
optional: true
order_weight: 1100
- name: option_code
kind: Number
order_weight: 2000
- name: content
kind: Text
order_weight: 2100
- name: DhcpServer
namespace: Network
description: Represents a Dhcp server in the network.
label: Dhcp Server
icon: eos-icons:ip
menu_placement: NetworkManagementServer
include_in_menu: false
human_friendly_id:
- name__value
display_label: name__value
order_by:
- name__value
inherit_from:
- NetworkManagementServer
attributes:
- name: lease_time
kind: Text
order_weight: 2100
relationships:
- name: dhcp_options
peer: NetworkDhcpOption
optional: true
cardinality: many
kind: Component
- name: NameServer
namespace: Network
description: Represents a DNS server in the network.
label: DNS Server
icon: eos-icons:dns
menu_placement: NetworkManagementServer
human_friendly_id:
- name__value
display_label: name__value
order_by:
- name__value
inherit_from:
- NetworkManagementServer
- name: NTPServer
namespace: Network
description: Represents a NTP server in the network.
label: NTP Server
icon: iconoir:time-zone
menu_placement: NetworkManagementServer
human_friendly_id:
- name__value
display_label: name__value
order_by:
- name__value
inherit_from:
- NetworkManagementServer
- name: NetworkServiceIdentifier
namespace: Topology
description: Generic model for different types of identifiers used in network services.
label: Network Service Identifier
icon: mdi:identifier
menu_placement: TopologyNetworkService
human_friendly_id:
- identifier__value
order_by:
- identifier__value
display_label: identifier__value
attributes:
- name: identifier
kind: Number
relationships:
- name: service
label: Network Service
peer: TopologyNetworkService
cardinality: one
optional: true
- name: NetworkService
namespace: Topology
description: Network services attached to a Topology.
label: Network Service
icon: carbon:ibm-cloud-internet-services
human_friendly_id:
- name__value
order_by:
- name__value
display_label: name__value
attributes:
- name: name
label: Service Name
kind: Text
order_weight: 1000
- name: description
kind: Text
order_weight: 1100
- name: service_type
kind: Text
enum:
- Layer2
- Layer3
order_weight: 1200
relationships:
- name: identifier
peer: TopologyNetworkServiceIdentifier
cardinality: one
kind: Attribute
optional: false
- name: topology
peer: TopologyTopology
cardinality: one
kind: Parent
optional: false
- name: vlan
peer: InfraVLAN
optional: true
cardinality: one
kind: Component
order_weight: 1500
- name: prefix
peer: InfraPrefix
optional: true
cardinality: one
kind: Component
order_weight: 1400
extensions:
nodes:
- kind: DcimGenericDevice
relationships:
- name: topology
peer: TopologyTopology
optional: true
cardinality: one
- kind: IpamPrefix
relationships:
- name: network_service
label: Network Service
peer: TopologyNetworkService
optional: true
cardinality: one
order_weight: 1400