From: liangke Date: Thu, 12 Oct 2017 10:09:15 +0000 (+0800) Subject: Add fake_cloud user guide docs X-Git-Tag: v1.0.0~11^2 X-Git-Url: https://gerrit.onap.org/r/gitweb?p=multicloud%2Fframework.git;a=commitdiff_plain;h=01ef914a27a68926f8db82f97c6872a0b3e3310d Add fake_cloud user guide docs Change-Id: Ie31e358a3d4bca647cc28ec894f7400b4bebe79e issue-Id: MULTICLOUD-4 Signed-off-by: liangke --- diff --git a/docs/Multicloud-Fake_Cloud-Guide.rst b/docs/Multicloud-Fake_Cloud-Guide.rst new file mode 100644 index 0000000..58d7a5a --- /dev/null +++ b/docs/Multicloud-Fake_Cloud-Guide.rst @@ -0,0 +1,212 @@ +================================ +MultiCloud Fake_Cloud User Case +================================ + + + +multilcoud-vmware server not only provide vio plugin to access real openstack platform,but +also provide fake_cloud plugin which simulate thereal VIO function.The fake +cloud is suitable for testing openstack function if there is not real VIO platform. + + +Make sure you environment have msb,aai service and multicloud-vmware config file has the right msb_ip and +msb_port value,The config file path is vio/vio/pub/config/congfig.py + + + +Register Fake Cloud to AAI +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Register vio information into AAI service with region name "vmware" and region id "fake" + +.. code-block:: console + +$ curl -X PUT -H "X-TransactionId":"get_aai_subr" -H "X-FromAppId":"AAI" -H "Accept":"application/json" \ + -H "Content-Type:"application/json" \ + https://aai_ip:aai_port/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/vmware/fake \ + + -d "{ + "cloud-owner": "vmware", + "cloud-region-id": "vio", + "cloud-type": "vmware", + "cloud-region-version": "4.0", + "identity-url": "http://MSB_IP:MSB_PORT/api/multicloud-vio/v0/vmware_fake/identity/v3", + "sriov-automation": false, + "resource-version": "1505892661724", + "esr-system-info-list": { + "esr-system-info": [ + { + "esr-system-info-id": "62e17285-c207-42b0-9d55-b472b274c254", + "system-name": "vim-fake-cloud", + "type": "vim", + "service-url": "http://127.0.0.1:5000/v3", + "user-name": "admin", + "password": "vmware", + "system-type": "vim", + "ssl-insecure": false, + "cloud-domain": "default", + "default-tenant": "admin", + "resource-version": "1505892661819" + } + ] + } + }" + + +the identity url reprent the fake cloud identity url. + + + +Test Examples +~~~~~~~~~~~~ + +the ${fake_identiy_url}= "http://MSB_IP:MSB_PORT/api/multicloud-vio/v0/vmware_fake/identity/v3" +the ${msb_address} = "MSB_IP:MSB_PORT" + +Get auth token +-------------- + +# send request to multicloud-framework(broker) service to get token + +.. code-block:: console + + $ curl -X POST -d @test.json -H 'Content-Type:application/json' ${fake_identiy_url} + +test.json content example: + +:: + + { + "auth": sudo pip install virtualenv{ + "scope": {"project": {"id": “”}}, + "identity": + { + "password": {"user": {"domain": {"name": “”}, "password": “”, "name": “”}}, "methods": ["password"] + } + } + } + + +Response: +There are a large amounts of data including service endpoint, user information, etc. +For our testing We take nova and identity service endpoint address and auth token which is in response header named “X-Subject-Token”. + +# you can find the endpoint url namespace is "api/multicloiud-vio/v0/vmware_fake", it represent the multicloud-vio service, So +requests sending to mulitcloud-vio will be forwarded to fake cloud.the ip and port reprenst ${msb_address} + + +Identity endpoint: + http://$msb_address/api/multicloud-vio/v0/vmware_fake/identity + +Nova endpoint: + http://$msb_address/api/multicloud-vio/v0/vmware_fake/compute/ + + +List projects +------------- + +Use identity’s endpoint: http://$msb_address/api/multicloud-vio/v0/vmware_fake/identity/ + +.. code-block:: console + + $ curl -X GET -H 'X-Auth-Token:' http://$msb_address/api/multicloud-vio/v0/vmware_fake/identity/projects + + +Get os Hypervisor +----------------- + +Use nova’s endpoint: http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova/ + + +.. code-block:: console + + $ curl -X GET -H 'X-Auth-Token:' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova//os-hypervisors/detail + + +List instance of user’s project +-------------------------------- + +.. code-block:: console + + $ curl -X GET -H 'X-Auth-Token:' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova//servers + + +Show instance detail +-------------------- + +you need to input in url path. + +.. code-block:: console + + $ curl -X GET -H 'X-Auth-Token:' http://$msb_address/api/multicloud-vio/v0/vimid/nova/tenantid/servers/ + + +Shutdown instance +----------------- + +you need to input in url path + +.. code-block:: console + + $ curl -X POST -d '{"os-stop":null}' -H 'X-Auth-Token:' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova//servers//action + + +Start instance +-------------- + +you need to input in url path + +.. code-block:: console + + $ curl -X POST -d '{"os-start":null}' -H 'X-Auth-Token:' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova//servers//action + + +Suspend instance +---------------- + +you need to input in url path + +.. code-block:: console + + $ curl -X POST -d '{"suspend":null}' -H 'X-Auth-Token:' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova//servers//action + + +Resume instance +---------------- + +you need to input in url path + +.. code-block:: console + + $ curl -X POST -d '{"resume":null}' -H 'X-Auth-Token:' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova//servers//action + + +Pause instance +-------------- + +you need to input in url path + +.. code-block:: console + + $ curl -X POST -d '{"pause":null}' -H 'X-Auth-Token:' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova//servers//action + + +Unpasue instance +---------------- + +you need to input in url path + +.. code-block:: console + + $ curl -X POST -d '{"unpause":null}' -H 'X-Auth-Token: -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova//servers//action + + +Reboot instance +--------------- + +you need to input in url path + +.. code-block:: console + + $ curl -X POST -d '{"reboot":{"type":"HARD"}}' -H 'X-Auth-Token: -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/vmware_fake/nova//servers//action + diff --git a/docs/index.rst b/docs/index.rst index 5de5f3e..7d3fc7e 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -7,3 +7,4 @@ MultiCloud Documentation Repository MultiCloud-Deployment-Guide MultiCloud-API-Specification-V1 + Multicloud-Fake_Cloud-Guide