Scenario
During this workshop a set of products will be used together with the needed workflows to manage enrolling network nodes into the Workflow Orchestrator and creating circuits between nodes. The products will be just complex enough to show the basic capabilities of products, product blocks, fixed inputs, resource types and workflows in the workflow orchestrator. We will cover nesting product blocks and products together.
Product hiearchy example
In the diagram below you can see how all products and product blocks relate to each other. The example orchestrator has implemented the following example products and corresponding workflows that can be used to build a basic network topology and customer facing services:
In the product.product_types
module the following products are
defined:
- Node
- CoreLink
- Port
- L2vpn
And in the product.product_blocks
module the following product blocks
are defined:
- NodeBlock
- CoreLinkBlock
- CorePortBlock
- PortBlock
- SAPBlock
- VirtualCircuitBlock
Usually, the top-level product block if a product is named after the
product, but this is not true for the top-level product block of the
L2VPN product. The more generic name VirtualCIrcuitBlock
allows the
reuse of this product block by other services like Internet Access and
L3VPN.
The Service Access Point (SAP) product block SAPBlock
is used to
encapsulate transport specific service endpoint information, in our case
Ethernet 802.1Q is used and the SAP holds the VLAN used on the indicated
port.
When this example orchestrator is deployed, it can create a growing graph of product blocks as is shown below.
Hint
Take some time to explore the module described in above. It shows how the product modelling is done in Python. Once you are familiar with the code. Continue with the workshop