User Tools

Site Tools


menu:design:node_models:node_types

Node types

A Node type is a blueprint describing a node (a device). Whenever this blueprint is called using the service type a node is instantiated with all of its parameters.

A node type links to a Client type and a Node class. Multiple Node types may be created linking to the same Client type and Node class, allowing for different blueprints to mark exception or to be used as migration scenarios.

Parameters

Each of the Node types has a set of parameters. Whenever a new Node type is created it is pre populated with several mandatory parameters. The default values can/need to be defined.

ParameterDescription
HostnameThe hostname will be generated based on the variable <SiteCode> and will be sequenced between the two numbers
TemplateDefines which template will be used for the device. The template on its turn matches the vendor
DomainThe domain variable group
Node_positionThe location of the node, which can be used to related to up-, down-, side-stream nodes
Node_fqdnThe fully qualified domain name, using the variable <Hostname>
DeviceStatusobsolete, planned, active, migration, merger
RedundantIs the node standalone or part of a redundant setup
Par_groupA custom attribute group can be linked

Note that these values will be the defaults whenever a node is instantiated. The values can still be overruled using the service types.

Besides the defaults, additional custom attributes can be created. These can be used inside the templates or can be used as conditional checks for additional configuration.

For example, a variable can be defined “nhrp_bug”. This will have no default value. But the value can be set either using a service type or manually per node. The template could have a conditional configuration line which introduces an extra line of configuration if it matches.

|<nhrp_bug>| Workaround line of code

Custom attributes

Additional attributes can be used as mentioned. This will need to be added before they can be used in the node types. Once created a default value may be set either in the Node type or in the custom attribute itself.

Function

With each of the parameters the function needs to be defined. The most common one is literal, which uses the value as such, while it does support substitution of variables.

The alternative is function. Currently one function is supported which is sequenced_nodename. The function takes 3 arguments, a string (could be a variable) and 2 digit with leading zeros. For each of the instantiated nodes it will create a hostname based on the string and a number between the range provided, on a first free basis. Example:

sequenced_nodename("<SiteCode>","01","19")

It will use the variable <SiteCode> and find the first free number between 01 and 19. Therefore, if the <Sitecode> was “NLAMS”, the first hostname would be “NLAMS01”.

If 3 digits are desired, the function needs to be changed to:

sequenced_nodename("<SiteCode>","001","019")
menu/design/node_models/node_types.txt · Last modified: 2021/10/21 07:59 by pgels