@@ -128,7 +128,6 @@ Before proceeding, make sure that you have a site with a VIM configured to run w
-**Amazon Web Services (AWS).** Check the following link to learn how to configure AWS (EC2 and Virtual Private Cloud) to be used by OSM: [Configuring AWS for OSM](04-vim-setup.md#amazon-web-services-aws)
-**VMware vCloud Director.** Check the following link to learn how to configure VMware VCD to be used by OSM: [Configuring VMware vCloud Director](04-vim-setup.md#vmwares-vcloud-director)
-**OpenVIM.** Check the following link to know how to install and use openvim for OSM: [OpenVIM installation](13-openvim-installation.md). OpenVIM must run in 'normal' mode (not test or fake) to have real virtual machines reachable from OSM.
-**Eclipse fog05** Check the following link to learn how to configure Eclipse fog05 to be used by OSM: [Configuring Eclipse fog05 for OSM](04-vim-setup.md#fog05)
OSM can manage external SDN controllers to perform the dataplane underlay network connectivity on behalf of the VIM. See [EPA and SDN assist](04-vim-setup.md#advanced-setups-for-high-io-performance-epa-and-sdn-assist)
--description"Openvim site"--tenant osm --user dummy --password dummy
```
#### Eclipse fog05 site
- Execute the following command, using the appropriate parameters (e.g. runtime supported: "hypervisor", cpu architecture: "arch", user: "XXX", password: "YYY")
```bash
osm vim-create --name fos --auth_url <rest proxy ip>:8080 --account_type fos --tenant osm --user dummy --password dummy --config'{hypervisor: LXD}'
```
For advanced options, please refer to the [Configuring Eclipse fog05 for OSM](04-vim-setup.md#fog05).
-`<image_project>:image:<image>`: to get a specific image `<image>` in the project `<image_project>` (e.g. `ubuntu-os-cloud:image:ubuntu-1804-bionic-v20210928`)
-`<image_project>:<image>`: equivalent to `<image_project>:image:<image>` (e.g. `ubuntu-os-cloud:ubuntu-1804-bionic-v20210928`)
## Eclipse fog05
Eclipse fog05 (can be read as _fog-O-five_ or _fog-O-S_) is a different kind of VIM, designed to manage a fog/edge environment, thus it is completely distributed (no controller/master node) and pluggable, and available as FOSS from Eclipse: <https://github.com/eclipse-fog05>
It stores information in a distributed key-value store that then is able to provide location transparency to the user, and all the state information are stored in it.
#### Upload Images
Image registration can be done by using the python rest API. First generate the descriptor of your image:
```json
{
"name":"example-image",
"uri":"lxd://alpine/edge",
"checksum":"<sha256sum of image file",
"format":"<image format eg. qcow2, iso, tar.gz>"
}
```
the using the python api the upload of the image can be done:
```python
>>>api.image.add(img_descriptor)
```
### Adding Eclipse fog05 as VIM target of OSM
Alike the rest of VIM types, you should provide the appropiate paramenters in `--config` when creating the VIM target.
```bash
osm vim-create --name fos --auth_url <zenoh server ip>:7447 --account_type fos --tenant osm --user dummy --password dummy --config'{hypervisor: LXD}'
```
The following configuration can be added:
-`arch`: cpu architecture used when creating the VDUs for this VIM account eg. x86\_64, aarch64, default is x86\_64.
-`hypervisor`: hypervisor supported by this VIM account, can be one of: LXD, KVM, BARE, DOCKER, ROS2, at least one node of the system as to be able to manage the selected hypervisor, default and supported is LXD.
#### VLAN configuration (optional)
If you want your fog05 installation to be able to use VLANs for virtual networks instead of overlay VxLANs you need to change the configuration on all nodes. You need to update the configuration file `/etc/fos/plugins/linuxbridge/linuxbridge_plugin.json`.
```json
{
"name":"linuxbridge",
"version":1,
"uuid":"d42b4163-af35-423a-acb4-a228290cf0be",
"type":"network",
"requirements":[
"jinja2"
],
"description":"linux Bridge network plugin",
"configuration":{
"ylocator":"tcp/<your zenoh ip>:7447",
"nodeid":"<your node id>",
"dataplane_interface":"<interface for overlay networks>",
"use_vlan":true,
"vlan_interface":"<interface for vlans>",
"vlan_range":[
<startvlanid>,
<endvlanid>
]
}
}
```
After that you have to restart the fog05 network and runtime plugins in the nodes.
#### Example NS
Here you can find and example of network service that can be instantiated to the Eclipse fog05 VIM using OSM. The network service is composed by a single VNF based on an Alpine Linux LXD image.
**`alpine-vnfd.yaml`**:
```yaml
vnfd:vnfd-catalog:
vnfd:
-id:alpine_vnfd
name:alpine_vnf
short-name:alpine_vnf
description:Simple VNF example with a Alpine
vendor:OSM
version:'1.0'
logo:alpine.jpg
connection-point:
-name:eth0
type:VPORT
vdu:
-id:alpine_vnfd-LXD
name:alpine_vnfd-LXD
description:alpine_vnfd-LXD
count:1
vm-flavor:
vcpu-count:1
memory-mb:256
storage-gb:1
image:alpine-lxd
interface:
-name:eth0
type:EXTERNAL
virtual-interface:
type:VIRTIO
bandwidth:'0'
vpci:0000:00:0a.0
external-connection-point-ref:eth0
mgmt-interface:
cp:eth0
```
**`alpine-ns.yaml`**:
```yaml
nsd:nsd-catalog:
nsd:
-id:alpine_nsd
name:alpine_ns
short-name:alpine_ns
description:Generated by OSM pacakage generator
vendor:OSM
version:'1.0'
constituent-vnfd:
-member-vnf-index:1
vnfd-id-ref:alpine_vnfd
vld:
### Networks for the VNFs
-id:alpine_nsd_vld1
name:alpine_nsd_vld1
short-name:alpine_nsd_vld1
type:ELAN
mgmt-network:'true'
vnfd-connection-point-ref:
-member-vnf-index-ref:1
vnfd-id-ref:alpine_vnfd
vnfd-connection-point-ref:eth0
```
## What if I do not have a VIM at hand? Use of sandboxes