11.4 Open Source MANO
11.4 Open Source MANO
Open
Source MANO (OSM) je projekt hostovaný ETSI pre vývoj Open Source NFV MANO
(Management and Orchestration) softvérového stacku kompatibilného s ETSI NFV. Open
Source MANO nie je kompletná NFV platforma ale len komunitou vyvíjaný tzv. E2E
Network Service Orchestrator (E2E NSO) pre telekomunikačné služby, ktorý je schopný
modelovať a automatizovať telekomunikačné služby s komplexnosťou a kvalite
potrebnej pre nasadenie v produkčnom prostredí. OSM neposkytuje všetky
funkčnosti NVF MANO podľa ETSI ale len funkcie orchestrátora a manažéra
VNF, ako je znázornené na Obr. 7.
Obr. 7 Vzťah medzi OSM a NFV MANO
OSM umožňuje realizovať jeden z hlavných cieľov NFV a to vytváranie sietí na požiadanie („Network as a Service“ alebo NaaS) a to buď na ich priame využitie poskytovateľom služby, alebo na ich potenciálnu komercializáciu tretím stranám.
V tomto zmysle OSM funguje ako NSO (Network Service Orchestrator), ktorého cieľom je poskytovať schopnosť vytvárať sieťové služby na požiadanie a vracať ID objektu služby, ktoré možno neskôr použiť ako obsluhu na riadenie celého životného cyklu a operácií sieťovej služby prostredníctvom následných volaní prostredníctvom severného OSM API.
OSM poskytuje dva typy služieb NaaS a to:
- sieťová služba (NS),
- inštancia sieťovej vrstvy (NSI) – bude vysvetlená neskôr.
OSM využíva služby z iných servisných platforiem služieb a riadi množstvo riadených funkcií, aby vytvorila svoje vlastné objekty služieb vyššej úrovne. OSM teda využíva služby poskytované platformou zodpovednou za virtuálnu infraštruktúru (na získanie VM atď.) a platformou zodpovednou za SDN (na získanie požadovaných interných pripojení) a po zostavení konfiguruje a monitoruje základné sieťové funkcie (VNF, PNF, HNF) s cieľom riadiť životný cyklus všetkých NS a NSI.
Podobne ako v prípade iných projektov, aj OSM môže byť inštalovaný viacerými spôsobmi. Preferovaný spôsob býva inštalácia OSM prostredníctvom LXD, Juju, docker CE a inicializáciou lokálneho Kubernetes klastra. Ďalším spôsobom je možnosť inštalovať OSM na lokálny alebo vzdialeny OpenStack a pod.
Po nainštalovaní je potrebné prepojiť OSM v manažérom virtuálnej infraštruktúry (VIM). Medzi najčastejšie volené možnosti patria:
- OpenStack,
- OpenVIM,
- VMware vCloud Director,
- Amazon Web Services (AWS),
- Microsoft Azure,
- Google Cloud Platform.
Z uvedených možností bola ukončená podpora pre OpenVIM a VMware vCloud Director. Ich použitie je naďalej možné, ale neodporúča sa.
V prípade VNF je možné použiť VNF od dodávateľa danej technológie (napr. Ericsson), konzorcií a projektov (napr. Open RAN) alebo GitLabu OSM. [x[MM1] ]
Príklad vytvorenia sieťovej funkcie, ktorá bude smerovať pakety sieťou inou cestou, ako je uvedená v smerovacej tabuľke pre danú cieľovú IP adresu. V príklade sú použite tri sieťové funkcie (src_vnfd, dest_vnfd a mid_vnfd) a jedna sieťová služba (sfc_nsd), ktorých popisy (vnfd a nsd) sú dostupné v repository na GitLabe OSM.
Všetky VNF majú jediné rozhranie (eth0-ext) a špecifikáciu vCPU (1), RAM (1 GB), disk (10 GB) a názov obrazu (bionic) (viď Obr. 8).
Obr. 8 Špecifikácie použitých VNF
Sieťová služba má tri VNF. NS deskriptor špecifikuje pre VNF-FG parametre ako atribúty zhody (zdrojová ip adresa, cieľová ip adresa, protokol, zdrojový port, cieľový port), rozhranie vstupného bodu pripojenia (paketový vstup) a rozhranie výstupného spojovacieho bodu (paketový výstup). Obr. 9 ukazuje sfc_nsd a reťazenie služieb VNF. Popis danej sieťovej funkcie je uvedený na Obr. 10
Obr. 9 Prepojenie VNF v rámci sieťovej služby.
vnffgd:
- id:
vnffg1
vnf-profile-id:
- vnf2
nfp-position-element:
- id:
test
nfpd:
- id:
forwardingpath1
position-desc-id:
- id:
position1
nfp-position-element-id:
-
test
match-attributes:
- id: rule1_80
ip-proto: 6
source-ip-address: 20.20.20.10
destination-ip-address:
20.20.20.30
source-port: 0
destination-port: 80
constituent-base-element-id: vnf1
constituent-cpd-id: eth0-ext
cp-profile-id:
- id: cpprofile2
constituent-profile-elements:
-
id: cp1
order: 0
constituent-base-element-id: vnf2
ingress-constituent-cpd-id: eth0-ext
egress-constituent-cpd-id: eth0-ext
Obr. 10 Deskriptor VNF-FG
Postup vytvorenia požadovanej NS je možné vykonať nasledovnými príkazmi v 3 krokoch:
1. Lokalizujte deskriptory:
git clone --recursive
https://osm.etsi.org/gitlab/vnf-onboarding/osm-packages.git
2. Načítajte ich:
cd osm-packages
osm vnfpkg-create src_vnfd
osm vnfpkg-create mid_vnfd
osm vnfpkg-create dest_vnfd
osm nspkg-create sfc_nsd
3. Spustite NS:
osm ns-create
--ns_name sfc --nsd_name sfc_nsd --vim_account
<VIM_ACCOUNT_NAME>|<VIM_ACCOUNT_ID>
osm ns-list