diff --git a/05-osm-usage.md b/05-osm-usage.md index c2f48cb9a945992d6fd765f325c3be71f99835d8..c3dd3beaaf4bd1fabc10c9a9d8247682d5973b55 100644 --- a/05-osm-usage.md +++ b/05-osm-usage.md @@ -871,6 +871,21 @@ vdu: As you can see, a list of "NFVI metrics" is defined first at the VDU level, which contains an ID and the corresponding normalized metric name (in this case, `cpu_utilization` and `average_memory_utilization`). Normalized metric names are: `cpu_utilization`, `average_memory_utilization`, `disk_read_ops`, `disk_write_ops`, `disk_read_bytes`, `disk_write_bytes`, `packets_received`, `packets_sent`, `packets_out_dropped`, `packets_in_dropped` +Not all metrics can be collected from all types of VIMs, the following table shows which metrics are supported by each type of VIM: + +| Metric | Openstack | Azure | GCP | +| ------ |:---------:|:-----:|:-----:| +| cpu_utilization | X | X | X | +| average_memory_utilization | X || X | +| disk_read_ops | X | X | X | +| disk_write_ops | X | X | X | +| disk_read_bytes | X | X | X | +| disk_write_bytes | X | X | X | +| packets_in_dropped | X ||| +| packets_out_dropped | X ||| +| packets_received | X || X | +| packets_sent | X || X | + Available attributes and values can be directly explored at the [OSM Information Model](11-osm-im.md). A complete VNFD example can be downloaded from [here](https://osm.etsi.org/gitlab/vnf-onboarding/osm-packages/-/blob/master/hackfest_basic_metrics_vnf). ##### VMware vCD specific notes (OLD) diff --git a/21-reference.md b/21-reference.md index c88b676d4543adcc5a978f6e2650cbf7fbfda8c5..fb700cc9a3c38e1b4ab6d0a7df4ac5d65d11c5ff 100644 --- a/21-reference.md +++ b/21-reference.md @@ -108,6 +108,21 @@ The following figure illustrates graphically the specific workflows for metric a ![Specific workflows for metric acquisition](assets/sa-arch-osm-metric-acquisition-workflows.png) +Regarding to resource consumption metrics, three types of VIM are currently supported: Openstack (Gnocchi and Ceilometer back-ends), Azure and GCP. The metrics that OSM can collect from the VNFs deployed in those VIMs are shown in the table below: + +| Metric | Openstack | Azure | GCP | +| ------ |:---------:|:-----:|:-----:| +| osm_cpu_utilization | X | X | X | +| osm_average_memory_utilization | X || X | +| osm_disk_read_ops | X | X | X | +| osm_disk_write_ops | X | X | X | +| osm_disk_read_bytes | X | X | X | +| osm_disk_write_bytes | X | X | X | +| osm_packets_in_dropped | X ||| +| osm_packets_out_dropped | X ||| +| osm_packets_received | X || X | +| osm_packets_sent | X || X | + The metrics, as acquired by OSM, might not be useful per-se, since they are not related to OSM objects. For instance, the VM status or the VM resource consumption metrics are only useful when they relate to a VNF instance or a NS instance. [Prometheus recording rules](https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/) allow to derive metrics from existing metrics, computing them and saving the result as a new set of time series. The following figure shows a screenshot of the metrics derived in Prometheus. ![Screenshot of Prometheus derived metrics](assets/sa-arch-prometheus-derived-metrics-screenshot.png)