Service KPI Metric Based Scaling of CNF/KNF using Prometheus exporters
Proposers
- Rahul Kumar (Tata Elxsi)
- Deepika E (Tata Elxsi)
- Jayaprakash G (Tata Elxsi)
- Ramesh Ramanathan (Tata Elxsi)
Description
This feature aims to extend the existing scaling capabilities in OSM to support CNFs and KNFs. By leveraging real-time service KPI data exposed through the node_exporter running within CNF/KNF pods, OSM can implement:
- Dynamic CNF/KNF Scaling: OSM will dynamically scale the number of CNF/KNF instances based on predefined thresholds for specific service KPIs. This allows for automatic scaling up or down based on demand, ensuring optimal resource utilization.
- Improved Performance: By scaling based on service KPIs, OSM can ensure the service meets performance expectations during peak loads or when resource utilization is low.
We propose this feature to enable auto-scaling of CNFs/KNFs based on the service KPI metrics obtained from the KDU using node exporter. This feature leverages existing capabilities within OSM (from Rel-14 / feature-10945), to provide a comprehensive solution for optimizing resource utilization and service performance within a cloud-native environment.
Technical Background
- From Rel-14 using feature-10945 of OSM (#10945) Users can add an 'exporter-endpoint' in VNFD and use the Prometheus exporters to scrape the KPI metrics directly from the VDU. Based on those metrics, autoscaling is also possible in OSM for "VNF" based NS instances.
- Feature-11016 (#11016) extends this capability to OSM with NGSA.
Demo or definition of done
A Robot test must be created or updated, containing at least the following steps:
- Onboard VNF package with VNF exporter endpoints and template.
- Instantiate the NS.
- Verify Service KPI is flowing to OSM-Prometheus.
- Verify the scaling based on the predefined threshold.