Fabric Service and Inventory Service Interactions

Fabric service interacts with Inventory service, using the following:

  1. RabbitMQ message bus is used for event notifications to and from inventory service.
    Event from Fabric Service to Inventory Service Action
    FAB.Fabric_Created Inventory will create a Fabric in its database.
    FAB.Fabric_Deleted Inventory will delete the Fabric from its database and remove the associations of devices from Fabric.
    FAB.AddDevices_To_Fabric Inventory will add the devices to the Fabric mapping. This message contains the IP address of devices.
    FAB.DeleteDevices_From_Fabric Inventory will delete the devices from Fabric mapping. This message contains the IP address of devices to be deleted.
    FAB.ClearDevice_Config Inventory will fetch the latest configuration for a given list of devices on which the clear config was done.
    FAB.Fabric_Deployed Inventory will fetch the latest configuration for a given list of devices on which the Fabric was (de)configured.
    Event from Inventory Service to Fabric Service Action
    INV.Interfaces_Added Fabric service creates new interfaces and generates the relevant configuration.
    INV.Interfaces_Deleted Fabric service deletes the corresponding interfaces and generates the relevant configuration.
    INV.Interfaces_Updated Fabric service generates the updated relevant configuration.
    INV.Device_Link_Discovered Fabric service generates the updated relevant configuration.
    INV.Device_Link_Deleted Fabric service generates the updated relevant configuration.
    INV.Device_Updated Fabric service generates the updated relevant configuration.
    INV.Mct_Cluster_Added Fabric service processes the request and generates the updated relevant configuration.
    INV.Mct_Cluster_Deleted Fabric service process the MCT cluster and generates the updated relevant configuration.
    INV.Evpn_Created Fabric service doesn‘t handle this event.
    INV.Evpn_Deleted Fabric service deletes the EVPN instance and generates the updated relevant configuration.
    INV.OverlayGateway_Created Fabric service creates the overlay gateway and generates the updated relevant configuration.
    INV.OverlayGateway_Deleted Fabric service deletes the overlay gateway and generates the updated relevant configuration.
  2. REST API is used for fetching the inventory data.

    Fabric service uses the REST APIs provided by inventory service to get the following information.

    1. Interfaces
    2. Device details including credentials
    3. Port-Channel
    4. LLDP Neighbors
    5. Router BGP
    6. EVPN
    7. MCT Cluster including control VLAN and control VE
    8. Management Cluster
    9. Overlay gateway