<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://osm.etsi.org/wikipub/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Diazb</id>
	<title>OSM Public Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://osm.etsi.org/wikipub/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Diazb"/>
	<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php/Special:Contributions/Diazb"/>
	<updated>2026-05-07T07:10:34Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.1</generator>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;diff=4618</id>
		<title>OSM Performance Management</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;diff=4618"/>
		<updated>2019-06-28T19:36:22Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Updating normalized metric names list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This documentation corresponds now to Release SIX 6.0.0, previous documentation related to Performance Management has been deprecated.&lt;br /&gt;
&lt;br /&gt;
==Activating Metrics Collection==&lt;br /&gt;
OSM MON features a &amp;quot;mon-collector&amp;quot; module which will collect metrics whenever specified at the descriptor level.&lt;br /&gt;
For metrics to be collected, they have to exist first at any of these two levels:&lt;br /&gt;
* NFVI - made available by VIM&#039;s Telemetry System&lt;br /&gt;
* VNF - made available by OSM VCA (Juju Metrics)&lt;br /&gt;
&lt;br /&gt;
Reference diagram:&lt;br /&gt;
&lt;br /&gt;
[[File:osm_pm_rel5.png|800px|OSM Performance Management Reference Diagram]]&lt;br /&gt;
&lt;br /&gt;
=== VIM Metrics ===&lt;br /&gt;
&lt;br /&gt;
For VIM metrics to be collected, your VIM should support a Telemetry system.  As of Release 5.0.5, metric collection has been tested with: &lt;br /&gt;
* OpenStack VIM with Keystone v3 authentication and legacy or Gnocchi-based telemetry services.  &lt;br /&gt;
* VMware vCloud Director&lt;br /&gt;
Other VIM types will soon be added during the Release FIVE cycle.&lt;br /&gt;
&lt;br /&gt;
Next step is to activate metrics collection at your VNFDs. Every metric to be collected from the VIM for each VDU has to be described both at the VDU level, and then at the VNF level.  For example:&lt;br /&gt;
&lt;br /&gt;
 vdu:&lt;br /&gt;
 id: vdu1&lt;br /&gt;
   ...  &lt;br /&gt;
   monitoring-param:&lt;br /&gt;
         - id: metric_vdu1_cpu&lt;br /&gt;
           nfvi-metric: cpu_utilization&lt;br /&gt;
         - id: metric_vdu1_memory&lt;br /&gt;
           nfvi-metric: average_memory_utilization&lt;br /&gt;
 ...&lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_cpu&lt;br /&gt;
     name: metric_vim_vnf1_cpu&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-monitoring-param:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-monitoring-param-ref: metric_vdu1_cpu&lt;br /&gt;
 -   id: metric_vim_vnf1_memory&lt;br /&gt;
     name: metric_vim_vnf1_memory&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-monitoring-param:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-monitoring-param-ref: metric_vdu1_memory&lt;br /&gt;
&lt;br /&gt;
As you can see, a list of &amp;quot;NFVI metrics&amp;quot; is defined first at the VDU level, which contains an ID and the corresponding normalized metric name (in this case, &amp;quot;cpu_utilization&amp;quot; and &amp;quot;average_memory_utilization&amp;quot;)&lt;br /&gt;
Then, at the VNF level, a list of monitoring-params is referred, with an ID, name, aggregation-type and their source (&#039;vdu-monitoring-param&#039; in this case)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Additional notes====&lt;br /&gt;
&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/webserver_vimmetric_autoscale_vnfd.tar.gz here].&lt;br /&gt;
* 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&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====OpenStack specific notes====&lt;br /&gt;
&lt;br /&gt;
Since REL6 onwards, MON collects the last measure for the corresponding metric, so no further configuration is needed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== VNF Metrics ===&lt;br /&gt;
&lt;br /&gt;
Metrics can also be collected directly from VNFs using VCA, through the [https://docs.jujucharms.com/2.4/en/developer-metrics Juju Metrics] framework. A simple charm containing a metrics.yaml file at its root folder specifies the metrics to be collected and the associated command.  &lt;br /&gt;
&lt;br /&gt;
For example, the following metrics.yaml file collects three metrics from the VNF, called &#039;users&#039;, &#039;load&#039; and &#039;load_pct&#039;&lt;br /&gt;
&lt;br /&gt;
 metrics:&lt;br /&gt;
    users:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;# of users&amp;quot;&lt;br /&gt;
      command: who|wc -l&lt;br /&gt;
    load:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;5 minute load average&amp;quot;&lt;br /&gt;
      command: cat /proc/loadavg |awk &#039;{print $1}&#039;&lt;br /&gt;
    load_pct:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;1 minute load average percent&amp;quot;&lt;br /&gt;
      command: cat /proc/loadavg  | awk &#039;{load_pct=$1*100.00} END {print load_pct}&#039;          &lt;br /&gt;
&lt;br /&gt;
Please note that the granularity of this metric collection method is fixed to 5 minutes and cannot be changed at this point.&lt;br /&gt;
&lt;br /&gt;
After metrics.yaml is available, there are two options for describing the metric collection in the VNFD:&lt;br /&gt;
&lt;br /&gt;
==== 1) VNF-level VNF metrics ====&lt;br /&gt;
&lt;br /&gt;
 mgmt-interface:&lt;br /&gt;
  cp: vdu_mgmt # is important to set the mgmt VDU or CP for metrics collection&lt;br /&gt;
 vnf-configuration:&lt;br /&gt;
   initial-config-primitive:&lt;br /&gt;
   ...&lt;br /&gt;
   juju:&lt;br /&gt;
     charm: testmetrics&lt;br /&gt;
   metrics:&lt;br /&gt;
     - name: load &lt;br /&gt;
     - name: load_pct&lt;br /&gt;
     - name: users  &lt;br /&gt;
 ...              &lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_load&lt;br /&gt;
     name: metric_vim_vnf1_load&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vnf-metric:&lt;br /&gt;
       vnf-metric-name-ref: load&lt;br /&gt;
 -   id: metric_vim_vnf1_loadpct&lt;br /&gt;
     name: metric_vim_vnf1_loadpct&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vnf-metric:&lt;br /&gt;
       vnf-metric-name-ref: load_pct&lt;br /&gt;
&lt;br /&gt;
Additional notes:&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example with VNF metrics collection (VNF-level) can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/ubuntuvm_vnfmetric_autoscale_vnfd.tar.gz here].&lt;br /&gt;
&lt;br /&gt;
==== 2) VDU-level VNF metrics ====&lt;br /&gt;
&lt;br /&gt;
 vdu:&lt;br /&gt;
 - id: vdu1&lt;br /&gt;
   ...&lt;br /&gt;
   interface:&lt;br /&gt;
   - ...&lt;br /&gt;
     mgmt-interface: true ! is important to set the mgmt interface for metrics collection&lt;br /&gt;
     ...&lt;br /&gt;
   vdu-configuration:&lt;br /&gt;
     initial-config-primitive:&lt;br /&gt;
     ...&lt;br /&gt;
     juju:&lt;br /&gt;
       charm: testmetrics&lt;br /&gt;
     metrics:&lt;br /&gt;
       - name: load &lt;br /&gt;
       - name: load_pct&lt;br /&gt;
       - name: users  &lt;br /&gt;
 ...              &lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_load&lt;br /&gt;
     name: metric_vim_vnf1_load&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-metric:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-metric-name-ref: load&lt;br /&gt;
 -   id: metric_vim_vnf1_loadpct&lt;br /&gt;
     name: metric_vim_vnf1_loadpct&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-metric:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-metric-name-ref: load_pct&lt;br /&gt;
&lt;br /&gt;
Additional notes:&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example with VNF metrics collection (VDU-level) can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/ubuntuvm_vnfvdumetric_autoscale_vnfd.tar.gz here]. &lt;br /&gt;
&lt;br /&gt;
As in VIM metrics, a list of &amp;quot;metrics&amp;quot; is defined first either at the VNF or VDU &amp;quot;configuration&amp;quot; level, which contain a name that comes from the metrics.yaml file. Then, at the VNF level, a list of monitoring-params is referred, with an ID, name, aggregation-type and their source, which can be a &amp;quot;vdu-metric&amp;quot; or a &amp;quot;vnf-metric&amp;quot; in this case.&lt;br /&gt;
&lt;br /&gt;
==Retrieving metrics from Prometheus TSDB==&lt;br /&gt;
&lt;br /&gt;
Once the metrics are being collected, they are stored in the Prometheus Time-Series DB &#039;&#039;&#039;with an &#039;osm_&#039; prefix&#039;&#039;&#039;, and there are a number of ways in which you can retrieve them.&lt;br /&gt;
&lt;br /&gt;
=== 1) Visualizing metrics in Prometheus UI ===&lt;br /&gt;
&lt;br /&gt;
Prometheus TSDB includes its own UI, which you can visit at http://[OSM_IP]:9091&lt;br /&gt;
&lt;br /&gt;
From there, you can:&lt;br /&gt;
* Type any metric name (i.e. osm_cpu_utilization) in the &#039;expression&#039; field and see its current value or a histogram.&lt;br /&gt;
* Visit the Status --&amp;gt; Target menu, to monitor the connection status between Prometheus and MON (through &#039;mon-exporter&#039;)&lt;br /&gt;
&lt;br /&gt;
[[File:osm_prometheus_rel5.png|800px|Screenshot of OSM Prometheus UI]]&lt;br /&gt;
&lt;br /&gt;
=== 2) Integrating Prometheus with Grafana ===&lt;br /&gt;
&lt;br /&gt;
There is a well-known integration between these two components that allows Grafana to easily show interactive graphs for any metric.  You can use any existing Grafana installation or the one that comes in OSM as the experimental &amp;quot;pm_stack&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To install the &#039;pm_stack&#039; (which today includes only Grafana), in an existing OSM installation, run the installer in the following way:&lt;br /&gt;
 ./install_osm.sh -o pm_stack&lt;br /&gt;
Otherwise, if you are installing from scratch, you can simply run the installer with the pm_stack option.&lt;br /&gt;
 ./install.sh --pm_stack&lt;br /&gt;
&lt;br /&gt;
Once installed, access Grafana with its default credentials (admin / admin) at http://[OSM_IP_address]:3000 and by clicking the &#039;Manage&#039; option at the &#039;Dashboards&#039; menu (to the left), you will find a sample dashboard containing two graphs for VIM metrics, and two graphs for VNF metrics.  You can easily change them or add more, as desired.&lt;br /&gt;
&lt;br /&gt;
[[File:osm_grafana_rel5.png|800px|Screenshot of OSM Grafana UI]]&lt;br /&gt;
&lt;br /&gt;
=== 3) Interacting with Prometheus directly through its API ===&lt;br /&gt;
&lt;br /&gt;
Even though many analytics applications, like Grafana, include their own integration for Prometheus, some other applications do not include it out of the box or there is a need to build a custom integration.  &lt;br /&gt;
&lt;br /&gt;
In such cases, the [https://prometheus.io/docs/prometheus/latest/querying/api/ Prometheus HTTP API] can be used to gather any metrics.  A couple of examples are shown below:&lt;br /&gt;
&lt;br /&gt;
Example with Date range query&lt;br /&gt;
 curl &#039;http://localhost:9091/api/v1/query_range?query=osm_cpu_utilization&amp;amp;start=2018-12-03T14:10:00.000Z&amp;amp;end=2018-12-03T14:20:00.000Z&amp;amp;step=15s&#039;&lt;br /&gt;
&lt;br /&gt;
Example with Instant query&lt;br /&gt;
 curl &#039;http://localhost:9091/api/v1/query?query=osm_cpu_utilization&amp;amp;time=2018-12-03T14:14:00.000Z&#039;&lt;br /&gt;
&lt;br /&gt;
Further examples and API calls can be found at the [https://prometheus.io/docs/prometheus/latest/querying/api/ Prometheus HTTP API documentation].&lt;br /&gt;
&lt;br /&gt;
=== 4) Interacting directly with MON Collector ===&lt;br /&gt;
&lt;br /&gt;
The way Prometheus TSDB stores metrics is by querying Prometheus &#039;exporters&#039; periodically, which are set as &#039;targets&#039;.  Exporters expose current metrics in a specific format that Prometheus can understand, more information can be found [https://prometheus.io/docs/instrumenting/exporters/ here]&lt;br /&gt;
&lt;br /&gt;
OSM MON features a &amp;quot;mon-exporter&amp;quot; module that exports &#039;&#039;&#039;current metrics&#039;&#039;&#039; through port 8000.  Please note that this port is by default not being exposed outside the OSM docker&#039;s network.&lt;br /&gt;
&lt;br /&gt;
A tool that understands Prometheus &#039;exporters&#039; (for example, Elastic Metricbeat) can be plugged-in to integrate directly with &amp;quot;mon-exporter&amp;quot;.  To get an idea on how metrics look alike in this particular format, you could:&lt;br /&gt;
&lt;br /&gt;
1. Get into MON console&lt;br /&gt;
 docker exec -ti osm_mon.1.[id] bash&lt;br /&gt;
2. Install curl&lt;br /&gt;
 apt -y install curl&lt;br /&gt;
3. Use curl to get the current metrics list&lt;br /&gt;
 curl localhost:8000&lt;br /&gt;
&lt;br /&gt;
Please note that as long as the Prometheus container is up, it will continue retrieving and storing metrics in addition to any other tool/DB you connect to &amp;quot;mon-exporter&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== 5) Using your own TSDB ===&lt;br /&gt;
&lt;br /&gt;
OSM MON integrates Prometheus through a plugin/backend model, so if desired, other backends can be developed.  If interested in contributing with such option, you can ask for details at our Slack #mon channel or through the OSM Tech mailing list.&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;diff=4617</id>
		<title>OSM Performance Management</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;diff=4617"/>
		<updated>2019-06-28T19:34:04Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Removing granularity section from OpenStack specific notes as it is no longer needed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This documentation corresponds now to Release SIX 6.0.0, previous documentation related to Performance Management has been deprecated.&lt;br /&gt;
&lt;br /&gt;
==Activating Metrics Collection==&lt;br /&gt;
OSM MON features a &amp;quot;mon-collector&amp;quot; module which will collect metrics whenever specified at the descriptor level.&lt;br /&gt;
For metrics to be collected, they have to exist first at any of these two levels:&lt;br /&gt;
* NFVI - made available by VIM&#039;s Telemetry System&lt;br /&gt;
* VNF - made available by OSM VCA (Juju Metrics)&lt;br /&gt;
&lt;br /&gt;
Reference diagram:&lt;br /&gt;
&lt;br /&gt;
[[File:osm_pm_rel5.png|800px|OSM Performance Management Reference Diagram]]&lt;br /&gt;
&lt;br /&gt;
=== VIM Metrics ===&lt;br /&gt;
&lt;br /&gt;
For VIM metrics to be collected, your VIM should support a Telemetry system.  As of Release 5.0.5, metric collection has been tested with: &lt;br /&gt;
* OpenStack VIM with Keystone v3 authentication and legacy or Gnocchi-based telemetry services.  &lt;br /&gt;
* VMware vCloud Director&lt;br /&gt;
Other VIM types will soon be added during the Release FIVE cycle.&lt;br /&gt;
&lt;br /&gt;
Next step is to activate metrics collection at your VNFDs. Every metric to be collected from the VIM for each VDU has to be described both at the VDU level, and then at the VNF level.  For example:&lt;br /&gt;
&lt;br /&gt;
 vdu:&lt;br /&gt;
 id: vdu1&lt;br /&gt;
   ...  &lt;br /&gt;
   monitoring-param:&lt;br /&gt;
         - id: metric_vdu1_cpu&lt;br /&gt;
           nfvi-metric: cpu_utilization&lt;br /&gt;
         - id: metric_vdu1_memory&lt;br /&gt;
           nfvi-metric: average_memory_utilization&lt;br /&gt;
 ...&lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_cpu&lt;br /&gt;
     name: metric_vim_vnf1_cpu&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-monitoring-param:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-monitoring-param-ref: metric_vdu1_cpu&lt;br /&gt;
 -   id: metric_vim_vnf1_memory&lt;br /&gt;
     name: metric_vim_vnf1_memory&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-monitoring-param:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-monitoring-param-ref: metric_vdu1_memory&lt;br /&gt;
&lt;br /&gt;
As you can see, a list of &amp;quot;NFVI metrics&amp;quot; is defined first at the VDU level, which contains an ID and the corresponding normalized metric name (in this case, &amp;quot;cpu_utilization&amp;quot; and &amp;quot;average_memory_utilization&amp;quot;)&lt;br /&gt;
Then, at the VNF level, a list of monitoring-params is referred, with an ID, name, aggregation-type and their source (&#039;vdu-monitoring-param&#039; in this case)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Additional notes====&lt;br /&gt;
&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/webserver_vimmetric_autoscale_vnfd.tar.gz here].&lt;br /&gt;
* Normalized metric names are: cpu_utilization, average_memory_utilization, disk_read_ops,disk_write_ops, disk_read_bytes, disk_write_bytes, packets_dropped_&amp;lt;nic number&amp;gt;, packets_received, packets_sent&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====OpenStack specific notes====&lt;br /&gt;
&lt;br /&gt;
Since REL6 onwards, MON collects the last measure for the corresponding metric, so no further configuration is needed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== VNF Metrics ===&lt;br /&gt;
&lt;br /&gt;
Metrics can also be collected directly from VNFs using VCA, through the [https://docs.jujucharms.com/2.4/en/developer-metrics Juju Metrics] framework. A simple charm containing a metrics.yaml file at its root folder specifies the metrics to be collected and the associated command.  &lt;br /&gt;
&lt;br /&gt;
For example, the following metrics.yaml file collects three metrics from the VNF, called &#039;users&#039;, &#039;load&#039; and &#039;load_pct&#039;&lt;br /&gt;
&lt;br /&gt;
 metrics:&lt;br /&gt;
    users:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;# of users&amp;quot;&lt;br /&gt;
      command: who|wc -l&lt;br /&gt;
    load:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;5 minute load average&amp;quot;&lt;br /&gt;
      command: cat /proc/loadavg |awk &#039;{print $1}&#039;&lt;br /&gt;
    load_pct:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;1 minute load average percent&amp;quot;&lt;br /&gt;
      command: cat /proc/loadavg  | awk &#039;{load_pct=$1*100.00} END {print load_pct}&#039;          &lt;br /&gt;
&lt;br /&gt;
Please note that the granularity of this metric collection method is fixed to 5 minutes and cannot be changed at this point.&lt;br /&gt;
&lt;br /&gt;
After metrics.yaml is available, there are two options for describing the metric collection in the VNFD:&lt;br /&gt;
&lt;br /&gt;
==== 1) VNF-level VNF metrics ====&lt;br /&gt;
&lt;br /&gt;
 mgmt-interface:&lt;br /&gt;
  cp: vdu_mgmt # is important to set the mgmt VDU or CP for metrics collection&lt;br /&gt;
 vnf-configuration:&lt;br /&gt;
   initial-config-primitive:&lt;br /&gt;
   ...&lt;br /&gt;
   juju:&lt;br /&gt;
     charm: testmetrics&lt;br /&gt;
   metrics:&lt;br /&gt;
     - name: load &lt;br /&gt;
     - name: load_pct&lt;br /&gt;
     - name: users  &lt;br /&gt;
 ...              &lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_load&lt;br /&gt;
     name: metric_vim_vnf1_load&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vnf-metric:&lt;br /&gt;
       vnf-metric-name-ref: load&lt;br /&gt;
 -   id: metric_vim_vnf1_loadpct&lt;br /&gt;
     name: metric_vim_vnf1_loadpct&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vnf-metric:&lt;br /&gt;
       vnf-metric-name-ref: load_pct&lt;br /&gt;
&lt;br /&gt;
Additional notes:&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example with VNF metrics collection (VNF-level) can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/ubuntuvm_vnfmetric_autoscale_vnfd.tar.gz here].&lt;br /&gt;
&lt;br /&gt;
==== 2) VDU-level VNF metrics ====&lt;br /&gt;
&lt;br /&gt;
 vdu:&lt;br /&gt;
 - id: vdu1&lt;br /&gt;
   ...&lt;br /&gt;
   interface:&lt;br /&gt;
   - ...&lt;br /&gt;
     mgmt-interface: true ! is important to set the mgmt interface for metrics collection&lt;br /&gt;
     ...&lt;br /&gt;
   vdu-configuration:&lt;br /&gt;
     initial-config-primitive:&lt;br /&gt;
     ...&lt;br /&gt;
     juju:&lt;br /&gt;
       charm: testmetrics&lt;br /&gt;
     metrics:&lt;br /&gt;
       - name: load &lt;br /&gt;
       - name: load_pct&lt;br /&gt;
       - name: users  &lt;br /&gt;
 ...              &lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_load&lt;br /&gt;
     name: metric_vim_vnf1_load&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-metric:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-metric-name-ref: load&lt;br /&gt;
 -   id: metric_vim_vnf1_loadpct&lt;br /&gt;
     name: metric_vim_vnf1_loadpct&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-metric:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-metric-name-ref: load_pct&lt;br /&gt;
&lt;br /&gt;
Additional notes:&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example with VNF metrics collection (VDU-level) can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/ubuntuvm_vnfvdumetric_autoscale_vnfd.tar.gz here]. &lt;br /&gt;
&lt;br /&gt;
As in VIM metrics, a list of &amp;quot;metrics&amp;quot; is defined first either at the VNF or VDU &amp;quot;configuration&amp;quot; level, which contain a name that comes from the metrics.yaml file. Then, at the VNF level, a list of monitoring-params is referred, with an ID, name, aggregation-type and their source, which can be a &amp;quot;vdu-metric&amp;quot; or a &amp;quot;vnf-metric&amp;quot; in this case.&lt;br /&gt;
&lt;br /&gt;
==Retrieving metrics from Prometheus TSDB==&lt;br /&gt;
&lt;br /&gt;
Once the metrics are being collected, they are stored in the Prometheus Time-Series DB &#039;&#039;&#039;with an &#039;osm_&#039; prefix&#039;&#039;&#039;, and there are a number of ways in which you can retrieve them.&lt;br /&gt;
&lt;br /&gt;
=== 1) Visualizing metrics in Prometheus UI ===&lt;br /&gt;
&lt;br /&gt;
Prometheus TSDB includes its own UI, which you can visit at http://[OSM_IP]:9091&lt;br /&gt;
&lt;br /&gt;
From there, you can:&lt;br /&gt;
* Type any metric name (i.e. osm_cpu_utilization) in the &#039;expression&#039; field and see its current value or a histogram.&lt;br /&gt;
* Visit the Status --&amp;gt; Target menu, to monitor the connection status between Prometheus and MON (through &#039;mon-exporter&#039;)&lt;br /&gt;
&lt;br /&gt;
[[File:osm_prometheus_rel5.png|800px|Screenshot of OSM Prometheus UI]]&lt;br /&gt;
&lt;br /&gt;
=== 2) Integrating Prometheus with Grafana ===&lt;br /&gt;
&lt;br /&gt;
There is a well-known integration between these two components that allows Grafana to easily show interactive graphs for any metric.  You can use any existing Grafana installation or the one that comes in OSM as the experimental &amp;quot;pm_stack&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To install the &#039;pm_stack&#039; (which today includes only Grafana), in an existing OSM installation, run the installer in the following way:&lt;br /&gt;
 ./install_osm.sh -o pm_stack&lt;br /&gt;
Otherwise, if you are installing from scratch, you can simply run the installer with the pm_stack option.&lt;br /&gt;
 ./install.sh --pm_stack&lt;br /&gt;
&lt;br /&gt;
Once installed, access Grafana with its default credentials (admin / admin) at http://[OSM_IP_address]:3000 and by clicking the &#039;Manage&#039; option at the &#039;Dashboards&#039; menu (to the left), you will find a sample dashboard containing two graphs for VIM metrics, and two graphs for VNF metrics.  You can easily change them or add more, as desired.&lt;br /&gt;
&lt;br /&gt;
[[File:osm_grafana_rel5.png|800px|Screenshot of OSM Grafana UI]]&lt;br /&gt;
&lt;br /&gt;
=== 3) Interacting with Prometheus directly through its API ===&lt;br /&gt;
&lt;br /&gt;
Even though many analytics applications, like Grafana, include their own integration for Prometheus, some other applications do not include it out of the box or there is a need to build a custom integration.  &lt;br /&gt;
&lt;br /&gt;
In such cases, the [https://prometheus.io/docs/prometheus/latest/querying/api/ Prometheus HTTP API] can be used to gather any metrics.  A couple of examples are shown below:&lt;br /&gt;
&lt;br /&gt;
Example with Date range query&lt;br /&gt;
 curl &#039;http://localhost:9091/api/v1/query_range?query=osm_cpu_utilization&amp;amp;start=2018-12-03T14:10:00.000Z&amp;amp;end=2018-12-03T14:20:00.000Z&amp;amp;step=15s&#039;&lt;br /&gt;
&lt;br /&gt;
Example with Instant query&lt;br /&gt;
 curl &#039;http://localhost:9091/api/v1/query?query=osm_cpu_utilization&amp;amp;time=2018-12-03T14:14:00.000Z&#039;&lt;br /&gt;
&lt;br /&gt;
Further examples and API calls can be found at the [https://prometheus.io/docs/prometheus/latest/querying/api/ Prometheus HTTP API documentation].&lt;br /&gt;
&lt;br /&gt;
=== 4) Interacting directly with MON Collector ===&lt;br /&gt;
&lt;br /&gt;
The way Prometheus TSDB stores metrics is by querying Prometheus &#039;exporters&#039; periodically, which are set as &#039;targets&#039;.  Exporters expose current metrics in a specific format that Prometheus can understand, more information can be found [https://prometheus.io/docs/instrumenting/exporters/ here]&lt;br /&gt;
&lt;br /&gt;
OSM MON features a &amp;quot;mon-exporter&amp;quot; module that exports &#039;&#039;&#039;current metrics&#039;&#039;&#039; through port 8000.  Please note that this port is by default not being exposed outside the OSM docker&#039;s network.&lt;br /&gt;
&lt;br /&gt;
A tool that understands Prometheus &#039;exporters&#039; (for example, Elastic Metricbeat) can be plugged-in to integrate directly with &amp;quot;mon-exporter&amp;quot;.  To get an idea on how metrics look alike in this particular format, you could:&lt;br /&gt;
&lt;br /&gt;
1. Get into MON console&lt;br /&gt;
 docker exec -ti osm_mon.1.[id] bash&lt;br /&gt;
2. Install curl&lt;br /&gt;
 apt -y install curl&lt;br /&gt;
3. Use curl to get the current metrics list&lt;br /&gt;
 curl localhost:8000&lt;br /&gt;
&lt;br /&gt;
Please note that as long as the Prometheus container is up, it will continue retrieving and storing metrics in addition to any other tool/DB you connect to &amp;quot;mon-exporter&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== 5) Using your own TSDB ===&lt;br /&gt;
&lt;br /&gt;
OSM MON integrates Prometheus through a plugin/backend model, so if desired, other backends can be developed.  If interested in contributing with such option, you can ask for details at our Slack #mon channel or through the OSM Tech mailing list.&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;diff=4616</id>
		<title>OSM Performance Management</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;diff=4616"/>
		<updated>2019-06-28T19:32:04Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Updating version to SIX&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This documentation corresponds now to Release SIX 6.0.0, previous documentation related to Performance Management has been deprecated.&lt;br /&gt;
&lt;br /&gt;
==Activating Metrics Collection==&lt;br /&gt;
OSM MON features a &amp;quot;mon-collector&amp;quot; module which will collect metrics whenever specified at the descriptor level.&lt;br /&gt;
For metrics to be collected, they have to exist first at any of these two levels:&lt;br /&gt;
* NFVI - made available by VIM&#039;s Telemetry System&lt;br /&gt;
* VNF - made available by OSM VCA (Juju Metrics)&lt;br /&gt;
&lt;br /&gt;
Reference diagram:&lt;br /&gt;
&lt;br /&gt;
[[File:osm_pm_rel5.png|800px|OSM Performance Management Reference Diagram]]&lt;br /&gt;
&lt;br /&gt;
=== VIM Metrics ===&lt;br /&gt;
&lt;br /&gt;
For VIM metrics to be collected, your VIM should support a Telemetry system.  As of Release 5.0.5, metric collection has been tested with: &lt;br /&gt;
* OpenStack VIM with Keystone v3 authentication and legacy or Gnocchi-based telemetry services.  &lt;br /&gt;
* VMware vCloud Director&lt;br /&gt;
Other VIM types will soon be added during the Release FIVE cycle.&lt;br /&gt;
&lt;br /&gt;
Next step is to activate metrics collection at your VNFDs. Every metric to be collected from the VIM for each VDU has to be described both at the VDU level, and then at the VNF level.  For example:&lt;br /&gt;
&lt;br /&gt;
 vdu:&lt;br /&gt;
 id: vdu1&lt;br /&gt;
   ...  &lt;br /&gt;
   monitoring-param:&lt;br /&gt;
         - id: metric_vdu1_cpu&lt;br /&gt;
           nfvi-metric: cpu_utilization&lt;br /&gt;
         - id: metric_vdu1_memory&lt;br /&gt;
           nfvi-metric: average_memory_utilization&lt;br /&gt;
 ...&lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_cpu&lt;br /&gt;
     name: metric_vim_vnf1_cpu&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-monitoring-param:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-monitoring-param-ref: metric_vdu1_cpu&lt;br /&gt;
 -   id: metric_vim_vnf1_memory&lt;br /&gt;
     name: metric_vim_vnf1_memory&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-monitoring-param:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-monitoring-param-ref: metric_vdu1_memory&lt;br /&gt;
&lt;br /&gt;
As you can see, a list of &amp;quot;NFVI metrics&amp;quot; is defined first at the VDU level, which contains an ID and the corresponding normalized metric name (in this case, &amp;quot;cpu_utilization&amp;quot; and &amp;quot;average_memory_utilization&amp;quot;)&lt;br /&gt;
Then, at the VNF level, a list of monitoring-params is referred, with an ID, name, aggregation-type and their source (&#039;vdu-monitoring-param&#039; in this case)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Additional notes====&lt;br /&gt;
&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/webserver_vimmetric_autoscale_vnfd.tar.gz here].&lt;br /&gt;
* Normalized metric names are: cpu_utilization, average_memory_utilization, disk_read_ops,disk_write_ops, disk_read_bytes, disk_write_bytes, packets_dropped_&amp;lt;nic number&amp;gt;, packets_received, packets_sent&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====OpenStack specific notes====&lt;br /&gt;
&lt;br /&gt;
When using Gnocchi, it is important to make the MON&#039;s container aware of the granularity of your Telemetry system.  For example, if it collects metrics every 60 seconds (like in Gnocchi&#039;s &#039;medium&#039; archive policy), you would need to update MON&#039;s &#039;&#039;&#039;OS_DEFAULT_GRANULARITY&#039;&#039;&#039; environmental variable like this:&lt;br /&gt;
&lt;br /&gt;
 docker service update --env-add OS_DEFAULT_GRANULARITY=60 osm_mon&lt;br /&gt;
&lt;br /&gt;
OS_DEFAULT_GRANULARITY default value is 300.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== VNF Metrics ===&lt;br /&gt;
&lt;br /&gt;
Metrics can also be collected directly from VNFs using VCA, through the [https://docs.jujucharms.com/2.4/en/developer-metrics Juju Metrics] framework. A simple charm containing a metrics.yaml file at its root folder specifies the metrics to be collected and the associated command.  &lt;br /&gt;
&lt;br /&gt;
For example, the following metrics.yaml file collects three metrics from the VNF, called &#039;users&#039;, &#039;load&#039; and &#039;load_pct&#039;&lt;br /&gt;
&lt;br /&gt;
 metrics:&lt;br /&gt;
    users:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;# of users&amp;quot;&lt;br /&gt;
      command: who|wc -l&lt;br /&gt;
    load:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;5 minute load average&amp;quot;&lt;br /&gt;
      command: cat /proc/loadavg |awk &#039;{print $1}&#039;&lt;br /&gt;
    load_pct:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;1 minute load average percent&amp;quot;&lt;br /&gt;
      command: cat /proc/loadavg  | awk &#039;{load_pct=$1*100.00} END {print load_pct}&#039;          &lt;br /&gt;
&lt;br /&gt;
Please note that the granularity of this metric collection method is fixed to 5 minutes and cannot be changed at this point.&lt;br /&gt;
&lt;br /&gt;
After metrics.yaml is available, there are two options for describing the metric collection in the VNFD:&lt;br /&gt;
&lt;br /&gt;
==== 1) VNF-level VNF metrics ====&lt;br /&gt;
&lt;br /&gt;
 mgmt-interface:&lt;br /&gt;
  cp: vdu_mgmt # is important to set the mgmt VDU or CP for metrics collection&lt;br /&gt;
 vnf-configuration:&lt;br /&gt;
   initial-config-primitive:&lt;br /&gt;
   ...&lt;br /&gt;
   juju:&lt;br /&gt;
     charm: testmetrics&lt;br /&gt;
   metrics:&lt;br /&gt;
     - name: load &lt;br /&gt;
     - name: load_pct&lt;br /&gt;
     - name: users  &lt;br /&gt;
 ...              &lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_load&lt;br /&gt;
     name: metric_vim_vnf1_load&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vnf-metric:&lt;br /&gt;
       vnf-metric-name-ref: load&lt;br /&gt;
 -   id: metric_vim_vnf1_loadpct&lt;br /&gt;
     name: metric_vim_vnf1_loadpct&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vnf-metric:&lt;br /&gt;
       vnf-metric-name-ref: load_pct&lt;br /&gt;
&lt;br /&gt;
Additional notes:&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example with VNF metrics collection (VNF-level) can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/ubuntuvm_vnfmetric_autoscale_vnfd.tar.gz here].&lt;br /&gt;
&lt;br /&gt;
==== 2) VDU-level VNF metrics ====&lt;br /&gt;
&lt;br /&gt;
 vdu:&lt;br /&gt;
 - id: vdu1&lt;br /&gt;
   ...&lt;br /&gt;
   interface:&lt;br /&gt;
   - ...&lt;br /&gt;
     mgmt-interface: true ! is important to set the mgmt interface for metrics collection&lt;br /&gt;
     ...&lt;br /&gt;
   vdu-configuration:&lt;br /&gt;
     initial-config-primitive:&lt;br /&gt;
     ...&lt;br /&gt;
     juju:&lt;br /&gt;
       charm: testmetrics&lt;br /&gt;
     metrics:&lt;br /&gt;
       - name: load &lt;br /&gt;
       - name: load_pct&lt;br /&gt;
       - name: users  &lt;br /&gt;
 ...              &lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_load&lt;br /&gt;
     name: metric_vim_vnf1_load&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-metric:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-metric-name-ref: load&lt;br /&gt;
 -   id: metric_vim_vnf1_loadpct&lt;br /&gt;
     name: metric_vim_vnf1_loadpct&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-metric:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-metric-name-ref: load_pct&lt;br /&gt;
&lt;br /&gt;
Additional notes:&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example with VNF metrics collection (VDU-level) can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/ubuntuvm_vnfvdumetric_autoscale_vnfd.tar.gz here]. &lt;br /&gt;
&lt;br /&gt;
As in VIM metrics, a list of &amp;quot;metrics&amp;quot; is defined first either at the VNF or VDU &amp;quot;configuration&amp;quot; level, which contain a name that comes from the metrics.yaml file. Then, at the VNF level, a list of monitoring-params is referred, with an ID, name, aggregation-type and their source, which can be a &amp;quot;vdu-metric&amp;quot; or a &amp;quot;vnf-metric&amp;quot; in this case.&lt;br /&gt;
&lt;br /&gt;
==Retrieving metrics from Prometheus TSDB==&lt;br /&gt;
&lt;br /&gt;
Once the metrics are being collected, they are stored in the Prometheus Time-Series DB &#039;&#039;&#039;with an &#039;osm_&#039; prefix&#039;&#039;&#039;, and there are a number of ways in which you can retrieve them.&lt;br /&gt;
&lt;br /&gt;
=== 1) Visualizing metrics in Prometheus UI ===&lt;br /&gt;
&lt;br /&gt;
Prometheus TSDB includes its own UI, which you can visit at http://[OSM_IP]:9091&lt;br /&gt;
&lt;br /&gt;
From there, you can:&lt;br /&gt;
* Type any metric name (i.e. osm_cpu_utilization) in the &#039;expression&#039; field and see its current value or a histogram.&lt;br /&gt;
* Visit the Status --&amp;gt; Target menu, to monitor the connection status between Prometheus and MON (through &#039;mon-exporter&#039;)&lt;br /&gt;
&lt;br /&gt;
[[File:osm_prometheus_rel5.png|800px|Screenshot of OSM Prometheus UI]]&lt;br /&gt;
&lt;br /&gt;
=== 2) Integrating Prometheus with Grafana ===&lt;br /&gt;
&lt;br /&gt;
There is a well-known integration between these two components that allows Grafana to easily show interactive graphs for any metric.  You can use any existing Grafana installation or the one that comes in OSM as the experimental &amp;quot;pm_stack&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To install the &#039;pm_stack&#039; (which today includes only Grafana), in an existing OSM installation, run the installer in the following way:&lt;br /&gt;
 ./install_osm.sh -o pm_stack&lt;br /&gt;
Otherwise, if you are installing from scratch, you can simply run the installer with the pm_stack option.&lt;br /&gt;
 ./install.sh --pm_stack&lt;br /&gt;
&lt;br /&gt;
Once installed, access Grafana with its default credentials (admin / admin) at http://[OSM_IP_address]:3000 and by clicking the &#039;Manage&#039; option at the &#039;Dashboards&#039; menu (to the left), you will find a sample dashboard containing two graphs for VIM metrics, and two graphs for VNF metrics.  You can easily change them or add more, as desired.&lt;br /&gt;
&lt;br /&gt;
[[File:osm_grafana_rel5.png|800px|Screenshot of OSM Grafana UI]]&lt;br /&gt;
&lt;br /&gt;
=== 3) Interacting with Prometheus directly through its API ===&lt;br /&gt;
&lt;br /&gt;
Even though many analytics applications, like Grafana, include their own integration for Prometheus, some other applications do not include it out of the box or there is a need to build a custom integration.  &lt;br /&gt;
&lt;br /&gt;
In such cases, the [https://prometheus.io/docs/prometheus/latest/querying/api/ Prometheus HTTP API] can be used to gather any metrics.  A couple of examples are shown below:&lt;br /&gt;
&lt;br /&gt;
Example with Date range query&lt;br /&gt;
 curl &#039;http://localhost:9091/api/v1/query_range?query=osm_cpu_utilization&amp;amp;start=2018-12-03T14:10:00.000Z&amp;amp;end=2018-12-03T14:20:00.000Z&amp;amp;step=15s&#039;&lt;br /&gt;
&lt;br /&gt;
Example with Instant query&lt;br /&gt;
 curl &#039;http://localhost:9091/api/v1/query?query=osm_cpu_utilization&amp;amp;time=2018-12-03T14:14:00.000Z&#039;&lt;br /&gt;
&lt;br /&gt;
Further examples and API calls can be found at the [https://prometheus.io/docs/prometheus/latest/querying/api/ Prometheus HTTP API documentation].&lt;br /&gt;
&lt;br /&gt;
=== 4) Interacting directly with MON Collector ===&lt;br /&gt;
&lt;br /&gt;
The way Prometheus TSDB stores metrics is by querying Prometheus &#039;exporters&#039; periodically, which are set as &#039;targets&#039;.  Exporters expose current metrics in a specific format that Prometheus can understand, more information can be found [https://prometheus.io/docs/instrumenting/exporters/ here]&lt;br /&gt;
&lt;br /&gt;
OSM MON features a &amp;quot;mon-exporter&amp;quot; module that exports &#039;&#039;&#039;current metrics&#039;&#039;&#039; through port 8000.  Please note that this port is by default not being exposed outside the OSM docker&#039;s network.&lt;br /&gt;
&lt;br /&gt;
A tool that understands Prometheus &#039;exporters&#039; (for example, Elastic Metricbeat) can be plugged-in to integrate directly with &amp;quot;mon-exporter&amp;quot;.  To get an idea on how metrics look alike in this particular format, you could:&lt;br /&gt;
&lt;br /&gt;
1. Get into MON console&lt;br /&gt;
 docker exec -ti osm_mon.1.[id] bash&lt;br /&gt;
2. Install curl&lt;br /&gt;
 apt -y install curl&lt;br /&gt;
3. Use curl to get the current metrics list&lt;br /&gt;
 curl localhost:8000&lt;br /&gt;
&lt;br /&gt;
Please note that as long as the Prometheus container is up, it will continue retrieving and storing metrics in addition to any other tool/DB you connect to &amp;quot;mon-exporter&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== 5) Using your own TSDB ===&lt;br /&gt;
&lt;br /&gt;
OSM MON integrates Prometheus through a plugin/backend model, so if desired, other backends can be developed.  If interested in contributing with such option, you can ask for details at our Slack #mon channel or through the OSM Tech mailing list.&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FIVE_Documentation&amp;diff=4608</id>
		<title>OSM Release FIVE Documentation</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FIVE_Documentation&amp;diff=4608"/>
		<updated>2019-06-24T18:12:20Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Fixing version of OSM Performance Management&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:6hackdate.png|320px|right|top|link=https://osm.etsi.org/wikipub/index.php/6th_OSM_Hackfest]]  &lt;br /&gt;
&lt;br /&gt;
== Release FIVE Quickstart ==&lt;br /&gt;
* In order to get started quickly and get familiar with the most common operations, you can refer to the [[OSM_Release_FIVE | Release FIVE Quickstart page]].&lt;br /&gt;
&lt;br /&gt;
== VNF and NS examples ==&lt;br /&gt;
* [[Examples from OSM Hackfests]]&lt;br /&gt;
&lt;br /&gt;
== Onboarding your own VNF and NS ==&lt;br /&gt;
* [[Creating_your_own_VNF_package | Create your own VNF package]] &lt;br /&gt;
* [[Creating_your_own_VNF_charm_(Release_THREE) | Creating your own VNF charm]]&lt;br /&gt;
** Some [[Example_VNF_Charms | examples of VNF Charms]] &lt;br /&gt;
** [[VNF_Primitives | Default VNF Primitives]] &lt;br /&gt;
* [[OSM_Information_Model | OSM Information Model]]&lt;br /&gt;
* [[Reference_VNF_and_NS_Descriptors | Information to create VNF and NS Descriptors]]&lt;br /&gt;
* [[OSM_Release_FOUR#Using_old_descriptors_from_Release_TWO | How to onboard old Release TWO descriptors]]&lt;br /&gt;
&lt;br /&gt;
== Specific installation methods ==&lt;br /&gt;
* [[How_to_run_OSM_on_Vagrant | How to run OSM on Vagrant]]&lt;br /&gt;
* [[How to upgrade the OSM Platform]]&lt;br /&gt;
* [[How to install OSM client | How to install OSM client separately]]&lt;br /&gt;
* [[Advanced OSM installation procedures]]&lt;br /&gt;
* [[How to install OSM in Amazon EC2 | How to install OSM in Amazon EC2]]&lt;br /&gt;
&lt;br /&gt;
== EPA and SDN Assist ==&lt;br /&gt;
* [[EPA_and_SDN_assist | How-to guide]]&lt;br /&gt;
* [[Openstack_configuration_(Release_FOUR)#Configure_Openstack_for_full_EPA_support_in_OSM | OpenStack configuration for EPA and SDN Assist]]&lt;br /&gt;
&lt;br /&gt;
== Reference material and self training ==&lt;br /&gt;
* [[OSM client]]:&lt;br /&gt;
** [[OSM_client#Installation | Installation]]&lt;br /&gt;
** [[OSM Client commands]]&lt;br /&gt;
** [[Enable autocompletion in OSM Client]]&lt;br /&gt;
* [[OSM instantiation parameters]]&lt;br /&gt;
* Using Monitoring and Autoscaling capabilities:&lt;br /&gt;
** [https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;amp;oldid=4402 OSM Performance Management]&lt;br /&gt;
** [[OSM_Fault_Management | OSM Fault Management]]&lt;br /&gt;
** [[OSM_Autoscaling | OSM Autoscaling]]&lt;br /&gt;
* 5th OSM Hackfest - full training material:&lt;br /&gt;
** [[5th_OSM_Hackfest#Agenda | Table of contents]]&lt;br /&gt;
** [https://osm-download.etsi.org/ftp/osm-5.0-five/5th-hackfest/presentations/ Documentation]&lt;br /&gt;
** [https://osm-download.etsi.org/ftp/osm-5.0-five/5th-hackfest/packages/ NS and VNF Packages] and [https://osm-download.etsi.org/ftp/osm-3.0-three/1st-hackfest/images/ VM images]&lt;br /&gt;
* [[NBI_API_Description| Description of the OSM North Bound Interface REST API]]&lt;br /&gt;
* [[VIM_emulator | How to use the VIM emulator]]&lt;br /&gt;
* [[OSM_E2E_tests | Tests to validate VIM capabilities]]&lt;br /&gt;
* [[OSM_workshops_and_events | OSM Workshops videos]]&lt;br /&gt;
* [[OSM_Technical_Videos | Other technical videos and demos]]&lt;br /&gt;
* [[OSM URN Namespace]]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
* [[How to know the version of your current OSM installation]]&lt;br /&gt;
* [[Common issues and troubleshooting]]&lt;br /&gt;
* Have you detected any bug? Check [[How_to_report_issues_(Release_THREE) | this guide]] to see how to report issues.&lt;br /&gt;
&lt;br /&gt;
== OSM Scope, Features and Integration Guidelines ==&lt;br /&gt;
&lt;br /&gt;
* [[OSM Scope, Functionality, Operation and Integration Guidelines]]&lt;br /&gt;
* [[Release notes and whitepapers]]&lt;br /&gt;
&lt;br /&gt;
== How to contribute ==&lt;br /&gt;
* [https://osm.etsi.org/about/how-to-join Joining the OSM community]&lt;br /&gt;
* Developer guides:&lt;br /&gt;
** [[Workflow_with_OSM_tools | Workflow with OSM tools (git, gerrit, bugzilla, etc.) (MUST READ for developers)]]&lt;br /&gt;
** [[Developer HowTo | Developer how-to (MUST READ for developers)]]&lt;br /&gt;
** [[Developer_HowTo_for_RO_Module | Developer how-to for RO]]&lt;br /&gt;
**[[How_to_upgrade_the_OSM_Platform#Upgrading_a_specific_component_to_use_your_own_cloned_repo_.28e.g._for_developing_purposes.29 | How to work with your own cloned repo for a specific component]]&lt;br /&gt;
* [https://opensourcemano.slack.com/ OSM Slack Workplace]&lt;br /&gt;
* Upcoming Hackfests and events:&lt;br /&gt;
** [[6th_OSM_Hackfest|6th OSM Hackfest - Santa Clara]] - 13-17 May 2019&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FOUR&amp;diff=4404</id>
		<title>OSM Release FOUR</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FOUR&amp;diff=4404"/>
		<updated>2019-03-20T19:24:29Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Fault management link now points to old REL4 revision&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Open Source MANO (OSM) is the open source community that aims to deliver a production-quality MANO stack for NFV, capable of consuming openly published information models, available to everyone, suitable for all VNFs, operationally significant and VIM-independent. OSM is aligned to NFV ISG information models while providing first-hand feedback based on its implementation experience.&lt;br /&gt;
&lt;br /&gt;
Release FOUR brings a number of improvements over previous releases. For the full list of new features, please refer to the [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseFOUR-FINAL.pdf Rel FOUR White Paper]. For a comprehensive overview of OSM functionalities, you can also refer to the release notes of former releases ([https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseONE-FINAL.pdf ONE], [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseTWO-FINAL.pdf TWO], [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseTHREE-FINAL.pdf THREE]).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;OSM Release FOUR Pre-view and Demo&#039;&#039;&#039;&lt;br /&gt;
{{#evu:https://www.youtube.com/watch?v=KgsaA-HCX40&lt;br /&gt;
|alignment=left&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Assumptions about interaction with VIMs and VNFs=&lt;br /&gt;
The following figure illustrates OSM interaction with VIMs and VNFs:&lt;br /&gt;
* OSM talks to the VIM for the deployment of VNFs and VLs connecting them&lt;br /&gt;
* OSM talks to the VNFs deployed in a VIM to run day-0, day-1 and day-2 configuration primitives.&lt;br /&gt;
&lt;br /&gt;
[[File:Osmtopology.png|600px|OSM Release 4]]&lt;br /&gt;
&lt;br /&gt;
In order for OSM to work, it is assumed that:&lt;br /&gt;
* Each VIM has an API endpoint reachable from OSM&lt;br /&gt;
* Each VIM has a so called management network which provides IP address to VNFs&lt;br /&gt;
* That management network is reachable from OSM&lt;br /&gt;
&lt;br /&gt;
=Install OSM Release FOUR=&lt;br /&gt;
&lt;br /&gt;
This release introduces a new lightweight build, which is a cloud-native, &#039;&#039;dockerized&#039;&#039; OSM installation featuring a new kafka bus for asynchronous communications, a lighter orchestrator, performance/fault management features, a SOL005-aligned NBI, and a new GUI and OSM client leveraging the unified REST API that the NBI exposes.  This build does not include the SO and UI components, which are still available in the &#039;&#039;classic build&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Default installation procedure ==&lt;br /&gt;
&lt;br /&gt;
All you need to run OSM Release FOUR is a single server or VM with the following requirements:&lt;br /&gt;
* MINIMUM: 2 CPUs, 4 GB RAM, 20GB disk and a single interface with Internet access&lt;br /&gt;
* RECOMMENDED: 2 CPUs, 8 GB RAM, 40GB disk and a single interface with Internet access&lt;br /&gt;
* Ubuntu16.04 (64-bit variant required) as base image (http://releases.ubuntu.com/16.04/)&lt;br /&gt;
&lt;br /&gt;
Once you have prepared the host with the previous requirements, all you need to do is:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-4.0-four/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 ./install_osm.sh&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;TIP:&#039;&#039;&#039; In order to facilitate potential trobleshooting later, it is recommended to save the full log of your installation process:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-4.0-four/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 $ ./install_osm.sh 2&amp;gt;&amp;amp;1 | tee osm_install_log.txt&lt;br /&gt;
&lt;br /&gt;
You will be asked if you want to proceed with the installation and configuration of LXD, juju, docker CE and the initialization of a local docker swarm, as pre-requirements. Please answer &amp;quot;y&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Then, some dialog messages related to LXD configuration will be shown. This is what you have to answer:&lt;br /&gt;
* Do you want to configure the LXD bridge? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv4 subnet? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&amp;lt;&amp;lt; &#039;&#039;&#039;Default values&#039;&#039;&#039; apply for next questions &amp;gt;&amp;gt;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv6 subnet? &#039;&#039;&#039;No&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
After the installation completes, you will need to add the following environment variables to the end of your .bashrc file and then source it with &#039;&#039;source .bashrc&#039;&#039;&lt;br /&gt;
 export OSM_HOSTNAME=127.0.0.1&lt;br /&gt;
 export OSM_SOL005=True&lt;br /&gt;
&lt;br /&gt;
If you want to run docker commands, you will also need to either reload the shell or run the following command to add your user to the &#039;docker&#039; group:&lt;br /&gt;
 newgrp docker&lt;br /&gt;
&lt;br /&gt;
===Installation including optional components===&lt;br /&gt;
&lt;br /&gt;
You can include optional components in your installation by adding the following flags:&lt;br /&gt;
* &#039;&#039;&#039;VIM Emulator:&#039;&#039;&#039; --vimemu (more information [[VIM emulator|here]])&lt;br /&gt;
* &#039;&#039;&#039;Performance Management features with Prometheus/Grafana:&#039;&#039;&#039; --pm_stack (more information [https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;amp;oldid=2991 here])&lt;br /&gt;
* &#039;&#039;&#039;Fault Management features with ELK:&#039;&#039;&#039; --elk_stack (more information [https://osm.etsi.org/wikipub/index.php?title=OSM_Fault_Management&amp;amp;direction=prev&amp;amp;oldid=3911 here])&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 ./install_osm.sh --elk_stack --pm_stack --vimemu&lt;br /&gt;
&lt;br /&gt;
===Other installation options===&lt;br /&gt;
* If you need to install the Classic Build (Rel 3.1), you can follow [[Classic_OSM_Build | this guide]]&lt;br /&gt;
* You can also run OSM using a pre-built [https://app.vagrantup.com/osm/boxes/osm vagrant] image: [[How_to_run_OSM_on_Vagrant]]&lt;br /&gt;
* For other special installation options, please refer to the [[OSM_Release_FOUR_Documentation#Alternative_installation_methods | release documentation]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Following instructions will focus only on the default (lightweight) build.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Checking your installation==&lt;br /&gt;
&lt;br /&gt;
After some time, you will get a fresh OSM Release FOUR installation. You can access to the UI in the following URL (user:admin, password: admin):  http://1.2.3.4, replacing 1.2.3.4 with the IP address of your host. &lt;br /&gt;
&lt;br /&gt;
[[File:Osm_lwb_ui_login.png|600px|OSM home]]&lt;br /&gt;
&lt;br /&gt;
[[File:Osm_lwb_ui.png|600px|OSM Release FOUR installation result]]&lt;br /&gt;
&lt;br /&gt;
As a result of the installation, ten docker containers are created in the host.  You can check they are running by issuing the following commands:&lt;br /&gt;
 docker stack ps osm |grep -i running&lt;br /&gt;
 docker service ls&lt;br /&gt;
&lt;br /&gt;
[[File:Osm_containers.png|600px|OSM Docker containers]]&lt;br /&gt;
&lt;br /&gt;
At any time, you can quickly relaunch your deployment by using the pre-built docker images, like this:&lt;br /&gt;
 docker stack rm osm&lt;br /&gt;
 docker stack deploy -c /etc/osm/docker/docker-compose.yaml osm&lt;br /&gt;
&lt;br /&gt;
To check the logs of any container:&lt;br /&gt;
 docker service logs osm_lcm         # for LCM&lt;br /&gt;
&lt;br /&gt;
OSM client, a python-based CLI for OSM, will be available as well in the host machine.&lt;br /&gt;
Via the OSM client, you can manage descriptors, NS and VIM complete lifecycle and some new performance and fault-management features.&lt;br /&gt;
&lt;br /&gt;
=Adding VIM accounts=&lt;br /&gt;
Before proceeding, make sure that you have a site with a VIM configured to run with OSM. Different kinds of VIMs are currently supported by OSM:&lt;br /&gt;
*&#039;&#039;&#039;OpenVIM.&#039;&#039;&#039; Check the following link to know how to install and use openvim for OSM: [[OpenVIM installation (Release THREE) | OpenVIM installation]]. Openvim must run in &#039;normal&#039; mode (not test or fake) to have real virtual machines reachable from OSM.&lt;br /&gt;
*&#039;&#039;&#039;OpenStack.&#039;&#039;&#039; Check the following link to learn how to configure OpenStack to be used by OSM: [[Openstack_configuration_(Release_FOUR) | Openstack configuration]]&lt;br /&gt;
*&#039;&#039;&#039;VMware vCloud Director.&#039;&#039;&#039; Check the following link to learn how to configure VMware VCD to be used by OSM: [[Configuring_VMware_vCloud_Director_for_OSM_Release_FOUR | Configuring VMware vCloud Director]]&lt;br /&gt;
*&#039;&#039;&#039;Amazon Web Services (AWS).&#039;&#039;&#039; Check the following link to learn how to configure AWS (EC2 and Virtual Private Cloud) to be used by OSM: [[Configuring_AWS_for_OSM_Release_FOUR | Configuring AWS for OSM]]&lt;br /&gt;
OSM can manage external SDN controllers to perform the dataplane underlay network connectivity on behalf of the VIM. See [[EPA and SDN assist]]&lt;br /&gt;
&lt;br /&gt;
==Adding VIMs through OSM client==&lt;br /&gt;
===OpenVIM site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openvim-site&amp;quot;, IP address: 10.10.10.10, VIM tenant: &amp;quot;osm&amp;quot;)&lt;br /&gt;
 osm vim-create --name openvim-site --auth_url http://10.10.10.10:9080/openvim --account_type openvim \&lt;br /&gt;
    --description &amp;quot;Openvim site&amp;quot; --tenant osm --user dummy --password dummy&lt;br /&gt;
&lt;br /&gt;
===Openstack site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openstack-site&amp;quot;, IP address: 10.10.10.11, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;admin&amp;quot;, password: &amp;quot;userpwd&amp;quot;)&lt;br /&gt;
 osm vim-create --name openstack-site --user admin --password userpwd \&lt;br /&gt;
     --auth_url http://10.10.10.11:5000/v2.0 --tenant admin --account_type openstack&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Openstack_configuration_(Release_FOUR)#Add_openstack_to_OSM | OpenStack Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===VMware vCloud Director site===&lt;br /&gt;
*Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;vmware-site&amp;quot;, IP address: 10.10.10.12, VIM tenant: &amp;quot;vmware-tenant&amp;quot;, user: &amp;quot;osm&amp;quot;, password: &amp;quot;osm4u&amp;quot;, admin user: &amp;quot;admin&amp;quot;, admin password: &amp;quot;adminpwd&amp;quot;, organization: &amp;quot;orgVDC&amp;quot;)&lt;br /&gt;
 osm vim-create --name vmware-site --user osm --password osm4u --auth_url https://10.10.10.12 \&lt;br /&gt;
     --tenant vmware-tenant  --account_type vmware \&lt;br /&gt;
     --config &#039;{admin_username: user, admin_password: passwd, orgname: organization, nsx_manager: &amp;quot;http://10.10.10.12&amp;quot;,&lt;br /&gt;
     nsx_user: user, nsx_password: userpwd,&amp;quot;vcenter_port&amp;quot;: port, &amp;quot;vcenter_user&amp;quot;:user, &amp;quot;vcenter_password&amp;quot;:password,&lt;br /&gt;
     &amp;quot;vcenter_ip&amp;quot;: 10.10.10.14}&#039;&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Configuring_VMware_vCloud_Director_for_OSM_Release_FOUR#Add_vCloud_using_OSM_Client | vCloud Director Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===VMware Integrated Openstack (VIO) site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openstack-site-vio4&amp;quot;, IP address: 10.10.10.12, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;admin&amp;quot;, password: &amp;quot;passwd&amp;quot;)&lt;br /&gt;
 osm vim-create --name VIO --user admin --password passwd --auth_url https://10.10.10.12:5000/v3 --tenant admin \&lt;br /&gt;
     --account_type openstack --config &#039;{use_floating_ip: True, insecure: true, vim_type: VIO, APIversion: v3.3,&lt;br /&gt;
     dataplane_physical_net: dvs-46, &amp;quot;use_internal_endpoint&amp;quot;:true,&amp;quot;dataplane_net_vlan_range&amp;quot;:[&amp;quot;31-35&amp;quot;,&amp;quot;37-39&amp;quot;]}&#039;&lt;br /&gt;
&lt;br /&gt;
With respect to Openstack, the additional configuration for VIO is the following:&lt;br /&gt;
* &#039;&#039;&#039;vim_type&#039;&#039;&#039;: Set to &amp;quot;VIO&amp;quot; to use VMware Integrated openstack as VIM &lt;br /&gt;
* &#039;&#039;&#039;use_internal_endpoint&#039;&#039;&#039;: When true it allows use of private API endpoints&lt;br /&gt;
* &#039;&#039;&#039;dataplane_physical_net&#039;&#039;&#039;: The configured network_vlan_ranges at neutron for the SRIOV (binding direct) and passthrough (binding direct-physical) networks, e.g. &#039;physnet_sriov&#039; in the above configuration. In case of VMware Integrated Openstack (VIO) provide moref ID of distributed virtual switch, e.g &#039;dvs-46&#039; in above configuration.&lt;br /&gt;
* &#039;&#039;&#039;dataplane_net_vlan_range&#039;&#039;&#039;: In case of VMware Integrated Openstack (VIO) provide vlan ranges for the SRIOV (binding direct) networks in format [&#039;start_ID - end_ID&#039;]&lt;br /&gt;
&lt;br /&gt;
For common options, you may refer to the general [[Openstack_configuration_(Release_FOUR)#Add_openstack_to_OSM | OpenStack Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===Amazon Web Services (AWS) site===&lt;br /&gt;
*Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;aws-site&amp;quot;, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;XXX&amp;quot;, password: &amp;quot;YYY&amp;quot;)&lt;br /&gt;
 osm vim-create --name aws-site --user XXX --password YYY --auth_url https://aws.amazon.com --tenant admin \&lt;br /&gt;
     --account_type aws --config &#039;{region_name: eu-central-1, flavor_info: {t2.nano: {cpus: 1, disk: 100, ram: 512},&lt;br /&gt;
     t2.micro: {cpus: 1, disk: 100, ram: 1024}, t2.small: {cpus: 1, disk: 100, ram: 2048},&lt;br /&gt;
     m1.small: {cpus: 1, disk: 160, ram: 1741}}}&#039;&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Configuring_AWS_for_OSM_Release_FOUR#Add_AWS_to_OSM | AWS Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
==Adding VIMs through GUI==&lt;br /&gt;
Just access the &#039;&#039;VIM Accounts&#039;&#039; tab, click the &#039;&#039;New VIM&#039;&#039; button and fill the parameters accordingly.&lt;br /&gt;
&lt;br /&gt;
[[File:Osmvim.png|600px|AddingVIMUI]]&lt;br /&gt;
&lt;br /&gt;
=Deploying your first Network Service=&lt;br /&gt;
In this example we will deploy the following Network Service, consisting of two simple VNFs based on CirrOS connected by a simple VLD.&lt;br /&gt;
&lt;br /&gt;
[[File:cirros_2vnf_ns.png|500px|NS with 2 CirrOS VNF]]&lt;br /&gt;
&lt;br /&gt;
Before going on, download the required VNF and NS packages from this URL: https://osm-download.etsi.org/ftp/osm-3.0-three/examples/cirros_2vnf_ns/&lt;br /&gt;
&lt;br /&gt;
==Onboarding a VNF==&lt;br /&gt;
&lt;br /&gt;
The onboarding of a VNF in OSM involves adding the corresponding VNF package to the system. This process also assumes, as a pre-condition, that the corresponding VM images are available in the VIM(s) where it will be instantiated.&lt;br /&gt;
&lt;br /&gt;
===Uploading VM image(s) to the VIM(s)===&lt;br /&gt;
In this example, only a vanilla CirrOS 0.3.4 image is need. It can be obtained from the following link: http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img&lt;br /&gt;
&lt;br /&gt;
If not available, it would be required to upload the image into the VIM. Instructions differ from one VIM to another:&lt;br /&gt;
*In Openstack:&lt;br /&gt;
 openstack image create --file=&amp;quot;./cirros-0.3.4-x86_64-disk.img&amp;quot; --container-format=bare --disk-format=qcow2 cirros034&lt;br /&gt;
*In OpenVIM:&lt;br /&gt;
 #copy your image to the NFS shared folder (e.g. /mnt/openvim-nfs)&lt;br /&gt;
 cp ./cirros-0.3.4-x86_64-disk.img /mnt/openvim-nfs/&lt;br /&gt;
 openvim image-create --name cirros034 --path /mnt/openvim-nfs/cirros-0.3.4-x86_64-disk.img&lt;br /&gt;
&lt;br /&gt;
===VNF package onboarding===&lt;br /&gt;
&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; VNF Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Click on the Onboard VNFD button&lt;br /&gt;
**Drag and drop the VNF package file cirros_vnf.tar.gz in the importing area.&lt;br /&gt;
[[File:vnfd_onboard_r4.png|600px|Onboarding a VNF]]&lt;br /&gt;
*From OSM client:&lt;br /&gt;
 osm vnfd-create cirros_vnf.tar.gz&lt;br /&gt;
 osm vnfd-list&lt;br /&gt;
&lt;br /&gt;
==Onboarding a NS==&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; NS Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Click on the Onboard NSD button&lt;br /&gt;
**Drag and drop the NS package file cirros_2vnf_ns.tar.gz in the importing area.&lt;br /&gt;
[[File:nsd_onboard_r4.png|600px|Onboarding a NS]]&lt;br /&gt;
*From OSM client:&lt;br /&gt;
 osm nsd-create cirros_2vnf_ns.tar.gz&lt;br /&gt;
 osm nsd-list&lt;br /&gt;
&lt;br /&gt;
==Instantiating the NS==&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; NS Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Next the NS descriptor to be instantiated, click on Launch&lt;br /&gt;
[[File:nsd_list.png|600px|Instantiating a NS (step 1)]] &lt;br /&gt;
**Fill the form, adding at least a name and selecting the VIM&lt;br /&gt;
[[File:new_ns.png|600px|Instantiating a NS (step 2)]] &lt;br /&gt;
* From OSM client:&lt;br /&gt;
 osm ns-create --nsd_name cirros_2vnf_ns --ns_name &amp;lt;ns-instance-name&amp;gt; --vim_account &amp;lt;data-center-name&amp;gt;&lt;br /&gt;
 osm ns-list&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Instantiation parameters can be specified using both CLI and UI. There are some examples collected in this wiki page: [[OSM instantiation parameters]].&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using old descriptors from Release TWO==&lt;br /&gt;
&lt;br /&gt;
Beware that old Release TWO descriptors cannot be directly used by OSM Release FOUR.&lt;br /&gt;
&lt;br /&gt;
You should use this &#039;&#039;&#039;[[Creating your own VNF package#Migrating old descriptors to release FOUR|conversion tool]]&#039;&#039;&#039; to convert them to Release FOUR format and &#039;&#039;&#039;[[Creating your own VNF package|create the corresponding package]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=What&#039;s next?=&lt;br /&gt;
&lt;br /&gt;
If you want to learn more, you can refer to the rest of &#039;&#039;&#039;[[OSM_Release_FOUR_Documentation | OSM documentation]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FOUR&amp;diff=4403</id>
		<title>OSM Release FOUR</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FOUR&amp;diff=4403"/>
		<updated>2019-03-20T19:19:54Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Performance manage docs now link to old REL4 revision&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Open Source MANO (OSM) is the open source community that aims to deliver a production-quality MANO stack for NFV, capable of consuming openly published information models, available to everyone, suitable for all VNFs, operationally significant and VIM-independent. OSM is aligned to NFV ISG information models while providing first-hand feedback based on its implementation experience.&lt;br /&gt;
&lt;br /&gt;
Release FOUR brings a number of improvements over previous releases. For the full list of new features, please refer to the [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseFOUR-FINAL.pdf Rel FOUR White Paper]. For a comprehensive overview of OSM functionalities, you can also refer to the release notes of former releases ([https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseONE-FINAL.pdf ONE], [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseTWO-FINAL.pdf TWO], [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseTHREE-FINAL.pdf THREE]).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;OSM Release FOUR Pre-view and Demo&#039;&#039;&#039;&lt;br /&gt;
{{#evu:https://www.youtube.com/watch?v=KgsaA-HCX40&lt;br /&gt;
|alignment=left&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Assumptions about interaction with VIMs and VNFs=&lt;br /&gt;
The following figure illustrates OSM interaction with VIMs and VNFs:&lt;br /&gt;
* OSM talks to the VIM for the deployment of VNFs and VLs connecting them&lt;br /&gt;
* OSM talks to the VNFs deployed in a VIM to run day-0, day-1 and day-2 configuration primitives.&lt;br /&gt;
&lt;br /&gt;
[[File:Osmtopology.png|600px|OSM Release 4]]&lt;br /&gt;
&lt;br /&gt;
In order for OSM to work, it is assumed that:&lt;br /&gt;
* Each VIM has an API endpoint reachable from OSM&lt;br /&gt;
* Each VIM has a so called management network which provides IP address to VNFs&lt;br /&gt;
* That management network is reachable from OSM&lt;br /&gt;
&lt;br /&gt;
=Install OSM Release FOUR=&lt;br /&gt;
&lt;br /&gt;
This release introduces a new lightweight build, which is a cloud-native, &#039;&#039;dockerized&#039;&#039; OSM installation featuring a new kafka bus for asynchronous communications, a lighter orchestrator, performance/fault management features, a SOL005-aligned NBI, and a new GUI and OSM client leveraging the unified REST API that the NBI exposes.  This build does not include the SO and UI components, which are still available in the &#039;&#039;classic build&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Default installation procedure ==&lt;br /&gt;
&lt;br /&gt;
All you need to run OSM Release FOUR is a single server or VM with the following requirements:&lt;br /&gt;
* MINIMUM: 2 CPUs, 4 GB RAM, 20GB disk and a single interface with Internet access&lt;br /&gt;
* RECOMMENDED: 2 CPUs, 8 GB RAM, 40GB disk and a single interface with Internet access&lt;br /&gt;
* Ubuntu16.04 (64-bit variant required) as base image (http://releases.ubuntu.com/16.04/)&lt;br /&gt;
&lt;br /&gt;
Once you have prepared the host with the previous requirements, all you need to do is:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-4.0-four/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 ./install_osm.sh&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;TIP:&#039;&#039;&#039; In order to facilitate potential trobleshooting later, it is recommended to save the full log of your installation process:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-4.0-four/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 $ ./install_osm.sh 2&amp;gt;&amp;amp;1 | tee osm_install_log.txt&lt;br /&gt;
&lt;br /&gt;
You will be asked if you want to proceed with the installation and configuration of LXD, juju, docker CE and the initialization of a local docker swarm, as pre-requirements. Please answer &amp;quot;y&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Then, some dialog messages related to LXD configuration will be shown. This is what you have to answer:&lt;br /&gt;
* Do you want to configure the LXD bridge? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv4 subnet? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&amp;lt;&amp;lt; &#039;&#039;&#039;Default values&#039;&#039;&#039; apply for next questions &amp;gt;&amp;gt;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv6 subnet? &#039;&#039;&#039;No&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
After the installation completes, you will need to add the following environment variables to the end of your .bashrc file and then source it with &#039;&#039;source .bashrc&#039;&#039;&lt;br /&gt;
 export OSM_HOSTNAME=127.0.0.1&lt;br /&gt;
 export OSM_SOL005=True&lt;br /&gt;
&lt;br /&gt;
If you want to run docker commands, you will also need to either reload the shell or run the following command to add your user to the &#039;docker&#039; group:&lt;br /&gt;
 newgrp docker&lt;br /&gt;
&lt;br /&gt;
===Installation including optional components===&lt;br /&gt;
&lt;br /&gt;
You can include optional components in your installation by adding the following flags:&lt;br /&gt;
* &#039;&#039;&#039;VIM Emulator:&#039;&#039;&#039; --vimemu (more information [[VIM emulator|here]])&lt;br /&gt;
* &#039;&#039;&#039;Performance Management features with Prometheus/Grafana:&#039;&#039;&#039; --pm_stack (more information [https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;amp;oldid=2991 here])&lt;br /&gt;
* &#039;&#039;&#039;Fault Management features with ELK:&#039;&#039;&#039; --elk_stack (more information [[OSM Fault Management|here]])&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 ./install_osm.sh --elk_stack --pm_stack --vimemu&lt;br /&gt;
&lt;br /&gt;
===Other installation options===&lt;br /&gt;
* If you need to install the Classic Build (Rel 3.1), you can follow [[Classic_OSM_Build | this guide]]&lt;br /&gt;
* You can also run OSM using a pre-built [https://app.vagrantup.com/osm/boxes/osm vagrant] image: [[How_to_run_OSM_on_Vagrant]]&lt;br /&gt;
* For other special installation options, please refer to the [[OSM_Release_FOUR_Documentation#Alternative_installation_methods | release documentation]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Following instructions will focus only on the default (lightweight) build.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Checking your installation==&lt;br /&gt;
&lt;br /&gt;
After some time, you will get a fresh OSM Release FOUR installation. You can access to the UI in the following URL (user:admin, password: admin):  http://1.2.3.4, replacing 1.2.3.4 with the IP address of your host. &lt;br /&gt;
&lt;br /&gt;
[[File:Osm_lwb_ui_login.png|600px|OSM home]]&lt;br /&gt;
&lt;br /&gt;
[[File:Osm_lwb_ui.png|600px|OSM Release FOUR installation result]]&lt;br /&gt;
&lt;br /&gt;
As a result of the installation, ten docker containers are created in the host.  You can check they are running by issuing the following commands:&lt;br /&gt;
 docker stack ps osm |grep -i running&lt;br /&gt;
 docker service ls&lt;br /&gt;
&lt;br /&gt;
[[File:Osm_containers.png|600px|OSM Docker containers]]&lt;br /&gt;
&lt;br /&gt;
At any time, you can quickly relaunch your deployment by using the pre-built docker images, like this:&lt;br /&gt;
 docker stack rm osm&lt;br /&gt;
 docker stack deploy -c /etc/osm/docker/docker-compose.yaml osm&lt;br /&gt;
&lt;br /&gt;
To check the logs of any container:&lt;br /&gt;
 docker service logs osm_lcm         # for LCM&lt;br /&gt;
&lt;br /&gt;
OSM client, a python-based CLI for OSM, will be available as well in the host machine.&lt;br /&gt;
Via the OSM client, you can manage descriptors, NS and VIM complete lifecycle and some new performance and fault-management features.&lt;br /&gt;
&lt;br /&gt;
=Adding VIM accounts=&lt;br /&gt;
Before proceeding, make sure that you have a site with a VIM configured to run with OSM. Different kinds of VIMs are currently supported by OSM:&lt;br /&gt;
*&#039;&#039;&#039;OpenVIM.&#039;&#039;&#039; Check the following link to know how to install and use openvim for OSM: [[OpenVIM installation (Release THREE) | OpenVIM installation]]. Openvim must run in &#039;normal&#039; mode (not test or fake) to have real virtual machines reachable from OSM.&lt;br /&gt;
*&#039;&#039;&#039;OpenStack.&#039;&#039;&#039; Check the following link to learn how to configure OpenStack to be used by OSM: [[Openstack_configuration_(Release_FOUR) | Openstack configuration]]&lt;br /&gt;
*&#039;&#039;&#039;VMware vCloud Director.&#039;&#039;&#039; Check the following link to learn how to configure VMware VCD to be used by OSM: [[Configuring_VMware_vCloud_Director_for_OSM_Release_FOUR | Configuring VMware vCloud Director]]&lt;br /&gt;
*&#039;&#039;&#039;Amazon Web Services (AWS).&#039;&#039;&#039; Check the following link to learn how to configure AWS (EC2 and Virtual Private Cloud) to be used by OSM: [[Configuring_AWS_for_OSM_Release_FOUR | Configuring AWS for OSM]]&lt;br /&gt;
OSM can manage external SDN controllers to perform the dataplane underlay network connectivity on behalf of the VIM. See [[EPA and SDN assist]]&lt;br /&gt;
&lt;br /&gt;
==Adding VIMs through OSM client==&lt;br /&gt;
===OpenVIM site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openvim-site&amp;quot;, IP address: 10.10.10.10, VIM tenant: &amp;quot;osm&amp;quot;)&lt;br /&gt;
 osm vim-create --name openvim-site --auth_url http://10.10.10.10:9080/openvim --account_type openvim \&lt;br /&gt;
    --description &amp;quot;Openvim site&amp;quot; --tenant osm --user dummy --password dummy&lt;br /&gt;
&lt;br /&gt;
===Openstack site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openstack-site&amp;quot;, IP address: 10.10.10.11, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;admin&amp;quot;, password: &amp;quot;userpwd&amp;quot;)&lt;br /&gt;
 osm vim-create --name openstack-site --user admin --password userpwd \&lt;br /&gt;
     --auth_url http://10.10.10.11:5000/v2.0 --tenant admin --account_type openstack&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Openstack_configuration_(Release_FOUR)#Add_openstack_to_OSM | OpenStack Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===VMware vCloud Director site===&lt;br /&gt;
*Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;vmware-site&amp;quot;, IP address: 10.10.10.12, VIM tenant: &amp;quot;vmware-tenant&amp;quot;, user: &amp;quot;osm&amp;quot;, password: &amp;quot;osm4u&amp;quot;, admin user: &amp;quot;admin&amp;quot;, admin password: &amp;quot;adminpwd&amp;quot;, organization: &amp;quot;orgVDC&amp;quot;)&lt;br /&gt;
 osm vim-create --name vmware-site --user osm --password osm4u --auth_url https://10.10.10.12 \&lt;br /&gt;
     --tenant vmware-tenant  --account_type vmware \&lt;br /&gt;
     --config &#039;{admin_username: user, admin_password: passwd, orgname: organization, nsx_manager: &amp;quot;http://10.10.10.12&amp;quot;,&lt;br /&gt;
     nsx_user: user, nsx_password: userpwd,&amp;quot;vcenter_port&amp;quot;: port, &amp;quot;vcenter_user&amp;quot;:user, &amp;quot;vcenter_password&amp;quot;:password,&lt;br /&gt;
     &amp;quot;vcenter_ip&amp;quot;: 10.10.10.14}&#039;&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Configuring_VMware_vCloud_Director_for_OSM_Release_FOUR#Add_vCloud_using_OSM_Client | vCloud Director Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===VMware Integrated Openstack (VIO) site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openstack-site-vio4&amp;quot;, IP address: 10.10.10.12, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;admin&amp;quot;, password: &amp;quot;passwd&amp;quot;)&lt;br /&gt;
 osm vim-create --name VIO --user admin --password passwd --auth_url https://10.10.10.12:5000/v3 --tenant admin \&lt;br /&gt;
     --account_type openstack --config &#039;{use_floating_ip: True, insecure: true, vim_type: VIO, APIversion: v3.3,&lt;br /&gt;
     dataplane_physical_net: dvs-46, &amp;quot;use_internal_endpoint&amp;quot;:true,&amp;quot;dataplane_net_vlan_range&amp;quot;:[&amp;quot;31-35&amp;quot;,&amp;quot;37-39&amp;quot;]}&#039;&lt;br /&gt;
&lt;br /&gt;
With respect to Openstack, the additional configuration for VIO is the following:&lt;br /&gt;
* &#039;&#039;&#039;vim_type&#039;&#039;&#039;: Set to &amp;quot;VIO&amp;quot; to use VMware Integrated openstack as VIM &lt;br /&gt;
* &#039;&#039;&#039;use_internal_endpoint&#039;&#039;&#039;: When true it allows use of private API endpoints&lt;br /&gt;
* &#039;&#039;&#039;dataplane_physical_net&#039;&#039;&#039;: The configured network_vlan_ranges at neutron for the SRIOV (binding direct) and passthrough (binding direct-physical) networks, e.g. &#039;physnet_sriov&#039; in the above configuration. In case of VMware Integrated Openstack (VIO) provide moref ID of distributed virtual switch, e.g &#039;dvs-46&#039; in above configuration.&lt;br /&gt;
* &#039;&#039;&#039;dataplane_net_vlan_range&#039;&#039;&#039;: In case of VMware Integrated Openstack (VIO) provide vlan ranges for the SRIOV (binding direct) networks in format [&#039;start_ID - end_ID&#039;]&lt;br /&gt;
&lt;br /&gt;
For common options, you may refer to the general [[Openstack_configuration_(Release_FOUR)#Add_openstack_to_OSM | OpenStack Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===Amazon Web Services (AWS) site===&lt;br /&gt;
*Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;aws-site&amp;quot;, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;XXX&amp;quot;, password: &amp;quot;YYY&amp;quot;)&lt;br /&gt;
 osm vim-create --name aws-site --user XXX --password YYY --auth_url https://aws.amazon.com --tenant admin \&lt;br /&gt;
     --account_type aws --config &#039;{region_name: eu-central-1, flavor_info: {t2.nano: {cpus: 1, disk: 100, ram: 512},&lt;br /&gt;
     t2.micro: {cpus: 1, disk: 100, ram: 1024}, t2.small: {cpus: 1, disk: 100, ram: 2048},&lt;br /&gt;
     m1.small: {cpus: 1, disk: 160, ram: 1741}}}&#039;&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Configuring_AWS_for_OSM_Release_FOUR#Add_AWS_to_OSM | AWS Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
==Adding VIMs through GUI==&lt;br /&gt;
Just access the &#039;&#039;VIM Accounts&#039;&#039; tab, click the &#039;&#039;New VIM&#039;&#039; button and fill the parameters accordingly.&lt;br /&gt;
&lt;br /&gt;
[[File:Osmvim.png|600px|AddingVIMUI]]&lt;br /&gt;
&lt;br /&gt;
=Deploying your first Network Service=&lt;br /&gt;
In this example we will deploy the following Network Service, consisting of two simple VNFs based on CirrOS connected by a simple VLD.&lt;br /&gt;
&lt;br /&gt;
[[File:cirros_2vnf_ns.png|500px|NS with 2 CirrOS VNF]]&lt;br /&gt;
&lt;br /&gt;
Before going on, download the required VNF and NS packages from this URL: https://osm-download.etsi.org/ftp/osm-3.0-three/examples/cirros_2vnf_ns/&lt;br /&gt;
&lt;br /&gt;
==Onboarding a VNF==&lt;br /&gt;
&lt;br /&gt;
The onboarding of a VNF in OSM involves adding the corresponding VNF package to the system. This process also assumes, as a pre-condition, that the corresponding VM images are available in the VIM(s) where it will be instantiated.&lt;br /&gt;
&lt;br /&gt;
===Uploading VM image(s) to the VIM(s)===&lt;br /&gt;
In this example, only a vanilla CirrOS 0.3.4 image is need. It can be obtained from the following link: http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img&lt;br /&gt;
&lt;br /&gt;
If not available, it would be required to upload the image into the VIM. Instructions differ from one VIM to another:&lt;br /&gt;
*In Openstack:&lt;br /&gt;
 openstack image create --file=&amp;quot;./cirros-0.3.4-x86_64-disk.img&amp;quot; --container-format=bare --disk-format=qcow2 cirros034&lt;br /&gt;
*In OpenVIM:&lt;br /&gt;
 #copy your image to the NFS shared folder (e.g. /mnt/openvim-nfs)&lt;br /&gt;
 cp ./cirros-0.3.4-x86_64-disk.img /mnt/openvim-nfs/&lt;br /&gt;
 openvim image-create --name cirros034 --path /mnt/openvim-nfs/cirros-0.3.4-x86_64-disk.img&lt;br /&gt;
&lt;br /&gt;
===VNF package onboarding===&lt;br /&gt;
&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; VNF Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Click on the Onboard VNFD button&lt;br /&gt;
**Drag and drop the VNF package file cirros_vnf.tar.gz in the importing area.&lt;br /&gt;
[[File:vnfd_onboard_r4.png|600px|Onboarding a VNF]]&lt;br /&gt;
*From OSM client:&lt;br /&gt;
 osm vnfd-create cirros_vnf.tar.gz&lt;br /&gt;
 osm vnfd-list&lt;br /&gt;
&lt;br /&gt;
==Onboarding a NS==&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; NS Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Click on the Onboard NSD button&lt;br /&gt;
**Drag and drop the NS package file cirros_2vnf_ns.tar.gz in the importing area.&lt;br /&gt;
[[File:nsd_onboard_r4.png|600px|Onboarding a NS]]&lt;br /&gt;
*From OSM client:&lt;br /&gt;
 osm nsd-create cirros_2vnf_ns.tar.gz&lt;br /&gt;
 osm nsd-list&lt;br /&gt;
&lt;br /&gt;
==Instantiating the NS==&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; NS Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Next the NS descriptor to be instantiated, click on Launch&lt;br /&gt;
[[File:nsd_list.png|600px|Instantiating a NS (step 1)]] &lt;br /&gt;
**Fill the form, adding at least a name and selecting the VIM&lt;br /&gt;
[[File:new_ns.png|600px|Instantiating a NS (step 2)]] &lt;br /&gt;
* From OSM client:&lt;br /&gt;
 osm ns-create --nsd_name cirros_2vnf_ns --ns_name &amp;lt;ns-instance-name&amp;gt; --vim_account &amp;lt;data-center-name&amp;gt;&lt;br /&gt;
 osm ns-list&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Instantiation parameters can be specified using both CLI and UI. There are some examples collected in this wiki page: [[OSM instantiation parameters]].&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using old descriptors from Release TWO==&lt;br /&gt;
&lt;br /&gt;
Beware that old Release TWO descriptors cannot be directly used by OSM Release FOUR.&lt;br /&gt;
&lt;br /&gt;
You should use this &#039;&#039;&#039;[[Creating your own VNF package#Migrating old descriptors to release FOUR|conversion tool]]&#039;&#039;&#039; to convert them to Release FOUR format and &#039;&#039;&#039;[[Creating your own VNF package|create the corresponding package]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=What&#039;s next?=&lt;br /&gt;
&lt;br /&gt;
If you want to learn more, you can refer to the rest of &#039;&#039;&#039;[[OSM_Release_FOUR_Documentation | OSM documentation]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;diff=4402</id>
		<title>OSM Performance Management</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Performance_Management&amp;diff=4402"/>
		<updated>2019-03-20T14:53:43Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Move OS granularity to OS additional notes section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This documentation corresponds now to Release FIVE 5.0.5, previous documentation related to Performance Management has been deprecated.&lt;br /&gt;
&lt;br /&gt;
==Activating Metrics Collection==&lt;br /&gt;
OSM MON features a &amp;quot;mon-collector&amp;quot; module which will collect metrics whenever specified at the descriptor level.&lt;br /&gt;
For metrics to be collected, they have to exist first at any of these two levels:&lt;br /&gt;
* NFVI - made available by VIM&#039;s Telemetry System&lt;br /&gt;
* VNF - made available by OSM VCA (Juju Metrics)&lt;br /&gt;
&lt;br /&gt;
Reference diagram:&lt;br /&gt;
&lt;br /&gt;
[[File:osm_pm_rel5.png|800px|OSM Performance Management Reference Diagram]]&lt;br /&gt;
&lt;br /&gt;
=== VIM Metrics ===&lt;br /&gt;
&lt;br /&gt;
For VIM metrics to be collected, your VIM should support a Telemetry system.  As of Release 5.0.5, metric collection has been tested with: &lt;br /&gt;
* OpenStack VIM with Keystone v3 authentication and legacy or Gnocchi-based telemetry services.  &lt;br /&gt;
* VMware vCloud Director&lt;br /&gt;
Other VIM types will soon be added during the Release FIVE cycle.&lt;br /&gt;
&lt;br /&gt;
Next step is to activate metrics collection at your VNFDs. Every metric to be collected from the VIM for each VDU has to be described both at the VDU level, and then at the VNF level.  For example:&lt;br /&gt;
&lt;br /&gt;
 vdu:&lt;br /&gt;
 id: vdu1&lt;br /&gt;
   ...  &lt;br /&gt;
   monitoring-param:&lt;br /&gt;
         - id: metric_vdu1_cpu&lt;br /&gt;
           nfvi-metric: cpu_utilization&lt;br /&gt;
         - id: metric_vdu1_memory&lt;br /&gt;
           nfvi-metric: average_memory_utilization&lt;br /&gt;
 ...&lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_cpu&lt;br /&gt;
     name: metric_vim_vnf1_cpu&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-monitoring-param:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-monitoring-param-ref: metric_vdu1_cpu&lt;br /&gt;
 -   id: metric_vim_vnf1_memory&lt;br /&gt;
     name: metric_vim_vnf1_memory&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-monitoring-param:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-monitoring-param-ref: metric_vdu1_memory&lt;br /&gt;
&lt;br /&gt;
As you can see, a list of &amp;quot;NFVI metrics&amp;quot; is defined first at the VDU level, which contains an ID and the corresponding normalized metric name (in this case, &amp;quot;cpu_utilization&amp;quot; and &amp;quot;average_memory_utilization&amp;quot;)&lt;br /&gt;
Then, at the VNF level, a list of monitoring-params is referred, with an ID, name, aggregation-type and their source (&#039;vdu-monitoring-param&#039; in this case)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Additional notes====&lt;br /&gt;
&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/webserver_vimmetric_autoscale_vnfd.tar.gz here].&lt;br /&gt;
* Normalized metric names are: cpu_utilization, average_memory_utilization, disk_read_ops,disk_write_ops, disk_read_bytes, disk_write_bytes, packets_dropped_&amp;lt;nic number&amp;gt;, packets_received, packets_sent&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====OpenStack specific notes====&lt;br /&gt;
&lt;br /&gt;
When using Gnocchi, it is important to make the MON&#039;s container aware of the granularity of your Telemetry system.  For example, if it collects metrics every 60 seconds (like in Gnocchi&#039;s &#039;medium&#039; archive policy), you would need to update MON&#039;s &#039;&#039;&#039;OS_DEFAULT_GRANULARITY&#039;&#039;&#039; environmental variable like this:&lt;br /&gt;
&lt;br /&gt;
 docker service update --env-add OS_DEFAULT_GRANULARITY=60 osm_mon&lt;br /&gt;
&lt;br /&gt;
OS_DEFAULT_GRANULARITY default value is 300.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== VNF Metrics ===&lt;br /&gt;
&lt;br /&gt;
Metrics can also be collected directly from VNFs using VCA, through the [https://docs.jujucharms.com/2.4/en/developer-metrics Juju Metrics] framework. A simple charm containing a metrics.yaml file at its root folder specifies the metrics to be collected and the associated command.  &lt;br /&gt;
&lt;br /&gt;
For example, the following metrics.yaml file collects three metrics from the VNF, called &#039;users&#039;, &#039;load&#039; and &#039;load_pct&#039;&lt;br /&gt;
&lt;br /&gt;
 metrics:&lt;br /&gt;
    users:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;# of users&amp;quot;&lt;br /&gt;
      command: who|wc -l&lt;br /&gt;
    load:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;5 minute load average&amp;quot;&lt;br /&gt;
      command: cat /proc/loadavg |awk &#039;{print $1}&#039;&lt;br /&gt;
    load_pct:&lt;br /&gt;
      type: gauge&lt;br /&gt;
      description: &amp;quot;1 minute load average percent&amp;quot;&lt;br /&gt;
      command: cat /proc/loadavg  | awk &#039;{load_pct=$1*100.00} END {print load_pct}&#039;          &lt;br /&gt;
&lt;br /&gt;
Please note that the granularity of this metric collection method is fixed to 5 minutes and cannot be changed at this point.&lt;br /&gt;
&lt;br /&gt;
After metrics.yaml is available, there are two options for describing the metric collection in the VNFD:&lt;br /&gt;
&lt;br /&gt;
==== 1) VNF-level VNF metrics ====&lt;br /&gt;
&lt;br /&gt;
 mgmt-interface:&lt;br /&gt;
  cp: vdu_mgmt # is important to set the mgmt VDU or CP for metrics collection&lt;br /&gt;
 vnf-configuration:&lt;br /&gt;
   initial-config-primitive:&lt;br /&gt;
   ...&lt;br /&gt;
   juju:&lt;br /&gt;
     charm: testmetrics&lt;br /&gt;
   metrics:&lt;br /&gt;
     - name: load &lt;br /&gt;
     - name: load_pct&lt;br /&gt;
     - name: users  &lt;br /&gt;
 ...              &lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_load&lt;br /&gt;
     name: metric_vim_vnf1_load&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vnf-metric:&lt;br /&gt;
       vnf-metric-name-ref: load&lt;br /&gt;
 -   id: metric_vim_vnf1_loadpct&lt;br /&gt;
     name: metric_vim_vnf1_loadpct&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vnf-metric:&lt;br /&gt;
       vnf-metric-name-ref: load_pct&lt;br /&gt;
&lt;br /&gt;
Additional notes:&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example with VNF metrics collection (VNF-level) can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/ubuntuvm_vnfmetric_autoscale_vnfd.tar.gz here].&lt;br /&gt;
&lt;br /&gt;
==== 2) VDU-level VNF metrics ====&lt;br /&gt;
&lt;br /&gt;
 vdu:&lt;br /&gt;
 - id: vdu1&lt;br /&gt;
   ...&lt;br /&gt;
   interface:&lt;br /&gt;
   - ...&lt;br /&gt;
     mgmt-interface: true ! is important to set the mgmt interface for metrics collection&lt;br /&gt;
     ...&lt;br /&gt;
   vdu-configuration:&lt;br /&gt;
     initial-config-primitive:&lt;br /&gt;
     ...&lt;br /&gt;
     juju:&lt;br /&gt;
       charm: testmetrics&lt;br /&gt;
     metrics:&lt;br /&gt;
       - name: load &lt;br /&gt;
       - name: load_pct&lt;br /&gt;
       - name: users  &lt;br /&gt;
 ...              &lt;br /&gt;
 monitoring-param:&lt;br /&gt;
 -   id: metric_vim_vnf1_load&lt;br /&gt;
     name: metric_vim_vnf1_load&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-metric:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-metric-name-ref: load&lt;br /&gt;
 -   id: metric_vim_vnf1_loadpct&lt;br /&gt;
     name: metric_vim_vnf1_loadpct&lt;br /&gt;
     aggregation-type: AVERAGE&lt;br /&gt;
     vdu-metric:&lt;br /&gt;
       vdu-ref: vdu1&lt;br /&gt;
       vdu-metric-name-ref: load_pct&lt;br /&gt;
&lt;br /&gt;
Additional notes:&lt;br /&gt;
* Available attributes and values can be directly explored at the [https://osm.etsi.org/wikipub/index.php/OSM_Information_Model OSM Information Model]&lt;br /&gt;
* A complete VNFD example with VNF metrics collection (VDU-level) can be downloaded from [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/ubuntuvm_vnfvdumetric_autoscale_vnfd.tar.gz here]. &lt;br /&gt;
&lt;br /&gt;
As in VIM metrics, a list of &amp;quot;metrics&amp;quot; is defined first either at the VNF or VDU &amp;quot;configuration&amp;quot; level, which contain a name that comes from the metrics.yaml file. Then, at the VNF level, a list of monitoring-params is referred, with an ID, name, aggregation-type and their source, which can be a &amp;quot;vdu-metric&amp;quot; or a &amp;quot;vnf-metric&amp;quot; in this case.&lt;br /&gt;
&lt;br /&gt;
==Retrieving metrics from Prometheus TSDB==&lt;br /&gt;
&lt;br /&gt;
Once the metrics are being collected, they are stored in the Prometheus Time-Series DB &#039;&#039;&#039;with an &#039;osm_&#039; prefix&#039;&#039;&#039;, and there are a number of ways in which you can retrieve them.&lt;br /&gt;
&lt;br /&gt;
=== 1) Visualizing metrics in Prometheus UI ===&lt;br /&gt;
&lt;br /&gt;
Prometheus TSDB includes its own UI, which you can visit at http://[OSM_IP]:9091&lt;br /&gt;
&lt;br /&gt;
From there, you can:&lt;br /&gt;
* Type any metric name (i.e. osm_cpu_utilization) in the &#039;expression&#039; field and see its current value or a histogram.&lt;br /&gt;
* Visit the Status --&amp;gt; Target menu, to monitor the connection status between Prometheus and MON (through &#039;mon-exporter&#039;)&lt;br /&gt;
&lt;br /&gt;
[[File:osm_prometheus_rel5.png|800px|Screenshot of OSM Prometheus UI]]&lt;br /&gt;
&lt;br /&gt;
=== 2) Integrating Prometheus with Grafana ===&lt;br /&gt;
&lt;br /&gt;
There is a well-known integration between these two components that allows Grafana to easily show interactive graphs for any metric.  You can use any existing Grafana installation or the one that comes in OSM as the experimental &amp;quot;pm_stack&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To install the &#039;pm_stack&#039; (which today includes only Grafana), in an existing OSM installation, run the installer in the following way:&lt;br /&gt;
 ./install_osm.sh -o pm_stack&lt;br /&gt;
Otherwise, if you are installing from scratch, you can simply run the installer with the pm_stack option.&lt;br /&gt;
 ./install.sh --pm_stack&lt;br /&gt;
&lt;br /&gt;
Once installed, access Grafana with its default credentials (admin / admin) at http://[OSM_IP_address]:3000 and by clicking the &#039;Manage&#039; option at the &#039;Dashboards&#039; menu (to the left), you will find a sample dashboard containing two graphs for VIM metrics, and two graphs for VNF metrics.  You can easily change them or add more, as desired.&lt;br /&gt;
&lt;br /&gt;
[[File:osm_grafana_rel5.png|800px|Screenshot of OSM Grafana UI]]&lt;br /&gt;
&lt;br /&gt;
=== 3) Interacting with Prometheus directly through its API ===&lt;br /&gt;
&lt;br /&gt;
Even though many analytics applications, like Grafana, include their own integration for Prometheus, some other applications do not include it out of the box or there is a need to build a custom integration.  &lt;br /&gt;
&lt;br /&gt;
In such cases, the [https://prometheus.io/docs/prometheus/latest/querying/api/ Prometheus HTTP API] can be used to gather any metrics.  A couple of examples are shown below:&lt;br /&gt;
&lt;br /&gt;
Example with Date range query&lt;br /&gt;
 curl &#039;http://localhost:9091/api/v1/query_range?query=osm_cpu_utilization&amp;amp;start=2018-12-03T14:10:00.000Z&amp;amp;end=2018-12-03T14:20:00.000Z&amp;amp;step=15s&#039;&lt;br /&gt;
&lt;br /&gt;
Example with Instant query&lt;br /&gt;
 curl &#039;http://localhost:9091/api/v1/query?query=osm_cpu_utilization&amp;amp;time=2018-12-03T14:14:00.000Z&#039;&lt;br /&gt;
&lt;br /&gt;
Further examples and API calls can be found at the [https://prometheus.io/docs/prometheus/latest/querying/api/ Prometheus HTTP API documentation].&lt;br /&gt;
&lt;br /&gt;
=== 4) Interacting directly with MON Collector ===&lt;br /&gt;
&lt;br /&gt;
The way Prometheus TSDB stores metrics is by querying Prometheus &#039;exporters&#039; periodically, which are set as &#039;targets&#039;.  Exporters expose current metrics in a specific format that Prometheus can understand, more information can be found [https://prometheus.io/docs/instrumenting/exporters/ here]&lt;br /&gt;
&lt;br /&gt;
OSM MON features a &amp;quot;mon-exporter&amp;quot; module that exports &#039;&#039;&#039;current metrics&#039;&#039;&#039; through port 8000.  Please note that this port is by default not being exposed outside the OSM docker&#039;s network.&lt;br /&gt;
&lt;br /&gt;
A tool that understands Prometheus &#039;exporters&#039; (for example, Elastic Metricbeat) can be plugged-in to integrate directly with &amp;quot;mon-exporter&amp;quot;.  To get an idea on how metrics look alike in this particular format, you could:&lt;br /&gt;
&lt;br /&gt;
1. Get into MON console&lt;br /&gt;
 docker exec -ti osm_mon.1.[id] bash&lt;br /&gt;
2. Install curl&lt;br /&gt;
 apt -y install curl&lt;br /&gt;
3. Use curl to get the current metrics list&lt;br /&gt;
 curl localhost:8000&lt;br /&gt;
&lt;br /&gt;
Please note that as long as the Prometheus container is up, it will continue retrieving and storing metrics in addition to any other tool/DB you connect to &amp;quot;mon-exporter&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== 5) Using your own TSDB ===&lt;br /&gt;
&lt;br /&gt;
OSM MON integrates Prometheus through a plugin/backend model, so if desired, other backends can be developed.  If interested in contributing with such option, you can ask for details at our Slack #mon channel or through the OSM Tech mailing list.&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FIVE_Documentation&amp;diff=4009</id>
		<title>OSM Release FIVE Documentation</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FIVE_Documentation&amp;diff=4009"/>
		<updated>2018-12-06T15:49:56Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Removes REL3 documentation link and virtualbox installation guide (replaced by vagrant box)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Release FIVE Quickstart ==&lt;br /&gt;
* In order to get started quickly and get familiar with the most common operations, you can refer to the [[OSM_Release_FIVE | Release FIVE Quickstart page]].&lt;br /&gt;
&lt;br /&gt;
== VNF and NS examples ==&lt;br /&gt;
* [[Examples from OSM Hackfests]]&lt;br /&gt;
&lt;br /&gt;
== Onboarding your own VNF and NS ==&lt;br /&gt;
* [[Creating_your_own_VNF_package | Create your own VNF package]] &lt;br /&gt;
* [[Creating_your_own_VNF_charm_(Release_THREE) | Creating your own VNF charm]]&lt;br /&gt;
** Some [[Example_VNF_Charms | examples of VNF Charms]] &lt;br /&gt;
** [[VNF_Primitives | Default VNF Primitives]] &lt;br /&gt;
* [[OSM_Information_Model | OSM Information Model]]&lt;br /&gt;
* [[Reference_VNF_and_NS_Descriptors | Information to create VNF and NS Descriptors]]&lt;br /&gt;
* [[OSM_Release_FOUR#Using_old_descriptors_from_Release_TWO | How to onboard old Release TWO descriptors]]&lt;br /&gt;
&lt;br /&gt;
== Specific installation methods ==&lt;br /&gt;
* [[How_to_run_OSM_on_Vagrant | How to run OSM on Vagrant]]&lt;br /&gt;
* [[How to upgrade the OSM Platform]]&lt;br /&gt;
* [[How to install OSM client | How to install OSM client separately]]&lt;br /&gt;
* [[Advanced OSM installation procedures]]&lt;br /&gt;
* [[How to install OSM in Amazon EC2 | How to install OSM in Amazon EC2]]&lt;br /&gt;
&lt;br /&gt;
== EPA and SDN Assist ==&lt;br /&gt;
* [[EPA_and_SDN_assist | How-to guide]]&lt;br /&gt;
* [[Openstack_configuration_(Release_FOUR)#Configure_Openstack_for_full_EPA_support_in_OSM | OpenStack configuration for EPA and SDN Assist]]&lt;br /&gt;
&lt;br /&gt;
== Reference material and self training ==&lt;br /&gt;
* [[OSM client]]:&lt;br /&gt;
** [[OSM_client#Installation | Installation]]&lt;br /&gt;
** [[OSM Client commands]]&lt;br /&gt;
** [[Enable autocompletion in OSM Client]]&lt;br /&gt;
* [[OSM instantiation parameters]]&lt;br /&gt;
* Using Monitoring and Autoscaling capabilities:&lt;br /&gt;
** [[OSM_Performance_Management | OSM Performance Management]]&lt;br /&gt;
** [[OSM_Fault_Management | OSM Fault Management]]&lt;br /&gt;
** [[OSM_Autoscaling | OSM Autoscaling]]&lt;br /&gt;
* 4th OSM Hackfest - full training material:&lt;br /&gt;
** [[4th_OSM_Hackfest#Agenda | Table of contents]]&lt;br /&gt;
** [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/presentations/ Documentation]&lt;br /&gt;
** [https://osm-download.etsi.org/ftp/osm-4.0-four/4th-hackfest/packages/ NS and VNF Packages] and [https://osm-download.etsi.org/ftp/osm-3.0-three/1st-hackfest/images/ VM images]&lt;br /&gt;
* [[VIM_emulator | How to use the VIM emulator]]&lt;br /&gt;
* [[OSM_E2E_tests | Tests to validate VIM capabilities]]&lt;br /&gt;
* [[OSM_workshops_and_events | OSM Workshops videos]]&lt;br /&gt;
* [[OSM_Technical_Videos | Other technical videos and demos]]&lt;br /&gt;
* [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseFOUR-FINAL.pdf Release FOUR White Paper]&lt;br /&gt;
* [https://osm.etsi.org/images/OSM_White_Paper_Experience_implementing_NFV_specs_final.pdf OSM&#039;s End User Advisory Group White Paper]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
* [[How to know the version of your current OSM installation]]&lt;br /&gt;
* [[Common issues and troubleshooting]]&lt;br /&gt;
* Have you detected any bug? Check [[How_to_report_issues_(Release_THREE) | this guide]] to see how to report issues.&lt;br /&gt;
&lt;br /&gt;
== How to contribute ==&lt;br /&gt;
* [https://osm.etsi.org/about/how-to-join Joining the OSM community]&lt;br /&gt;
* Developer guides:&lt;br /&gt;
** [[Workflow_with_OSM_tools | Workflow with OSM tools (git, gerrit, bugzilla, etc.) (MUST READ for developers)]]&lt;br /&gt;
** [[Developer HowTo | Developer how-to (MUST READ for developers)]]&lt;br /&gt;
** [[Developer_HowTo_for_RO_Module | Developer how-to for RO]]&lt;br /&gt;
**[[How_to_upgrade_the_OSM_Platform#Upgrading_a_specific_component_to_use_your_own_cloned_repo_.28e.g._for_developing_purposes.29 | How to work with your own cloned repo for a specific component]]&lt;br /&gt;
* [https://opensourcemano.slack.com/ OSM Slack Workplace]&lt;br /&gt;
* Upcoming Hackfests and events:&lt;br /&gt;
** [[5th_OSM_Hackfest|5th OSM Hackfest - Barcelona]] - 4-8 Feb 2019&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FIVE&amp;diff=4005</id>
		<title>OSM Release FIVE</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FIVE&amp;diff=4005"/>
		<updated>2018-12-05T21:00:46Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Adds sleep to docker stack rm and comment to make sure users wait for remove to finish before redeploying&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Open Source MANO (OSM) is an ETSI-hosted open source community delivering a production-quality MANO stack for NFV, capable of consuming openly published information models, available to everyone, suitable for all VNFs, operationally significant and VIM-independent. OSM is aligned to NFV ISG information models while providing first-hand feedback based on its implementation experience.&lt;br /&gt;
&lt;br /&gt;
Release FIVE brings a number of improvements over previous releases. For the full list of new features, please refer to the Rel FIVE White Paper or the [[OSM Release FIVE Documentation]]. For a comprehensive overview of OSM functionalities, you can also refer to the release notes of former releases ([https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseONE-FINAL.pdf ONE], [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseTWO-FINAL.pdf TWO], [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseTHREE-FINAL.pdf THREE],&lt;br /&gt;
[https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseFOUR-FINAL.pdf FOUR]).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;OSM in Practice&#039;&#039;&#039;&lt;br /&gt;
{{#evu:https://www.youtube.com/watch?v=kCFxPV67Adw&lt;br /&gt;
|alignment=left&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Assumptions about interaction with VIMs and VNFs=&lt;br /&gt;
The following figure illustrates OSM interaction with VIMs and VNFs:&lt;br /&gt;
* OSM talks to the VIM for the deployment of VNFs and VLs connecting them&lt;br /&gt;
* OSM talks to the VNFs deployed in a VIM to run day-0, day-1 and day-2 configuration primitives.&lt;br /&gt;
&lt;br /&gt;
[[File:Osmtopology.png|600px|OSM Release 4]]&lt;br /&gt;
&lt;br /&gt;
In order for OSM to work, it is assumed that:&lt;br /&gt;
* Each VIM has an API endpoint reachable from OSM&lt;br /&gt;
* Each VIM has a so called management network which provides IP address to VNFs&lt;br /&gt;
* That management network is reachable from OSM&lt;br /&gt;
&lt;br /&gt;
=Install OSM Release FIVE=&lt;br /&gt;
&lt;br /&gt;
This release expands the cloud-native, &#039;&#039;dockerized&#039;&#039; OSM installation with the kafka bus for asynchronous communications, a lighter orchestrator with Network Services and Slicing capabilities, performance/fault/policy management features, a SOL005-aligned NBI, an enhanced GUI with a service composer, and OSM client leveraging the unified and improved REST API that the NBI exposes.&lt;br /&gt;
&lt;br /&gt;
== Default installation procedure ==&lt;br /&gt;
&lt;br /&gt;
All you need to run OSM Release FIVE is a single server or VM with the following requirements:&lt;br /&gt;
* MINIMUM: 2 CPUs, 4 GB RAM, 20GB disk and a single interface with Internet access&lt;br /&gt;
* RECOMMENDED: 2 CPUs, 8 GB RAM, 40GB disk and a single interface with Internet access&lt;br /&gt;
* Ubuntu16.04 (64-bit variant required) as base image (http://releases.ubuntu.com/16.04/)&lt;br /&gt;
&lt;br /&gt;
Once you have prepared the host with the previous requirements, all you need to do is:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-5.0-five/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 ./install_osm.sh&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;TIP:&#039;&#039;&#039; In order to facilitate potential trobleshooting later, it is recommended to save the full log of your installation process:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-5.0-five/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 ./install_osm.sh 2&amp;gt;&amp;amp;1 | tee osm_install_log.txt&lt;br /&gt;
&lt;br /&gt;
You will be asked if you want to proceed with the installation and configuration of LXD, juju, docker CE and the initialization of a local docker swarm, as pre-requirements. Please answer &amp;quot;y&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Then, some dialog messages related to LXD configuration will be shown. This is what you have to answer:&lt;br /&gt;
* Do you want to configure the LXD bridge? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv4 subnet? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&amp;lt;&amp;lt; &#039;&#039;&#039;Default values&#039;&#039;&#039; apply for next questions &amp;gt;&amp;gt;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv6 subnet? &#039;&#039;&#039;No&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you want to run docker commands, you will also need to either reload the shell or run the following command to add your user to the &#039;docker&#039; group:&lt;br /&gt;
 newgrp docker&lt;br /&gt;
&lt;br /&gt;
===Installation including optional components===&lt;br /&gt;
&lt;br /&gt;
You can include optional components in your installation by adding the following flags:&lt;br /&gt;
* &#039;&#039;&#039;VIM Emulator:&#039;&#039;&#039; --vimemu (more information [[VIM emulator|here]])&lt;br /&gt;
* &#039;&#039;&#039;Performance Management additional stack (Grafana only):&#039;&#039;&#039; --pm_stack (more information [[OSM Performance Management|here]])&lt;br /&gt;
* &#039;&#039;&#039;Fault Management features with ELK:&#039;&#039;&#039; --elk_stack (more information [[OSM Fault Management|here]])&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 ./install_osm.sh --elk_stack --pm_stack --vimemu&lt;br /&gt;
&lt;br /&gt;
===Other installation options===&lt;br /&gt;
* You can also run OSM using a pre-built [https://app.vagrantup.com/osm/boxes/osm vagrant] image: [[How_to_run_OSM_on_Vagrant]]&lt;br /&gt;
* For other special installation options, please refer to the [[OSM_Release_FIVE_Documentation#Alternative_installation_methods | release documentation]].&lt;br /&gt;
&lt;br /&gt;
==Checking your installation==&lt;br /&gt;
&lt;br /&gt;
After some time, you will get a fresh OSM Release FIVE installation with its latest, pre-built docker images which are built daily. You can access to the UI in the following URL (user:admin, password: admin):  http://1.2.3.4, replacing 1.2.3.4 with the IP address of your host. &lt;br /&gt;
&lt;br /&gt;
[[File:Osm_lwb_ui_login.png|600px|OSM home]]&lt;br /&gt;
&lt;br /&gt;
[[File:Osm_lwb_ui.png|600px|OSM Release FIVE installation result]]&lt;br /&gt;
&lt;br /&gt;
As a result of the installation, thirteen docker containers are created in the host (without considering optional stacks).  You can check they are running by issuing the following commands:&lt;br /&gt;
 docker stack ps osm |grep -i running&lt;br /&gt;
 docker service ls&lt;br /&gt;
&lt;br /&gt;
[[File:Osm_containers_rel5.png|600px|OSM Docker containers]]&lt;br /&gt;
&lt;br /&gt;
At any time, you can quickly relaunch your deployment by using the pre-built docker images, like this:&lt;br /&gt;
 docker stack rm osm &amp;amp;&amp;amp; sleep 60 # The sleep is for making sure the stack removal finishes before redeploying&lt;br /&gt;
 docker stack deploy -c /etc/osm/docker/docker-compose.yaml osm&lt;br /&gt;
&lt;br /&gt;
To check the logs of any container:&lt;br /&gt;
 docker service logs osm_lcm         # for LCM&lt;br /&gt;
&lt;br /&gt;
OSM client, a python-based CLI for OSM, will be available as well in the host machine.&lt;br /&gt;
Via the OSM client, you can manage descriptors, NS and VIM complete lifecycle.&lt;br /&gt;
&lt;br /&gt;
=Adding VIM accounts=&lt;br /&gt;
Before proceeding, make sure that you have a site with a VIM configured to run with OSM. Different kinds of VIMs are currently supported by OSM:&lt;br /&gt;
*&#039;&#039;&#039;OpenVIM.&#039;&#039;&#039; Check the following link to know how to install and use openvim for OSM: [[OpenVIM installation | OpenVIM installation]]. Openvim must run in &#039;normal&#039; mode (not test or fake) to have real virtual machines reachable from OSM.&lt;br /&gt;
*&#039;&#039;&#039;OpenStack.&#039;&#039;&#039; Check the following link to learn how to configure OpenStack to be used by OSM: [[Openstack_configuration | Openstack configuration]]&lt;br /&gt;
*&#039;&#039;&#039;VMware vCloud Director.&#039;&#039;&#039; Check the following link to learn how to configure VMware VCD to be used by OSM: [[Configuring_VMware_vCloud_Director | Configuring VMware vCloud Director]]&lt;br /&gt;
*&#039;&#039;&#039;Amazon Web Services (AWS).&#039;&#039;&#039; Check the following link to learn how to configure AWS (EC2 and Virtual Private Cloud) to be used by OSM: [[Configuring_AWS | Configuring AWS for OSM]]&lt;br /&gt;
OSM can manage external SDN controllers to perform the dataplane underlay network connectivity on behalf of the VIM. See [[EPA and SDN assist]]&lt;br /&gt;
&lt;br /&gt;
==Adding VIMs through OSM client==&lt;br /&gt;
===OpenVIM site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openvim-site&amp;quot;, IP address: 10.10.10.10, VIM tenant: &amp;quot;osm&amp;quot;)&lt;br /&gt;
 osm vim-create --name openvim-site --auth_url http://10.10.10.10:9080/openvim --account_type openvim \&lt;br /&gt;
    --description &amp;quot;Openvim site&amp;quot; --tenant osm --user dummy --password dummy&lt;br /&gt;
&lt;br /&gt;
===Openstack site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openstack-site&amp;quot;, IP address: 10.10.10.11, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;admin&amp;quot;, password: &amp;quot;userpwd&amp;quot;)&lt;br /&gt;
 osm vim-create --name openstack-site --user admin --password userpwd \&lt;br /&gt;
     --auth_url http://10.10.10.11:5000/v2.0 --tenant admin --account_type openstack&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Openstack_configuration#Add_openstack_to_OSM | OpenStack Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===VMware vCloud Director site===&lt;br /&gt;
*Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;vmware-site&amp;quot;, IP address: 10.10.10.12, VIM tenant: &amp;quot;vmware-tenant&amp;quot;, user: &amp;quot;osm&amp;quot;, password: &amp;quot;osm4u&amp;quot;, admin user: &amp;quot;admin&amp;quot;, admin password: &amp;quot;adminpwd&amp;quot;, organization: &amp;quot;orgVDC&amp;quot;)&lt;br /&gt;
 osm vim-create --name vmware-site --user osm --password osm4u --auth_url https://10.10.10.12 \&lt;br /&gt;
     --tenant vmware-tenant  --account_type vmware \&lt;br /&gt;
     --config &#039;{admin_username: user, admin_password: passwd, orgname: organization, nsx_manager: &amp;quot;http://10.10.10.12&amp;quot;,&lt;br /&gt;
     nsx_user: user, nsx_password: userpwd,&amp;quot;vcenter_port&amp;quot;: port, &amp;quot;vcenter_user&amp;quot;:user, &amp;quot;vcenter_password&amp;quot;:password,&lt;br /&gt;
     &amp;quot;vcenter_ip&amp;quot;: 10.10.10.14}&#039;&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Configuring_VMware_vCloud_Director#Add_vCloud_using_OSM_Client | vCloud Director Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===VMware Integrated Openstack (VIO) site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openstack-site-vio4&amp;quot;, IP address: 10.10.10.12, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;admin&amp;quot;, password: &amp;quot;passwd&amp;quot;)&lt;br /&gt;
 osm vim-create --name VIO --user admin --password passwd --auth_url https://10.10.10.12:5000/v3 --tenant admin \&lt;br /&gt;
     --account_type openstack --config &#039;{use_floating_ip: True, insecure: true, vim_type: VIO, APIversion: v3.3,&lt;br /&gt;
     dataplane_physical_net: dvs-46, &amp;quot;use_internal_endpoint&amp;quot;:true,&amp;quot;dataplane_net_vlan_range&amp;quot;:[&amp;quot;31-35&amp;quot;,&amp;quot;37-39&amp;quot;]}&#039;&lt;br /&gt;
&lt;br /&gt;
With respect to Openstack, the additional configuration for VIO is the following:&lt;br /&gt;
* &#039;&#039;&#039;vim_type&#039;&#039;&#039;: Set to &amp;quot;VIO&amp;quot; to use VMware Integrated openstack as VIM &lt;br /&gt;
* &#039;&#039;&#039;use_internal_endpoint&#039;&#039;&#039;: When true it allows use of private API endpoints&lt;br /&gt;
* &#039;&#039;&#039;dataplane_physical_net&#039;&#039;&#039;: The configured network_vlan_ranges at neutron for the SRIOV (binding direct) and passthrough (binding direct-physical) networks, e.g. &#039;physnet_sriov&#039; in the above configuration. In case of VMware Integrated Openstack (VIO) provide moref ID of distributed virtual switch, e.g &#039;dvs-46&#039; in above configuration.&lt;br /&gt;
* &#039;&#039;&#039;dataplane_net_vlan_range&#039;&#039;&#039;: In case of VMware Integrated Openstack (VIO) provide vlan ranges for the SRIOV (binding direct) networks in format [&#039;start_ID - end_ID&#039;]&lt;br /&gt;
&lt;br /&gt;
For common options, you may refer to the general [[Openstack_configuration#Add_openstack_to_OSM | OpenStack Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===Amazon Web Services (AWS) site===&lt;br /&gt;
*Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;aws-site&amp;quot;, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;XXX&amp;quot;, password: &amp;quot;YYY&amp;quot;)&lt;br /&gt;
 osm vim-create --name aws-site --user XXX --password YYY --auth_url https://aws.amazon.com --tenant admin \&lt;br /&gt;
     --account_type aws --config &#039;{region_name: eu-central-1, flavor_info: {t2.nano: {cpus: 1, disk: 100, ram: 512},&lt;br /&gt;
     t2.micro: {cpus: 1, disk: 100, ram: 1024}, t2.small: {cpus: 1, disk: 100, ram: 2048},&lt;br /&gt;
     m1.small: {cpus: 1, disk: 160, ram: 1741}}}&#039;&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Configuring_AWS#Add_AWS_to_OSM | AWS Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
==Adding VIMs through GUI==&lt;br /&gt;
Just access the &#039;&#039;VIM Accounts&#039;&#039; tab, click the &#039;&#039;New VIM&#039;&#039; button and fill the parameters accordingly.&lt;br /&gt;
&lt;br /&gt;
[[File:Osmvim.png|600px|AddingVIMUI]]&lt;br /&gt;
&lt;br /&gt;
=Deploying your first Network Service=&lt;br /&gt;
In this example we will deploy the following Network Service, consisting of two simple VNFs based on CirrOS connected by a simple VLD.&lt;br /&gt;
&lt;br /&gt;
[[File:cirros_2vnf_ns.png|500px|NS with 2 CirrOS VNF]]&lt;br /&gt;
&lt;br /&gt;
Before going on, download the required VNF and NS packages from this URL: https://osm-download.etsi.org/ftp/osm-3.0-three/examples/cirros_2vnf_ns/&lt;br /&gt;
&lt;br /&gt;
==Onboarding a VNF==&lt;br /&gt;
&lt;br /&gt;
The onboarding of a VNF in OSM involves adding the corresponding VNF package to the system. This process also assumes, as a pre-condition, that the corresponding VM images are available in the VIM(s) where it will be instantiated.&lt;br /&gt;
&lt;br /&gt;
===Uploading VM image(s) to the VIM(s)===&lt;br /&gt;
In this example, only a vanilla CirrOS 0.3.4 image is need. It can be obtained from the following link: http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img&lt;br /&gt;
&lt;br /&gt;
If not available, it would be required to upload the image into the VIM. Instructions differ from one VIM to another:&lt;br /&gt;
*In Openstack:&lt;br /&gt;
 openstack image create --file=&amp;quot;./cirros-0.3.4-x86_64-disk.img&amp;quot; --container-format=bare --disk-format=qcow2 cirros034&lt;br /&gt;
*In OpenVIM:&lt;br /&gt;
 #copy your image to the NFS shared folder (e.g. /mnt/openvim-nfs)&lt;br /&gt;
 cp ./cirros-0.3.4-x86_64-disk.img /mnt/openvim-nfs/&lt;br /&gt;
 openvim image-create --name cirros034 --path /mnt/openvim-nfs/cirros-0.3.4-x86_64-disk.img&lt;br /&gt;
&lt;br /&gt;
===VNF package onboarding===&lt;br /&gt;
&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; VNF Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Click on the Onboard VNFD button&lt;br /&gt;
**Drag and drop the VNF package file cirros_vnf.tar.gz in the importing area.&lt;br /&gt;
[[File:vnfd_onboard_r4.png|600px|Onboarding a VNF]]&lt;br /&gt;
*From OSM client:&lt;br /&gt;
 osm vnfd-create cirros_vnf.tar.gz&lt;br /&gt;
 osm vnfd-list&lt;br /&gt;
&lt;br /&gt;
==Onboarding a NS==&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; NS Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Click on the Onboard NSD button&lt;br /&gt;
**Drag and drop the NS package file cirros_2vnf_ns.tar.gz in the importing area.&lt;br /&gt;
[[File:nsd_onboard_r4.png|600px|Onboarding a NS]]&lt;br /&gt;
*From OSM client:&lt;br /&gt;
 osm nsd-create cirros_2vnf_ns.tar.gz&lt;br /&gt;
 osm nsd-list&lt;br /&gt;
&lt;br /&gt;
==Instantiating the NS==&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; NS Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Next the NS descriptor to be instantiated, click on Launch&lt;br /&gt;
[[File:nsd_list.png|600px|Instantiating a NS (step 1)]] &lt;br /&gt;
**Fill the form, adding at least a name and selecting the VIM&lt;br /&gt;
[[File:new_ns.png|600px|Instantiating a NS (step 2)]] &lt;br /&gt;
* From OSM client:&lt;br /&gt;
 osm ns-create --nsd_name cirros_2vnf_ns --ns_name &amp;lt;ns-instance-name&amp;gt; --vim_account &amp;lt;data-center-name&amp;gt;&lt;br /&gt;
 osm ns-list&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Instantiation parameters can be specified using both CLI and UI. There are some examples collected in this wiki page: [[OSM instantiation parameters]].&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using old descriptors from Release TWO==&lt;br /&gt;
&lt;br /&gt;
Beware that old Release TWO descriptors cannot be directly used by OSM Release FIVE.&lt;br /&gt;
&lt;br /&gt;
You should use this &#039;&#039;&#039;[[Creating your own VNF package#Migrating old descriptors to release FIVE|conversion tool]]&#039;&#039;&#039; to convert them to Release FIVE format and &#039;&#039;&#039;[[Creating your own VNF package|create the corresponding package]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=What&#039;s next?=&lt;br /&gt;
&lt;br /&gt;
If you want to learn more, you can refer to the rest of &#039;&#039;&#039;[[OSM_Release_FIVE_Documentation | OSM documentation]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=How_to_install_OSM_in_Amazon_EC2&amp;diff=4004</id>
		<title>How to install OSM in Amazon EC2</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=How_to_install_OSM_in_Amazon_EC2&amp;diff=4004"/>
		<updated>2018-12-05T20:58:21Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Updates ftp installer version to REL5&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;These instructions are oriented to install OSM Release FOUR&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Requirements =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Resources:&#039;&#039;&#039;&lt;br /&gt;
*	MINIMUM: 2 CPUs, 4 GB RAM, 20GB disk and a single interface with Internet access&lt;br /&gt;
*	RECOMMENDED: 2 CPUs, 8 GB RAM, 40GB disk and a single interface with Internet access&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Instance Type/AMI:&#039;&#039;&#039;&lt;br /&gt;
*	Recommended Instance Type: m5.xlarge (https://aws.amazon.com/ec2/instance-types/)&lt;br /&gt;
*	Ubuntu 16.04 (64-bit variant required) as base AMI (http://releases.ubuntu.com/16.04/)&lt;br /&gt;
*	Ubuntu AMI’s: https://cloud-images.ubuntu.com/locator/ec2/&lt;br /&gt;
*	Launching an EC2 instance: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html#ec2-launch-instance&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;The following installation steps assume that you already have an EC2 instance launched which meets the minimum requirements mentioned above.&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= OSM Installation =&lt;br /&gt;
&lt;br /&gt;
1.	Install OSM and save installation logs to a file for troubleshooting if needed:&lt;br /&gt;
&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-5.0-five/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 ./install_osm.sh 2&amp;gt;&amp;amp;1 | tee osm_install_log.txt&lt;br /&gt;
&lt;br /&gt;
2.	Answer the following dialog box questions accordingly:&lt;br /&gt;
&lt;br /&gt;
*	The installation will configure LXD, install juju, install docker CE and init a docker swarm, as pre-requirements. Do you want to proceed (Y/n)? Y&lt;br /&gt;
*	Do you want to configure the LXD bridge? Yes&lt;br /&gt;
*	Do you want to setup an IPv4 subnet? Yes&lt;br /&gt;
*	&#039;&#039;&amp;lt;&amp;lt; &#039;&#039;&#039;Default values&#039;&#039;&#039; apply for next questions &amp;gt;&amp;gt;&#039;&#039;&lt;br /&gt;
*	Do you want to setup an IPv6 subnet? No&lt;br /&gt;
&lt;br /&gt;
3.	Add the following environment variables to the end of your ‘.bashrc’ file and then source it with ‘source .bashrc’:&lt;br /&gt;
 export OSM_HOSTNAME=127.0.0.1&lt;br /&gt;
 export OSM_SOL005=True&lt;br /&gt;
&lt;br /&gt;
4.	You will notice 10 Docker Containers created on the EC2 instance. Check the status of the containers and Docker service:&lt;br /&gt;
 docker stack ps osm |grep -i running&lt;br /&gt;
 docker service ls&lt;br /&gt;
&lt;br /&gt;
5.	Create the AWS VIM Account (AWS Site)&lt;br /&gt;
&lt;br /&gt;
NOTE: Make sure to select the region in which your EC2 instance resides.&lt;br /&gt;
&lt;br /&gt;
 osm vim-create --name aws-site --user &amp;lt;aws-access-key&amp;gt; --password &amp;lt;aws-secret-key&amp;gt; --auth_url  https://aws.amazon.com --tenant admin --account_type aws --config &#039;{region_name: us-west-2, flavor_info: “{t2.nano: {cpus: 1, disk: 100, ram: 512}, t2.micro: {cpus: 1, disk: 100, ram: 1024}, t2.small: {cpus: 1, disk: 100, ram: 2048}, m1.small: {cpus: 1, disk: 160, ram: 1741}}”}&#039;&lt;br /&gt;
  	        &lt;br /&gt;
6.	Access the OSM Console via the EC2 Instance’s Private IP from another EC2 Instance in the same subnet:&lt;br /&gt;
&lt;br /&gt;
NOTE: You can use a Windows instance to easily access the OSM Console. &lt;br /&gt;
Launching an EC2 Windows Instance:&lt;br /&gt;
https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-launch-instance&lt;br /&gt;
&lt;br /&gt;
 http://1.2.3.4&lt;br /&gt;
 username: admin&lt;br /&gt;
 password: admin&lt;br /&gt;
&lt;br /&gt;
7.	Deploy/Test a network service by using any of the available VNF and NS packagers from ‘https://osm-download.etsi.org/ftp/osm-4.0-four/3rd-hackfest/packages/’:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-4.0-four/3rd-hackfest/packages/hackfest_1alt_nsd.tar.gz&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-4.0-four/3rd-hackfest/packages/hackfest_1alt_vnfd.tar.gz&lt;br /&gt;
 &lt;br /&gt;
 osm vnfd-create hackfest_1alt_vnfd.tar.gz&lt;br /&gt;
 osm nsd-create hackfest_1alt_nsd.tar.gz&lt;br /&gt;
 osm ns-create --ns_name hackfest1alt --nsd_name hackfest1alt-ns --vim_account aws-site --ssh_keys &amp;lt;PUBKEY_FILE&amp;gt; --config &#039;{vld: [ {name: mgmtnet, vim-network-name: subnet-xxxxxxx} ] }&#039;&lt;br /&gt;
 osm ns-list&lt;br /&gt;
 osm ns-show hackfest1alt&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=How_to_upgrade_the_OSM_Platform&amp;diff=4003</id>
		<title>How to upgrade the OSM Platform</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=How_to_upgrade_the_OSM_Platform&amp;diff=4003"/>
		<updated>2018-12-05T20:57:12Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Replaces osm for opensourcemano in image tags to be consistent with REL5&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Upgrading the OSM platform ==&lt;br /&gt;
Due to the new architecture and dockerized components introduced from OSM Release FOUR, OSM platform upgrade is easier than ever. Upgrading to the latest minor version is as simple as running again the installer:&lt;br /&gt;
&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-5.0-five/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 ./install_osm.sh&lt;br /&gt;
&lt;br /&gt;
You will be asked if you want to proceed with the installation and configuration of LXD, juju, docker CE and the initialization of a local docker swarm, as pre-requirements. Please answer &amp;quot;y&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Then, some dialog messages related to LXD configuration will be shown. This is what you have to answer:&lt;br /&gt;
* Do you want to configure the LXD bridge? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv4 subnet? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&amp;lt;&amp;lt; &#039;&#039;&#039;Default values&#039;&#039;&#039; apply for next questions &amp;gt;&amp;gt;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv6 subnet? &#039;&#039;&#039;No&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
That&#039;s all. You will have the newest OSM version installed.&lt;br /&gt;
&lt;br /&gt;
== Upgrading only a specific component to use the latest stable version, the master branch or an old version (advanced users) ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;Upgrading a specific OSM component without upgrading the others accordingly may lead to potential inconsistencies. Unless you are really sure about what you are doing, please use this procedure with caution.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can use options -b and -m in the installer:&lt;br /&gt;
 ./install_osm.sh --help&lt;br /&gt;
 usage: ./install_osm.sh [OPTIONS]&lt;br /&gt;
 Install OSM from binaries or source code (by default, from binaries)&lt;br /&gt;
  OPTIONS&lt;br /&gt;
 ...&lt;br /&gt;
     -b &amp;lt;refspec&amp;gt;:   install OSM from source code using a specific branch (master, v2.0, ...) or tag&lt;br /&gt;
                     -b master          (main dev branch)&lt;br /&gt;
                     -b v2.0            (v2.0 branch)&lt;br /&gt;
                     -b tags/v1.1.0     (a specific tag)&lt;br /&gt;
                     ...&lt;br /&gt;
     -m &amp;lt;MODULE&amp;gt;:    install OSM but only rebuild the specified docker images (RO, LCM, NBI, LW-UI, MON, KAFKA, MONGO, NONE)&lt;br /&gt;
&lt;br /&gt;
For instance, to upgrade the RO to the latest stable version:&lt;br /&gt;
 ./install_osm.sh -m RO&lt;br /&gt;
&lt;br /&gt;
Or to use master branch in LCM:&lt;br /&gt;
 ./install_osm.sh -m LCM -b master&lt;br /&gt;
&lt;br /&gt;
Or to use an old version of MON:&lt;br /&gt;
 ./install_osm.sh -m MON -b tags/v5.0.2&lt;br /&gt;
&lt;br /&gt;
== Upgrading a specific component to use your own cloned repo (e.g. for developing purposes) ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;Upgrading a specific OSM component without upgrading the others accordingly may lead to potential inconsistencies. Unless you are really sure about what you are doing, please use this procedure with caution.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For RO (ro and ro-db):&lt;br /&gt;
 docker pull mysql:5&lt;br /&gt;
 git clone https://osm.etsi.org/gerrit/osm/RO&lt;br /&gt;
 #you can then work in the cloned repo, apply patches with git pull, etc.&lt;br /&gt;
 docker build RO -f RO/docker/Dockerfile-local -t opensourcemano/ro --no-cache&lt;br /&gt;
 docker service update osm_ro --force --image opensourcemano/ro&lt;br /&gt;
&lt;br /&gt;
For LCM:&lt;br /&gt;
 git clone https://osm.etsi.org/gerrit/osm/LCM&lt;br /&gt;
 #you can then work in the cloned repo, apply patches with git pull, etc.&lt;br /&gt;
 docker build LCM -f LCM/Dockerfile.local -t opensourcemano/lcm --no-cache&lt;br /&gt;
 docker service update osm_lcm --force --image opensourcemano/lcm&lt;br /&gt;
&lt;br /&gt;
For MON:&lt;br /&gt;
 git clone https://osm.etsi.org/gerrit/osm/MON&lt;br /&gt;
 #you can then work in the cloned repo, apply patches with git pull, etc.&lt;br /&gt;
 docker build MON -f MON/docker/Dockerfile -t opensourcemano/mon --no-cache&lt;br /&gt;
 docker service update osm_mon --force --image opensourcemano/mon&lt;br /&gt;
&lt;br /&gt;
For POL:&lt;br /&gt;
 git clone https://osm.etsi.org/gerrit/osm/POL&lt;br /&gt;
 #you can then work in the cloned repo, apply patches with git pull, etc.&lt;br /&gt;
 docker build MON -f MON/docker/Dockerfile -t opensourcemano/pol --no-cache&lt;br /&gt;
 docker service update osm_mon --force --image opensourcemano/pol&lt;br /&gt;
&lt;br /&gt;
For NBI:&lt;br /&gt;
 git clone https://osm.etsi.org/gerrit/osm/NBI&lt;br /&gt;
 #you can then work in the cloned repo, apply patches with git pull, etc.&lt;br /&gt;
 docker build NBI -f NBI/Dockerfile.local -t opensourcemano/nbi --no-cache&lt;br /&gt;
 docker service update osm_nbi --force --image opensourcemano/nbi&lt;br /&gt;
&lt;br /&gt;
For light UI:&lt;br /&gt;
 git clone https://osm.etsi.org/gerrit/osm/LW-UI&lt;br /&gt;
 #you can then work in the cloned repo, apply patches with git pull, etc.&lt;br /&gt;
 docker build LW-UI -f LW-UI/Dockerfile -t opensourcemano/light-ui --no-cache&lt;br /&gt;
 docker service update osm_light-ui --force --image opensourcemano/light-ui&lt;br /&gt;
&lt;br /&gt;
Optionally, you can restart the whole stack:&lt;br /&gt;
 docker stack rm osm &amp;amp;&amp;amp; sleep 60&lt;br /&gt;
 docker stack deploy -c /etc/osm/docker/docker-compose.yaml osm&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FIVE&amp;diff=3937</id>
		<title>OSM Release FIVE</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=OSM_Release_FIVE&amp;diff=3937"/>
		<updated>2018-12-04T16:18:54Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Remove dollar sign from shell command&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Open Source MANO (OSM) is an ETSI-hosted open source community delivering a production-quality MANO stack for NFV, capable of consuming openly published information models, available to everyone, suitable for all VNFs, operationally significant and VIM-independent. OSM is aligned to NFV ISG information models while providing first-hand feedback based on its implementation experience.&lt;br /&gt;
&lt;br /&gt;
Release FIVE brings a number of improvements over previous releases. For the full list of new features, please refer to the Rel FIVE White Paper or the [[OSM Release FIVE Documentation]]. For a comprehensive overview of OSM functionalities, you can also refer to the release notes of former releases ([https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseONE-FINAL.pdf ONE], [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseTWO-FINAL.pdf TWO], [https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseTHREE-FINAL.pdf THREE],&lt;br /&gt;
[https://osm.etsi.org/images/OSM-Whitepaper-TechContent-ReleaseFOUR-FINAL.pdf FOUR]).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;OSM in Practice&#039;&#039;&#039;&lt;br /&gt;
{{#evu:https://www.youtube.com/watch?v=kCFxPV67Adw&lt;br /&gt;
|alignment=left&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Assumptions about interaction with VIMs and VNFs=&lt;br /&gt;
The following figure illustrates OSM interaction with VIMs and VNFs:&lt;br /&gt;
* OSM talks to the VIM for the deployment of VNFs and VLs connecting them&lt;br /&gt;
* OSM talks to the VNFs deployed in a VIM to run day-0, day-1 and day-2 configuration primitives.&lt;br /&gt;
&lt;br /&gt;
[[File:Osmtopology.png|600px|OSM Release 4]]&lt;br /&gt;
&lt;br /&gt;
In order for OSM to work, it is assumed that:&lt;br /&gt;
* Each VIM has an API endpoint reachable from OSM&lt;br /&gt;
* Each VIM has a so called management network which provides IP address to VNFs&lt;br /&gt;
* That management network is reachable from OSM&lt;br /&gt;
&lt;br /&gt;
=Install OSM Release FIVE=&lt;br /&gt;
&lt;br /&gt;
This release expands the cloud-native, &#039;&#039;dockerized&#039;&#039; OSM installation with the kafka bus for asynchronous communications, a lighter orchestrator with Network Services and Slicing capabilities, performance/fault/policy management features, a SOL005-aligned NBI, an enhanced GUI with a service composer, and OSM client leveraging the unified and improved REST API that the NBI exposes.&lt;br /&gt;
&lt;br /&gt;
== Default installation procedure ==&lt;br /&gt;
&lt;br /&gt;
All you need to run OSM Release FIVE is a single server or VM with the following requirements:&lt;br /&gt;
* MINIMUM: 2 CPUs, 4 GB RAM, 20GB disk and a single interface with Internet access&lt;br /&gt;
* RECOMMENDED: 2 CPUs, 8 GB RAM, 40GB disk and a single interface with Internet access&lt;br /&gt;
* Ubuntu16.04 (64-bit variant required) as base image (http://releases.ubuntu.com/16.04/)&lt;br /&gt;
&lt;br /&gt;
Once you have prepared the host with the previous requirements, all you need to do is:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-5.0-five/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 ./install_osm.sh&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;TIP:&#039;&#039;&#039; In order to facilitate potential trobleshooting later, it is recommended to save the full log of your installation process:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-5.0-five/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 ./install_osm.sh 2&amp;gt;&amp;amp;1 | tee osm_install_log.txt&lt;br /&gt;
&lt;br /&gt;
You will be asked if you want to proceed with the installation and configuration of LXD, juju, docker CE and the initialization of a local docker swarm, as pre-requirements. Please answer &amp;quot;y&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Then, some dialog messages related to LXD configuration will be shown. This is what you have to answer:&lt;br /&gt;
* Do you want to configure the LXD bridge? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv4 subnet? &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&amp;lt;&amp;lt; &#039;&#039;&#039;Default values&#039;&#039;&#039; apply for next questions &amp;gt;&amp;gt;&#039;&#039;&lt;br /&gt;
* Do you want to setup an IPv6 subnet? &#039;&#039;&#039;No&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you want to run docker commands, you will also need to either reload the shell or run the following command to add your user to the &#039;docker&#039; group:&lt;br /&gt;
 newgrp docker&lt;br /&gt;
&lt;br /&gt;
===Installation including optional components===&lt;br /&gt;
&lt;br /&gt;
You can include optional components in your installation by adding the following flags:&lt;br /&gt;
* &#039;&#039;&#039;VIM Emulator:&#039;&#039;&#039; --vimemu (more information [[VIM emulator|here]])&lt;br /&gt;
* &#039;&#039;&#039;Performance Management additional stack (Grafana only):&#039;&#039;&#039; --pm_stack (more information [[OSM Performance Management|here]])&lt;br /&gt;
* &#039;&#039;&#039;Fault Management features with ELK:&#039;&#039;&#039; --elk_stack (more information [[OSM Fault Management|here]])&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 ./install_osm.sh --elk_stack --pm_stack --vimemu&lt;br /&gt;
&lt;br /&gt;
===Other installation options===&lt;br /&gt;
* You can also run OSM using a pre-built [https://app.vagrantup.com/osm/boxes/osm vagrant] image: [[How_to_run_OSM_on_Vagrant]]&lt;br /&gt;
* For other special installation options, please refer to the [[OSM_Release_FIVE_Documentation#Alternative_installation_methods | release documentation]].&lt;br /&gt;
&lt;br /&gt;
==Checking your installation==&lt;br /&gt;
&lt;br /&gt;
After some time, you will get a fresh OSM Release FIVE installation with its latest, pre-built docker images which are built daily. You can access to the UI in the following URL (user:admin, password: admin):  http://1.2.3.4, replacing 1.2.3.4 with the IP address of your host. &lt;br /&gt;
&lt;br /&gt;
[[File:Osm_lwb_ui_login.png|600px|OSM home]]&lt;br /&gt;
&lt;br /&gt;
[[File:Osm_lwb_ui.png|600px|OSM Release FOUR installation result]]&lt;br /&gt;
&lt;br /&gt;
As a result of the installation, thirteen docker containers are created in the host (without considering optional stacks).  You can check they are running by issuing the following commands:&lt;br /&gt;
 docker stack ps osm |grep -i running&lt;br /&gt;
 docker service ls&lt;br /&gt;
&lt;br /&gt;
[[File:Osm_containers_rel5.png|600px|OSM Docker containers]]&lt;br /&gt;
&lt;br /&gt;
At any time, you can quickly relaunch your deployment by using the pre-built docker images, like this:&lt;br /&gt;
 docker stack rm osm&lt;br /&gt;
 docker stack deploy -c /etc/osm/docker/docker-compose.yaml osm&lt;br /&gt;
&lt;br /&gt;
To check the logs of any container:&lt;br /&gt;
 docker service logs osm_lcm         # for LCM&lt;br /&gt;
&lt;br /&gt;
OSM client, a python-based CLI for OSM, will be available as well in the host machine.&lt;br /&gt;
Via the OSM client, you can manage descriptors, NS and VIM complete lifecycle.&lt;br /&gt;
&lt;br /&gt;
=Adding VIM accounts=&lt;br /&gt;
Before proceeding, make sure that you have a site with a VIM configured to run with OSM. Different kinds of VIMs are currently supported by OSM:&lt;br /&gt;
*&#039;&#039;&#039;OpenVIM.&#039;&#039;&#039; Check the following link to know how to install and use openvim for OSM: [[OpenVIM installation (Release THREE) | OpenVIM installation]]. Openvim must run in &#039;normal&#039; mode (not test or fake) to have real virtual machines reachable from OSM.&lt;br /&gt;
*&#039;&#039;&#039;OpenStack.&#039;&#039;&#039; Check the following link to learn how to configure OpenStack to be used by OSM: [[Openstack_configuration_(Release_FOUR) | Openstack configuration]]&lt;br /&gt;
*&#039;&#039;&#039;VMware vCloud Director.&#039;&#039;&#039; Check the following link to learn how to configure VMware VCD to be used by OSM: [[Configuring_VMware_vCloud_Director_for_OSM_Release_FOUR | Configuring VMware vCloud Director]]&lt;br /&gt;
*&#039;&#039;&#039;Amazon Web Services (AWS).&#039;&#039;&#039; Check the following link to learn how to configure AWS (EC2 and Virtual Private Cloud) to be used by OSM: [[Configuring_AWS_for_OSM_Release_FOUR | Configuring AWS for OSM]]&lt;br /&gt;
OSM can manage external SDN controllers to perform the dataplane underlay network connectivity on behalf of the VIM. See [[EPA and SDN assist]]&lt;br /&gt;
&lt;br /&gt;
==Adding VIMs through OSM client==&lt;br /&gt;
===OpenVIM site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openvim-site&amp;quot;, IP address: 10.10.10.10, VIM tenant: &amp;quot;osm&amp;quot;)&lt;br /&gt;
 osm vim-create --name openvim-site --auth_url http://10.10.10.10:9080/openvim --account_type openvim \&lt;br /&gt;
    --description &amp;quot;Openvim site&amp;quot; --tenant osm --user dummy --password dummy&lt;br /&gt;
&lt;br /&gt;
===Openstack site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openstack-site&amp;quot;, IP address: 10.10.10.11, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;admin&amp;quot;, password: &amp;quot;userpwd&amp;quot;)&lt;br /&gt;
 osm vim-create --name openstack-site --user admin --password userpwd \&lt;br /&gt;
     --auth_url http://10.10.10.11:5000/v2.0 --tenant admin --account_type openstack&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Openstack_configuration_(Release_FOUR)#Add_openstack_to_OSM | OpenStack Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===VMware vCloud Director site===&lt;br /&gt;
*Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;vmware-site&amp;quot;, IP address: 10.10.10.12, VIM tenant: &amp;quot;vmware-tenant&amp;quot;, user: &amp;quot;osm&amp;quot;, password: &amp;quot;osm4u&amp;quot;, admin user: &amp;quot;admin&amp;quot;, admin password: &amp;quot;adminpwd&amp;quot;, organization: &amp;quot;orgVDC&amp;quot;)&lt;br /&gt;
 osm vim-create --name vmware-site --user osm --password osm4u --auth_url https://10.10.10.12 \&lt;br /&gt;
     --tenant vmware-tenant  --account_type vmware \&lt;br /&gt;
     --config &#039;{admin_username: user, admin_password: passwd, orgname: organization, nsx_manager: &amp;quot;http://10.10.10.12&amp;quot;,&lt;br /&gt;
     nsx_user: user, nsx_password: userpwd,&amp;quot;vcenter_port&amp;quot;: port, &amp;quot;vcenter_user&amp;quot;:user, &amp;quot;vcenter_password&amp;quot;:password,&lt;br /&gt;
     &amp;quot;vcenter_ip&amp;quot;: 10.10.10.14}&#039;&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Configuring_VMware_vCloud_Director_for_OSM_Release_FOUR#Add_vCloud_using_OSM_Client | vCloud Director Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===VMware Integrated Openstack (VIO) site===&lt;br /&gt;
Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;openstack-site-vio4&amp;quot;, IP address: 10.10.10.12, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;admin&amp;quot;, password: &amp;quot;passwd&amp;quot;)&lt;br /&gt;
 osm vim-create --name VIO --user admin --password passwd --auth_url https://10.10.10.12:5000/v3 --tenant admin \&lt;br /&gt;
     --account_type openstack --config &#039;{use_floating_ip: True, insecure: true, vim_type: VIO, APIversion: v3.3,&lt;br /&gt;
     dataplane_physical_net: dvs-46, &amp;quot;use_internal_endpoint&amp;quot;:true,&amp;quot;dataplane_net_vlan_range&amp;quot;:[&amp;quot;31-35&amp;quot;,&amp;quot;37-39&amp;quot;]}&#039;&lt;br /&gt;
&lt;br /&gt;
With respect to Openstack, the additional configuration for VIO is the following:&lt;br /&gt;
* &#039;&#039;&#039;vim_type&#039;&#039;&#039;: Set to &amp;quot;VIO&amp;quot; to use VMware Integrated openstack as VIM &lt;br /&gt;
* &#039;&#039;&#039;use_internal_endpoint&#039;&#039;&#039;: When true it allows use of private API endpoints&lt;br /&gt;
* &#039;&#039;&#039;dataplane_physical_net&#039;&#039;&#039;: The configured network_vlan_ranges at neutron for the SRIOV (binding direct) and passthrough (binding direct-physical) networks, e.g. &#039;physnet_sriov&#039; in the above configuration. In case of VMware Integrated Openstack (VIO) provide moref ID of distributed virtual switch, e.g &#039;dvs-46&#039; in above configuration.&lt;br /&gt;
* &#039;&#039;&#039;dataplane_net_vlan_range&#039;&#039;&#039;: In case of VMware Integrated Openstack (VIO) provide vlan ranges for the SRIOV (binding direct) networks in format [&#039;start_ID - end_ID&#039;]&lt;br /&gt;
&lt;br /&gt;
For common options, you may refer to the general [[Openstack_configuration_(Release_FOUR)#Add_openstack_to_OSM | OpenStack Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
===Amazon Web Services (AWS) site===&lt;br /&gt;
*Execute the following command, using the appropriate parameters (e.g. site name: &amp;quot;aws-site&amp;quot;, VIM tenant: &amp;quot;admin&amp;quot;, user: &amp;quot;XXX&amp;quot;, password: &amp;quot;YYY&amp;quot;)&lt;br /&gt;
 osm vim-create --name aws-site --user XXX --password YYY --auth_url https://aws.amazon.com --tenant admin \&lt;br /&gt;
     --account_type aws --config &#039;{region_name: eu-central-1, flavor_info: {t2.nano: {cpus: 1, disk: 100, ram: 512},&lt;br /&gt;
     t2.micro: {cpus: 1, disk: 100, ram: 1024}, t2.small: {cpus: 1, disk: 100, ram: 2048},&lt;br /&gt;
     m1.small: {cpus: 1, disk: 160, ram: 1741}}}&#039;&lt;br /&gt;
&lt;br /&gt;
For advanced options, please refer to the [[Configuring_AWS_for_OSM_Release_FOUR#Add_AWS_to_OSM | AWS Setup Guide]].&lt;br /&gt;
&lt;br /&gt;
==Adding VIMs through GUI==&lt;br /&gt;
Just access the &#039;&#039;VIM Accounts&#039;&#039; tab, click the &#039;&#039;New VIM&#039;&#039; button and fill the parameters accordingly.&lt;br /&gt;
&lt;br /&gt;
[[File:Osmvim.png|600px|AddingVIMUI]]&lt;br /&gt;
&lt;br /&gt;
=Deploying your first Network Service=&lt;br /&gt;
In this example we will deploy the following Network Service, consisting of two simple VNFs based on CirrOS connected by a simple VLD.&lt;br /&gt;
&lt;br /&gt;
[[File:cirros_2vnf_ns.png|500px|NS with 2 CirrOS VNF]]&lt;br /&gt;
&lt;br /&gt;
Before going on, download the required VNF and NS packages from this URL: https://osm-download.etsi.org/ftp/osm-3.0-three/examples/cirros_2vnf_ns/&lt;br /&gt;
&lt;br /&gt;
==Onboarding a VNF==&lt;br /&gt;
&lt;br /&gt;
The onboarding of a VNF in OSM involves adding the corresponding VNF package to the system. This process also assumes, as a pre-condition, that the corresponding VM images are available in the VIM(s) where it will be instantiated.&lt;br /&gt;
&lt;br /&gt;
===Uploading VM image(s) to the VIM(s)===&lt;br /&gt;
In this example, only a vanilla CirrOS 0.3.4 image is need. It can be obtained from the following link: http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img&lt;br /&gt;
&lt;br /&gt;
If not available, it would be required to upload the image into the VIM. Instructions differ from one VIM to another:&lt;br /&gt;
*In Openstack:&lt;br /&gt;
 openstack image create --file=&amp;quot;./cirros-0.3.4-x86_64-disk.img&amp;quot; --container-format=bare --disk-format=qcow2 cirros034&lt;br /&gt;
*In OpenVIM:&lt;br /&gt;
 #copy your image to the NFS shared folder (e.g. /mnt/openvim-nfs)&lt;br /&gt;
 cp ./cirros-0.3.4-x86_64-disk.img /mnt/openvim-nfs/&lt;br /&gt;
 openvim image-create --name cirros034 --path /mnt/openvim-nfs/cirros-0.3.4-x86_64-disk.img&lt;br /&gt;
&lt;br /&gt;
===VNF package onboarding===&lt;br /&gt;
&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; VNF Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Click on the Onboard VNFD button&lt;br /&gt;
**Drag and drop the VNF package file cirros_vnf.tar.gz in the importing area.&lt;br /&gt;
[[File:vnfd_onboard_r4.png|600px|Onboarding a VNF]]&lt;br /&gt;
*From OSM client:&lt;br /&gt;
 osm vnfd-create cirros_vnf.tar.gz&lt;br /&gt;
 osm vnfd-list&lt;br /&gt;
&lt;br /&gt;
==Onboarding a NS==&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; NS Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Click on the Onboard NSD button&lt;br /&gt;
**Drag and drop the NS package file cirros_2vnf_ns.tar.gz in the importing area.&lt;br /&gt;
[[File:nsd_onboard_r4.png|600px|Onboarding a NS]]&lt;br /&gt;
*From OSM client:&lt;br /&gt;
 osm nsd-create cirros_2vnf_ns.tar.gz&lt;br /&gt;
 osm nsd-list&lt;br /&gt;
&lt;br /&gt;
==Instantiating the NS==&lt;br /&gt;
*From the UI:&lt;br /&gt;
**Go to Projects --&amp;gt; Admin --&amp;gt; NS Packages (&#039;&#039;Open List&#039;&#039;)&lt;br /&gt;
**Next the NS descriptor to be instantiated, click on Launch&lt;br /&gt;
[[File:nsd_list.png|600px|Instantiating a NS (step 1)]] &lt;br /&gt;
**Fill the form, adding at least a name and selecting the VIM&lt;br /&gt;
[[File:new_ns.png|600px|Instantiating a NS (step 2)]] &lt;br /&gt;
* From OSM client:&lt;br /&gt;
 osm ns-create --nsd_name cirros_2vnf_ns --ns_name &amp;lt;ns-instance-name&amp;gt; --vim_account &amp;lt;data-center-name&amp;gt;&lt;br /&gt;
 osm ns-list&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Instantiation parameters can be specified using both CLI and UI. There are some examples collected in this wiki page: [[OSM instantiation parameters]].&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using old descriptors from Release TWO==&lt;br /&gt;
&lt;br /&gt;
Beware that old Release TWO descriptors cannot be directly used by OSM Release FIVE.&lt;br /&gt;
&lt;br /&gt;
You should use this &#039;&#039;&#039;[[Creating your own VNF package#Migrating old descriptors to release FOUR|conversion tool]]&#039;&#039;&#039; to convert them to Release FIVE format and &#039;&#039;&#039;[[Creating your own VNF package|create the corresponding package]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=What&#039;s next?=&lt;br /&gt;
&lt;br /&gt;
If you want to learn more, you can refer to the rest of &#039;&#039;&#039;[[OSM_Release_FIVE_Documentation | OSM documentation]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=Main_Page&amp;diff=3823</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=Main_Page&amp;diff=3823"/>
		<updated>2018-11-07T23:15:42Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Adds link to conf-calls&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;font-size:200%&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&#039;&#039;&#039;Welcome to the Open Source MANO WIKI!&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
Welcome to OSM, an ETSI-hosted open source management and orchestration (MANO) community project to jointly innovate, create and deliver a MANO stack that is closely aligned with ETSI NFV. This portal page aims to provide you with a starting point in your engagement with the OSM community, our software releases and collaborative development processes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:140%&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Our Vision &amp;amp; Mission&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
OSM is delivering an open source Management and Orchestration (MANO) stack aligned with ETSI NFV Information Models. As an operator-led community, OSM is delivering a production-quality open source MANO stack that meets the requirements of commercial NFV networks. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:140%&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Try OSM&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Do you want to try OSM? Check our quickstart guide of the current release (&#039;&#039;&#039;[[OSM Release FOUR]]&#039;&#039;&#039;) to know how to install and use OSM, as well as getting more technical details.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&lt;br /&gt;
{{Multi-column numbered list|lst=none&lt;br /&gt;
||&#039;&#039;&#039;Our Governance Structure&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[OSM LG|Leadership Group]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[OSM EUAG|End User Advisory Group]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[OSM TSC|Technical Steering Committee]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[OSM MDGs|Module Development Groups]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[OSM TFs|Task Forces]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
||&#039;&#039;&#039;How we work together&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;li&amp;gt; The OSM community relies on several collaboration methods: &lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt; [https://osm.etsi.org/wiki/index.php/Conf-calls Scheduled conference calls]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt; Face-to-face meetings&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt; Email distribution lists&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt; WIKI pages&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt; OSM Development tools&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[Get Involved]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[OSM PoCs|OSM PoCs]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[OSM Ecosystem|OSM Ecosystem]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
||&#039;&#039;&#039;Where to get more information&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[https://portal.etsi.org/Portals/0/TBpages/OSM/Docs/OSM%20WP%20v1.0.pdf OSM Working Procedures]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&#039;&#039;&#039;[[OSM Release FOUR|Current OSM Release (quickstart)]]&#039;&#039;&#039;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;&#039;&#039;&#039;[[OSM Release FOUR Documentation|Current OSM Release (documentation)]]&#039;&#039;&#039;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[Workflow with OSM tools|Development Guidelines]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[OSM Technical Videos|Technical and demonstration videos]]&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;[[OSM workshops and events|Workshop presentations]]&amp;lt;/ul&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Feedback}}&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=How_to_install_OSM_client&amp;diff=3780</id>
		<title>How to install OSM client</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=How_to_install_OSM_client&amp;diff=3780"/>
		<updated>2018-10-29T17:57:59Z</updated>

		<summary type="html">&lt;p&gt;Diazb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In those cases where you have an OSM already installed in a remote server, you might still want to operate it from your local computer using the OSM client. In order to install OSM client, you will need a Linux machine and follow the procedure below to install it:&lt;br /&gt;
 curl http://osm-download.etsi.org/repository/osm/debian/ReleaseFOUR/OSM%20ETSI%20Release%20Key.gpg | sudo apt-key add -&lt;br /&gt;
 sudo add-apt-repository -y &amp;quot;deb [arch=amd64] http://osm-download.etsi.org/repository/osm/debian/ReleaseFOUR stable osmclient&amp;quot;&lt;br /&gt;
 sudo apt-get update&lt;br /&gt;
 sudo apt-get install -y python-osmclient&lt;br /&gt;
&lt;br /&gt;
After the installation completes, you will need to add the following environment variables to the end of your .bashrc file and then source it with source .bashrc&lt;br /&gt;
&lt;br /&gt;
 export OSM_HOSTNAME=127.0.0.1 # IP of the OSM server&lt;br /&gt;
 export OSM_SOL005=True&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=How_to_install_OSM_client&amp;diff=3779</id>
		<title>How to install OSM client</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=How_to_install_OSM_client&amp;diff=3779"/>
		<updated>2018-10-29T17:57:37Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Adding env vars to procedure&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In those cases where you have an OSM already installed in a remote server, you might still want to operate it from your local computer using the OSM client. In order to install OSM client, you will need a Linux machine and follow the procedure below to install it:&lt;br /&gt;
 curl http://osm-download.etsi.org/repository/osm/debian/ReleaseFOUR/OSM%20ETSI%20Release%20Key.gpg | sudo apt-key add -&lt;br /&gt;
 sudo add-apt-repository -y &amp;quot;deb [arch=amd64] http://osm-download.etsi.org/repository/osm/debian/ReleaseFOUR stable osmclient&amp;quot;&lt;br /&gt;
 sudo apt-get update&lt;br /&gt;
 sudo apt-get install -y python-osmclient&lt;br /&gt;
&lt;br /&gt;
After the installation completes, you will need to add the following environment variables to the end of your .bashrc file and then source it with source .bashrc&lt;br /&gt;
&lt;br /&gt;
export OSM_HOSTNAME=127.0.0.1 # IP of the OSM server&lt;br /&gt;
export OSM_SOL005=True&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
	<entry>
		<id>https://osm.etsi.org/wikipub/index.php?title=How_to_run_OSM_on_Vagrant&amp;diff=3756</id>
		<title>How to run OSM on Vagrant</title>
		<link rel="alternate" type="text/html" href="https://osm.etsi.org/wikipub/index.php?title=How_to_run_OSM_on_Vagrant&amp;diff=3756"/>
		<updated>2018-10-25T14:29:21Z</updated>

		<summary type="html">&lt;p&gt;Diazb: Updates latest version in wget url&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
=== Basic instructions ===&lt;br /&gt;
&lt;br /&gt;
Pre-built OSM vagrant images are available here: https://app.vagrantup.com/osm&lt;br /&gt;
&lt;br /&gt;
The pre-built image requires 4GB of memory and 2 VCPUs.&lt;br /&gt;
&lt;br /&gt;
1) Install vagrant (https://www.vagrantup.com) and virtualbox (https://www.virtualbox.org/)&lt;br /&gt;
&lt;br /&gt;
2) Create the initial Vagrantfile in a predefined directory of your choice:&lt;br /&gt;
&lt;br /&gt;
  vagrant init osm/releasefour&lt;br /&gt;
&lt;br /&gt;
* Note: to ensure the latest version is downloaded, destroy any previous existing OSM boxes (vagrant box list / vagrant box remove)&lt;br /&gt;
&lt;br /&gt;
3) Edit the generated Vagrantfile if you need to customize, for example, opened ports and assigned memory:&lt;br /&gt;
&lt;br /&gt;
* If you would like to access the OSM Web client externally from the virtualbox VM, you can open up port 80 (mapped to 8080 at your host) by uncommenting this line:&lt;br /&gt;
  # config.vm.network &amp;quot;forwarded_port&amp;quot;, guest: 80, host: 8080&lt;br /&gt;
&lt;br /&gt;
4) Start OSM:&lt;br /&gt;
&lt;br /&gt;
  vagrant up&lt;br /&gt;
&lt;br /&gt;
* Note: warnings related to &amp;quot;Vagrant  unable to mount VirtualBox shared folders&amp;quot; can be safely ignored.&lt;br /&gt;
&lt;br /&gt;
5) ssh to OSM:&lt;br /&gt;
&lt;br /&gt;
  vagrant ssh&lt;br /&gt;
&lt;br /&gt;
6) Add the relevant environment variables for OSM client, either exporting them every time you access the shell, or copying the export lines to your .bashrc file.&lt;br /&gt;
&lt;br /&gt;
 export OSM_HOSTNAME=127.0.0.1&lt;br /&gt;
 export OSM_SOL005=True&lt;br /&gt;
&lt;br /&gt;
You are ready to use OSM !&lt;br /&gt;
&lt;br /&gt;
=== Additional notes ===&lt;br /&gt;
* If at any time you need to change something from the Vagrantfile, you can apply the changes by reloading the VM:&lt;br /&gt;
 vagrant reload&lt;br /&gt;
&lt;br /&gt;
* If you need to copy a file to your vagrant machine, just run &#039;vagrant ssh-config&#039; and copy the private key path, then:&lt;br /&gt;
 scp -P 2222 -i /path/to/private_key someFileName.txt vagrant@127.0.0.1:&lt;br /&gt;
&lt;br /&gt;
* The vagrant box file can also be downloaded manually:&lt;br /&gt;
  wget https://app.vagrantup.com/osm/boxes/releasefour/versions/4.0.1.6/providers/virtualbox.box&lt;br /&gt;
&lt;br /&gt;
* To use a manually downloaded image, add the box to Vagrant and create a matching Vagrantfile:&lt;br /&gt;
  vagrant box add osm/releasefour /path/to/vagrant.box&lt;br /&gt;
  vagrant init osm/releasefour&lt;br /&gt;
&lt;br /&gt;
* If at any point you need to add the optional components (elk_stack, pm_stack...) you can do so by downloading the installer from inside your VM and executing it with the -o option, for example:&lt;br /&gt;
 wget https://osm-download.etsi.org/ftp/osm-4.0-four/install_osm.sh&lt;br /&gt;
 chmod +x install_osm.sh&lt;br /&gt;
 ./install_osm.sh -o pm_stack&lt;br /&gt;
&lt;br /&gt;
* Please note that you may need to add more forwarded ports, for example, to access Grafana after adding the pm_stack, you would need to add a line like this one to your Vagrantfile, then run &#039;vagrant reload&#039;:&lt;br /&gt;
 config.vm.network &amp;quot;forwarded_port&amp;quot;, guest: 3000, host: 3000&lt;br /&gt;
&lt;br /&gt;
=== Vagrant + VIM Emulator Quickstart ===&lt;br /&gt;
&lt;br /&gt;
 vagrant init osm/releasefour&lt;br /&gt;
 vagrant up&lt;br /&gt;
 vagrant ssh&lt;br /&gt;
&lt;br /&gt;
 # startup VIM-EMU&lt;br /&gt;
 # new version of installer will have the vim-emu start by default&lt;br /&gt;
 sudo docker run --name vim-emu -t -d --restart always --privileged --pid=&#039;host&#039; --network=netOSM -v /var/run/docker.sock:/var/run/docker.sock vim-emu-img python examples/osm_default_daemon_topology_2_pop.py&lt;br /&gt;
&lt;br /&gt;
 export OSM_HOSTNAME=127.0.0.1&lt;br /&gt;
 export OSM_SOL005=True&lt;br /&gt;
&lt;br /&gt;
 export VIMEMU_HOSTNAME=$(sudo docker inspect -f &#039;&amp;lt;nowiki&amp;gt;{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}&amp;lt;/nowiki&amp;gt;&#039; vim-emu)&lt;br /&gt;
&lt;br /&gt;
 osm vim-create --name emu-vim1 --user username --password password --auth_url http://$VIMEMU_HOSTNAME:6001/v2.0 --tenant tenantName --account_type openstack&lt;br /&gt;
&lt;br /&gt;
 git clone https://osm.etsi.org/gerrit/osm/vim-emu.git&lt;br /&gt;
 osm vnfd-create vim-emu/examples/vnfs/ping.tar.gz&lt;br /&gt;
 osm vnfd-create vim-emu/examples/vnfs/pong.tar.gz&lt;br /&gt;
 osm nsd-create vim-emu/examples/services/pingpong_nsd.tar.gz&lt;br /&gt;
 osm ns-create --nsd_name pingpong --ns_name test --vim_account emu-vim1&lt;br /&gt;
&lt;br /&gt;
 vagrant@vagrant:~$ osm ns-list&lt;br /&gt;
 +------------------+--------------------------------------+--------------------+---------------+---------------------------------------------------------------------------------------------+&lt;br /&gt;
 | ns instance name | id                                   | operational status | config status | detailed status                                                                             |&lt;br /&gt;
 +------------------+--------------------------------------+--------------------+---------------+---------------------------------------------------------------------------------------------+&lt;br /&gt;
 | test             | 05a363b0-4ac1-49a1-a4b1-9680e39b1ade | init               | init          | Waiting ns ready at RO. RO_id=2c569b2a-b21f-495b-9837-6a469f565044; VMs: 0/2, networks: 0/1 |&lt;br /&gt;
 +------------------+--------------------------------------+--------------------+---------------+---------------------------------------------------------------------------------------------+&lt;br /&gt;
 vagrant@vagrant:~$ osm ns-list&lt;br /&gt;
 +------------------+--------------------------------------+--------------------+---------------+---------------------------------------------------------------------------------------------+&lt;br /&gt;
 | ns instance name | id                                   | operational status | config status | detailed status                                                                             |&lt;br /&gt;
 +------------------+--------------------------------------+--------------------+---------------+---------------------------------------------------------------------------------------------+&lt;br /&gt;
 | test             | 05a363b0-4ac1-49a1-a4b1-9680e39b1ade | init               | init          | Waiting ns ready at RO. RO_id=2c569b2a-b21f-495b-9837-6a469f565044; VMs: 0/2, networks: 0/1 |&lt;br /&gt;
 +------------------+--------------------------------------+--------------------+---------------+---------------------------------------------------------------------------------------------+&lt;/div&gt;</summary>
		<author><name>Diazb</name></author>
	</entry>
</feed>