Diagram
classDiagram
Site <|-- Router :belong
class Site{
+UUId name
+String phoneNumber
+String emailAddress
}
class Router{
+int studentNumber
+int averageMark
+isEligibleToEnrol()
+getSeminarsTaken()
}
Node deployment
A node consists of one or more routers, a switch, and a terminal server. In general -- as laid out more extensively here (behind login) -- a PoP consists of:
- One or two routers
- One switch
- One terminal server
Globally, the workflow for a new site is as follows:
- Deploy terminal server:
- Generate base configuration from GitLab
- Ship the device to its location
- Verify reachability and insert in LibreNMS
- Deploy PoP router in a 'core' fashion
- Rack it up and configure the hardware
- Connect the router to the terminal server via both a console connection, and FXP
- Deploy base configuration using GAP
- Deploy PoP switch
- Rack it up and configure the hardware
- Connect the switch to the terminal server via both a console connection, and FXP
- Deploy base configuration using GAP
- Deploy the PoP interconnect between router and switch
- Set up a physical connection between router and switch
- Deploy configuration using GAP
- Deploy IP trunks to connect the router to the rest of the network
- Set up a physical connection
- Deploy configuration using GAP
- Update the iBGP mesh to include the new router, promoting it to an edge router
- Deploy configuration using GAP
- Using GAP, insert the devices in LibreNMS
In the context of the automation platform, the PoP interconnects mentioned are modeled as separate objects.