blob: e68aa59721eb46badf0968b57a2f87948807736f [file] [log] [blame]
Bin Yang7882e502018-10-10 04:24:35 +00001..
2 This work is licensed under a Creative Commons Attribution 4.0
3 International License.
4
5================================
Bin Yangc8d753e2018-11-01 12:38:54 +00006MultiCloud API v1 Specification
Bin Yang7882e502018-10-10 04:24:35 +00007================================
8
9The is the specification for MultiCloud API version v1.
10
11Note: "MultiCloud API Specification V1" refers to the specification for MultiCloud API version v0
12
13API Catalog
14===========
15
161. **Scope**
17^^^^^^^^^^^^
18
19The scope of the present document is to describe the MutliCloud NorthBound API
20specification.
21
222. **Terms, Definitions and Abbreviations**
23^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
24
25For the purposes of the present document, the following abbreviations
26apply:
27
28===================== =========================================================
29Abbreviation Description
30===================== =========================================================
31NFVO Network Functions Virtualization Orchestrator
32VNFM Virtual Network Function Management
33VIM Virtualized Infrastructure Manager
34MultiVIM/MultiCloud MultVIM driver services for OPEN-O to drive VIM instances
35===================== =========================================================
36
373. **Image Management**
38^^^^^^^^^^^^^^^^^^^^^^^
39
403.1. **Create Image**
41---------------------
42
43===================== =========================================================
44IF Definition Description
45===================== =========================================================
46URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/images
47Operation POST
48Direction NSLCM->MULTIVIM
49Description Create Image and Upload the image file to the VIM
50===================== =========================================================
51
523.1.1. **Request**
53>>>>>>>>>>>>>>>>>>
54
55================ ========= ============ ======== ================================
56Parameter Qualifier Cardinality Content Description
57================ ========= ============ ======== ================================
58name M 1 String Image Name
59imagePath M 1 String Image Local Path from catalog
60imageType M 1 String Image Type
61 ami, ari, aki, vhd, vhdx, vmdk, raw, qcow2, vdi, iso
62visibility O 1 string Visibility for this image.
63 public, private, shared, or community
64containerFormat M 1 string ami,ari,aki,bare,ovf,ova, docker
65properties O 0..N List Examples:--property vmware_disktype=streamOptimized --property vmware_adaptertype="lsiLogic"
66================ ========= ============ ======== ================================
67
68
69::
70
71 {
72
73 "imageName": "cirros",
74
75 "imagePath": "/home/cirros.qcow2",
76
77 "imageType": "qcow2"
78
79 "containerFormat":"bare"
80
81 }
82
833.1.2. **Response**
84>>>>>>>>>>>>>>>>>>>
85
86================ ========= ============ ======== ================================
87Parameter Qualifier Cardinality Content Description
88================ ========= ============ ======== ================================
89 id M 1 String Image UUID in the VIM
90 name M 1 String Image Name
91 returnCode M 1 Int 0: Already exist 1: Newly created
92 imageType M 1 String Image Type
93 ami, ari, aki, vhd, vhdx, vmdk, raw, qcow2, vdi, iso
94containerFormat M 1 string ami,?ari,?aki,?bare,?ovf,?ova, ?docker
95 visibility O 1 string Visibility for this image.
96 public, private, shared, or community
97 properties O 0..N List of key-value pairs
98 vimid M 1 String vim id
99 vimName O 1 string vim name
100 cloud-owner M 1 String cloud owner
101cloud-region-id M 1 string cloud region id
102 tenantId M 1 String Tenant UUID
103================ ========= ============ ======== ================================
104
105*202*: accepted
106
107500: failed
108
109::
110
111 {
112 "id": "3c9eebdbbfd345658269340b9ea6fb73",
113 "name": "cirros",
114 "returnCode": 1
115 }
116
1173.2. **Delete Image**
118---------------------
119
120===================== =========================================================
121IF Definition Description
122===================== =========================================================
123URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/images/{imageId}
124Operation Delete
125Direction NSLCM->MULTIVIM
126Description Delete Image
127===================== =========================================================
128
1293.2.1. **Request**
130>>>>>>>>>>>>>>>>>>
131
132N/A
133
1343.2.2. **Response**
135>>>>>>>>>>>>>>>>>>>
136
137204: no content
138
1393.3. **List Images**
140--------------------
141
142===================== =========================================================
143IF Definition Description
144===================== =========================================================
145URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/images
146Operation GET
147Direction NSLCM->MULTIVIM
148Description Query Image list
149===================== =========================================================
150
1513.3.1. **Request**
152>>>>>>>>>>>>>>>>>>
153
154============== ========= ============ ======== ================================
155Parameter Qualifier Cardinality Content Description
156============== ========= ============ ======== ================================
157 limit O 1 integer Requests a page size of items. Returns a number of items up to a limit value. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.
158 marker O 1 string The ID of the last-seen item. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.
159 name O 1 String Filters the response by a name, as a string. A valid value is the name of an image
160============== ========= ============ ======== ================================
161
162
1633.3.2. **Response**
164>>>>>>>>>>>>>>>>>>>
165
166
167================ ========= ============ ======== ================================
168Parameter Qualifier Cardinality Content Description
169================ ========= ============ ======== ================================
170images M 0..N List Image List
171
172id M 1 String Image ID
173
174size M 1 int Image Size
175
176name M 1 String Image Name
177
178status M 1 String Image Status
179
180imageType M 1 String Image Type
181 ami, ari, aki, vhd, vhdx, vmdk, raw, qcow2, vdi, iso
182containerFormat M 1 string ami,?ari,?aki,?bare,?ovf,?ova, ?docker
183visibility O 1 string Visibility for this image.
184 public, private, shared, or community
185vimId M 1 String vim id
186vimName O 1 string vim name
187cloud-owner M 1 String cloud owner
188cloud-region-id M 1 string cloud region id
189tenantId M 1 String Tenant UUID
190================ ========= ============ ======== ================================
191
192200: ok
193
194500: failed
195
196::
197
198 {
199 "vimid": "",
200 "vimname": "",
201 "imageList": [{
202 "status": "active",
203 "id": "5e2757c1-f846-4727-915c-9a872553ed75",
204 "size": 862016,
205 "name": "vim-plus-cgsl40g-z.qcow2"
206 }]
207 }
208
209
2103.4. **Get Image**
211------------------
212
213===================== =========================================================
214IF Definition Description
215===================== =========================================================
216URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/images/{imageid}
217Operation GET
218Direction NSLCM->MULTIVIM
219Description Query Image Information
220===================== =========================================================
221
222
223
2243.4.1. **Request**
225>>>>>>>>>>>>>>>>>>
226
227N/A
228
2293.4.2. **Response**
230>>>>>>>>>>>>>>>>>>>
231
232================ ========= ============ ======== ================================
233Parameter Qualifier Cardinality Content Description
234================ ========= ============ ======== ================================
235 id M 1 String Image ID
236 size M 1 int Image Size
237 name M 1 String Image Name
238 status M 1 String Image Status
239 imageType M 1 String Image Type
240 ami, ari, aki, vhd, vhdx, vmdk, raw, qcow2, vdi, iso
241containerFormat M 1 string ami,?ari,?aki,?bare,?ovf,?ova, ?docker
242 visibility O 1 string Visibility for this image.
243 public, private, shared, or community
244 vimId M 1 String vim id
245 vimName M 1 string vim name
246 cloud-owner M 1 String cloud owner
247cloud-region-id M 1 string cloud region id
248 tenantId M 1 String Tenant UUID
249================ ========= ============ ======== ================================
250
251200: ok
252
253500: failed
254
255::
256
257 {
258 "vimid": "",
259 "vimname": "",
260 "status": "active",
261 "id": "5e2757c1-f846-4727-915c-9a872553ed75",
262 "size": 862016,
263 "name": "vim-plus-cgsl40g-z.qcow2"
264 }
265
2664. **Network Management**
267^^^^^^^^^^^^^^^^^^^^^^^^^
268
2694.1. **Create Network**
270-----------------------
271
272===================== =========================================================
273IF Definition Description
274===================== =========================================================
275URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/networks
276Operation POST
277Direction VNFLCM,NSLCM->MULTIVIM
278Description Create network on the VIM
279===================== =========================================================
280
2814.1.1. **Request**
282>>>>>>>>>>>>>>>>>>
283
284================ ========= ============ ======== ================================
285Parameter Qualifier Cardinality Content Description
286================ ========= ============ ======== ================================
287 name M 1 String Logical network name
288 shared M 1 boolean Whether to share(1:sharing;0:private)
289vlanTransparent O 1 boolean Whether to support VLAN pass through(1:true;0:false)
290 networkType O 1 String Network type
291 flat, vlan, vxlan, gre, portgroup
292 segmentationId O 1 Int id of paragraph
293physicalNetwork O 1 string The physical network where this network should be implemented. The Networking API v2.0 does not provide a way to list available physical networks. For example, the Open vSwitch plug-in configuration file defines a symbolic name that maps to specific bridges on each compute host.
294 routerExternal O 1 boolean Indicates whether this network can provide floating IPs via a router.
295================ ========= ============ ======== ================================
296
297
298::
299
300 {
301 "tenant": "tenant1",
302 "networkName": "ommnet",
303 "shared": 1,
304 "vlanTransparent": 1,
305 "networkType": "vlan",
306 "segmentationId": 202,
307 "physicalNetwork": "ctrl",
308 "routerExternal": 0
309 }
310
3114.1.2. **Response**
312>>>>>>>>>>>>>>>>>>>
313
314================ ========= ============ ======== ================================
315Parameter Qualifier Cardinality Content Description
316================ ========= ============ ======== ================================
317status M 1 string Network status
318id M 1 string Network id
319name M 1 string Network name
320tenantId M 1 String Tenant UUID
321segmentationId O 1 int Segmentation id
322networkType O 1 string Network type
323physicalNetwork O 1 string The physical network where this network should be implemented. The Networking API v2.0 does not provide a way to list available physical networks. For example, the Open vSwitch plug-in configuration file defines a symbolic name that maps to specific bridges on each compute host.
324vlanTransparent O 1 boolean Whether to support VLAN pass through(1:true;0:false)
325shared O 1 boolean Whether to share(1:sharing;0:private)
326routerExternal O 1 boolean Indicates whether this network can provide floating IPs via a router.
327returnCode M 1 int 0: Already exist 1: Newly created
328vimId M 1 String vim id
329vimName O 1 string vim name
330cloud-owner M 1 String cloud owner
331cloud-region-id M 1 string cloud region id
332================ ========= ============ ======== ================================
333
334202: accepted
335
336500: failed
337
338::
339
340 {
341 "returnCode": 0,
342 "vimId": "11111",
343 "vimName": "11111",
344 "status": "ACTIVE",
345 "id": "3c9eebdbbfd345658269340b9ea6fb73",
346 "name": "net1",
347 "tenant": "tenant1",
348 "networkName": "ommnet",
349 "shared": 1,
350 "vlanTransparent": 1,
351 "networkType": "vlan",
352 "segmentationId": 202,
353 "physicalNetwork": "ctrl",
354 "routerExternal": 0
355 }
356
3574.2. **Delete Network**
358-----------------------
359
360===================== =========================================================
361IF Definition Description
362===================== =========================================================
363URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/networks/{networkId}
364Operation Delete
365Direction VNFLCM,NSLCM->MULTIVIM
366Description Delete a network on the VIM
367===================== =========================================================
368
3694.2.1. **Request**
370>>>>>>>>>>>>>>>>>>
371
372N/A
373
3744.2.2. **Response**
375>>>>>>>>>>>>>>>>>>>
376
377204: no content
378
3794.3. **List Network**
380---------------------
381
382===================== =========================================================
383IF Definition Description
384===================== =========================================================
385URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/networks
386Operation GET
387Direction VNFLCM,NSLCM->MULTIVIM
388Description List networks on the VIM
389===================== =========================================================
390
3914.3.1. **Query**
392>>>>>>>>>>>>>>>>
393
394================ ========= ============ ======== ================================
395Parameter Qualifier Cardinality Content Description
396================ ========= ============ ======== ================================
397name O 1 String Filters the response by a name, as a string. A valid value is the name of a network
398================ ========= ============ ======== ================================
399
4004.3.2. **Response**
401>>>>>>>>>>>>>>>>>>>
402
403================ ========= ============ ======== ================================
404Parameter Qualifier Cardinality Content Description
405================ ========= ============ ======== ================================
406vimId M 1 String vim id
407vimName O 1 string vim name
408cloud-owner M 1 String cloud owner
409cloud-region-id M 1 string cloud region id
410networks 0..N List Network list
411status M 1 string Network status
412id M 1 string Network id
413name M 1 string Network name
414tenantId M 1 String Tenant UUID
415segmentationId O 1 int Segmentation id
416networkType O 1 string Network type
417physicalNetwork O 1 string The physical network where this network should be implemented. The Networking API v2.0 does not provide a way to list available physical networks. For example, the Open vSwitch plug-in configuration file defines a symbolic name that maps to specific bridges on each compute host.
418vlanTransparent O 1 boolean Whether to support VLAN pass through(1:true;0:false)
419shared O 1 boolean Whether to share(1:sharing;0:private)
420routerExternal O 1 boolean Indicates whether this network can provide floating IPs via a router
421================ ========= ============ ======== ================================
422
423200: ok
424
425500: failed
426
427::
428
429 {
430
431 "vimId": "11111",
432
433 "vimName": "111",
434
435 "networks":
436
437 [{
438
439 "status": "ACTIVE",
440
441 "id": "3c9eebdbbfd345658269340b9ea6fb73",
442
443 "name": "net1",
444
445 "tenant": "tenant1",
446
447 "networkName": "ommnet",
448
449 "shared": 1,
450
451 "vlanTransparent": 1,
452
453 "networkType": "vlan",
454
455 "segmentationId": 202,
456
457 "physicalNetwork ": "ctrl",
458
459 "routerExternal ": 0
460
461 }]
462
463 }
464
4654.4. **Get Network**
466--------------------
467
468===================== =========================================================
469IF Definition Description
470===================== =========================================================
471URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/networks/{networkId}
472Operation get
473Direction VNFLCM,NSLCM->MULTIVIM
474Description Get a network on the VIM
475===================== =========================================================
476
4774.4.1. **Request**
478>>>>>>>>>>>>>>>>>>
479
480N/A
481
4824.4.2. **Response**
483>>>>>>>>>>>>>>>>>>>
484
485================ ========= ============ ======== ================================
486Parameter Qualifier Cardinality Content Description
487================ ========= ============ ======== ================================
488 status M 1 string Network status
489 id M 1 string Network id
490 name M 1 string Network name
491 tenantId M 1 String Tenant UUID
492 segmentationId O 1 int Segmentation id
493 networkType O 1 string Network type
494physicalNetwork O 1 string The physical network where this network should be implemented. The Networking API v2.0 does not provide a way to list available physical networks. For example, the Open vSwitch plug-in configuration file defines a symbolic name that maps to specific bridges on each compute host.
495vlanTransparent O 1 boolean Whether to support VLAN pass through(1:true;0:false)
496 shared O 1 boolean Whether to share(1:sharing;0:private)
497 routerExternal O 1 boolean Indicates whether this network can provide floating IPs via a router.
498 returnCode M 1 int 0: Already exist 1: Newly created
499 vimId M 1 String vim id
500 vimName O 1 string vim name
501 cloud-owner M 1 String cloud owner
502cloud-region-id M 1 string cloud region id
503================ ========= ============ ======== ================================
504
505200: ok
506
507500: failed
508
509::
510
511 {
512
513 "vimId":"11111",
514
515 "vimName":"11111",
516
517 "status": "ACTIVE",
518
519 "id": "3c9eebdbbfd345658269340b9ea6fb73",
520
521 "name": "net1",
522
523 "tenant": "tenant1",
524
525 "networkName": "ommnet",
526
527 "shared": 1,
528
529 "vlanTransparent": 1,
530
531 "networkType":"vlan",
532
533 "segmentationId":202,
534
535 "physicalNetwork ":"ctrl",
536
537 "routerExternal ":0
538
539 }
540
5415. **Subnetwork Management**
542^^^^^^^^^^^^^^^^^^^^^^^^^^^^
543
5445.1. **Create Subnets**
545-----------------------
546
547
548===================== =========================================================
549IF Definition Description
550===================== =========================================================
551URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/subnets
552Operation POST
553Direction VNFLCM,NSLCM->MULTIVIM
554Description Create subnet on the VIM
555===================== =========================================================
556
5575.1.1. **Request**
558>>>>>>>>>>>>>>>>>>
559
560================ ========= ============ ======== ================================
561Parameter Qualifier Cardinality Content Description
562================ ========= ============ ======== ================================
563 networkId M 1 String Network Id
564 name M 1 String SubnetName
565 cidr M 1 String Subnet cidr
566 ipVersion M 1 Int Ip type
567 4,6
568 enableDhcp O 1 boolean Whether to allow
569 1: yes;0: no
570 gatewayIp O 1 String Gateway ip
571dnsNameservers O 1..n List List of servers
572 hostRoutes O 1..n List List of routes
573allocationPools O 1..n list List of allocation
574 -->allocation
575 -->start O 1 String Start ip
576 -->end O 1 String End ip
577================ ========= ============ ======== ================================
578
579::
580
581 {
582
583 "tenant": "tenant1",
584
585 "network_id": "d32019d3-bc6e-4319-9c1d-6722fc136a22",
586
587 "subnetName": "subnet1",
588
589 "cidr": "10.43.35.0/24",
590
591 "ipVersion": 4,
592
593 "enableDhcp": 1,
594
595 "gatewayIp": "10.43.35.1",
596
597 "dnsNameservers": [],
598
599 "allocationPools": [{
600
601 "start": "192.168.199.2",
602
603 "end": "192.168.199.254"
604
605 }],
606
607 "hostRoutes": []
608
609 }
610
6115.1.2. **Response**
612>>>>>>>>>>>>>>>>>>>
613
614================ ========= ============ ======== ================================
615Parameter Qualifier Cardinality Content Description
616================ ========= ============ ======== ================================
617 returnCode M 1 int 0: Already exist 1: Newly created
618 vimId M 1 String vim id
619 vimName O 1 string vim name
620 cloud-owner M 1 String cloud owner
621cloud-region-id M 1 string cloud region id
622 status M 1 string subnetwork status
623 id M 1 string subNetwork id
624 tenantId M 1 String Tenant UUID
625 networkId O 1 String Network Id
626 networkName O 1 String Network Name
627 name M 1 String SubnetName
628 cidr M 1 String Subnet cidr
629 ipVersion M 1 Int Ip type
630 4,6
631 enableDhcp O 1 boolean Whether to allow
632 1: yes;0: no
633 gatewayIp O 1 String Gateway ip
634dnsNameservers O 1..n List List of servers
635 hostRoutes O 1.. List List of routes
636allocationPools O 1..n List list of allocation
637 -->allocation
638 -->start O 1 String Start ip
639 -->end O 1 String End ip
640================ ========= ============ ======== ================================
641
642202: accepted
643
644500: failed
645
646::
647
648 {
649
650 "returnCode": 0,
651
652 "vimId": "11111",
653
654 "vimName": "11111",
655
656 "status": " ACTIVE",
657
658 "id": " d62019d3-bc6e-4319-9c1d-6722fc136a23",
659
660 "tenant": "tenant1",
661
662 "network_id": "d32019d3-bc6e-4319-9c1d-6722fc136a22",
663
664 "name": "subnet1",
665
666 "cidr": "10.43.35.0/24",
667
668 "ipVersion": 4,
669
670 "enableDhcp": 1,
671
672 "gatewayIp": "10.43.35.1",
673
674 "dnsNameservers": [],
675
676 "allocationPools": [{
677
678 "start": "192.168.199.2",
679
680 "end": "192.168.199.254"
681
682 }],
683
684 "hostRoutes": []
685
686 }
687
6885.2. **Delete Subnets**
689-----------------------
690
691===================== =========================================================
692IF Definition Description
693===================== =========================================================
694URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/subnets/{subnetId}
695Operation Delete
696Direction VNFLCM,NSLCM->MULTIVIM
697Description Delete a subnet on the VIM
698===================== =========================================================
699
7005.2.1. **Request**
701>>>>>>>>>>>>>>>>>>
702
703N/A
704
7055.2.2. **Response**
706>>>>>>>>>>>>>>>>>>>
707
708204: no content
709
7105.3. **List Subnets**
711---------------------
712
713===================== =========================================================
714IF Definition Description
715===================== =========================================================
716URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/subnets
717Operation Get
718Direction VNFLCM,NSLCM->MULTIVIM
719Description List subnets on the VIM
720===================== =========================================================
721
7225.3.1. **Query**
723>>>>>>>>>>>>>>>>
724
725msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/subnets?{……}
726
727================ ========= ============ ======== ================================
728Parameter Qualifier Cardinality Content Description
729================ ========= ============ ======== ================================
730 name O 1 String Filters fields of the response by a name, as a string. A valid value is the name of a subnet
731================ ========= ============ ======== ================================
732
7335.3.2. **Response**
734>>>>>>>>>>>>>>>>>>>
735
736================ ========= ============ ======== ================================
737Parameter Qualifier Cardinality Content Description
738================ ========= ============ ======== ================================
739 vimId M 1 String vim id
740 vimName O 1 string vim name
741 cloud-owner M 1 String cloud owner
742cloud-region-id M 1 string cloud region id
743 subnets M 0..N List Network list
744 status 1 string subnetwork status
745 id 1 string subNetwork id
746 tenantId M 1 String Tenant UUID
747 networkId O 1 String Network Id
748 networkName O 1 String Network Name
749 name M 1 String SubnetName
750 cidr M 1 String Subnet cidr
751 ipVersion M 1 Int Ip type
752 4,6
753 enableDhcp O 1 boolean Whether to allow
754 1: yes;0: no
755 gatewayIp O 1 String Gateway ip
756dnsNameservers O 1..n List List of servers
757 hostRoutes O 1.. List List of routes
758allocationPools O 1..n List list of allocation
759 -->allocation
760 -->start O 1 String Start ip
761 -->end O 1 String End ip
762================ ========= ============ ======== ================================
763
764**200: ok**
765
766**500: failed**
767
768::
769
770 {
771
772 "vimId": "11111",
773
774 "vimName": "11111",
775
776 "subnets": [
777
778 {
779
780 "status": " ACTIVE",
781
782 "id": " d62019d3-bc6e-4319-9c1d-6722fc136a23",
783
784 "tenant": "tenant1",
785
786 "network_id": "d32019d3-bc6e-4319-9c1d-6722fc136a22",
787
788 "name": "subnet1",
789
790 "cidr": "10.43.35.0/24",
791
792 "ipVersion": 4,
793
794 "enableDhcp": 1,
795
796 "gatewayIp": "10.43.35.1",
797
798 "dnsNameservers": [],
799
800 "allocationPools": [{
801
802 "start": "192.168.199.2",
803
804 "end": "192.168.199.254"
805
806 }],
807
808 "hostRoutes": []
809
810 }
811
812 ]
813
814 }
815
8165.4. **Get Subnets**
817--------------------
818
819===================== =========================================================
820IF Definition Description
821===================== =========================================================
822URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/subnets/{subnetid}
823Operation GET
824Direction VNFLCM,NSLCM->MULTIVIM
825Description Get subnet on the VIM
826===================== =========================================================
827
8285.4.1. **Request**
829>>>>>>>>>>>>>>>>>>
830
831N/A
832
8335.4.2. **Response**
834>>>>>>>>>>>>>>>>>>>
835
836================ ========= ============ ======== ================================
837Parameter Qualifier Cardinality Content Description
838================ ========= ============ ======== ================================
839 vimId M 1 String vim id
840 vimName O 1 string vim name
841 cloud-owner M 1 String cloud owner
842cloud-region-id M 1 string cloud region id
843 status 1 string subnetwork status
844 id 1 string subNetwork id
845 tenantId M 1 String Tenant UUID
846 networkId O 1 String Network Id
847 networkName O 1 String Network Name
848 name M 1 String SubnetName
849 cidr M 1 String Subnet cidr
850 ipVersion M 1 Int Ip type
851 4,6
852 enableDhcp O 1 boolean Whether to allow
853 1: yes;0: no
854 gatewayIp O 1 String Gateway ip
855dnsNameservers O 1..n List List of servers
856 hostRoutes O 1.. List List of routes
857allocationPools O 1..n List list of allocation
858 -->allocation
859 -->start O 1 String Start ip
860 -->end O 1 String End ip
861================ ========= ============ ======== ================================
862
863202: accepted
864
865500: failed
866
867::
868
869 {
870
871 "status": " ACTIVE",
872
873 "id": " d62019d3-bc6e-4319-9c1d-6722fc136a23",
874
875 "tenant": "tenant1",
876
877 "network_id": "d32019d3-bc6e-4319-9c1d-6722fc136a22",
878
879 "name": "subnet1",
880
881 "cidr": "10.43.35.0/24",
882
883 "ipVersion": 4,
884
885 "enableDhcp": 1,
886
887 "gatewayIp": "10.43.35.1",
888
889 "dnsNameservers": [],
890
891 "allocationPools": [{
892
893 "start": "192.168.199.2",
894
895 "end": "192.168.199.254"
896
897 }],
898
899 "hostRoutes": []
900
901 }
902
9036. **Virtual Port**
904^^^^^^^^^^^^^^^^^^^
905
9066.1. **Create Virtual Port**
907----------------------------
908
909===================== =========================================================
910IF Definition Description
911===================== =========================================================
912URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/ports
913Operation POST
914Direction VNFLCM->MULTIVIM
915Description Create a vport on the VIM
916===================== =========================================================
917
9186.1.1. **Request**
919>>>>>>>>>>>>>>>>>>
920
921================ ========= ============ ======== ================================
922Parameter Qualifier Cardinality Content Description
923================ ========= ============ ======== ================================
924 networkId M 1 string Network UUID
925 subnetId O 1 string Subnet UUID
926 name M 1 string Port name
927 macAddress O 1 string Mac address
928 ip O 1 string Ip address
929 vnicType O 1 string Virtual network card type,
930 the value of three kinds of normal/direct/macvtap
931 securityGroups O 1 string The IDs of security groups applied to the port
932================ ========= ============ ======== ================================
933
9346.1.2. **Response**
935>>>>>>>>>>>>>>>>>>>
936
937================ ========= ============ ======== ================================
938Parameter Qualifier Cardinality Content Description
939================ ========= ============ ======== ================================
940 returnCode M 1 int 0: Already exist 1: Newly created
941 vimId M 1 String vim id
942 vimName O 1 string vim name
943 cloud-owner M 1 String cloud owner
944cloud-region-id M 1 string cloud region id
945 status M 1 string status
946 id M 1 string Port Id
947 name M 1 string Port name
948 tenantId M 1 String Tenant UUID
949 networkName M 1 string Network name
950 networkId M 1 string Network Id
951 subnetName M 1 string Subnet name
952 subnetId M 1 string SubnetId
953 macAddress O 1 string Mac address
954 ip O 1 string Ip address
955 vnicType O 1 string Virtual network card type,
956 the value of three kinds of normal/direct/macvtap
957 securityGroups O 1 string List of security group names.
958================ ========= ============ ======== ================================
959
9606.2. **Delete Virtual Port**
961----------------------------
962
963===================== =========================================================
964IF Definition Description
965===================== =========================================================
966URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/ports/{portid}
967Operation POST
968Direction VNFLCM->MULTIVIM
969Description Delete a vport on the VIM
970===================== =========================================================
971
9726.2.1. **Request**
973>>>>>>>>>>>>>>>>>>
974
975N/A
976
9776.2.2. **Response**
978>>>>>>>>>>>>>>>>>>>
979
980204: no content
981
9826.3. **List Virtual Port**
983--------------------------
984
985===================== =========================================================
986IF Definition Description
987===================== =========================================================
988URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/ports
989Operation GET
990Direction VNFLCM->MULTIVIM
991Description List vports on the VIM
992===================== =========================================================
993
9946.3.1. **Query**
995>>>>>>>>>>>>>>>>
996
997================ ========= ============ ======== ================================
998Parameter Qualifier Cardinality Content Description
999================ ========= ============ ======== ================================
1000 name M 1 string Port name to filter out list of virtual ports
1001================ ========= ============ ======== ================================
1002
10036.3.2. **Response**
1004>>>>>>>>>>>>>>>>>>>
1005
1006================ ========= ============ ======== ================================
1007Parameter Qualifier Cardinality Content Description
1008================ ========= ============ ======== ================================
1009 vimId M 1 String vim id
1010 vimName O 1 string vim name
1011 cloud-owner M 1 String cloud owner
1012cloud-region-id M 1 string cloud region id
1013 tenantId M 1 String Tenant UUID
1014 Ports M 0..N List ports
1015 id M 1 string Port Id
1016 name M 1 string Port name
1017 status M 1 string status
1018 networkName O 1 string Network name
1019 networkId M 1 string Network Id
1020 subnetName O 1 string Subnet name
1021 subnetId M 1 string SubnetId
1022 macAddress O 1 string Mac address
1023 ip O 1 string Ip address
1024 vnicType O 1 string Virtual network card type,
1025 the value of three kinds of normal/direct/macvtap
1026 securityGroups O 1 string List of security group names.
1027================ ========= ============ ======== ================================
1028
1029**200: ok**
1030
1031**500: failed**
1032
1033
10346.4. **Get Virtual Port**
1035-------------------------
1036
1037===================== =========================================================
1038IF Definition Description
1039===================== =========================================================
1040URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/ports/{portid}
1041Operation GET
1042Direction VNFLCM->MULTIVIM
1043Description Get a vport on the VIM
1044===================== =========================================================
1045
10466.4.1. **Request**
1047>>>>>>>>>>>>>>>>>>
1048
1049N/A
1050
10516.4.2. **Response**
1052>>>>>>>>>>>>>>>>>>>
1053
1054=============== ========= ============ ======== =================================
1055Parameter Qualifier Cardinality Content Description
1056=============== ========= ============ ======== =================================
1057 vimId M 1 String vim id
1058 vimName O 1 string vim name
1059 cloud-owner M 1 String cloud owner
1060cloud-region-id M 1 string cloud region id
1061 status M 1 string status
1062 id M 1 string Port Id
1063 name M 1 string Port name
1064 tenantId M 1 String Tenant UUID
1065 networkName M 1 string Network name
1066 networkId M 1 string Network Id
1067 subnetName M 1 string Subnet name
1068 subnetId M 1 string SubnetId
1069 macAddress O 1 string Mac address
1070 ip O 1 string Ip address
1071 vnicType O 1 string Virtual network card type,
1072 the value of three kinds of normal/direct/macvtap
1073securityGroups O 1 string List of security group names
1074=============== ========= ============ ======== =================================
1075
1076**200: ok**
1077
1078**500: failed**
1079
1080
10817. **Server Management**
1082^^^^^^^^^^^^^^^^^^^^^^^^
1083
10847.1. **Create Server**
1085----------------------
1086
1087===================== =========================================================
1088IF Definition Description
1089===================== =========================================================
1090URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/servers
1091Operation POST
1092Direction VNFLCM->MULTIVIM
1093Description Create a vserver on the VIM
1094===================== =========================================================
1095
10967.1.1. **Request**
1097>>>>>>>>>>>>>>>>>>
1098
1099================ ========= ============ ======== ================================
1100Parameter Qualifier Cardinality Content Description
1101================ ========= ============ ======== ================================
1102 name M 1 string server name
1103 boot M 1 String Start parameters
1104 nicArray O 1..n List List
1105 contextArray O 1..n list list of context
1106 volumeArray O 1..n List List
1107availabilityZone O 1 string Usable field
1108 flavorId M 1 String server Flavor id
1109 metadata O 1 List Metadata key and value pairs. The maximum size of the metadata key and value is 255 bytes each.
1110 userdata O 1 string Configuration information or scripts to use upon launch. Must be Base64 encoded.
1111 NOTE: The ‘null’ value allowed in Nova legacy v2 API, but due to the strict input validation, it isn’t allowed in Nova v2.1 API.
1112 securityGroups O 1 List One or more security groups. Specify the name of the security group in the name attribute. If you omit this attribute, the API creates the server in the default security group.
1113 serverGroup O 1 string the ServerGroup for anti-affinity and affinity
1114================ ========= ============ ======== ================================
1115
1116
1117**boot**
1118
1119================ ========= ============ ======== ================================
1120Parameter Qualifier Cardinality Content Description
1121================ ========= ============ ======== ================================
1122 type M 1 int Startup mode
1123 1. boot from the volume
1124 2. boot from image
1125 volumeId O 1 string Volume Id(type=1)
1126 imageId O 1 String ImageId(type=2)
1127================ ========= ============ ======== ================================
1128
1129**contextArray**
1130
1131================ ========= ============ ======== ================================
1132Parameter Qualifier Cardinality Content Description
1133================ ========= ============ ======== ================================
1134 fileName M 1 String Injection file name
1135 fileData M 1 string Injection file content (injection file content inside the <mac>$MAC\_1</mac> $MAC\_1 need to be replaced by the MAC address, of which 1 is NIC index. )
1136================ ========= ============ ======== ================================
1137
1138
1139**volumeArray**
1140
1141================ ========= ============ ======== ================================
1142Parameter Qualifier Cardinality Content Description
1143================ ========= ============ ======== ================================
1144 volumeId M 1 String Volume Id
1145================ ========= ============ ======== ================================
1146
1147**nicArray**
1148
1149================ ========= ============ ======== ================================
1150Parameter Qualifier Cardinality Content Description
1151================ ========= ============ ======== ================================
1152 portId M 1 String Port Id
1153================ ========= ============ ======== ================================
1154
Bin Yang7882e502018-10-10 04:24:35 +00001155
1156::
1157
1158 {
1159
1160 "tenant": "tenant1",
1161
1162 "name": "vm1",
1163
1164 "availabilityZone": "az1",
1165
1166 "flavorName": "vm_large",
1167
1168 "boot": {
1169
1170 "type": 1,
1171
1172 " volumeName": "volume1"
1173
1174 },
1175
1176 "flavorId": "vm_large_134213",
1177
1178 "contextArray": [{
1179
1180 "fileName": "test.yaml",
1181
1182 "fileData": "…."
1183
1184 }],
1185
1186 "volumeArray": [{
1187
1188 "volumeName": "vol1",
1189
1190 }],
1191
1192 "nicArray": [{
1193
1194 "portId": "port_a"
1195
1196 }],
1197
Bin Yang0e8aea32018-11-16 10:09:08 +00001198 "metada": {
Bin Yang7882e502018-10-10 04:24:35 +00001199
Bin Yang0e8aea32018-11-16 10:09:08 +00001200 "foo": "foo value"
Bin Yang7882e502018-10-10 04:24:35 +00001201
Bin Yang0e8aea32018-11-16 10:09:08 +00001202 },
Bin Yang7882e502018-10-10 04:24:35 +00001203
1204 "userdata": "abcdedf"
1205
1206 }
1207
12087.1.2. **Response**
1209>>>>>>>>>>>>>>>>>>>
1210
1211================ ========= ============ ======== ================================
1212Parameter Qualifier Cardinality Content Description
1213================ ========= ============ ======== ================================
1214 vimId M 1 String vim id
1215 vimName O 1 string vim name
1216 cloud-owner M 1 String cloud owner
1217cloud-region-id M 1 string cloud region id
1218 returnCode 1 int 0: Already exist 1: Newly created
1219 id M 1 string server id
1220 name 1 string server name
1221 tenantId M 1 String Tenant UUID
1222 boot M 1 String Start parameters
1223 nicArray O 1..n List List
1224 volumeArray O 1..n List List
1225availabilityZone O 1 string Usable field
1226 flavorId M 1 String server Flavor
1227 metadata O 1 List Metadata key and value pairs. The maximum size of the metadata key and value is 255 bytes each.
1228 securityGroups O 1 List One or more security groups. Specify the name of the security group in the name attribute. If you omit this attribute, the API creates the server in the default security group.
1229 serverGroup O 1 string the ServerGroup for anti-affinity and affinity
1230 status M 1 string Server status,
1231 0:INACTIVE,1:ACTIVE,2:ERROR
1232================ ========= ============ ======== ================================
1233
1234
1235202: accepted
1236
1237500: failed
1238
1239::
1240
1241 {
1242
1243 "id": "3c9eebdbbfd345658269340b9ea6fb73",
1244
1245 "name": "vm1",
1246
1247 "returnCode": 1,
1248
1249 }
1250
12517.2. **Delete Server**
1252----------------------
1253
1254===================== =========================================================
1255IF Definition Description
1256===================== =========================================================
1257URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/servers/{serverid}
1258Operation DELETE
1259Direction VNFLCM,NSLCM->MULTIVIM
1260Description Delete a vserver on the VIM
1261===================== =========================================================
1262
12637.2.1. **Request**
1264>>>>>>>>>>>>>>>>>>
1265
1266N/A
1267
12687.2.2. **Response**
1269>>>>>>>>>>>>>>>>>>>
1270
1271204: no content
1272
12737.3. **List Server**
1274--------------------
1275
1276===================== =========================================================
1277IF Definition Description
1278===================== =========================================================
1279URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/servers
1280Operation GET
1281Direction VNFLCM,NSLCM->MULTIVIM
1282Description List vservers on the VIM
1283===================== =========================================================
1284
12857.3.1. **Request**
1286>>>>>>>>>>>>>>>>>>
1287
1288msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/vms?{……}
1289
1290================ ========= ============ ======== ================================
1291Parameter Qualifier Cardinality Content Description
1292================ ========= ============ ======== ================================
1293 name M 1 string server name
1294================ ========= ============ ======== ================================
1295
12967.3.2. **Response**
1297>>>>>>>>>>>>>>>>>>>
1298
1299================ ========= ============ ======== ================================
1300Parameter Qualifier Cardinality Content Description
1301================ ========= ============ ======== ================================
1302 vimId M 1 String vim id
1303 vimName O 1 string vim name
1304 cloud-owner M 1 String cloud owner
1305cloud-region-id M 1 string cloud region id
1306 servers M 1 array server list
1307 id M 1 string server id
1308 name M 1 string server name
1309 tenantId M 1 String Tenant UUID
1310 boot M 1 String Start parameters
1311 nicArray O 1..n List List
1312 volumeArray O 1..n List List
1313availabilityZone O 1 string Usable field
1314 flavorId M 1 String server Flavor
1315 metada O 1 keypair Metadata key and value pairs. The maximum size of the metadata key and value is 255 bytes each.
1316 securityGroups O 1 List One or more security groups. Specify the name of the security group in the name attribute. If you omit this attribute, the API creates the server in the default security group.
1317 serverGroup O 1 string the ServerGroup for anti-affinity and affinity
1318================ ========= ============ ======== ================================
1319
1320
1321200: ok
1322
1323500: failed
1324
13257.4. **Get Server**
1326-------------------
1327
1328===================== =========================================================
1329IF Definition Description
1330===================== =========================================================
1331URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/servers/{serverid}
1332Operation GET
1333Direction VNFLCM,NSLCM->MULTIVIM
1334Description Get a vserver on the VIM
1335===================== =========================================================
1336
13377.4.1. **Request**
1338>>>>>>>>>>>>>>>>>>
1339
1340N/A
1341
13427.4.2. **Response**
1343>>>>>>>>>>>>>>>>>>>
1344
1345================ ========= ============ ======== ================================
1346Parameter Qualifier Cardinality Content Description
1347================ ========= ============ ======== ================================
1348 vimId M 1 String vim id
1349 vimName O 1 string vim name
1350 cloud-owner M 1 String cloud owner
1351cloud-region-id M 1 string cloud region id
1352 id M 1 string server id
1353 name M 1 string server name
1354 tenantId M 1 String Tenant UUID
1355 boot M 1 String Start parameters
1356 nicArray O 1..n List List
1357volumeArray O 1..n List List
1358availabilityZone O 1 string Usable field
1359 flavorId M 1 String server Flavor
1360 metadata O 1 List Metadata key and value pairs. The maximum size of the metadata key and value is 255 bytes each.
1361 serverGroup O 1 List One or more security groups. Specify the name of the security group in the name attribute. If you omit this attribute, the API creates the server in the default security group.
1362 serverGroup O 1 string the ServerGroup for anti-affinity and affinity
1363================ ========= ============ ======== ================================
1364
1365
1366200: ok
1367
1368500: failed
1369
1370
13717.5. **Heal Server**
1372----------------------
1373
1374===================== =========================================================
1375IF Definition Description
1376===================== =========================================================
1377URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/servers/{serverid}/action
1378Operation POST
1379Direction VNFLCM,NSLCM->MULTIVIM
1380Description Act on a vserver on the VIM
1381===================== =========================================================
1382
13837.5.1. **Request**
1384>>>>>>>>>>>>>>>>>>
1385
1386================ ========= ============ ======== ================================
1387Parameter Qualifier Cardinality Content Description
1388================ ========= ============ ======== ================================
1389 os-start M 1 none The action to start a stopped server.
1390 os-stop M 1 none The action to stop a running server.
1391 reboot M 1 object The action to reboot a server.
1392 type O 1 int The type of the reboot action.
1393 The valid values are HARD and SOFT
1394================ ========= ============ ======== ================================
1395
1396
13977.5.2. **Response**
1398>>>>>>>>>>>>>>>>>>>
1399
1400Normal response codes: 202
1401
1402Error response codes: unauthorized(401), forbidden(403), itemNotFound(404), conflict(409)
1403
14048. **Flavor Management**
1405^^^^^^^^^^^^^^^^^^^^^^^^
1406
14078.1. **Create Flavor**
1408----------------------
1409
1410===================== =========================================================
1411IF Definition Description
1412===================== =========================================================
1413URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/flavors
1414Operation POST
1415Direction VNFLCM->MULTIVIM
1416Description Create a flavor on the VIM
1417===================== =========================================================
1418
14198.1.1. **Request**
1420>>>>>>>>>>>>>>>>>>
1421
1422================ ========= ============ ======== ================================
1423Parameter Qualifier Cardinality Content Description
1424================ ========= ============ ======== ================================
1425 name M 1 string Flavor Name
1426 vcpu M 1 int Virtual CPU number
1427 memory M 1 int Memory size
1428 disk M 1 int The size of the root disk
1429 ephemeral O 1 int The size of the ephemeral disk
1430 swap O 1 int The size of the swap disk
1431 isPublic O 1 boolean Whether the flavor is public (available to all projects) or scoped to a set of projects. Default is True if not specified.
1432 extraSpecs O 0..N List EPA parameter
1433================ ========= ============ ======== ================================
1434
1435
14368.1.2. **Response**
1437>>>>>>>>>>>>>>>>>>>
1438
1439================ ========= ============ ======== ================================
1440Parameter Qualifier Cardinality Content Description
1441================ ========= ============ ======== ================================
1442 id M 1 string Flavor id
1443 name M 1 string Flavor name
1444 returnCode M 1 int 0: Already exist 1: Newly created
1445 tenantId M 1 String Tenant UUID
1446 vcpu M 1 int Virtual CPU number
1447 memory M 1 int Memory size
1448 disk M 1 int The size of the root disk
1449 ephemeral M 1 int The size of the ephemeral disk
1450 swap M 1 int The size of the swap disk
1451 isPublic M 1 boolean Whether the flavor is public (available to all projects) or scoped to a set of projects. Default is True if not specified.
1452 extraSpecs O 0..N List EPA parameter
1453 vimId M 1 String vim id
1454 vimName O 1 string vim name
1455 cloud-owner M 1 String cloud owner
1456cloud-region-id M 1 string cloud region id
1457================ ========= ============ ======== ================================
1458
1459
14608.2. **Delete Flavor**
1461----------------------
1462
1463===================== =========================================================
1464IF Definition Description
1465===================== =========================================================
1466URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/flavors /{flavorid}
1467Operation DELETE
1468Direction VNFLCM->MULTIVIM
1469Description Delete a flavor on the VIM
1470===================== =========================================================
1471
14728.2.1. **Request**
1473>>>>>>>>>>>>>>>>>>
1474
1475N/A
1476
14778.2.2. **Response**
1478>>>>>>>>>>>>>>>>>>>
1479
1480204: no content
1481
14828.3. **List Flavor**
1483--------------------
1484
1485===================== =========================================================
1486IF Definition Description
1487===================== =========================================================
1488URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/flavors
1489Operation GET
1490Direction VNFLCM,NSLCM->MULTIVIM
1491Description List flavors on the VIM
1492===================== =========================================================
1493
14948.3.1. **Query**
1495>>>>>>>>>>>>>>>>
1496
1497================ ========= ============ ======== ================================
1498Parameter Qualifier Cardinality Content Description
1499================ ========= ============ ======== ================================
1500 name M 1 string Flavor name to filter out list
1501================ ========= ============ ======== ================================
1502
15038.3.2. **Response**
1504>>>>>>>>>>>>>>>>>>>
1505
1506================ ========= ============ ======== ================================
1507Parameter Qualifier Cardinality Content Description
1508================ ========= ============ ======== ================================
1509 flavors M 0..N list Vm list
1510 id M 1 string Flavor id
1511 name M 1 string Flavor Name
1512 vcpu M 1 int Virtual CPU number
1513 memory M 1 int Memory size
1514 disk M 1 int The size of the root disk
1515 ephemeral M 1 int The size of the ephemeral disk
1516 swap M 1 int The size of the swap disk
1517 isPublic M 1 boolean Whether the flavor is public (available to all projects) or scoped to a set of projects. Default is True if not specified.
1518 extraSpecs O 0..N List EPA parameter
1519 vimId M 1 String vim id
1520 vimName O 1 string vim name
1521 cloud-owner M 1 String cloud owner
1522cloud-region-id M 1 string cloud region id
1523 tenantId M 1 String Tenant UUID
1524================ ========= ============ ======== ================================
1525
1526
1527200: ok
1528
1529500: failed
1530
15318.4. **Get Flavor**
1532-------------------
1533
1534===================== =========================================================
1535IF Definition Description
1536===================== =========================================================
1537URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/flavors/{flavorid}
1538Operation GET
1539Direction VNFLCM->MULTIVIM
1540Description Get a flavor on the VIM
1541===================== =========================================================
1542
15438.4.1. **Request**
1544>>>>>>>>>>>>>>>>>>
1545
1546N/A
1547
15488.4.2. **Response**
1549>>>>>>>>>>>>>>>>>>>
1550
1551================ ========= ============ ======== ================================
1552Parameter Qualifier Cardinality Content Description
1553================ ========= ============ ======== ================================
1554 id M 1 string Flavor id
1555 name M 1 string Flavor Name
1556 vcpu M 1 int Virtual CPU number
1557 memory M 1 int Memory size
1558 disk M 1 int The size of the root disk
1559 ephemeral M 1 int The size of the ephemeral disk
1560 swap M 1 int The size of the swap disk
1561 isPublic M 1 boolean Whether the flavor is public (available to all projects) or scoped to a set of projects. Default is True if not specified.
1562 extraSpecs O 0..N List EPA parameter
1563 vimId M 1 String vim id
1564 vimName O 1 string vim name
1565 cloud-owner M 1 String cloud owner
1566cloud-region-id M 1 string cloud region id
1567 tenantId M 1 String Tenant UUID
1568================ ========= ============ ======== ================================
1569
1570200: ok
1571
1572500: failed
1573
15749. **Volume Management**
1575^^^^^^^^^^^^^^^^^^^^^^^^
1576
15779.1. **Create Volume**
1578----------------------
1579
1580===================== =========================================================
1581IF Definition Description
1582===================== =========================================================
1583URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/volumes
1584Operation POST
1585Direction VNFLCM->MULTIVIM
1586Description Create volume on the VIM
1587===================== =========================================================
1588
15899.1.1. **Request**
1590>>>>>>>>>>>>>>>>>>
1591
1592================ ========= ============ ======== ================================
1593Parameter Qualifier Cardinality Content Description
1594================ ========= ============ ======== ================================
1595 name M 1 string Volume name
1596 volumeSize M 1 int Volume size
1597 imageId O 1 string Image UUID
1598 volumeType O 1 string Volume type
1599availabilityZone O 1 string Usable field
1600================ ========= ============ ======== ================================
1601
1602::
1603
1604 {
1605
1606 "tenant": "tenant1",
1607
1608 "volumeName": "volume1",
1609
1610 "volumeSize": 3,
1611
1612 "imageName": "cirros.qcow2",
1613
1614 "volumeType": "volumetype1",
1615
1616 "availabilityZone": "zone1"
1617
1618 }
1619
16209.1.2. **Response**
1621>>>>>>>>>>>>>>>>>>>
1622
1623================ ========= ============ ======== ================================
1624Parameter Qualifier Cardinality Content Description
1625================ ========= ============ ======== ================================
1626 returnCode M 1 int 0: Already exist 1: Newly created
1627 vimId M 1 String vim id
1628 vimName O 1 string vim name
1629 cloud-owner M 1 String cloud owner
1630cloud-region-id M 1 string cloud region id
1631 tenantId M 1 String Tenant UUID
1632 status M 1 string Volume status
1633 id M 1 string Volume id
1634 name M 1 string Volume name
1635 volumeType O 1 string Volume type
1636availabilityZone O 1 string Availability Zone
1637================ ========= ============ ======== ================================
1638
1639202: accepted
1640
1641500: failed
1642
1643::
1644
1645 {
1646
1647 "id": "bc9eebdbbfd356458269340b9ea6fb73",
1648
1649 "name": "volume1",
1650
1651 "returnCode": 1,
1652
1653 }
1654
16559.2. **Delete Volume**
1656----------------------
1657
1658===================== =========================================================
1659IF Definition Description
1660===================== =========================================================
1661URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/volumes/{volumeId}
1662Operation DELETE
1663Direction VNFLCM->MULTIVIM
1664Description Delete volume on the VIM
1665===================== =========================================================
1666
16679.2.1. **Request**
1668>>>>>>>>>>>>>>>>>>
1669
1670 N/A
1671
16729.2.2. **Response**
1673>>>>>>>>>>>>>>>>>>>
1674
1675 204: no content
1676
16779.3. **List Volumes**
1678---------------------
1679
1680===================== =========================================================
1681IF Definition Description
1682===================== =========================================================
1683URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/volumes
1684Operation GET
1685Direction VNFLCM->MULTIVIM
1686Description List volumes on the VIM
1687===================== =========================================================
1688
16899.3.1. **Request**
1690>>>>>>>>>>>>>>>>>>
1691
1692 msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/volumes?{……}
1693
1694================ ========= ============ ======== ================================
1695Parameter Qualifier Cardinality Content Description
1696================ ========= ============ ======== ================================
1697 name M 1 string Volume name
1698================ ========= ============ ======== ================================
1699
17009.3.2. **Response**
1701>>>>>>>>>>>>>>>>>>>
1702
1703================ ========= ============ ======== ================================
1704Parameter Qualifier Cardinality Content Description
1705================ ========= ============ ======== ================================
1706 vimId M 1 String vim id
1707 vimName O 1 string vim name
1708 cloud-owner M 1 String cloud owner
1709cloud-region-id M 1 string cloud region id
1710 tenantId M 1 String Tenant UUID
1711 volumes M 1 Array
1712 id M 1 string Volume id
1713 name M 1 string Volume name
1714 createTime O 1 string Create time
1715 status M 1 string Volume status
1716 volumeSize M 1 int Volume size
1717 volumeType M 1 string Volume type
1718availabilityZone M 1 string Availability Zone
1719 attachments M 1..n list List of additional information on the cloud disk
1720================ ========= ============ ======== ================================
1721
1722200: ok
1723
1724500: failed
1725
1726::
1727
1728 {
1729
1730 "volumes": [
1731
1732 {
1733
1734 "status": "available",
1735
1736 "name": "test",
1737
1738 "attachments": [],
1739
1740 "createTime": "2015-12-02T07:57:23.000000",
1741
1742 " volumeType ": "ws",
1743
1744 "id": "91b39ebb-acdc-43f3-9c2e-b0da7ad0fd55",
1745
1746 "size": 20
1747
1748 },
1749
1750 {
1751
1752 "status": "in-use",
1753
1754 "name": "wangsong",
1755
1756 "attachments": [
1757
1758 {
1759
1760 "device": "/dev/vdc",
1761
1762 "serverId": "3030e666-528e-4954-88f5-cc21dab1262b",
1763
1764 "volumeId": "4bd3e9eb-cd8b-456a-8589-910836a0ab31",
1765
1766 "hostName": null,
1767
1768 "id": "4bd3e9eb-cd8b-456a-8589-910836a0ab31"
1769
1770 }
1771
1772 ],
1773
1774 "createTime": "2015-12-02T06:39:40.000000",
1775
1776 " volumeType ": null,
1777
1778 "id": "4bd3e9eb-cd8b-456a-8589-910836a0ab31",
1779
1780 "size": 40
1781
1782 }
1783
1784 ]
1785
1786 }
1787
17889.4. **Get Volumes**
1789--------------------
1790
1791===================== =========================================================
1792IF Definition Description
1793===================== =========================================================
1794URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/volumes/{volumeid}
1795Operation GET
1796Direction VNFLCM->MULTIVIM
1797Description Get volume on the VIM
1798===================== =========================================================
1799
18009.4.1. **Request**
1801>>>>>>>>>>>>>>>>>>
1802
1803 N/A
1804
18059.4.2. **Response**
1806>>>>>>>>>>>>>>>>>>>
1807
1808================ ========= ============ ======== ================================
1809Parameter Qualifier Cardinality Content Description
1810================ ========= ============ ======== ================================
1811 vimId M 1 String vim id
1812 vimName O 1 string vim name
1813 cloud-owner M 1 String cloud owner
1814cloud-region-id M 1 string cloud region id
1815 tenantId M 1 String Tenant UUID
1816 id 1 string Volume id
1817 name 1 string Volume name
1818 createTime 1 string Create time
1819 status 1 string Volume status
1820 volumeType 1 List Volume type
1821 volumeSize 1 int Volume size
1822availabilityZone M 1 string Availability Zone
1823 attachments M 1..n list List of additional information on the cloud disk
1824================ ========= ============ ======== ================================
1825
1826**attachment:**
1827
1828============== ========= ============ ======== ==================================
1829Parameter Qualifier Cardinality Content Description
1830============== ========= ============ ======== ==================================
1831 device 1 string Device name
1832 serverId 1 string VM id
1833 volumeId 1 string Volume id
1834 hostName 1 string Host name
1835 id 1 string Device id
1836============== ========= ============ ======== ==================================
1837
1838200: ok
1839
1840500: failed
1841
1842::
1843
1844 {
1845
1846 "status": "in-use",
1847
1848 "name": "wangsong",
1849
1850 "attachments": [
1851
1852 {
1853
1854 "device": "/dev/vdc",
1855
1856 "serverId": "3030e666-528e-4954-88f5-cc21dab1262b",
1857
1858 "volumeId": "4bd3e9eb-cd8b-456a-8589-910836a0ab31",
1859
1860 "hostName": null,
1861
1862 "id": "4bd3e9eb-cd8b-456a-8589-910836a0ab31"
1863
1864 }
1865
1866 ],
1867
1868 "createTime": "2015-12-02T06:39:40.000000",
1869
1870 "volumeType ": null,
1871
1872 "id": "4bd3e9eb-cd8b-456a-8589-910836a0ab31",
1873
1874 "volumeSize ": 40
1875
1876 }
1877
187810. **Tenant Management**
1879^^^^^^^^^^^^^^^^^^^^^^^^^
1880
188110.1. **List tenants**
1882----------------------
1883
1884
1885===================== =========================================================
1886IF Definition Description
1887===================== =========================================================
1888URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/tenants
1889Operation GET
1890Direction VNFLCM->MULTIVIM
1891Description List tenants on the VIM
1892===================== =========================================================
1893
1894
189510.1.1. **Query**
1896>>>>>>>>>>>>>>>>>
1897
1898================= ========= ============ ======== ================================
1899Parameter Qualifier Cardinality Content Description
1900================= ========= ============ ======== ================================
1901name={tenantname} O 1 string Tenant name to filter output list
1902================= ========= ============ ======== ================================
1903
1904
190510.1.2. **Response**
1906>>>>>>>>>>>>>>>>>>>>
1907
1908================ ========= ============ ======== ================================
1909Parameter Qualifier Cardinality Content Description
1910================ ========= ============ ======== ================================
1911 vimId M 1 String vim id
1912 vimName O 1 string vim name
1913 cloud-owner M 1 String cloud owner
1914cloud-region-id M 1 string cloud region id
1915 tenants M 1 Array
1916 id M 1 string tenant UUID
1917 name M 1 string tenant name
1918================ ========= ============ ======== ================================
1919
1920200: ok
1921
1922500: failed
1923
1924::
1925
1926 {
1927
1928 " tenants ": [
1929
1930 {
1931
1932 "id": "1",
1933
1934 "name": "test\_a"
1935
1936 }
1937
1938 ]
1939
1940 }
1941
194211. **Limits**
1943^^^^^^^^^^^^^^
1944
194511.1. **List Limits of resouces**
1946---------------------------------
1947
1948===================== =========================================================
1949IF Definition Description
1950===================== =========================================================
1951URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/limits
1952Operation GET
1953Direction VNFLCM->MULTIVIM
1954Description Get limits on the VIM
1955===================== =========================================================
1956
1957
195811.1.1. **Request**
1959>>>>>>>>>>>>>>>>>>>
1960
1961N/A
1962
196311.1.2. **Response**
1964>>>>>>>>>>>>>>>>>>>>
1965
1966======================== ========= ============ ======== ========================
1967Parameter Qualifier Cardinality Content Description
1968======================== ========= ============ ======== ========================
1969 vimId M 1 String vim id vimName O 1 string vim name
1970 cloud-owner M 1 String cloud owner
1971cloud-region-id M 1 string cloud region id tenantId M 1 string Tenant UUID maxPersonality O 1 int The number of allowed injected files for each tenant.
1972 maxPersonalitySize O 1 int The number of allowed bytes of content for each injected file.
1973 maxServerGroupMembers O 1 int The number of allowed members for each server group.
1974 maxServerGroups O 1 int The number of allowed server groups for each tenant.
1975 maxServerMeta O 1 int The number of allowed metadata items for each instance.
1976 maxTotalCores O 1 int The number of allowed instance cores for each tenant.
1977 maxTotalInstances O 1 int The number of allowed instances for each tenant.
1978 maxTotalKeypairs O 1 int The number of allowed key pairs for each user.
1979 maxTotalRAMSize O 1 int The amount of allowed instance RAM, in MB, for each tenant.
1980maxTotalVolumeGigabytes O 1 int The maximum total amount of volumes, in gibibytes (GiB).
1981 maxTotalVolumes O 1 int The maximum number of volumes.
1982 totalVolumesUsed O 1 int The total number of volumes used.
1983 totalGigabytesUsed O 1 int The total number of gibibytes (GiB) used.
1984 network O 1 int The number of networks allowed for each project.
1985 subnet O 1 int The number of subnets allowed for each project.
1986 subnetpool O 1 int The number of subnet pools allowed for each project.
1987 security\_group\_rule O 1 int The number of security group rules allowed for each project.
1988 security\_group O 1 int The number of security groups allowed for each project.
1989 router O 1 int The number of routers allowed for each project.
1990 port O 1 int The number of ports allowed for each project.
1991======================== ========= ============ ======== ========================
1992
1993200: ok
1994
1995500: failed
1996
1997::
1998
1999 {
2000
2001 "maxPersonality": 5,
2002
2003 "maxPersonalitySize": 10240,
2004
2005 "maxServerMeta": 128,
2006
2007 "maxTotalCores": 20,
2008
2009 "maxTotalInstances": 10,
2010
2011 "maxTotalKeypairs": 100,
2012
2013 "maxTotalRAMSize": 51200,
2014
2015 "maxServerGroups": 10,
2016
2017 "maxServerGroupMembers": 10,
2018
2019 }
2020
202112. **Host Management**
2022^^^^^^^^^^^^^^^^^^^^^^^
2023
202412.1. **List hosts**
2025--------------------
2026
2027===================== =========================================================
2028IF Definition Description
2029===================== =========================================================
2030URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/hosts
2031Operation GET
2032Direction VNFLCM->MULTIVIM
2033Description list hosts on the VIM
2034===================== =========================================================
2035
203612.1.1. **Request**
2037>>>>>>>>>>>>>>>>>>>
2038
2039N/A
2040
204112.1.2. **Response**
2042>>>>>>>>>>>>>>>>>>>>
2043
2044=============== ========= ============ ======== ==================================
2045Parameter Qualifier Cardinality Content Description
2046=============== ========= ============ ======== ==================================
2047 vimId M 1 String vim id
2048 vimName O 1 string vim name
2049 cloud-owner M 1 String cloud owner
2050cloud-region-id M 1 string cloud region id
2051 tenantId M 1 string Tenant Name
2052 hosts M 1 Array List of host information
2053 service M 1 string The service running on the host
2054 name M 1 string host name
2055 zone O 1 string Available zone for the host
2056=============== ========= ============ ======== ==================================
2057
2058200: ok
2059
2060500: failed
2061
2062::
2063
2064 {
2065
2066 "vimId": "123",
2067
2068 "vimName": "vimName",
2069
2070 "tenantId": "tenantId1"
2071
2072 "hosts": [
2073
2074 {
2075
2076 "name": "b6e4adbc193d428ea923899d07fb001e",
2077
2078 "service": "conductor",
2079
2080 "zone": "internal",
2081
2082 "vimId": "123",
2083
2084 "vimName": "vimName",
2085
2086 "tenantId": "tenantId1"
2087
2088 },
2089
2090 {
2091
2092 "name": "09c025b0efc64211bd23fc50fa974cdf",
2093
2094 "service": "compute",
2095
2096 "zone": "nova"
2097
2098 "vimId": "123",
2099
2100 "vimName": "vimName",
2101
2102 "tenantId": "tenantId1"
2103
2104 },
2105
2106 {
2107
2108 "name": "e73ec0bd35c64de4a1adfa8b8969a1f6",
2109
2110 "service": "consoleauth",
2111
2112 "zone": "internal"
2113
2114 "vimId": "123",
2115
2116 "vimName": "vimName",
2117
2118 "tenantId": "tenantId1"
2119
2120 },
2121
2122 {
2123
2124 "host\_name": "396a8a0a234f476eb05fb9fbc5802ba7",
2125
2126 "service": "network",
2127
2128 "zone": "internal"
2129
2130 "vimId": "123",
2131
2132 "vimName": "vimName",
2133
2134 "tenantId": "tenantId1"
2135
2136 },
2137
2138 {
2139
2140 "name": "abffda96592c4eacaf4111c28fddee17",
2141
2142 "service": "scheduler",
2143
2144 "zone": "internal"
2145
2146 "vimId": "123",
2147
2148 "vimName": "vimName",
2149
2150 "tenantId": "tenantId1"
2151
2152 }
2153
2154 ]
2155
2156 }
2157
215812.2. **Get host**
2159------------------
2160
2161===================== =========================================================
2162IF Definition Description
2163===================== =========================================================
2164URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/hosts/{hostname}
2165Operation GET
2166Direction VNFLCM->MULTIVIM
2167Description Get a host on the VIM
2168===================== =========================================================
2169
2170
217112.2.1. **Request**
2172>>>>>>>>>>>>>>>>>>>
2173
217412.2.2. **Response**
2175>>>>>>>>>>>>>>>>>>>>
2176
2177=============== ========= ============ ======== ==================================
2178Parameter Qualifier Cardinality Content Description
2179=============== ========= ============ ======== ==================================
2180 vimId M 1 String vim id
2181 vimName O 1 string vim name
2182cloud-owner M 1 String cloud owner
2183cloud-region-id M 1 string cloud region id
2184 tenantId M 1 string Tenant Name
2185 host M 1 List Host resource info
2186 resource M 1..N Object Resource description
2187 cpu M 1 Int The cpu info on the host.
2188 memory_mb M 1 int The memory info on the host (in MB).
2189 name M 1 string host name
2190 project M 1 string Value: total, used_now, used_max or specific project_id
2191 disk_gb M 1 int The disk info on the host (in GB).
2192=============== ========= ============ ======== ==================================
2193
2194200: ok
2195
2196500: failed
2197
2198::
2199
2200 {
2201
2202 "cpu": 1,
2203
2204 "disk\_gb": 1028,
2205
2206 "name": "c1a7de0ac9d94e4baceae031d05caae3",
2207
2208 "memory\_mb": 8192,
2209
2210 "vimId": "123",
2211
2212 "vimName": "vimName",
2213
2214 "tenantId": "tenantId1",
2215
2216 "host": [
2217
2218 {
2219
2220 "memory\_mb": 4960,
2221
2222 "name": " c1a7de0ac9d94e4baceae031d05caae3",
2223
2224 "disk\_gb": 92,
2225
2226 "project": "(total)",
2227
2228 "cpu": 4
2229
2230 },
2231
2232 {
2233
2234 "memory\_mb": 1536,
2235
2236 "name": " c1a7de0ac9d94e4baceae031d05caae3",
2237
2238 "disk\_gb": 2,
2239
2240 "project": "(used\_now)",
2241
2242 "cpu": 2
2243
2244 },
2245
2246 {
2247
2248 "memory\_mb": 1024,
2249
2250 "name": " c1a7de0ac9d94e4baceae031d05caae3",
2251
2252 "disk\_gb": 2,
2253
2254 "project": "(used\_max)",
2255
2256 "cpu": 2
2257
2258 },
2259
2260 {
2261
2262 "memory\_mb": 1024,
2263
2264 "name": " c1a7de0ac9d94e4baceae031d05caae3",
2265
2266 "disk\_gb": 2,
2267
2268 "project": "568f7ec425db472ba348251bf1e7eebd",
2269
2270 "cpu": 2
2271
2272 }
2273
2274 ],
2275
2276 "vimName": "openstack\_newton",
2277
2278 "vimId": "dd5b6da9-5984-401f-b89f-78a9776b1a73",
2279
2280 "tenantId": "568f7ec425db472ba348251bf1e7eebd"
2281
2282 }
2283
228413. **VIM Management**
2285^^^^^^^^^^^^^^^^^^^^^^
2286
228713.1. **Update VIM Info**
2288-------------------------
2289
2290===================== =========================================================
2291IF Definition Description
2292===================== =========================================================
2293URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/registry
2294Operation POST
2295Direction ESR-> MULTICLOUD
2296Description Register a VIM instance to ONAP
2297===================== =========================================================
2298
229913.1.1. **Request**
2300>>>>>>>>>>>>>>>>>>>
2301
2302============== ========= ============ ======== ==================================
2303Parameter Qualifier Cardinality Content Description
2304============== ========= ============ ======== ==================================
2305defaultTenant M 1 string default tenant name
2306============== ========= ============ ======== ==================================
2307
230813.1.2. **Response**
2309>>>>>>>>>>>>>>>>>>>>
2310
2311NA
2312
2313202: accept
2314
2315400: failed
2316
Haibin Huangfaa72672020-01-15 00:28:13 -0800231713.2. **Get registry status**
Bin Yang94e5ced2020-05-06 23:30:35 +08002318-----------------------------
Haibin Huangfaa72672020-01-15 00:28:13 -08002319
2320+---------------------+----------------------------------------------------------------------------------------------+
2321| **IF Definition** | **Description** |
2322+=====================+==============================================================================================+
2323| URI | http://msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region}/registry |
2324+---------------------+----------------------------------------------------------------------------------------------+
2325| Operation | GET |
2326+---------------------+----------------------------------------------------------------------------------------------+
2327| Direction | ESR-> MULTICLOUD |
2328+---------------------+----------------------------------------------------------------------------------------------+
2329
233013.2.1. **Request**
2331>>>>>>>>>>>>>>>>>>>
2332
2333NA
2334
233513.2.2. **Response**
2336>>>>>>>>>>>>>>>>>>>>
2337
2338NA
2339
2340200: OK
2341
2342404: failed
2343
2344500: failed
2345
234613.3. **Unregistry VIM**
Bin Yang7882e502018-10-10 04:24:35 +00002347------------------------
2348
2349===================== =========================================================
2350IF Definition Description
2351===================== =========================================================
2352URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}
2353Operation DELETE
2354Direction ESR-> MULTICLOUD
2355Description Unregister a VIM instance from ONAP
2356===================== =========================================================
2357
2358
235913.2.1. **Request**
2360>>>>>>>>>>>>>>>>>>>
2361
2362NA
2363
236413.2.2. **Response**
2365>>>>>>>>>>>>>>>>>>>>
2366
2367NA
2368
2369204: No content found
2370
2371400: failed
2372
2373
2374
237514. **infrastructure workload LCM**
2376^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2377
237814.1. **Instantiate infrastructure workload**
2379----------------------------------------------
2380
2381===================== =========================================================
2382IF Definition Description
2383===================== =========================================================
2384URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/infra_workload
2385Operation POST
2386Direction SO-> MULTICLOUD
2387Description Instantiate infrastructure workload
2388===================== =========================================================
2389
239014.1.1. **Request**
2391>>>>>>>>>>>>>>>>>>>
2392
Bin Yang10752912019-05-17 03:45:35 +00002393================ ========= ============ ======== ================================================
Bin Yang7882e502018-10-10 04:24:35 +00002394Parameter Qualifier Cardinality Content Description
Bin Yang10752912019-05-17 03:45:35 +00002395================ ========= ============ ======== ================================================
2396generic-vnf-id O 1 string generif VNF ID to search AAI object
2397vf-module-id O 1 string vf module id to search AAI object
2398user_directives O 1 Object user directives to update template_data
2399 This directives take 1st precedence
2400 over the other directives
2401oof_directives O 1 Object oof directives to update template_data
2402 This directives take 2nd precedence
2403sdnc_directives O 1 Object sdnc directives to update template_data
2404 This directives take 3rd precedence
2405template_type M 1 string template type with which the
2406 MultiCloud plugin inteprates template_data
2407 "heat",etc.
2408template_data M 1 Object workload template data to
2409 instantiate workload onto VIM/Cloud instance
2410================ ========= ============ ======== ================================================
2411
2412================================= ========= ============ ======== ======================================
2413vf-module-model-customization-id O 1 string uuid which is used to retrieve VNF
2414
2415================================= ========= ============ ======== ======================================
Bin Yang7882e502018-10-10 04:24:35 +00002416
2417::
2418
2419 {
Bin Yang10752912019-05-17 03:45:35 +00002420 "generic-vnf-id": "2115b07a-0c45-46ab-929a-0e98764a6ff3",
2421 "vf-module-id": "86d30674-e096-4957-8ec0-7e0aef68868c",
2422 "vf-module-model-invariant-id": "aa83cd86-a6f2-4b97-90d4-46bd7cd8748b",
2423 "vf-module-model-version-id": "9e4386fb-8cdb-45b8-9b01-ae37bc0ba452",
2424 "vf-module-model-customization-id": "a9e47763-adb7-4689-8dad-f5b780bf1af4",
Bin Yang7882e502018-10-10 04:24:35 +00002425 "oof_directives":{},
2426 "sdnc_directives":{},
Bin Yang10752912019-05-17 03:45:35 +00002427 "user_directives":{},
Bin Yang7882e502018-10-10 04:24:35 +00002428 "template_type":"heat",
2429 "template_data":{{
2430 "files":{ },
2431 "disable_rollback":true,
2432 "parameters":{
2433 "flavor":"m1.heat"
2434 },
2435 "stack_name":"teststack",
Bin Yang10752912019-05-17 03:45:35 +00002436 "template":"<escaped template file content>",
Bin Yang7882e502018-10-10 04:24:35 +00002437 "timeout_mins":60
2438 }
2439 }
2440
244114.1.2. **Response**
2442>>>>>>>>>>>>>>>>>>>>
2443
Bin Yang10752912019-05-17 03:45:35 +00002444================== ========= ============ ======== ==============================================================
Bin Yang7882e502018-10-10 04:24:35 +00002445Parameter Qualifier Cardinality Content Description
Bin Yang10752912019-05-17 03:45:35 +00002446================== ========= ============ ======== ==============================================================
2447template_type M 1 string template type with which the MultiCloud
2448 plugin inteprates template_data "heat",etc.
2449workload_id M 1 string The ID of infrastructure workload resource
2450template_response O 1 Object response from VIM/Cloud instance
2451 which is instantiating workload
2452workload_status M 1 string progress of workload instantiating process:
2453 "CREATE_IN_PROGRESS","CREATE_COMPLETE","CREATE_FAILED"
2454================== ========= ============ ======== ==============================================================
2455
2456====================== ========= ============ ======== ==============================================================
2457workload_status_reason M 1 Object stack object which is instantiated
2458====================== ========= ============ ======== ==============================================================
Bin Yang7882e502018-10-10 04:24:35 +00002459
2460
2461201: Created
2462
2463202: Accepted
2464
2465400: Bad Request
2466
2467401: Unauthorized
2468
2469409: Conflict
2470
2471::
2472
2473 {
Bin Yang10752912019-05-17 03:45:35 +00002474 "template_type": "HEAT",
2475 "workload_status_reason": {
2476 "id": "dca67f9d-37c1-4863-b5e0-0e3d3c53196e",
2477 "links": [
2478 {
2479 "href": "http://msb-iag.onap:80/api/multicloud-titaniumcloud/v1/CloudOwner/ONAP-POD-01-Rail-06/orchestration/v1/709ba629fe194f8699b12f9d6ffd86a0/stacks/vlb_vfm_ewm_1/dca67f9d-37c1-4863-b5e0-0e3d3c53196e",
2480 "rel": "self"
2481 }
2482 ]
2483 },
2484 "workload_status": "CREATE_IN_PROGRESS",
2485 "workload_id": "dca67f9d-37c1-4863-b5e0-0e3d3c53196e"
Bin Yang7882e502018-10-10 04:24:35 +00002486 }
2487
2488
248914.2. **Query infrastructure workload**
2490---------------------------------------
2491
2492===================== =========================================================
2493IF Definition Description
2494===================== =========================================================
2495URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/infra_workload/{workload-id}
2496Operation GET
2497Direction SO-> MULTICLOUD
2498Description Query the status of the infrastructure workload
2499===================== =========================================================
2500
2501
250214.2.1. **Request**
2503>>>>>>>>>>>>>>>>>>>
2504
2505NA
2506
250714.2.2. **Response**
2508>>>>>>>>>>>>>>>>>>>>
2509
Bin Yang10752912019-05-17 03:45:35 +00002510================== ========= ============ ======== ==============================================================
Bin Yang7882e502018-10-10 04:24:35 +00002511Parameter Qualifier Cardinality Content Description
Bin Yang10752912019-05-17 03:45:35 +00002512================== ========= ============ ======== ==============================================================
2513template_type M 1 string Workload Template type e.g. "heat",etc.
2514workload_id M 1 string The ID of infrastructure workload resource
2515workload_status M 1 string progress of workload operation process:
2516 CREATE_IN_PROGRESS, CREATE_COMPLETE, CREATE_FAILED
2517 DELETE_IN_PROGRESS, DELETE_COMPLETE, DELETE_FAILED
2518 UPDATE_IN_PROGRESS, UPDATE_COMPLETE, UPDATE_FAILED
2519================== ========= ============ ======== ==============================================================
2520
2521====================== ========= ============ ======== ==============================================================
2522workload_status_reason M 1 Object stack object which is instantiated
2523====================== ========= ============ ======== ==============================================================
Bin Yang7882e502018-10-10 04:24:35 +00002524
2525
2526200: OK
2527
2528400: Bad Request
2529
2530401: Unauthorized
2531
2532404: Not Found
2533
2534500: Internal Server Error
2535
2536::
2537
2538 {
Bin Yang10752912019-05-17 03:45:35 +00002539 "template_type": "HEAT",
2540 "workload_status_reason": {
2541 "id": "dca67f9d-37c1-4863-b5e0-0e3d3c53196e",
2542 "links": [
2543 {
2544 "href": "http://msb-iag.onap:80/api/multicloud-titaniumcloud/v1/CloudOwner/ONAP-POD-01-Rail-06/orchestration/v1/709ba629fe194f8699b12f9d6ffd86a0/stacks/vlb_vfm_ewm_1/dca67f9d-37c1-4863-b5e0-0e3d3c53196e",
2545 "rel": "self"
2546 }
2547 ]
2548 },
2549 "workload_status": "CREATE_IN_PROGRESS",
2550 "workload_id": "dca67f9d-37c1-4863-b5e0-0e3d3c53196e"
Bin Yang7882e502018-10-10 04:24:35 +00002551 }
2552
2553
255414.3. **Delete infrastructure workload**
2555----------------------------------------
2556
2557===================== =========================================================
2558IF Definition Description
2559===================== =========================================================
2560URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/infra_workload/{workload-id}
2561Operation DELETE
2562Direction SO-> MULTICLOUD
2563Description DELETE the infrastructure workload
2564===================== =========================================================
2565
2566
256714.3.1. **Request**
2568>>>>>>>>>>>>>>>>>>>
2569
2570NA
2571
257214.3.2. **Response**
2573>>>>>>>>>>>>>>>>>>>>
2574
Bin Yang10752912019-05-17 03:45:35 +00002575================== ========= ============ ======== ================================================
2576Parameter Qualifier Cardinality Content Description
2577================== ========= ============ ======== ================================================
2578template_type M 1 string Workload Template type e.g. "heat",etc.
2579workload_id M 1 string The ID of infrastructure workload resource
2580workload_status M 1 string progress of workload operation process:
2581 DELETE_IN_PROGRESS, DELETE_COMPLETE, DELETE_FAILED
2582================== ========= ============ ======== ================================================
Bin Yang7882e502018-10-10 04:24:35 +00002583
Bin Yang10752912019-05-17 03:45:35 +00002584====================== ========= ============ ======== ==============================================================
2585workload_status_reason M 1 Object stack object which is instantiated
2586====================== ========= ============ ======== ==============================================================
2587
2588202: Accepted
Bin Yang7882e502018-10-10 04:24:35 +00002589
2590204: No Content, The server has fulfilled the request by deleting the resource.
2591
2592400: Bad Request
2593
2594401: Unauthorized
2595
2596404: Not Found
2597
2598500: Internal Server Error
Bin Yangcd65ac52019-05-15 08:38:04 +00002599
Bin Yang10752912019-05-17 03:45:35 +00002600::
2601
2602 {
2603 "template_type": "HEAT",
2604 "workload_status_reason": {
2605 "id": "dca67f9d-37c1-4863-b5e0-0e3d3c53196e",
2606 "links": [
2607 {
2608 "href": "http://msb-iag.onap:80/api/multicloud-titaniumcloud/v1/CloudOwner/ONAP-POD-01-Rail-06/orchestration/v1/709ba629fe194f8699b12f9d6ffd86a0/stacks/vlb_vfm_ewm_1/dca67f9d-37c1-4863-b5e0-0e3d3c53196e",
2609 "rel": "self"
2610 }
2611 ]
2612 },
2613 "workload_status": "DELETE_IN_PROGRESS",
2614 "workload_id": "dca67f9d-37c1-4863-b5e0-0e3d3c53196e"
2615 }
2616
2617
2618
261914.4. **Update infrastructure workload into AAI Inventory**
2620------------------------------------------------------------
2621
2622===================== =========================================================
2623IF Definition Description
2624===================== =========================================================
2625URI msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/infra_workload/{workload-id}
2626Operation POST
2627Direction SO-> MULTICLOUD
2628Description Update infrastructure workload into AAI
2629===================== =========================================================
2630
2631
263214.4.1. **Request**
2633>>>>>>>>>>>>>>>>>>>
2634
2635NA
2636
263714.4.2. **Response**
2638>>>>>>>>>>>>>>>>>>>>
2639
2640================== ========= ============ ======== ================================================
2641Parameter Qualifier Cardinality Content Description
2642================== ========= ============ ======== ================================================
2643template_type M 1 string Workload Template type e.g. "heat",etc.
2644workload_id M 1 string The ID of infrastructure workload resource
2645workload_status M 1 string progress of workload operation process:
2646 UPDATE_IN_PROGRESS, UPDATE_COMPLETE, UPDATE_FAILED
2647================== ========= ============ ======== ================================================
2648
2649====================== ========= ============ ======== ==============================================================
2650workload_status_reason M 1 Object stack object which is instantiated
2651====================== ========= ============ ======== ==============================================================
2652
2653
2654202: Accepted
2655
2656400: Bad Request
2657
2658401: Unauthorized
2659
2660404: Not Found
2661
2662500: Internal Server Error
2663
2664::
2665
2666 {
2667 "template_type": "HEAT",
2668 "workload_status_reason": {
2669 },
2670 "workload_status": "UPDATE_IN_PROGRESS",
2671 "workload_id": "dca67f9d-37c1-4863-b5e0-0e3d3c53196e"
2672 }
2673
Bin Yangcd65ac52019-05-15 08:38:04 +00002674
267515. **Proxied OpenStack APIs**
2676^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2677
267815.1. **Tokens**
2679-------------------------
2680
2681+---------------------+----------------------------------------------------------------------------------------------+
Bin Yang392cfda2019-05-16 01:30:11 +00002682| **IF Definition** | **Description** |
Bin Yangcd65ac52019-05-15 08:38:04 +00002683+=====================+==============================================================================================+
Bin Yang392cfda2019-05-16 01:30:11 +00002684| URI | http://msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{region-id}/identity/v3/auth/tokens |
Bin Yangcd65ac52019-05-15 08:38:04 +00002685+---------------------+----------------------------------------------------------------------------------------------+
2686| Operation | POST |
2687+---------------------+----------------------------------------------------------------------------------------------+
2688| Direction | NSLCM-> MULTICLOUD |
2689+---------------------+----------------------------------------------------------------------------------------------+
2690
269115.1.1. **Request**
2692>>>>>>>>>>>>>>>>>>>
2693
2694+-----------------+-----------------+-------------------+---------------+-----------------------+
2695| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
2696+=================+=================+===================+===============+=======================+
Bin Yang392cfda2019-05-16 01:30:11 +00002697| auth | O | 1 | Object | Same as OpenStack |
2698| | | | | Identity Tokens API |
Bin Yangcd65ac52019-05-15 08:38:04 +00002699+-----------------+-----------------+-------------------+---------------+-----------------------+
2700
2701::
2702
2703 {
2704
2705 }
2706
270715.1.2. **Response**
2708>>>>>>>>>>>>>>>>>>>>
2709
2710
2711+-----------------+-----------------+-------------------+---------------------+--------------------------------------------------------------+
Bin Yang392cfda2019-05-16 01:30:11 +00002712| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
Bin Yangcd65ac52019-05-15 08:38:04 +00002713+=================+=================+===================+=====================+==============================================================+
2714| X-Subject-Token | M | 1 | String | The authentication token in Header |
2715+-----------------+-----------------+-------------------+---------------------+--------------------------------------------------------------+
2716| token | O | 1 | Object | Token response, the same as OpenStack Identity Tokens API |
2717+-----------------+-----------------+-------------------+---------------------+--------------------------------------------------------------+
2718
2719201: Created
2720
2721401: Unauthorized
2722
2723403: Forbidden
2724
2725500: failed
2726
2727
2728::
2729
2730 Header:
2731 X-Subject-Token: a33f3b209e9b471a97fbeab8324a9a45
2732
2733 Body:
2734
2735 {
2736 "token" : {
2737 "user" : {
2738 "domain" : {
2739 "id" : "default",
2740 "name" : "Default"
2741 },
2742 "id" : "9efb043c7629497a8028d7325ca1afb0",
2743 "name" : "admin"
2744 },
2745 "catalog" : [
2746 {
2747 "type" : "network",
2748 "endpoints" : [
2749 {
2750 "interface" : "public",
2751 "id" : "39583c1508ad4b71b380570a745ee10a",
2752 "url" : "http://172.16.77.10:80/api/multicloud-titaniumcloud/v1/CloudOwner/RegionOne/network",
2753 "region_id" : "RegionOne",
2754 "region" : "RegionOne"
2755 }
2756 ],
2757 "name" : "neutron",
2758 "id" : "99aefcc82a9246f98f8c281e61ffc754"
2759 },
2760 ...
2761 ]
2762 "project" : {
2763 "name" : "admin",
2764 "id" : "fcca3cc49d5e42caae15459e27103efc",
2765 "domain" : {
2766 "id" : "default",
2767 "name" : "Default"
2768 }
2769 },
2770 "is_domain" : false,
2771 "expires_at" : "2017-09-11T03:52:29.000000Z"
2772 }
2773 }