1 ================================
2 MultiCloud Fake_Cloud User Case
3 ================================
7 multilcoud-vmware server not only provide vio plugin to access real openstack platform,but
8 also provide fake_cloud plugin which simulate thereal VIO function.The fake
9 cloud is suitable for testing openstack function if there is not real VIO platform.
12 Make sure you environment have msb,aai service and multicloud-vmware config file has the right msb_ip and
13 msb_port value,The config file path is vio/vio/pub/config/congfig.py
17 Register Fake Cloud to AAI
18 ~~~~~~~~~~~~~~~~~~~~~~~~~~
20 Register vio information into AAI service with region name "vmware" and region id "fake"
22 .. code-block:: console
24 $ curl -X PUT -H "X-TransactionId":"get_aai_subr" -H "X-FromAppId":"AAI" -H "Accept":"application/json" \
25 -H "Content-Type:"application/json" \
26 https://aai_ip:aai_port/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/vmware/fake \
29 "cloud-owner": "vmware",
30 "cloud-region-id": "vio",
31 "cloud-type": "vmware",
32 "cloud-region-version": "4.0",
33 "identity-url": "http://MSB_IP:MSB_PORT/api/multicloud-vio/v0/vmware_fake/identity/v3",
34 "sriov-automation": false,
35 "resource-version": "1505892661724",
36 "esr-system-info-list": {
39 "esr-system-info-id": "62e17285-c207-42b0-9d55-b472b274c254",
40 "system-name": "vim-fake-cloud",
42 "service-url": "http://127.0.0.1:5000/v3",
46 "ssl-insecure": false,
47 "cloud-domain": "default",
48 "default-tenant": "admin",
49 "resource-version": "1505892661819"
56 the identity url reprent the fake cloud identity url.
63 the ${fake_identiy_url}= "http://MSB_IP:MSB_PORT/api/multicloud-vio/v0/vmware_fake/identity/v3"
64 the ${msb_address} = "MSB_IP:MSB_PORT"
69 # send request to multicloud-framework(broker) service to get token
71 .. code-block:: console
73 $ curl -X POST -d @test.json -H 'Content-Type:application/json' ${fake_identiy_url}
75 test.json content example:
80 "auth": sudo pip install virtualenv{
81 "scope": {"project": {"id": “<project-id>”}},
84 "password": {"user": {"domain": {"name": “<doman-name>”}, "password": “<user-password>”, "name": “<user-name>”}}, "methods": ["password"]
91 There are a large amounts of data including service endpoint, user information, etc.
92 For our testing We take nova and identity service endpoint address and auth token which is in response header named “X-Subject-Token”.
94 # you can find the endpoint url namespace is "api/multicloiud-vio/v0/vmware_fake", it represent the multicloud-vio service, So
95 requests sending to mulitcloud-vio will be forwarded to fake cloud.the ip and port reprenst ${msb_address}
99 http://$msb_address/api/multicloud-vio/v0/vmware_fake/identity
102 http://$msb_address/api/multicloud-vio/v0/vmware_fake/compute/<user-tenantid>
108 Use identity’s endpoint: http://$msb_address/api/multicloud-vio/v0/vmware_fake/identity/
110 .. code-block:: console
112 $ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/vmware_fake/identity/projects
118 Use nova’s endpoint: http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<user-tenantid>
121 .. code-block:: console
123 $ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<tenantid>/os-hypervisors/detail
126 List instance of user’s project
127 --------------------------------
129 .. code-block:: console
131 $ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<tenantid>/servers
137 you need to input <server-id> in url path.
139 .. code-block:: console
141 $ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/vimid/nova/tenantid/servers/<server-id>
147 you need to input <server-id> in url path
149 .. code-block:: console
151 $ curl -X POST -d '{"os-stop":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<tenantid>/servers/<server-id>/action
157 you need to input <server-id> in url path
159 .. code-block:: console
161 $ curl -X POST -d '{"os-start":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<tenantid>/servers/<server-id>/action
167 you need to input <server-id> in url path
169 .. code-block:: console
171 $ curl -X POST -d '{"suspend":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<tenantid>/servers/<server-id>/action
177 you need to input <server-id> in url path
179 .. code-block:: console
181 $ curl -X POST -d '{"resume":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<tenantid>/servers/<server-id>/action
187 you need to input <server-id> in url path
189 .. code-block:: console
191 $ curl -X POST -d '{"pause":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<tenantid>/servers/<server-id>/action
197 you need to input <server-id> in url path
199 .. code-block:: console
201 $ curl -X POST -d '{"unpause":null}' -H 'X-Auth-Token:<token> -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<tenantid>/servers/<server-id>/action
207 you need to input <server-id> in url path
209 .. code-block:: console
211 $ curl -X POST -d '{"reboot":{"type":"HARD"}}' -H 'X-Auth-Token:<token> -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/<tenantid>/servers/<server-id>/action