Polycube is an open source software framework that provides fast and lightweight network functions such as bridges, routers, firewalls, and others.
Polycube services, called cubes, can be composed to build arbitrary service chains and provide custom network connectivity to namespaces, containers, virtual machines, and physical hosts.
My work in brief
My work has focused on introducing custom metrics (defined in the YANG of each service) that can be collected and sent to an endpoint called “/metrics” which will later be read by Prometheus. An example of a metric is: how many IP addresses are set in the routing table of router R1.
During the work I developed various knowledge including the use of Prometheus, Grafana, Polycube, Yang, eBPF and improved C ++ skills (also using two libraries, Prometheus-cpp and Jsoncons), Docker, Bash and REST.