Cisco Elastic Service Controller 1.1
REST API Guide
Cisco Systems, Inc.
www.cisco.com
Cisco has more than 200 offices worldwide.
Addresses, phone numbers, and fax numbers
are listed on the Cisco website at
www.cisco.com/go/offices.
Cisco Elastic Service Controller 1.1 REST API Guide
© 2015 Cisco Systems, Inc. All rights reserved.
Contents
PART 1 – ESC REST API FOR NB CLIENTS ...................................................................................... 5
Introduction....................................................................................................................................................... 5
1) Tenants .......................................................................................................................................................... 7
List Tenants ............................................................................................................................................................... 7
Create a Tenant ......................................................................................................................................................... 8
Get a Tenant ............................................................................................................................................................ 11
Delete a Tenant ....................................................................................................................................................... 13
2) Networks ...................................................................................................................................................... 16
List Networks for Tenant ......................................................................................................................................... 16
Create Network for Tenant ..................................................................................................................................... 19
Get Network for Tenant .......................................................................................................................................... 23
Delete Network for Tenant ..................................................................................................................................... 26
3) Subnets ......................................................................................................................................................... 29
List Subnets for Tenant ........................................................................................................................................... 29
Create Subnet for Tenant ........................................................................................................................................ 33
Get Subnet for Tenant ............................................................................................................................................. 38
Delete Subnet for Tenant ........................................................................................................................................ 40
4) Images .......................................................................................................................................................... 44
List Images ............................................................................................................................................................... 44
Create an Image ...................................................................................................................................................... 46
Get an Image ........................................................................................................................................................... 49
Delete an Image ...................................................................................................................................................... 52
5) Flavors .......................................................................................................................................................... 55
List Flavors ............................................................................................................................................................... 55
Create a Flavor ........................................................................................................................................................ 58
Get a Flavor ............................................................................................................................................................. 61
Delete a Flavor ........................................................................................................................................................ 63
6) Service-Catalog ............................................................................................................................................. 66
List all services in ServiceCatalog ............................................................................................................................ 66
Create/Register Service in ServiceCatalog .............................................................................................................. 69
Get a specific registered Service in Service Catalog ................................................................................................ 73
Delete/Unregister Service in ServiceCatalog........................................................................................................... 77
7) Deployments................................................................................................................................................. 80
Get All Deployments ............................................................................................................................................... 80
3
Create/Deploy ......................................................................................................................................................... 83
Get a Specific Deployment ...................................................................................................................................... 89
Delete/Undeploy ..................................................................................................................................................... 92
ESC Callback Event .................................................................................................................................................. 96
8) VM Operations............................................................................................................................................ 110
Stop a specified VM ............................................................................................................................................... 110
Start a specified VM .............................................................................................................................................. 114
Reboot a specified VM .......................................................................................................................................... 119
Disable VM Monitoring on a specified VM............................................................................................................ 124
Enable VM Monitoring on a specified VM ............................................................................................................ 128
9) VNF Operations ........................................................................................................................................... 133
Stop Service ........................................................................................................................................................... 133
Start Service .......................................................................................................................................................... 138
Reboot Service ...................................................................................................................................................... 146
Disable Monitoring for VNF ................................................................................................................................... 152
Enable Monitoring for VNF.................................................................................................................................... 157
4
PART 1 – ESC REST API for NB Clients
Introduction
o
o
o
o
o
o
Resources managed by ESC: Tenants, Networks, Subnets, Users, ServiceCatalog, Deployments
GET operations are synchronous the request/response parameters are described with an example of
a request/response
POST, DELETE, PUT operations are asynchronous. The asynchronous design use the “web hooks”
approach using two independent "one-way" invocations - one to start a long-running operation
(Client to ESC) and the other one to notify a requester that it is completed (ESC to client)
o The inbound representation of the operation request will contain a callback field, whose
value is a URI where the client expects a callback. If this field is not present, no callback will
be performed.
o When the operation has completed (either successfully or unsuccessfully), ESC will perform
a POST request to the callback URI, with an entity body containing the final status resource
for this operation.
o Client can match a completion report back to the original request by comparing the internal
transaction ID field value to the one returned in the initial status response
o ESC Clients are expected to provide a REST implementation for all the callbacks.
All POST,DELETE,PUT operations that require request and/or response body must provide a header
parameter for media type. Note, that ESC is currently tested to accept and return XML. For
example:
Content-Type: application/xml
Accept: application/xml
Some string parameters, such as id, name, are restricted by the underlying cloud provider, such as
Openstack. The allowable range for these parameters is included in the Create section for each
resource, in this notation: String minimum-length . . maximum length, for example, for
Tenant name: String 1 . . 64
Generally, names are either 1..64 (for Tenant/User) or 1..255 (Network/Subnet/Flavor/Image/VM)
Id (such as uuid) are restricted to 64 characters, such internal_id 1..64, external_id 1..64
ESC imposes this limitation / restriction concerning internal ids:
internal id naming must conform the standards stated in RFC 3986 Uniform
Resource Identifier (URI): Generic Syntax. See sections related to URI encoding,
sections 2.2 Reserved Characters and 2.3 Unreserved Characters. ESC will accept
an internal id specified in the request URL form the unreserved character set:
unreserved = ALPHA / DIGIT / "-" / "." / "_”
NOTE: the tilde “~” is not supported in the internal id character set
the internal id received in a request must be unique within the scope of all the
domain resources (tenant, network, subnet, service catalog, deployment )
For example, you cannot create 2 networks with the same internal_network_id,
even if the networks are created in different tenants
5
It is recommended that the ESC north bound client generate internal ids within the
scope of the ESC.
NOTE: Reusing ( recycling ) of internal ids is not recommended. This practice can
lead to confusion in trouble shooting.
ESC does not support Use Cases where Resources managed by ESC are modified directly in
Openstack, that is, created/delete/updated out-of-band of ESC. The behavior for out-of-band
modifications to Openstack of resources tenant/user/network/subnet/vm is as follows:
Out-of-Band Action
Result of ESC API call
create tenant/user/network/subnet in
• create tenant/user/network/subnet with
Openstack
matching name will fail, with callback POST
409 conflict
delete tenant/user/network/subnet in
• delete of tenant/user/network/subnet,
Openstack
previously created through ESC will fail, with
callback POST 404 not found
• get of tenant/user/network/subnet will
return details stored in esc_database
• create of tenant/user/network/subnet will
fail, with callback POST 409 conflict
update resource in Openstack
• tenant/user/network/subnet in esc database
remains unmodified. The result is a
mismatch between esc and Openstack
delete vm in Openstack
• this will trigger ESC statemachine to perform
recovery – a new VM will be deploy
reboot or shutdown vm in Openstack
• this will trigger ESC statemachine to perform
recovery – VM hard reboot will be
attempted, followed by undeploy/deploy (if
required)
o
6
1) Tenants
List Tenants
Note: All URIs listed in this document needs to be preceded by http://10.0.0.1:8080/ESCManager/
assuming 10.0.0.1 is ESC IP and the REST interface is running with http and not https. For more info
about running ESC REST interface over https please refer to ESC installation guide.
Verb
URI
/v0/tenants
GET
Description
List tenants
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
Required
No
Description
Transaction ID
supplied by ESC
NB client used
for debugging
and logging
Request Example:
GET /v0/tenants HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error
Response Parameters
Name
external_tenant_id
Style
Body
Type
String
Description
Generated Openstack
tenant ID
7
internal_tenant_id
name
enabled
Body
Body
Body
description
Body
String
NB Client tenant ID
String
Tenant name
Boolean Indicates if tenant is
enabled
String
Description about the
tenant
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
<?xml version="1.0" encoding="UTF-8"?>
<tenants>
<tenant>
<internal_tenant_id>434353243432434</internal_tenant_id>
<external_tenant_id>234243490854004</external_tenant_id>
<name>Elie</name>
<enabled>true</enabled>
<description>A description...</description>
</tenant>
<tenant>
<internal_tenant_id>434353243432434</internal_tenant_id>
<external_tenant_id>534534543854004</external_tenant_id>
<name>Michael</name>
<enabled>true</enabled>
<description>A description...</description>
</tenant>
</tenants>
Create a Tenant
Verb
URI
Description
POST /v0/tenants/{internal_tenant_id} Creates a
tenant
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
Required
Description
No
Transaction
ID supplied
by ESC NB
8
internal_tenant_id
Template String
1..64
Yes
Name
Body
Enabled
Body
String
Yes
1..64
Boolean Yes
description
Body
String
No
callback
Header
String
Yes
client used
for debugging
and logging
Internal
Tenant ID
provided by
ESC NB client
Tenant name
Indicates if
tenant is
enabled
Description
about the
tenant
URL to be
used for
callback
Request Example:
POST /v0/tenants/123 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/createtenantcallback
<?xml version="1.0" encoding="UTF-8"?>
<tenant xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<name>Elie</name>
<enabled>true</enabled>
<description>A description...</description>
</tenant>
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Internal Server Error (500)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID
generated by ESC for
every request
9
esc-request-status
Header
String
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 204 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response (callback)
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Conflict 409, Internal Server Error 500
Response(callback)Parameters
Name
esc-transaction-id
Style
Header
esc-status-code
Header
esc-status-message
Header
external_tenant_id
Body
name
internal_tenant_id
Body
Body
enabled
Body
description
Body
Type
String
Description
A unique internal
transaction ID
generated by ESC for
every request
String
Code representing
Http status code
String
A message describing
the response could be
a success or error
message
String
Generated Openstack
tenant ID
String
Tenant name
String
Generated Openstack
tenant ID
Boolean Indicates if tenant
is enabled
String
Description about the
tenant
10
Response Example (Success):
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Success …
<?xml version="1.0" encoding="UTF-8"?>
<tenant>
<external_tenant_id>234243490854004</external_tenant_id>
<internal_tenant_id>434344896854965</internal_tenant_id>
<name>Elie</name>
<enabled>true</enabled>
<description>A description...</description>
</tenant>
Response Example (Failure):
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 500
ESC-Status-Message: Internal Server Error
<?xml version="1.0" encoding="UTF-8"?>
<tenant>
</tenant>
Get a Tenant
Verb
URI
Description
GET
/v0/tenants/{internal_tenant_id} Get tenant
information
by ID
Request
Request Parameters:
11
Name
Style
Header
Type
String
internal_tenant_id Template
String
clienttransaction-id
Required
Description
No
Transaction ID
supplied by ESC
NB client used
for debugging
and logging
Yes
Internal Tenant
ID provided by
ESC NB client
Request Example:
GET /v0/tenants/123 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Body
external_tenant_id
Body
name
enabled
Body
Body
description
Body
Type
String
Description
A unique internal
transaction ID
generated by ESC for
every request
String
Generated Openstack
tenant ID
String
Tenant name
Boolean Indicates if tenant
is enabled
String
Description about the
tenant
Response Example:
12
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<tenant>
<external_tenant_id>234243490854004</external_tenant_id>
<name>Elie</name>
<enabled>true</enabled>
<description>A description...</description>
</tenant>
Delete a Tenant
Verb
URI
Description
DELETE /v0/tenants/{internal_tenant_id} Deletes a
tenant
Request
Request Parameters
Name
client-transaction-id
Style
Header
Type
String
internal_tenant_id
Template
String
callback
Header
String
Required Description
No
Transaction
ID supplied
by ESC NB
client used
for
debugging
and logging
Yes
Internal
Tenant ID
provided by
ESC NB
client
Yes
URL to be
used for
callback
Request Example:
DELETE /v0/tenants/123 HTTP/1.1
13
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/deletetenantcallback
Response (synchronous)
Normal Response Code(s): 204
Error Response Code(s): Bad Request (400), Internal Server Error
(500), 400 Resource Not Found
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response(callback)
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Internal Server Error 500
Response(callback)Parameters
Name
Style
Type
Description
14
esc-transaction-id Header
String
esc-status-code
Header
String
esc-status-message Header
String
A unique internal
transaction ID generated
by ESC for every request
Code representing Http
status code
A message describing the
response could be a
success or error message
Response Example:
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Success …
15
2) Networks
List Networks for Tenant
Verb
URI
Description
GET
/v0/{internal_tenant_id}/networks Lists networks
to which the
specified
tenant has
access.
NOTE: a List request will return all shared networks. So
networks that were created with a different internal_tenant_id
that are shared will be returned.
Request
Request Parameters:
Name
clienttransaction-id
Style
Header
Type
String
internal_tenant_id Template
String
Required
Description
No
Transaction ID
supplied by ESC
NB client used
for debugging and
logging
Yes
Internal Tenant
ID provided by
ESC NB client
Request Example:
GET /v0/123/networks HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
16
Error Response Codes: 400 Bad Request, 500 Internal Server Error
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID generated
by ESC for every request
status
subnets
name
admin_state_up
Body
Body
Body
Body
String
List
String
Boolean
The network status.
external_tenant_id
Body
external_network_id Body
shared
Body
The associated subnets.
The network name.
A Boolean value that
indicates the
administrative status of
the network.
String
OpenStack tenant ID.
String
OpenStack network ID.
Boolean Indicates whether this
network is shared across
all tenants. By default,
only administrative users
can change this value.
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<networks>
<network>
<admin_state_up>true</admin_state_up>
<external_network_id>9ad32b6f-bb65-4a09-b67395945a7dfd00</external_network_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_network_id>sample-network-01</internal_network_id>
<name>sample-network-01</name>
<network_id>9ad32b6f-bb65-4a09-b673-95945a7dfd00</network_id>
<shared>false</shared>
<tenant_id>4f384dfc667a4776bc3169da27d09db5</tenant_id>
</network>
<network>
<admin_state_up>true</admin_state_up>
17
<external_network_id>5661d66b-6ac4-49ae-b744a5593f4aafbb</external_network_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_network_id>sample-network-02</internal_network_id>
<name>sample-network-02</name>
<network_id>5661d66b-6ac4-49ae-b744-a5593f4aafbb</network_id>
<shared>false</shared>
<tenant_id>4f384dfc667a4776bc3169da27d09db5</tenant_id>
</network>
</networks>
18
Create Network for Tenant
Verb
URI
Description
POST /v0/{internal_tenant_id}/networks/{ Creates a
internal_network_id}
network for
tenant
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
Required
No
callback
Header
String
Yes
internal_tenant_id
Template
String
1..64
Yes
internal_network_id
Template
String
1..64
Yes
name
Body
admin_state_up
Body
String
Yes
1..255
Boolean No
shared
Body
Boolean No
Description
Transaction
ID supplied
by ESC NB
client used
for
debugging
and logging
URL to be
used for
callback
Internal
Tenant ID
provided by
ESC NB
client
Internal
Network ID
provided by
ESC NB
client
Network name
Description
about the
tenant
Indicates
whether this
19
provider:network_type
Body
String
No
provider:physical_networ
k
Body
String
No
provider:segmentation_id
Body
String
No
network is
shared across
all tenants.
By default,
only
administrativ
e users can
change this
value.
Provider
network type
for instance
“vlan”
Provider
physical
network
Vlan ID
Request Example:
POST /v0/123/networks/567 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/createnetworkcallback
<?xml version="1.0" encoding="UTF-8"?>
<network xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<name>sample-network-01</name>
<admin_state_up>true</admin_state_up>
<shared>false</shared>
</network>
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Internal Server Error (500),
Conflict (409)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID
generated by ESC for
every request
20
esc-request-status
Header
String
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response(callback)
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Internal Server Error 500
Response(callback) Parameters
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID
generated by ESC for
every request
Code representing Http
status code
A message describing
the response could be a
success or error
message
esc-status-code
Header
String
esc-status-message
Header
String
status
name
admin_state_up
Body
Body
Body
external_tenant_id
Body
external_network_id
shared
Body
Body
The network status.
String
String
The network name.
Boolean A Boolean value that
indicates the
administrative status
of the network.
String
OpenStack tenant ID of
network owner
String
Openstack network ID.
Boolean Indicates whether this
21
network is shared
across all tenants. By
default, only
administrative users
can change this value.
Response Example:
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Success …
<?xml version="1.0" encoding="UTF-8"?>
<network>
<admin_state_up>true</admin_state_up>
<external_network_id>9ad32b6f-bb65-4a09-b67395945a7dfd00</external_network_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_network_id>sample-network-01</internal_network_id>
<name>sample-network-01</name>
<shared>false</shared>
</network>
22
Get Network for Tenant
Verb
GET
URI
/v0/{internal_tenant_id}/networks/{inter
nal_network_id}
Description
Shows information
for the specified
network
NOTE: The GET request will return successfully only if the
network was created under the tenant or if the network is
shared.
So it is valid to get a network created under a
different tenant id, as long as the network was created as
shared.
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
internal_tenant_id
Template
String
internal_network_id
Template
String
Required Description
No
Transaction
ID supplied
by ESC NB
client used
for
debugging
and logging
Yes
Internal
Tenant ID
provided by
ESC NB
client
Yes
Internal
Network ID
provided by
ESC NB
client
Request Example:
GET /v0/123/networks/567 HTTP/1.1
23
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID
generated by ESC for
every request
status
subnets
name
admin_state_up
Body
Body
Body
Body
String
List
String
Boolean
The network status.
external_tenant_id
Body
external_network_id
shared
Body
Body
The associated subnets.
The network name.
A Boolean value that
indicates the
administrative status
of the network.
String
OpenStack tenant ID of
network owner
String
Openstack network ID.
Boolean Indicates whether this
network is shared
across all tenants. By
default, only
administrative users
can change this value.
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
24
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<network>
<admin_state_up>true</admin_state_up>
<external_network_id>9ad32b6f-bb65-4a09-b67395945a7dfd00</external_network_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_network_id>sample-network-01</internal_network_id>
<name>sample-network-01</name>
<network_id>9ad32b6f-bb65-4a09-b673-95945a7dfd00</network_id>
<shared>false</shared>
<tenant_id>4f384dfc667a4776bc3169da27d09db5</tenant_id>
</network>
25
Delete Network for Tenant
Verb
DELET
E
URI
Description
Deletes
the
/v0/{internal_tenant_id}/networks/{internal
specified
network and its
associated
resources.
_network_id}
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
callback
Header
String
internal_tenant_id
Template
String
internal_network_id
Template
String
Required Description
No
Transaction
ID supplied
by ESC NB
client used
for
debugging
and logging
Yes
URL to be
used for
callback
Yes
Internal
Tenant ID
provided by
ESC NB
client
Yes
Internal
Network ID
provided by
ESC NB
client
Request Example:
DELETE /v0/123/networks/567 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/deletenetworkcallback
26
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Resouce Not Found (404), Internal
Server Error (500)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response(callback)
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Network In Use (409), Internal Server Error (500)
Response(callback) Parameters
Name
Style
escHeader
transaction-id
Type
String
esc-statuscode
esc-statusmessage
Header
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success or
27
error message
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Success …
28
3) Subnets
List Subnets for Tenant
Verb
URI
Description
GET
/v0/{internal_tenant_id}/subnets Lists subnets
to which the
specified
tenant has
access.
Request
Request Parameters:
Name
clienttransaction-id
Style
Header
Type
String
internal_tenant_id Template
String
Required
Description
No
Transaction ID
supplied by ESC
NB client used
for debugging and
logging
Yes
Internal Tenant
ID provided by
ESC NB client
Request Example:
GET /v0/123/subnets HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error
Response Parameters
29
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID generated
by ESC for every request
name
Body
String
Human-readable name for
this subnet (might not be
unique).
external_tenant_id
Body
String
external_network_id
allocation_pools
Body
Body
String
List
OpenStack tenant ID of
network owner
Openstack network ID.
gateway_ip
Body
String
ip_version
cidr
Body
Body
String
String
external_subnet_id
enable_dhcp
Body
Body
String
Boolean
List of cidr sub-ranges
that are available for
dynamic allocation to
ports. Syntax:
<start>10.10.0.2</start>
<end>10.10.0.254</end>
Default gateway used by
devices in this subnet.
IP version.
IP range for this subnet,
based on the IP version.
OpenStack subnet ID
Specifies whether DHCP is
enabled for this subnet.
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<subnets>
<subnet>
<cidr>1.80.0.0/24</cidr>
<enable_dhcp>true</enable_dhcp>
<external_network_id>9ad32b6f-bb65-4a09-b67395945a7dfd00</external_network_id>
<external_subnet_id>0ff5c75c-69fa-450f-86717c1d1a4842f4</external_subnet_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<gateway_ip>1.80.0.1</gateway_ip>
<internal_subnet_id>sample-subnet-01</internal_subnet_id>
<ip_version>4</ip_version>
<name>sample-subnet-01</name>
<network_id>9ad32b6f-bb65-4a09-b673-95945a7dfd00</network_id>
30
<subnet_id>0ff5c75c-69fa-450f-8671-7c1d1a4842f4</subnet_id>
</subnet>
<subnet>
<cidr>1.81.0.0/24</cidr>
<enable_dhcp>true</enable_dhcp>
<external_network_id>5661d66b-6ac4-49ae-b744a5593f4aafbb</external_network_id>
<external_subnet_id>c332ae2a-2215-4eb9-ac39cb554e0ccb63</external_subnet_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<gateway_ip>1.81.0.1</gateway_ip>
<internal_subnet_id>sample-subnet-02</internal_subnet_id>
<ip_version>4</ip_version>
<name>sample-subnet-02</name>
<network_id>5661d66b-6ac4-49ae-b744-a5593f4aafbb</network_id>
<subnet_id>c332ae2a-2215-4eb9-ac39-cb554e0ccb63</subnet_id>
</subnet>
</subnets>
31
32
Create Subnet for Tenant
Verb
URI
Description
POST /v0/{internal_tenant_id}/subnets/{interna Creates a subnet on
a specified network.
l_subnet_id}
NOTE: a List request will return all subnets that are created in
a shared network. So subnets that were created with a different
internal_tenant_id that are in a shared network will be
returned.
Request
Request Parameters:
Name
Style
Type
Requir
ed
Description
clienttransaction-id
Header
String
No
Transaction ID supplied
by ESC NB client used
for debugging and
logging
name
Body
String
1..255
No
Human-readable name for
this subnet (might not be
unique).
internal_subnet_id
Template
String
1..64
Yes
internal_tenant_id
Template
String
1..64
Yes
internal_network_id
Body
String
1..64
Yes
Internal Subnet ID
provided by ESC NB
client
Internal Tenant ID
provided by ESC NB
client. Should be owner
of the network
Internal Network ID
provided by ESC NB
Client. Should be the
allocation_pools
Body
List
No
gateway_ip
Body
String
No
Network ID with which
this subnet is
associated.
List of cidr sub-ranges
that are available for
dynamic allocation to
ports. Syntax:
<start>10.10.0.2</start>
<end>10.10.0.254</end>
Default gateway used by
devices in this subnet.
33
ip_version
cidr
Body
Body
String
String
No
No
enable_dhcp
Body
No
callback
Body
Boolea
n
Header
No
IP version.
IP range for this subnet,
based on the IP version.
Specifies whether DHCP is
enabled for this subnet.
URL to be used for
callback
Request Example:
POST /v0/123/subnets/567 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/createsubnetcallback
<?xml version="1.0" encoding="UTF-8"?>
<subnet xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<name>sample-subnet-01</name>
<internal_network_id>sample-network-01</internal_network_id>
<enable_dhcp>true</enable_dhcp>
<ip_version>4</ip_version>
<cidr>1.80.0.0/24</cidr>
<gateway_ip>1.80.0.1</gateway_ip>
<allocation_pools>
<start>1.80.0.2</start>
<end>1.80.0.254</end>
</allocation_pools>
</subnet>
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Internal Server Error (500)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
34
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response(callback)
Response Codes
Normal Response Code: Created 200
Error Response Codes: Conflict 409, Internal Server Error 500
Response(callback) Parameters
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID generated
by ESC for every request
Code representing Http
status code
A message describing the
response could be a
success or error message
esc-status-code
Header
String
esc-status-message
Header
String
name
Body
String
Human-readable name for
this subnet (might not be
unique).
external_tenant_id
Body
String
external_network_id
allocation_pools
Body
Body
String
List
OpenStack tenant ID of
network owner
Openstack network ID.
gateway_ip
Body
String
ip_version
Body
String
List of cidr sub-ranges
that are available for
dynamic allocation to
ports. Syntax:
<start>10.10.0.2</start>
<end>10.10.0.254</end>
Default gateway used by
devices in this subnet.
IP version.
35
cidr
Body
String
external_subnet_id
enable_dhcp
Body
Body
String
Openstack subnet ID.
Boolean Specifies whether DHCP is
IP range for this subnet,
based on the IP version.
enabled for this subnet.
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Success …
<?xml version="1.0" encoding="UTF-8"?>
<subnet>
<cidr>1.80.0.0/24</cidr>
<enable_dhcp>true</enable_dhcp>
<external_network_id>9ad32b6f-bb65-4a09-b67395945a7dfd00</external_network_id>
<external_subnet_id>0ff5c75c-69fa-450f-86717c1d1a4842f4</external_subnet_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<gateway_ip>1.80.0.1</gateway_ip>
<internal_network_id>sample-network-01</internal_network_id>
<internal_subnet_id>sample-subnet-01</internal_subnet_id>
<ip_version>4</ip_version>
<name>sample-subnet-01</name>
<allocation_pools>
<start>1.80.0.2</start>
<end>1.80.0.254</end>
</allocation_pools>
</subnet>
36
37
Get Subnet for Tenant
URI
Ver
b
GET
Description
/v0/{internal_tenant_id}/subnets/{internal_sub
net_id}
Shows
information
for a
specified
subnet.
NOTE: The GET request will return successfully only if the
subnet was created under the tenant or if the subnet is in a
network that is shared.
So it is valid to get a subnet created
under a different tenant id, as long as the subnet is under a
network created as shared.
Request
Request Parameters:
Name
clienttransaction-id
Style
Header
Type
String
internal_tenant_id Template
String
internal_subnet_id Template
String
Required
Description
No
Transaction ID
supplied by ESC
NB client used
for debugging and
logging
Yes
Internal Tenant
ID provided by
ESC NB client
Yes
Internal Subnet
ID provided by
ESC NB client.
Request Example:
GET /v0/123/subnets/789 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
38
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code: 200
Error Response Codes: 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID generated
by ESC for every request
name
Body
String
Human-readable name for
this subnet (might not be
unique).
external_tenant_id
Body
String
external_network_id
allocation_pools
Body
Body
String
List
OpenStack tenant ID of
network owner
Openstack network ID.
gateway_ip
Body
String
ip_version
cidr
Body
Body
String
String
external_subnet_id
enable_dhcp
Body
Body
String
Openstack subnet ID.
Boolean Specifies whether DHCP is
List of cidr sub-ranges
that are available for
dynamic allocation to
ports. Syntax:
<start>10.10.0.2</start>
<end>10.10.0.254</end>
Default gateway used by
devices in this subnet.
IP version.
IP range for this subnet,
based on the IP version.
enabled for this subnet.
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<subnet>
<cidr>1.81.0.0/24</cidr>
39
<enable_dhcp>true</enable_dhcp>
<external_network_id>5661d66b-6ac4-49ae-b744a5593f4aafbb</external_network_id>
<external_subnet_id>c332ae2a-2215-4eb9-ac39cb554e0ccb63</external_subnet_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<gateway_ip>1.81.0.1</gateway_ip>
<internal_subnet_id>sample-subnet-02</internal_subnet_id>
<ip_version>4</ip_version>
<name>sample-subnet-02</name>
<network_id>5661d66b-6ac4-49ae-b744-a5593f4aafbb</network_id>
<subnet_id>c332ae2a-2215-4eb9-ac39-cb554e0ccb63</subnet_id>
</subnet>
Delete Subnet for Tenant
Verb
DELET
E
URI
Description
/v0/{internal_tenant_id}/subnets/{internal_su
bnet_id}
Deletes a
specified
subnet.
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
internal_tenant_id
Template
String
internal_subnet_id
Template
String
Required Description
No
Transaction
ID supplied
by ESC NB
client used
for
debugging
and logging
Yes
Internal
Tenant ID
provided by
ESC NB
client
Yes
Internal
Subnet ID
provided by
ESC NB
client.
40
callback
Header
String
Yes
URL to be
used for
callback
Request Example:
DELETE /v0/123/subnets/789 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/deletesubnetcallback
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Internal Server Error
(500)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response(callback)
41
Response Codes
Normal Response Code: 200
Error Response Codes: Unauthorized (401), Not Found (404),
Conflict (409), Internal Server Error (500)
Response(callback) Parameters
Name
esctransaction-id
esc-statuscode
esc-statusmessage
Style
Header
Type
String
Header
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success or
error message
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Success …
42
43
4) Images
List Images
Verb
/v0/images
GET
URI
Description
Lists all
images.
NOTE: a List request will return all root images (i.e images not
created by service registration).
Request
Request Parameters:
Name
clienttransaction-id
Style
Header
Type
String
Required
Description
No
Transaction ID
supplied by ESC
NB client used
for debugging and
logging
Request Example:
GET /v0/images HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Codes: 400 Bad Request, 500 Internal Server Error
Response Parameters
Name
name
external_tenant_id
Style
Body
Body
Type
String
String
Description
The image name.
OpenStack tenant ID of
image owner.
44
external_image_id
internal_tenant_id
Body
Body
String
String
internal_image_id
cloud_init_support**
container_format
disk_bus
disk_format
imageCheckSum
Body
Body
Body
Body
Body
Body
String
String
String
String
String
String
imageIsEnabled**
public
Body
Body
Openstack image ID.
ESC tenant ID of image
owner.
Internal image ID.
Format of the container
Root disk bus.
Format of the disk.
Hash of the image data
used.
Boolean
Boolean Image visibility. Public
or private. Default is
public.
serial_console**
Body
Boolean
src
Body
String
Image location as
supplied in the request.
** These fields display default values and are not actually
implemented.
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jul 2015 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<images>
<image
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<cloud_init_support></cloud_init_support>
<container_format>bare</container_format>
<disk_bus>virtio</disk_bus>
<disk_format>qcow2</disk_format>
<e1000_net>false</e1000_net>
<external_image_id>aa732419-162a-4d1e-a58a458c07d71268</external_image_id>
<external_tenant_id>32c5912897d744ff8781c9ea169aee97</external_tenant_id>
<imageCheckSum>133eae9fb1c98f45894a4e60d8736619</imageCheckSum>
<imageIsEnabled>true</imageIsEnabled>
<name>cirros-image-indep</name>
<internal_image_id>cirros-image-indep</internal_image_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<public>true</public>
<serial_console>true</serial_console>
45
<src>http://10.85.74.227:/share/images/esc_automated_test_images/cirros0.3.3-x86_64-disk.img</src>
<virtio_net>true</virtio_net>
</image>
</images>
Create an Image
Verb
URI
POST /v0/images/{internal_image_id}
Description
Creates an
image
Request
Request Parameters:
Name
Style
Type
Requ
Description
ired
No
Transaction ID
supplied by ESC
NB client used
for debugging and
logging
Yes
URL to be used
for callback
Yes
Internal Image ID
provided by ESC
NB client
Yes
Image name
client-transaction-id
Header
String
callback
Header
String
internal_image_id
Template
String
1..64
name
Body
src
disk_format
Body
Body
String
1..255
String
String
container_format
Body
String
No
serial_console**
size*
sizeunit*
e1000_net
Body
Body
Body
Body
Boolean
Integer
String
Boolean
No
No
No
No
Yes
Yes
Image location.
Format of the
disk. A valid
value is vmdk,
raw or qcow2.
Format of the
container
Size of the image
Size unit
True if image has
46
virtio_net
Body
Boolean
No
disk_bus
Body
String
Yes
e1000 drivers
True if image has
VIRTIO drivers
Root disk bus. A
valid value is
ide, scsi or
virtio.
* Not suggested to use.
** These fields are not implemented.
Request Example:
POST /v0/images/cirros-image-indep HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/createimagecallback
<?xml version="1.0" encoding="UTF-8"?>
<esc_datamodel xmlns="http://www.cisco.com/esc/esc">
<images>
<image>
<name>cirros-image-indep</name>
<src>file://cisco/images/cirros-0.3.3-x86_64-disk.img</src>
<disk_format>qcow2</disk_format>
<container_format>bare</container_format>
<serial_console>true</serial_console>
<disk_bus>virtio</disk_bus>
</image>
</images>
</esc_datamodel>
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Internal Server Error (500),
Conflict (409), User Not Found (404)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
47
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jul 2015 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for create images.Results will be sent
to http://x.x.x.x:xxxx.
Response(callback)
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Internal Server Error 500
Response(callback) Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-status-code
Header
String
esc-status-message
Header
String
name
external_tenant_id
Body
Body
String
String
external_image_id
internal_tenant_id
Body
Body
String
String
internal_image_id
cloud_init_support**
container_format
disk_bus
disk_format
imageCheckSum
Body
Body
Body
Body
Body
Body
String
String
String
String
String
String
Description
A unique internal
transaction ID
generated by ESC for
every request
Code representing Http
status code
A message describing
the response could be a
success or error
message
The image name.
OpenStack tenant ID of
image owner.
Openstack image ID.
ESC tenant ID of image
owner.
Internal image ID.
Format of the container
Root disk bus.
Format of the disk.
Hash of the image data
48
used.
imageIsEnabled**
size
Body
Body
public
Body
Boolean
String
The size of the image
data, in bytes.
Boolean Image visibility. Public
or private. Default is
public.
serial_console**
src
Body
Body
Boolean
Image location as
String
supplied in the request.
** These fields just display default values and are not actually
implemented.
Response Example:
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Image creation completed successfully.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<image xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<cloud_init_support/>
<container_format>bare</container_format>
<disk_bus>virtio</disk_bus>
<disk_format>qcow2</disk_format>
<event_type>CREATE_IMAGE</event_type>
<external_image_id>bce8770b-bc4a-4be9-bc00697fcc160201</external_image_id>
<external_tenant_id>32c5912897d744ff8781c9ea169aee97</external_tenant_id>
<imageCheckSum>133eae9fb1c98f45894a4e60d8736619</imageCheckSum>
<imageIsEnabled>true</imageIsEnabled>
<name>cirros-image-indep</name>
<size>13200896</size>
<internal_image_id>cirros-image-indep</internal_image_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<public>true</public>
<serial_console>true</serial_console>
<src>file://cisco/images/cirros-0.3.3-x86_64-disk.img</src>
</image>
Get an Image
Verb
GET
URI
/v0/images/{internal_image_id}
Description
Shows information
49
for the specified
image
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
internal_image_id
Template
String
Required Description
No
Transaction
ID supplied
by ESC NB
client used
for
debugging
and logging
Yes
Internal
Image ID
provided by
ESC NB
client
Request Example:
GET /v0/images/cirros-image-indep HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID
generated by ESC for
50
name
external_tenant_id
Body
Body
external_image_id
internal_tenant_id
Body
Body
internal_image_id
cloud_init_support
container_format
disk_bus
disk_format
imageCheckSum
Body
Body
Body
Body
Body
Body
imageIsEnabled
public
Body
Body
serial_console
src
Body
Body
every request
String
The image name
String
OpenStack tenant ID of
image owner
String
Openstack image ID
String
ESC tenant ID of image
owner
String
Internal image ID
String
Not supported**
String
Format of the container
String
Root disk bus
String
Format of the disk
String
Hash of the image data
used
Boolean Not supported**
Boolean Image visibility.
Public or private.
Default is public.
Boolean Not implemented***
String
Image location as
supplied in the request
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<image
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<cloud_init_support></cloud_init_support>
<container_format>bare</container_format>
<disk_bus>virtio</disk_bus>
<disk_format>qcow2</disk_format>
<external_image_id>9b65523e-a31d-4780-9c2048eae40368fc</external_image_id>
<external_tenant_id>32c5912897d744ff8781c9ea169aee97</external_tenant_id>
<imageCheckSum>133eae9fb1c98f45894a4e60d8736619</imageCheckSum>
<imageIsEnabled>true</imageIsEnabled>
<name>cirros-image-indep</name>
<internal_image_id>cirros-image-indep</internal_image_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<public>true</public>
<serial_console>true</serial_console>
51
<src>file://cisco/images/cirros-0.3.3-x86_64-disk.img</src>
</image>
Delete an Image
Verb
DELETE
URI
Description
/v0/images/{internal_image_id}
Deletes the
specified image
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
callback
Header
String
internal_image_id
Template
String
Required Description
No
Transaction
ID supplied
by ESC NB
client used
for
debugging
and logging
Yes
URL to be
used for
callback
Yes
Internal
Image ID
provided by
ESC NB
client
Request Example:
DELETE /v0/images/cirros-image-indep HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/deleteimagecallback
Response (synchronous)
Normal Response Code(s): 200
52
Error Response Code(s): Bad Request (400), Resouce Not Found (404), Internal
Server Error (500)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jul 2015 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for delete images.Results will be sent
to http://x.x.x.x:xxxx.
Response(callback)
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Not Found (404), Internal Server
Error (500), Not Acceptable (406)
Response(callback) Parameters
Name
esctransaction-id
esc-statuscode
esc-statusmessage
Style
Header
Type
String
Header
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
response. Could be a success or
error message
53
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jul 2015 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Image deletion completed successfully.
54
5) Flavors
List Flavors
Verb
URI
Description
/v0/flavors
GET
List flavors
NOTE: a List request will return all root flavors (i.e flavors
not created by service registration).
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
Required
No
Description
Transaction ID
supplied by ESC
NB client used
for debugging
and logging
Request Example:
GET /v0/flavors HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error
Response Parameters
Name
name
ephemeral_disk_mb
Style
Body
Body
Type
String
String
Description
Flavor name
Specifies the size of a
secondary ephemeral
55
external_flavor_id
internal_flavor_id
memory_mb
Body
Body
Body
public
root_disk_mb
swap_disk_mb
Body
Body
Body
vcpus
Body
data disk
String
Openstack image ID
String
Internal flavor ID
String
Amount of memory in
Mega Bytes per VM
instance
Boolean Flavor access
String
Virtual root disk size
String
Optional swap space
allocation for the
instance
String
Number of virtual CPUs
per VM instance
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jul 2015 9:00:00 GMT
<?xml version="1.0" encoding="UTF-8"?>
<flavors>
<flavor
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<external_flavor_id>db0209a5-cf8a-4eaa-89a164511519486a</external_flavor_id>
<name>myflavor1</name>
<internal_flavor_id>myflavor1</internal_flavor_id>
<memory_mb>512</memory_mb>
<public>true</public>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>1</vcpus>
</flavor>
<flavor
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<external_flavor_id>e31f517d-e0bf-44d2-8e3dcf70d22f809c</external_flavor_id>
<name>myflavor2</name>
<internal_flavor_id>myflavor2</internal_flavor_id>
<memory_mb>512</memory_mb>
<public>true</public>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>1</vcpus>
</flavor>
</flavors>
56
57
Create a Flavor
Verb
URI
Description
POST /v0/flavors/{internal_flavor_id} Creates a
flavor
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
Required
Description
No
Transaction
ID supplied
by ESC NB
client used
for debugging
and logging
Yes
URL to be
used for
callback
Yes
Internal
Flavor ID
provided by
ESC NB client
Yes
Flavor name
callback
Header
String
internal_flavor_id
Template String
1..64
name
Body
vcpus
Body
String
1..255
String
memory_mb
Body
String
Yes
root_disk_mb
Body
String
No
ephemeral_disk_mb
Body
String
No
swap_disk_mb
Body
String
No
Yes
Number of
virtual CPUs
per VM
instance
Amount of
memory in
Mega Bytes
per VM
instance
Virtual root
disk size
Size of a
secondary
ephemeral
data disk
Optional swap
58
space
allocation
for the
instance
Request Example:
POST /v0/flavors/myflavor1 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/createflavorcallback
<?xml version="1.0" encoding="UTF-8"?>
<esc_datamodel xmlns="http://www.cisco.com/esc/esc">
<flavors>
<flavor>
<name>myflavor1</name>
<vcpus>1</vcpus>
<memory_mb>512</memory_mb>
<root_disk_mb>0</root_disk_mb>
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
</flavor>
</flavors>
</esc_datamodel>
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Internal Server Error (500)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
59
HTTP/1.1 204 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jul 2015 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for create flavors.Results will be sent
to http://x.x.x.x:xxxx.
Response (callback)
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Bad Request 400, Conflict 409, Internal Server Error
500
Response(callback)Parameters
Name
esc-transaction-id
Style
Header
esc-status-code
Header
esc-status-message
Header
name
ephemeral_disk_mb
Body
Body
external_flavor_id
internal_flavor_id
memory_mb
Body
Body
Body
public
root_disk_mb
Body
Body
swap_disk_mb
Body
vcpus
Body
Type
String
Description
A unique internal
transaction ID
generated by ESC for
every request
String
Code representing
Http status code
String
A message describing
the response could be
a success or error
message
String
Flavor name
String
Specifies the size of
a secondary ephemeral
data disk
String
Openstack image ID
String
Internal flavor ID
String
Amount of memory in
Mega Bytes per VM
instance
Boolean Flavor access
String
Virtual root disk
size
String
Optional swap space
allocation for the
instance
String
Number of virtual
60
CPUs per VM instance
Response Example (Success):
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Flavor creation completed successfully.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<flavor xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<event_type>CREATE_FLAVOR</event_type>
<external_flavor_id>61c49a5a-4033-4e1d-8a8bfcb7f14da11f</external_flavor_id>
<name>myflavor1</name>
<internal_flavor_id>myflavor1</internal_flavor_id>
<memory_mb>512</memory_mb>
<public>true</public>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>1</vcpus>
</flavor>
Get a Flavor
Verb
URI
Description
GET
/v0/flavors/{internal_flavor_id} Get flavor
information
by ID
Request
Request Parameters:
Name
clienttransaction-id
Style
Header
Type
String
Required
Description
No
Transaction ID
supplied by ESC
NB client used
for debugging
61
internal_flavor_id Template
String
Yes
and logging
Internal Flavor
ID provided by
ESC NB client
Request Example:
GET /v0/flavors/myflavor1 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found, Not Acceptable 406
Response Parameters
Name
esc-transaction-id
Style
Body
name
ephemeral_disk_mb
Body
Body
external_flavor_id
internal_flavor_id
memory_mb
Body
Body
Body
public
root_disk_mb
Body
Body
swap_disk_mb
Body
Type
String
Description
A unique internal
transaction ID
generated by ESC for
every request
String
Flavor name
String
Specifies the size of
a secondary ephemeral
data disk
String
Openstack image ID
String
ESC flavor ID
String
Amount of memory in
Mega Bytes per VM
instance
Boolean Flavor access
String
Virtual root disk
size
String
Optional swap space
allocation for the
62
vcpus
Body
String
instance
Number of virtual
CPUs per VM instance
Response Example:
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jul 2015 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<flavor xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<external_flavor_id>3dbfcf98-cd82-4760-b36bafcb19cdf651</external_flavor_id>
<name>myflavor1</name>
<internal_flavor_id>myflavor1</internal_flavor_id>
<memory_mb>512</memory_mb>
<public>true</public>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>1</vcpus>
</flavor>
Delete a Flavor
Verb
URI
Description
DELETE /v0/flavors/{internal_flavor_id} Deletes a
flavor
Request
Request Parameters
Name
client-transaction-id
Style
Header
Type
String
internal_flavor_id
Template
String
Required Description
No
Transaction
ID supplied
by ESC NB
client used
for
debugging
and logging
Yes
Internal
63
callback
Header
String
Yes
Flavor ID
provided by
ESC NB
client
URL to be
used for
callback
Request Example:
DELETE /v0/flavors/myflavor1 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/deleteflavorcallback
Response (synchronous)
Normal Response Code(s): 204
Error Response Code(s): Bad Request (400), Internal Server Error
(500), 400 Resource Not Found, 406 Not Acceptable.
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jul 2015 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for delete flavors.Results will be sent
to http://x.x.x.x:xxxx.
64
Response(callback)
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Internal Server Error 500
Response(callback)Parameters
Name
Style
esc-transaction-id Header
Type
String
esc-status-code
Header
String
esc-status-message Header
String
Description
A unique internal
transaction ID generated
by ESC for every request
Code representing Http
status code
A message describing the
response could be a
success or error message
Response Example:
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Flavor deletion completed successfully.
65
6) Service-Catalog
List all services in ServiceCatalog
Verb
URI
/v0/servicecatalog
GET
Description
Lists registered
services.
Request
Request Parameters:
Name
Style
clientHeader
transaction-id
Type
String
Required
Description
No
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Request Example:
GET /v0/servicecatalog HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Internal Server Error (500)
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
Description
A unique internal
transaction ID
generated by ESC for
every request
66
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<services>
<service_registration>
<flavor>
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<external_flavor_id>a54750af-2bbb-4d30-b327117da37366e0</external_flavor_id>
<name>sample-service-definition-Group_0-sample_vm1</name>
<internal_flavor_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-flavor-0000</internal_flavor_id>
<memory_mb>4096</memory_mb>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>2</vcpus>
</flavor>
<flavor>
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<external_flavor_id>33e495bd-23c6-486f-8e780b1877a6bd7d</external_flavor_id>
<name>sample-service-definition-Group_0-sample_vm2</name>
<internal_flavor_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-flavor-0001</internal_flavor_id>
<memory_mb>4096</memory_mb>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>4</vcpus>
</flavor>
<disk>
<cloud_init_support>true</cloud_init_support>
<container_format>bare</container_format>
<disk_bus>ide</disk_bus>
<disk_format>qcow2</disk_format>
<disk_prefix>sd</disk_prefix>
<e1000_net>true</e1000_net>
<external_image_id>9a239124-23cd-42fc-9faf7a0a1ae09435</external_image_id>
<imageIsEnabled>false</imageIsEnabled>
<name>sample-service-definition-Group_0-sample_vm1</name>
<internal_image_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-image-0000</internal_image_id>
<serial_console>true</serial_console>
<src>http://161.44.198.62:9009/web-ubuntu.qcow2</src>
</disk>
67
<disk>
<cloud_init_support>true</cloud_init_support>
<container_format>bare</container_format>
<disk_bus>ide</disk_bus>
<disk_format>qcow2</disk_format>
<disk_prefix>sd</disk_prefix>
<e1000_net>true</e1000_net>
<external_image_id>b2505bb5-0259-4c03-84b1486d88ee644d</external_image_id>
<imageIsEnabled>false</imageIsEnabled>
<name>sample-service-definition-Group_0-sample_vm2</name>
<internal_image_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-image-0001</internal_image_id>
<serial_console>true</serial_console>
<src>http://161.44.198.62:9009/csr1000v-universalk9.03.12.00.S.154-2.Sstd.qcow2</src>
</disk>
<internal_service_registration_id>regsample</internal_service_registration_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
</service_registration>
</services>
68
Create/Register Service in ServiceCatalog
Verb
POST
URI
Description
/v0/servicecatalog/{internal_service_reg
istration_id}
Registers a
service to
the
ServiceCatal
og
Request
Request Parameters:
Name
Style
Type
Requi
red
clientHeader
transaction-id
String
No
callback
String
Yes
internal_servi Temaplate
ce_registratio
n_id
String
1..64
Yes
reg.xml
XML data
model
Yes
Header
Body
Description
Transaction ID
supplied by ESC NB
client used for
debugging and logging
URL to be used for
callback
Internal Service
Registration ID
provided by ESC NB
client.
The service reg.xml
data model
Request Example:
POST /v0/servicecatalog/123 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/registerservicecallback
<datamodel>
<version>1.0</version>
<service_definition>
. . .
</service_definition>
</datamodel>
69
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Internal Server Error (500),
Conflict (409)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response(callback)
Response Codes
Normal Response Code: Created (200)
Error Response Code(s): Bad Request (400), Internal Server Error (500)
Response(callback) Parameters
Name
esctransaction-id
esc-statuscode
esc-statusmessage
Style
Header
Type
String
Header
String
Header
String
Description
A unique internal transaction
ID generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success
or error message
70
reg.xml
Body
XML data
model
The service reg.xml data
model
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Success …
<?xml version="1.0" encoding="UTF-8"?>
<services>
<service_registration>
<flavor>
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<external_flavor_id>a54750af-2bbb-4d30-b327117da37366e0</external_flavor_id>
<name>sample-service-definition-Group_0-sample_vm1</name>
<internal_flavor_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-flavor-0000</internal_flavor_id>
<memory_mb>4096</memory_mb>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>2</vcpus>
</flavor>
<flavor>
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<external_flavor_id>33e495bd-23c6-486f-8e780b1877a6bd7d</external_flavor_id>
<name>sample-service-definition-Group_0-sample_vm2</name>
<internal_flavor_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-flavor-0001</internal_flavor_id>
<memory_mb>4096</memory_mb>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>4</vcpus>
</flavor>
<disk>
<cloud_init_support>true</cloud_init_support>
<container_format>bare</container_format>
<disk_bus>ide</disk_bus>
<disk_format>qcow2</disk_format>
<disk_prefix>sd</disk_prefix>
<e1000_net>true</e1000_net>
<external_image_id>9a239124-23cd-42fc-9faf7a0a1ae09435</external_image_id>
<imageIsEnabled>false</imageIsEnabled>
<name>sample-service-definition-Group_0-sample_vm1</name>
71
<internal_image_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-image-0000</internal_image_id>
<serial_console>true</serial_console>
<src>http://161.44.198.62:9009/web-ubuntu.qcow2</src>
</disk>
<disk>
<cloud_init_support>true</cloud_init_support>
<container_format>bare</container_format>
<disk_bus>ide</disk_bus>
<disk_format>qcow2</disk_format>
<disk_prefix>sd</disk_prefix>
<e1000_net>true</e1000_net>
<external_image_id>b2505bb5-0259-4c03-84b1486d88ee644d</external_image_id>
<imageIsEnabled>false</imageIsEnabled>
<name>sample-service-definition-Group_0-sample_vm2</name>
<internal_image_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-image-0001</internal_image_id>
<serial_console>true</serial_console>
<src>http://161.44.198.62:9009/csr1000v-universalk9.03.12.00.S.154-2.Sstd.qcow2</src>
</disk>
<internal_service_registration_id>regsample</internal_service_registration_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
</service_registration>
</services>
72
Get a specific registered Service in Service Catalog
Ver
b
GET
URI
Description
/v0/servicecatalog/{internal_service_registration
_id}
Get info for
a specific
registered
service in
the
ServiceCatalo
g
Request
Request Parameters:
Name
Style
clientHeader
transaction-id
Type
String
No
Required
internal_servi Temaplat
ce_registratio e
n_id
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and logging
Internal Service
Registration ID
provided by ESC NB
client.
Request Example:
GET /v0/servicecatalog/567 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code: 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
73
Name
esctransaction-id
reg.xml
Style
Header
Type
String
Body
XML
data
model
String
external_servi Body
ce_registratio
n_id
Description
A unique internal transaction ID
generated by ESC for every
request
The service reg.xml data model
Service Registration ID
generated by ESC
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<services>
<service_registration>
<flavor>
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<external_flavor_id>a54750af-2bbb-4d30-b327117da37366e0</external_flavor_id>
<name>sample-service-definition-Group_0-sample_vm1</name>
<internal_flavor_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-flavor-0000</internal_flavor_id>
<memory_mb>4096</memory_mb>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>2</vcpus>
</flavor>
<flavor>
<ephemeral_disk_mb>0</ephemeral_disk_mb>
<external_flavor_id>33e495bd-23c6-486f-8e780b1877a6bd7d</external_flavor_id>
<name>sample-service-definition-Group_0-sample_vm2</name>
<internal_flavor_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-flavor-0001</internal_flavor_id>
<memory_mb>4096</memory_mb>
<root_disk_mb>0</root_disk_mb>
<swap_disk_mb>0</swap_disk_mb>
<vcpus>4</vcpus>
</flavor>
<disk>
<cloud_init_support>true</cloud_init_support>
<container_format>bare</container_format>
<disk_bus>ide</disk_bus>
74
<disk_format>qcow2</disk_format>
<disk_prefix>sd</disk_prefix>
<e1000_net>true</e1000_net>
<external_image_id>9a239124-23cd-42fc-9faf7a0a1ae09435</external_image_id>
<imageIsEnabled>false</imageIsEnabled>
<name>sample-service-definition-Group_0-sample_vm1</name>
<internal_image_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-image-0000</internal_image_id>
<serial_console>true</serial_console>
<src>http://161.44.198.62:9009/web-ubuntu.qcow2</src>
</disk>
<disk>
<cloud_init_support>true</cloud_init_support>
<container_format>bare</container_format>
<disk_bus>ide</disk_bus>
<disk_format>qcow2</disk_format>
<disk_prefix>sd</disk_prefix>
<e1000_net>true</e1000_net>
<external_image_id>b2505bb5-0259-4c03-84b1486d88ee644d</external_image_id>
<imageIsEnabled>false</imageIsEnabled>
<name>sample-service-definition-Group_0-sample_vm2</name>
<internal_image_id>d5258a0d-9f4f-4b60-a545-0f2882c07d67-image-0001</internal_image_id>
<serial_console>true</serial_console>
<src>http://161.44.198.62:9009/csr1000v-universalk9.03.12.00.S.154-2.Sstd.qcow2</src>
</disk>
<internal_service_registration_id>regsample</internal_service_registration_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
</service_registration>
</services>
75
76
Delete/Unregister Service in ServiceCatalog
Verb
DELETE
URI
Description
/v0/servicecatalog/{
internal_service_registration
_id }
Deletes/Unregiste
rs a registered
service in the
ServiceCatalog
Request
Request Parameters:
Name
Style
Type
Require
d
clientHeader
transaction-id
String
No
callback
String
Yes
String
Yes
Header
internal_servi Temaplat
ce_registratio e
n_id
Description
Transaction ID supplied
by ESC NB client used
for debugging and
logging
URL to be used for
callback
Internal Service
Registration ID
provided by ESC NB
client.
Request Example:
DELETE /v0/servicecatalog/567 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/unregisterservicecallback
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Resource Not Found (404), Internal
Server Error (500)
Response(synchronous)Parameters
77
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response(callback)
Response Codes
Normal Response Code: 204
Error Response Code(s): Bad Request (400), Internal Server Error
(500)
Response(callback) Parameters
Name
esctransaction-id
esc-statuscode
esc-statusmessage
Style
Header
Type
String
Header
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success or
error message
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
78
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Success …
79
7) Deployments
Get All Deployments
Verb
GET
URI
Descri
ption
Lists
deploye
d
service
s.
/v0/deployments
Request
Request Parameters:
Name
client-transaction-id
Style
Header
Type
String
Required Description
No
Transaction
ID supplied
by ESC NB
client used
for
debugging
and logging
Request Example:
GET /v0/deployments/ HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Internal Server Error
(500)
Response Parameters
80
Name
esc-transaction-id
Style
Type
Description
Header String A unique internal transaction
generated by ESC for every re
external_service_deployment_id Body
String Deployment ID generated by ES
deployments_details
Body
XML
See example below
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<deployments>
<deployment>
<deployment_stage>VM_DEPLOYED</deployment_ stage>
<deployment_details>
<vm_uuid>26ebf6a5-812e-4034-8a50-588c6579f70a</vm_uuid>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.58</ip_address>
<port_uuid>c806c915-d5af-4269-bb6b-b76b66c720e1</port_uuid>
<subnet_uuid>fd96c915-d5af-4269-bb6b-b76b66c720e1</subnet_uuid>
<mac_address>fa:16:3e:01:ed:13</mac_address>
</interface>
</interfaces>
<management_ip_address>10.0.3.58</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm1__0</vm_name>
</deployment_details>
<external_deployment_id>9866330f-a4e0-4d29-9ce2ef90b94a65e8</external_deployment_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_deployment_id>dep-sample-01</internal_deployment_id>
<internal_service_registration_id>regsample</internal_service_registration_id>
<internal_tenant_id>sample-tenant-01</internal_tenant_id>
</deployment>
</deployments>
81
82
Create/Deploy
Verb
URI
POST /v0/deployments/{internal_deployment_id}
Description
Create/Deploy
a service
Request
Request Parameters:
Name
Style
Type
Requ
ired
Description
clienttransaction-id
Header
String
No
callback
Header
String
Yes
Callback-ESCEvents
Header
String
Yes
internal_user_id
Header
No
Perform request on behalf
of User ID
internal_deploymen
Yes
The deployment ID
t_id
Templa
te
String
1..64
String
dep.xml
Body
XML
data
model
Yes
The service dep.xml data
model
Transaction ID supplied
by ESC NB client used for
debugging and logging
URL to handle POST when
every VM is deployed and
when every VM is alive
and when Service Group
deployment is complete
URL to handle events
notification such as
recovery, scale up, scale
down
Request Example:
POST /v0/deployments/123 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/deployservicecallback
Callback-ESC-Events:/escevents
<datamodel>
83
<version>1.0</version>
<service_definition>
. . .
</service_definition>
</datamodel>
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Conflict (409), Internal Server
Error (500)
Response(synchronous)Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response(callback)
Response Codes
Normal Response Code: Created (200)
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
esctransaction-id
Style
Header
Type
String
Description
A unique internal transaction ID
generated by ESC for every
84
esc-statuscode
esc-statusmessage
Header
String
Header
String
deployment
Body
XML
request
Code representing Http status
code
A message describing the
response could be a success or
error message
See example below
Response Example: one callback for each VM that is deployed
Deployment - First stage callback
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 1488
ESC-Status-Message: VM successfully created
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<deployment>
<deployment_stage>VM_DEPLOYED</deployment_ stage>
<deployment_details>
<vm_uuid>26ebf6a5-812e-4034-8a50-588c6579f70a</vm_uuid>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.58</ip_address>
<port_uuid>c806c915-d5af-4269-bb6b-b76b66c720e1</port_uuid>
<subnet_uuid>fd96c915-d5af-4269-bb6b-b76b66c720e1</subnet_uuid>
<mac_address>fa:16:3e:01:ed:13</mac_address>
</interface>
</interfaces>
<management_ip_address>10.0.3.58</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm1__0</vm_name>
</deployment_details>
<external_deployment_id>9866330f-a4e0-4d29-9ce2ef90b94a65e8</external_deployment_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_deployment_id>dep-sample-01</internal_deployment_id>
<internal_service_registration_id>regsample</internal_service_registration_id>
<internal_tenant_id>sample-tenant-01</internal_tenant_id>
85
</deployment>
Response Example: one callback for each VM that is alive
Deployment - Second stage callback
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 1488
ESC-Status-Message: VM is alive
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<deployment>
<deployment_stage>VM_ALIVE</deployment_ stage>
<deployment_details>
<vm_uuid>26ebf6a5-812e-4034-8a50-588c6579f70a</vm_uuid>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.58</ip_address>
<port_uuid>c806c915-d5af-4269-bb6b-b76b66c720e1</port_uuid>
<subnet_uuid>fd96c915-d5af-4269-bb6b-b76b66c720e1</subnet_uuid>
<mac_address>fa:16:3e:01:ed:13</mac_address>
</interface>
</interfaces>
<management_ip_address>10.0.3.58</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm1__0</vm_name>
</deployment_details>
<external_deployment_id>9866330f-a4e0-4d29-9ce2ef90b94a65e8</external_deployment_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_deployment_id>dep-sample-01</internal_deployment_id>
<internal_service_registration_id>regsample</internal_service_registration_id>
<internal_tenant_id>sample-tenant-01</internal_tenant_id>
</deployment>
Response Example: final callback when all VMs are deployed and
Alive
Deployment – Final Callback
HTTP/1.1 200 OK
86
Content-Type: application/xml; charset=UTF-8
Content-Length: 1488
ESC-Status-Message: Service Group completed successfully
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<deployments>
<deployment>
<deployment_stage>SERVICE_ALIVE</deployment_ stage>
<deployment_details>
<vm_uuid>7a9ac1db-4ba0-4e8c-aa72-0bbc6bd1c8fc</vm_uuid>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.37</ip_address>
<port_uuid>e3431d87-aa23-45cb-b067-91e0050757a8</port_uuid>
<subnet_uuid>fd96c915-d5af-4269-bb6b-b76b66c720e1</subnet_uuid>
<mac_address>fa:16:3e:01:ed:13</mac_address>
</interface>
</interfaces>
<management_ip_address>10.0.3.37</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm2__0</vm_name>
</deployment_details>
<deployment_details>
<vm_uuid>75229b6b-8fbe-401a-b9c6-4b0bd9aaddc2</vm_uuid>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.56</ip_address>
<port_uuid>cb0184a6-fd66-44b2-a197-cdb490c7478b</port_uuid>
<subnet_uuid>fd96c915-d5af-4269-bb6b-b76b66c720e1</subnet_uuid>
<mac_address>fa:16:3e:01:ed:13</mac_address>
</interface>
</interfaces>
<management_ip_address>10.0.3.56</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm1__0</vm_name>
</deployment_details>
<external_deployment_id>416d4d7d-476a-4d3a-b9079d05a0368fd2</external_deployment_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_deployment_id>dep-sample-01</internal_deployment_id>
87
<internal_service_registration_id>regsample</internal_service_registration_id>
<internal_tenant_id>sample-tenant-01</internal_tenant_id>
</deployment>
</deployments>
88
Get a Specific Deployment
Verb
GET
URI
Descri
ption
/v0/deployments/{internal_deployment_id}
Get
info
for a
specifi
c
deploye
d
service
Request
Request Parameters:
Name
clienttransaction-id
Style
Header
Type
String
Required
No
internal_deplo
Template
String
Yes
Header
String
1..64
No
Description
Transaction ID
supplied by ESC NB
client used for
debugging and logging
The deployment ID
yment_id
internal_user_i
d
Perform request on
behalf of User ID
Request Example:
GET /v0/deployments/567 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Response
Response Codes
Normal Response Code: 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
89
Name
esctransaction-id
Style
Header
external_deplo Body
yment_id
Type
String
String
Description
A unique internal transaction ID
generated by ESC for every
request
Deployment ID.
Response Example:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<deployments>
<deployment>
<deployment_details>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<vm_uuid>7a9ac1db-4ba0-4e8c-aa72-0bbc6bd1c8fc</vm_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.37</ip_address>
<port_uuid>e3431d87-aa23-45cb-b067-91e0050757a8</port_uuid>
</interface>
</interfaces>
<management_ip_address>10.0.3.37</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm2__0</vm_name>
</deployment_details>
<deployment_details>
<vm_uuid>75229b6b-8fbe-401a-b9c6-4b0bd9aaddc2</vm_uuid>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.56</ip_address>
<port_uuid>cb0184a6-fd66-44b2-a197-cdb490c7478b</port_uuid>
</interface>
</interfaces>
<management_ip_address>10.0.3.56</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm1__0</vm_name>
</deployment_details>
90
<external_deployment_id>416d4d7d-476a-4d3a-b9079d05a0368fd2</external_deployment_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_deployment_id>dep-sample-01</internal_deployment_id>
<internal_service_registration_id>regsample</internal_service_registration_id>
<internal_tenant_id>sample-tenant-01</internal_tenant_id>
</deployment>
</deployments>
91
Delete/Undeploy
Verb
DELETE
URI
Description
/v0/deployments/{internal_deploymen Deletes/Undeploys
a deployed
service for a
tenant
t_id}
Request
Request Parameters:
Name
Style
Type
Requir
ed
clienttransaction-id
Header
Str
ing
No
Internal_deploymen
t_id
internal_user_id
Templa
te
Header
Yes
callback
Header
Str
ing
Str
ing
1..
64
Str
ing
Description
Transaction ID supplied
by ESC NB client used for
debugging and logging
The deployment ID
No
Perform request on behalf
of User ID
Yes
URL to be used for
callback
Request Example:
DELETE /v0/deployments/567 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/undeployservicecallback
Response (synchronous)
Normal Response Code(s): 200
Error Response Code(s): Bad Request (400), Resource Not Found (404), Internal
Server Error (500)
Response(synchronous)Parameters
92
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response(synchronous)Parameters Example
HTTP/1.1 201 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: ESC is processing the request…
Response(callback)
Response Codes
Normal Response Code: 204
Error Response Code(s): Bad Request (400), Internal Server Error (500)
Response(callback) Parameters
Name
Style
Header
Type
String
esc-statuscode
esc-statusmessage
Header
String
Header
String
deployment
Body
XML
esctransaction-id
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success or
error message
See example below
93
Response Example: one callback for each VM that is undeployed
(First stage callback)
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 1488
ESC-Status-Message: VM successfully deleted
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
<?xml version="1.0" encoding="UTF-8"?>
<deployment>
<deployment_stage>VM_UNDEPLOYED</deployment_stage>
<deployment_details>
<vm_uuid>26ebf6a5-812e-4034-8a50-588c6579f70a</vm_uuid>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.58</ip_address>
<port_uuid>c806c915-d5af-4269-bb6b-b76b66c720e1</port_uuid>
<subnet_uuid>fd96c915-d5af-4269-bb6b-b76b66c720e1</subnet_uuid>
<mac_address>fa:16:3e:01:ed:13</mac_address>
</interface>
</interfaces>
<management_ip_address>10.0.3.58</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm1__0</vm_name>
</deployment_details>
<external_deployment_id>9866330f-a4e0-4d29-9ce2ef90b94a65e8</external_deployment_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_deployment_id>dep-sample-01</internal_deployment_id>
<internal_service_registration_id>regsample</internal_service_registration_id>
<internal_tenant_id>sample-tenant-01</internal_tenant_id>
</deployment>
Response Example: final callback when all VMs are undeployed:
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 1488
ESC-Status-Message: Service Group undeployed successfully
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
94
<?xml version="1.0" encoding="UTF-8"?>
<deployments>
<deployment>
<deployment_stage>SERVICE_UNDEPLOYED</deployment_stage>
<deployment_details>
<vm_uuid>7a9ac1db-4ba0-4e8c-aa72-0bbc6bd1c8fc</vm_uuid>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.37</ip_address>
<port_uuid>e3431d87-aa23-45cb-b067-91e0050757a8</port_uuid>
<subnet_uuid>fd96c915-d5af-4269-bb6b-b76b66c720e1</subnet_uuid>
<mac_address>fa:16:3e:01:ed:13</mac_address>
</interface>
</interfaces>
<management_ip_address>10.0.3.37</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm2__0</vm_name>
</deployment_details>
<deployment_details>
<vm_uuid>75229b6b-8fbe-401a-b9c6-4b0bd9aaddc2</vm_uuid>
<host_uuid>rereea5-812e-4034-8a50-588c6579f70a</host_uuid>
<interfaces>
<interface>
<network_uuid>0e89b2ed-5e79-47b2-9ff1-07018fc417ef</network_uuid>
<ip_address>10.0.3.56</ip_address>
<port_uuid>cb0184a6-fd66-44b2-a197-cdb490c7478b</port_uuid>
<subnet_uuid>fd96c915-d5af-4269-bb6b-b76b66c720e1</subnet_uuid>
<mac_address>fa:16:3e:01:ed:13</mac_address>
</interface>
</interfaces>
<management_ip_address>10.0.3.56</management_ip_address>
<vm_name>sample-service-definition__sample-tenant-01__dep-sample01__Group_0__sample_vm1__0</vm_name>
</deployment_details>
<external_deployment_id>416d4d7d-476a-4d3a-b9079d05a0368fd2</external_deployment_id>
<external_service_registration_id>2dee7003-8f9d-4a1c-b2ebf2de1d3daafb</external_service_registration_id>
<external_tenant_id>4f384dfc667a4776bc3169da27d09db5</external_tenant_id>
<internal_deployment_id>dep-sample-01</internal_deployment_id>
<internal_service_registration_id>regsample</internal_service_registration_id>
<internal_tenant_id>sample-tenant-01</internal_tenant_id>
</deployment>
</deployments>
95
ESC Callback Event
Client registers a callback “callback-esc-event” during create deployments. ESC will post an event with
payload describing the event name, details, including affected vm, deployment id. Additional APIs are
provided to acknowledge the event. Typically, the client acknowledges the event by posting with the
same payload as contained in the payload callback-esc-event.
Service Scale Out - First Callback – Notification
ESC will do a callback using the “Callback-ESC-Events” URL notifying PF that a service scale up is going to
happen. The payload will be the esc_event payload
with the <event_type> SERVICE_SCALE_UP_INIT</event_type> tag and the <event_source> tag
containing the VM details of the VM that is overloaded
<esc_event>
<event_name>VM_OVERLOADED</event_name>
<event_type>SERVICE_SCALE_UP_INIT</event_type>
<event_details>
<summary>2014-01-13 12:37:14.229;threshold:Threshold : 'VM_OVERLOADED_COFFEE' 'Node=external_vm_id:3c5c2523-19e6-4cd1-a0
23c1fd36dc5e6d,CPUSlotStr=0,CPUNum=0,CPUDescr=CPU 0 of module R0' crossed threshold for
'CPU 5 Min Utilization /Average Utilization' value '17' threshold '99'.
</summary>
<threshold>99</threshold>
<time>2014-01-13 12:37:11.199</time>
<value>17</value>
</event_details>
<vm_group>
<vm_instance>
<vm_source>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
96
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_source>
</vm_instance>
</vm_group>
<external_deployment_id>ESC-Deployement-Id</external_deployment_id>
<internal_deployment_id>Client-Deployment-Id</internal_deployment_id>
</esc_event>
Service Scale Up - Second Callback - Notification
ESC will do a callback using the “Callback-ESC-Events” URL notifying NORTHBOUND CLIENT that a VM
has been deployed. The payload will be the esc_event payload
with the <event_type> SERVICE_SCALE_UP_DEPLOYED</event_type> tag and the <vm_deployed> tag
containing the VM details of the VM that was deployed part of scale up
<esc_event>
<event_name>VM_OVERLOADED</event_name>
<event_type>SERVICE_SCALE_UP_DEPLOYED</event_type>
<event_details>
<summary>2014-01-13 12:37:14.229;threshold:Threshold : 'VM_OVERLOADED_COFFEE' 'Node=external_vm_id:3c5c2523-19e6-4cd1-a0
23c1fd36dc5e6d,CPUSlotStr=0,CPUNum=0,CPUDescr=CPU 0 of module R0' crossed threshold for
'CPU 5 Min Utilization /Average Utilization' value '17' threshold '99'.
</summary>
<threshold>99</threshold>
<time>2014-01-13 12:37:11.199</time>
<value>17</value>
</event_details>
<vm_group>
<vm_instance>
<vm_deployed>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
97
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_deployed>
</vm_instance>
</vm_group>
<external_deployment_id>ESC-Deployement-Id</external_deployment_id>
<internal_deployment_id>Client-Deployment-Id</internal_deployment_id>
</esc_event>
Third and Final Callback Notification
ESC will do a callback using the “Callback-ESC-Events” URL notifying NORTHBOUND CLIENT that VM is
alive. The payload will be the esc_event payload
with the <event_type>SERVICE_SCALE_UP_COMPLETE</event_type> tag, the <event_source> tag
containing the VM details of the VM that is overloaded and the <vm_deployed> tag with the VM details
of the VM that was deployed part of scale up
<esc_event>
<event_name>VM_OVERLOADED</event_name>
<event_type>SERVICE_SCALE_UP_INIT</event_type>
<event_details>
<summary>2014-01-13 12:37:14.229;threshold:Threshold : 'VM_OVERLOADED_COFFEE' 'Node=external_vm_id:3c5c2523-19e6-4cd1-a0
23c1fd36dc5e6d,CPUSlotStr=0,CPUNum=0,CPUDescr=CPU 0 of module R0' crossed threshold for
'CPU 5 Min Utilization /Average Utilization' value '17' threshold '99'.
</summary>
<threshold>99</threshold>
<time>2014-01-13 12:37:11.199</time>
<value>17</value>
</event_details>
<vm_group>
<vm_instance>
<vm_source>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
98
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_source>
<vm_deployed>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_deployed>
</vm_instance>
99
</vm_group>
<external_deployment_id>ESC-Deployement-Id</external_deployment_id>
<internal_deployment_id>Client-Deployment-Id</internal_deployment_id>
</esc_event>
Service Scale Down
First Callback - Notification: ESC will do a callback using the “Callback-ESC-Events” URL notifying
NORTHBOUND CLIENT that a service scale down is going to happen. The payload will be the esc_event
payload
with the <event_type>SERVICE_SCALE_ DOWN_INIT</event_type> tag and the <event_source> tag
containing the VM details of the VM that is underloaded
<esc_event>
<event_name>VM_UNDERLOADED</event_name>
<event_type>SERVICE_SCALE_DOWN_INIT</event_type>
<event_details>
<summary>2014-01-13 12:37:14.229;threshold:Threshold : 'VM_OVERLOADED_COFFEE' 'Node=external_vm_id:3c5c2523-19e6-4cd1-a0
23c1fd36dc5e6d,CPUSlotStr=0,CPUNum=0,CPUDescr=CPU 0 of module R0' crossed threshold for
'CPU 5 Min Utilization /Average Utilization' value '17' threshold '99'.
</summary>
<threshold>99</threshold>
<time>2014-01-13 12:37:11.199</time>
<value>17</value>
</event_details>
<vm_group>
<vm_instance>
<vm_source>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
100
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_source>
</vm_instance>
</vm_group>
<external_deployment_id>ESC-Deployement-Id</external_deployment_id>
<internal_deployment_id>Client-Deployment-Id</internal_deployment_id>
</esc_event>
Second and Final Callback – Notification
ESC will do a callback using the “Callback-ESC-Events” URL notifying NORTHBOUND CLIENT that the VM
has been undeployed. The payload will be the esc_event payload
with the <event_type>SERVICE_SCALE_ DOWN_COMPLETE</event_type> tag, the <event_source> tag
containing the VM details of the VM that is underloaded and the <vm_undeployed> tag with the VM
details
of the VM that was undeployed part of scale down
<esc_event>
<event_name>VM_UNDERLOADED</event_name>
<event_type>SERVICE_SCALE_DOWN_INIT</event_type>
<event_details>
<summary>2014-01-13 12:37:14.229;threshold:Threshold : 'VM_OVERLOADED_COFFEE' 'Node=external_vm_id:3c5c2523-19e6-4cd1-a0
23c1fd36dc5e6d,CPUSlotStr=0,CPUNum=0,CPUDescr=CPU 0 of module R0' crossed threshold for
'CPU 5 Min Utilization /Average Utilization' value '17' threshold '99'.
</summary>
<threshold>99</threshold>
<time>2014-01-13 12:37:11.199</time>
<value>17</value>
</event_details>
<vm_group>
<vm_instance>
<vm_source>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
101
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_source>
<vm_undeployed>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4-b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_undeployed>
</vm_instance>
</vm_group>
<external_deployment_id>ESC-Deployement-Id</external_deployment_id>
<internal_deployment_id>Client-Deployment-Id</internal_deployment_id>
</esc_event>
102
Service Recovery - First Callback - Notification:
ESC will do a callback using the “Callback-ESC-Events” URL notifying NORTHBOUND CLIENT that a
service recovery is going to happen. The payload will be the esc_event payload
with the <event_type>SERVICE_ RECOVERY_INIT</event_type> tag and the <event_source> tag
containing the VM details of the VM that is down
<esc_event>
<event_name>VM_DOWN</event_name>
<event_type>SERVICE_ RECOVERY_INIT</event_type>
<event_details>
<summary>2014-01-13 12:37:14.229;threshold:Threshold : 'VM_OVERLOADED_COFFEE' 'Node=external_vm_id:3c5c2523-19e6-4cd1-a0
23c1fd36dc5e6d,CPUSlotStr=0,CPUNum=0,CPUDescr=CPU 0 of module R0' crossed
threshold for 'CPU 5 Min Utilization /Average Utilization' value '17' threshold '99'.
</summary>
<threshold>99</threshold>
<time>2014-01-13 12:37:11.199</time>
<value>17</value>
</event_details>
<vm_group>
<vm_instance>
<vm_source>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
103
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_source>
</vm_instance>
</vm_group>
<external_deployment_id>ESC-Deployement-Id</external_deployment_id>
<internal_deployment_id>Client-Deployment-Id</internal_deployment_id>
</esc_event>
Second Callback – Notification
ESC will do a callback using the “Callback-ESC-Events” URL notifying NORTHBOUND CLIENT that a VM
has been undeployed. The payload will be the esc_event payload
with the <event_type>SERVICE_ RECOVERY_UNDEPLOYED</event_type> tag and the <vm_undeployed>
tag containing the VM details of the VM that was undeployed part of recovery
<esc_event>
<event_name>VM_DOWN</event_name>
<event_type>SERVICE_ RECOVERY_ UNDEPLOYED</event_type>
<event_details>
<summary>2014-01-13 12:37:14.229;threshold:Threshold : 'VM_OVERLOADED_COFFEE' 'Node=external_vm_id:3c5c2523-19e6-4cd1-a0
23c1fd36dc5e6d,CPUSlotStr=0,CPUNum=0,CPUDescr=CPU 0 of module R0' crossed
threshold for 'CPU 5 Min Utilization /Average Utilization' value '17' threshold '99'.
</summary>
<threshold>99</threshold>
<time>2014-01-13 12:37:11.199</time>
<value>17</value>
</event_details>
<vm_group>
<vm_instance>
<vm_undeployed>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
104
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_undeployed>
</vm_instance>
</vm_group>
<external_deployment_id>ESC-Deployement-Id</external_deployment_id>
<internal_deployment_id>Client-Deployment-Id</internal_deployment_id>
</esc_event>
Third Callback – Notification
ESC will do a callback using the “Callback-ESC-Events” URL notifying NORTHBOUND CLIENT that a VM
has been deployed. The payload will be the esc_event payload
with the <event_type>SERVICE_ RECOVERY_DEPLOYED</event_type> tag and the <vm_deployed> tag
containing the VM details of the VM that was deployed part of recovery
<esc_event>
<event_name>VM_DOWN</event_name>
<event_type>SERVICE_ RECOVERY_ DEPLOYED</event_type>
<event_details>
<summary>2014-01-13 12:37:14.229;threshold:Threshold : 'VM_OVERLOADED_COFFEE' 'Node=external_vm_id:3c5c2523-19e6-4cd1-a0
23c1fd36dc5e6d,CPUSlotStr=0,CPUNum=0,CPUDescr=CPU 0 of module R0' crossed
threshold for 'CPU 5 Min Utilization /Average Utilization' value '17' threshold '99'.
</summary>
<threshold>99</threshold>
<time>2014-01-13 12:37:11.199</time>
<value>17</value>
</event_details>
<vm_group>
<vm_instance>
105
<vm_deployed>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_deployed>
</vm_instance>
</vm_group>
<external_deployment_id>ESC-Deployement-Id</external_deployment_id>
<internal_deployment_id>Client-Deployment-Id</internal_deployment_id>
</esc_event>
Fourth and Final Callback – Notification
ESC will do a callback using the “Callback-ESC-Events” URL notifying NORTHBOUND CLIENT that the VM
is alive. The payload will be the esc_event payload
with the <event_type> SERVICE_ RECOVERY_COMPLETE</event_type> tag, the <event_source> tag
containing the VM details of the VM that was down, <vm_undeployed> tag with the VM details
of the VM that was undeployed, <vm_deployed> tag with the VM details of the VM that was deployed
part of service recovery
<esc_event>
106
<event_name>VM_DOWN</event_name>
<event_type>SERVICE_ RECOVERY_ UNDEPLOYED</event_type>
<event_details>
<summary>2014-01-13 12:37:14.229;threshold:Threshold : 'VM_OVERLOADED_COFFEE' 'Node=external_vm_id:3c5c2523-19e6-4cd1-a0
23c1fd36dc5e6d,CPUSlotStr=0,CPUNum=0,CPUDescr=CPU 0 of module R0' crossed
threshold for 'CPU 5 Min Utilization /Average Utilization' value '17' threshold '99'.
</summary>
<threshold>99</threshold>
<time>2014-01-13 12:37:11.199</time>
<value>17</value>
</event_details>
<vm_group>
<vm_instance>
<vm_source>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_source>
<vm_undeployed>
107
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_undeployed>
<vm_deployed>
<vm_uuid> VM-UUID </vm_uuid>
<host_uuid>HOST-UUID</host_uuid>
<management_ip_address>10.0.0.1</management_ip_address>
<interfaces>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
108
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
<interface>
<port_uuid>75b326da-90e6-4310-a6a4b7d8171daf45</port_uuid>
<ip_address>10.0.0.1</ip_address>
<mac_address>fa:16:3e:01:ed:13</mac_address>
<subnet_uuid>SUBNET-UUID</subnet_uuid>
<network_uuid>NETWORK-UUID</network_uuid>
<interface>
</interfaces>
</vm_deployed>
</vm_instance>
</vm_group>
<external_deployment_id>ESC-Deployement-Id</external_deployment_id>
<internal_deployment_id>Client-Deployment-Id</internal_deployment_id>
</esc_event>
109
8) VM Operations
Stop a specified VM
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
vm/{vm_name}
Description
Stop a deployed
virtual machine
for a tenant
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
force
Boolean
String
Yes
Callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation - stop
Specifies whether
force is true or
false
URL to be used for
callback
URL to handle
events
notification
Request Example:
POST /v0/SystemAdminTenantId/deployments/vm/VMGROUP_NS1KV__0 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<vm_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
<operation>stop</operation>
<force>false</force>
</vm_operation>
110
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for stop deploymentdetails.Results will
be sent to http://10.85.77.91:9010
Response(callback)
Response Codes
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
esctransaction-id
esc-status-
Style
Header
Type
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
111
code
esc-statusmessage
Header
String
deployment_nam
e
event_type
internal_tenan
t_id
service_name
Body
String
Body
Body
String
String
Body
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
code
A message describing the
response could be a success or
error message
Deployment name of the Service
VM
Indicates VM Stop progress
Internal tenant ID of the VM
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Successfully stopped VM
[NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4_
_0__YESC_WILL_VMGROUP_NS1KV__0]
<?xml version="1.0" encoding="UTF-8"?>
<esc_event
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<event_details/>
<event_type>VM_STOP_COMPLETE</event_type>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_Y…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
<vm_source>
<interfaces>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
112
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interfaces>
<interfaces>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interfaces>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b5…</host_uuid>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWill…</vm_name>
</vm_source>
</esc_event>
113
Start a specified VM
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
vm/{vm_name}
Description
Start a virtual
machine for a
tenant
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
force
Body
Boolean
Yes
Callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation - start
Specifies whether
force is true or
false
URL to be used for
callback
URL to handle
events
notification
Request Example:
POST /v0/SystemAdminTenantId/deployments/vm/VMGROUP_NS1KV__0 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<vm_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
<operation>start</operation>
<force>false</force>
</vm_operation>
Response
114
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for start deploymentdetails.Results
will be sent to http://10.85.77.91:9010
Response(callback)
Response Codes
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
Style
escHeader
transaction-id
Type
String
esc-statuscode
esc-status-
Header
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
115
message
response could be a success or
error message
Deployment name of the Service
VM
deployment_nam Body
e
String
event_type
Body
internal_tenan Body
t_id
service_name
Body
String
String
Indicates VM Start progress
Internal tenant ID of the VM
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
First Callback – Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Started VM
[NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4_
_0__YESC_WILL_VMGROUP_NS1KV__0]
<?xml version="1.0" encoding="UTF-8"?>
<esc_event
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<event_details/>
<event_type>VM_START_STARTED</event_type>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
<vm_source>
<interfaces>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
116
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interfaces>
<interfaces>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interfaces>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b5...</host_uuid>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWilly…</vm_name>
</vm_source>
</esc_event>
Second Callback - Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Successfully started VM
[NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4_
_0__YESC_WILL_VMGROUP_NS1KV__0].
<?xml version="1.0" encoding="UTF-8"?>
<esc_event
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<event_details/>
<event_type>VM_START_COMPLETE</event_type>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_Y…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
<vm_source>
<interfaces>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
117
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interfaces>
<interfaces>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interfaces>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b526…</host_uuid>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWilly…</vm_name>
</vm_source>
</esc_event>
118
Reboot a specified VM
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
vm/{vm_name}
Description
Reboot a
virtual
machine for
a tenant
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
force
Boolean
String
Yes
callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation - reboot
Specifies whether
force is true or
false
URL to be used for
callback
URL to handle
events
notification
Request Example:
POST /v0/SystemAdminTenantId/deployments/vm/VMGROUP_NS1KV__0 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<vm_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
<operation>reboot</operation>
<force>false</force>
</vm_operation>
119
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for reboot deploymentdetails.Results
will be sent to http://10.85.77.91:9010
Response(callback)
Response Codes
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
Style
escHeader
transaction-id
Type
String
esc-statuscode
String
Header
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
120
esc-statusmessage
Header
String
A message describing the
response could be a success or
error message
Deployment name of the Service
VM
deployment_nam Body
e
String
event_type
Body
internal_tenan Body
t_id
service_name
Body
String
String
Indicates VM reboot progress
Internal tenant ID of the VM
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
First Callback – Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Rebooted VM
[NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4_
_0__YESC_WILL_VMGROUP_NS1KV__0]
<?xml version="1.0" encoding="UTF-8"?>
<esc_event
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<event_details/>
<event_type> VM_REBOOT_REBOOTED</event_type>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
<vm_source>
<interfaces>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
121
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interfaces>
<interfaces>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interfaces>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b5...</host_uuid>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWilly…</vm_name>
</vm_source>
</esc_event>
Second Callback - Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Successfully rebooted VM
[NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4_
_0__YESC_WILL_VMGROUP_NS1KV__0].
<?xml version="1.0" encoding="UTF-8"?>
<esc_event
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<event_details/>
<event_type>VM_REBOOT_COMPLETE</event_type>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_Y…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
<vm_source>
<interfaces>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
122
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interfaces>
<interfaces>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interfaces>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b526…</host_uuid>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWilly…</vm_name>
</vm_source>
</esc_event>
123
Disable VM Monitoring on a specified VM
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
vm/{vm_name}
Description
Disable
monitoring
on a virtual
machine for
a tenant
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
force
Boolean
String
Yes
callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation disable_maintenanc
e
Specifies the
force option to
false
URL to be used for
callback
URL to handle
events
notification
Request Example:
POST /v0/SystemAdminTenantId/deployments/vm/VMGROUP_NS1KV__0 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<vm_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
124
<operation>disable_maintenance</operation>
<force>false</force>
</vm_operation>
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for disable_maintenance
deploymentdetails.Results will be sent to http://10.85.77.91:9010
Response(callback)
Response Codes
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
esc-
Style
Header
Type
String
Description
A unique internal transaction ID
125
transaction-id
esc-statuscode
esc-statusmessage
Header
String
Header
String
deployment_nam
e
event_type
internal_tenan
t_id
service_name
Body
String
Body
Body
String
String
Body
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success or
error message
Deployment name of the Service
VM
Indicates VM monitor status
Internal tenant ID of the VM
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Unset monitor completed successfully
<?xml version="1.0" encoding="UTF-8"?>
<esc_event
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<event_details/>
<event_type>VM_MONITOR_UNSET</event_type>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_Y…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
<vm_source>
<interfaces>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
126
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interfaces>
<interfaces>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interfaces>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b5…</host_uuid>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWill…</vm_name>
</vm_source>
</esc_event>
127
Enable VM Monitoring on a specified VM
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
vm/{vm_name}
Description
Enable
monitoring
on a virtual
machine for
a tenant
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
force
Boolean
String
Yes
callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation enable_maintenance
Specifies the
force option to
false
URL to be used for
callback
URL to handle
events
notification
Request Example:
POST /v0/SystemAdminTenantId/deployments/vm/VMGROUP_NS1KV__0 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<vm_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
<operation>enable_maintenance</operation>
128
<force>false</force>
</vm_operation>
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for enable_maintenance
deploymentdetails.Results will be sent to http://10.85.77.91:9010
Response(callback)
Response Codes
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
esctransaction-id
Style
Header
Type
String
Description
A unique internal transaction ID
generated by ESC for every
129
esc-statuscode
esc-statusmessage
Header
String
Header
String
deployment_nam
e
event_type
internal_tenan
t_id
service_name
Body
String
Body
Body
String
String
Body
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
request
Code representing Http status
code
A message describing the
response could be a success or
error message
Deployment name of the Service
VM
Indicates VM monitor status
Internal tenant ID of the VM
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
First Callback – Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Set monitor completed successfully
<?xml version="1.0" encoding="UTF-8"?>
<esc_event
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<event_details/>
<event_type>VM_MONITOR_SET</event_type>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_Y…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
<vm_source>
<interfaces>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
130
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interfaces>
<interfaces>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interfaces>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b5…</host_uuid>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWill…</vm_name>
</vm_source>
</esc_event>
Second Callback – VM alive Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: VM
[NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4_
_0__YESC_WILL_VMGROUP_NS1KV__0] is alive.
<?xml version="1.0" encoding="UTF-8"?>
<esc_event
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<event_details/>
<event_type>VM_MONITOR_SET_COMPLETE</event_type>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_Y…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
<vm_source>
<interfaces>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
131
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interfaces>
<interfaces>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interfaces>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b526…</host_uuid>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWilly…</vm_name>
</vm_source>
</esc_event>
132
9) VNF Operations
Stop Service
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
service/{internal_deployment_id}
Description
Stop a deployed
service for a
tenant
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
Callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation - stop
URL to be used for
callback
URL to handle
events
notification
Request Example:
POST
/v0/SystemAdminTenantId/deployments/service/SystemAdminTenantIddepWillyescNS1
KVNS1KV_WILL_YESC1.4 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<service_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
<operation>stop</operation>
</service_operation>
Response
133
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for stop deployments.Results will be
sent to http://10.85.77.91:9010.
Response(callback)
Response Codes
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
Style
escHeader
transaction-id
Type
String
esc-statuscode
esc-status-
Header
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
134
message
deployment_nam Body
e
internal_tenan Body
t_id
service_name
Body
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
String
String
response could be a success or
error message
Deployment name of the Service
VM
Internal tenant ID of the
Virtual Machine
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
First Callback – Notification one callback for each VM that is successfully stop
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: VM successfully stopped
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<host_uuid>8ccdfc8e02fabad4b3205e9f135a118cc0b8cc6489dede7a99de6…</host_uuid>
<host_name>my-ucs-4</host_name>
<vm_uuid>35c2fd9d-b246-40c2-afc3-f1ebac7585cb</vm_uuid>
<interfaces>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.114</ip_address>
<mac_address>FA:16:3E:73:19:F9</mac_address>
<nic_id>0</nic_id>
<port_uuid>c970d093-48a1-4899-ad21-aaee614a5dbc</port_uuid>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.97</ip_address>
<mac_address>fa:16:3e:6c:76:21</mac_address>
<nic_id>1</nic_id>
<port_uuid>f4afa5aa-ac9a-4005-a2a2-d4b4b4e0fe83</port_uuid>
135
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
</interfaces>
<sharedIps>
<nic_id>0</nic_id>
<shared_ip>192.168.0.113</shared_ip>
</sharedIps>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__38628__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__1</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>VM_STOPPED</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
Second Callback - Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Service group suspension completed successfully
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b52…</host_uuid>
<host_name>my-ucs-5</host_name>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<interfaces>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
136
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
</interfaces>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__0</vm_name>
</deployment_details>
<deployment_details>
<host_uuid>8ccdfc8e02fabad4b3205e9f135a118cc0b8cc6489dede7a99de601c</host_uuid>
<host_name>my-ucs-4</host_name>
<vm_uuid>35c2fd9d-b246-40c2-afc3-f1ebac7585cb</vm_uuid>
<interfaces>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.114</ip_address>
<mac_address>FA:16:3E:73:19:F9</mac_address>
<nic_id>0</nic_id>
<port_uuid>c970d093-48a1-4899-ad21-aaee614a5dbc</port_uuid>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.97</ip_address>
<mac_address>fa:16:3e:6c:76:21</mac_address>
<nic_id>1</nic_id>
<port_uuid>f4afa5aa-ac9a-4005-a2a2-d4b4b4e0fe83</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
</interfaces>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__38628__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__1</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>SERVICE_STOPPED</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
137
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
Start Service
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
service/{internal_deployment_id}
Description
Start a deployed
service for a
tenant
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
Callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation - start
URL to be used for
callback
URL to handle
events
notification
Request Example:
138
POST
/v0/SystemAdminTenantId/deployments/service/SystemAdminTenantIddepWillyescNS1
KVNS1KV_WILL_YESC1.4 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<service_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
<operation>start</operation>
</service_operation>
Response
Response Codes
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for start deployments.Results will be
sent to http://10.85.77.91:9010.
Response(callback)
Response Codes
139
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
Style
escHeader
transaction-id
Type
String
esc-statuscode
esc-statusmessage
Header
String
Header
String
deployment_nam Body
e
internal_tenan Body
t_id
service_name
Body
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
String
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success or
error message
Deployment name of the Service
VM
Internal tenant ID of the
Virtual Machine
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
First Callback – Notification one callback for each VM that is successfully started and one
callback for each VM that received VM Alive event
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: VM successfully started
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<vm_name>NS1KV_WILL_YESC__38628__admin__SystemAdminTenantIddepWillye
scNS1KVNS1KV_WILL_YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__1</vm_name>
140
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>VM_STARTED</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillye
scNS1KVNS1KV_WILL_YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__0</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>VM_STARTED</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
141
ESC-Status-Message: VM_Alive event received after started, VM ID:
[NS1KV_WILL_YESC__38628__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL
_YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__1]
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<host_uuid>8ccdfc8e02fabad4b3205e9f135a118cc0b8cc6489dede7a99de601c<
/host_uuid>
<host_name>my-ucs-4</host_name>
<vm_uuid>35c2fd9d-b246-40c2-afc3-f1ebac7585cb</vm_uuid>
<interfaces>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.114</ip_address>
<mac_address>FA:16:3E:73:19:F9</mac_address>
<nic_id>0</nic_id>
<port_uuid>c970d093-48a1-4899-ad21-aaee614a5dbc</port_uuid>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.97</ip_address>
<mac_address>fa:16:3e:6c:76:21</mac_address>
<nic_id>1</nic_id>
<port_uuid>f4afa5aa-ac9a-4005-a2a2-d4b4b4e0fe83</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
</interfaces>
<sharedIps>
<nic_id>0</nic_id>
<shared_ip>192.168.0.113</shared_ip>
</sharedIps>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__38628__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__1</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>START_SERVICE_VM_ALIVE</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
142
<internal_tenant_id>SystemAdminTenantId
</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: VM_Alive event received after started, VM ID:
[NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4_
_0__YESC_WILL_VMGROUP_NS1KV__0]
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b5262d</host_uuid>
<host_name>my-ucs-5</host_name>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<interfaces>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
</interfaces>
<sharedIps>
<nic_id>0</nic_id>
<shared_ip>192.168.0.113</shared_ip>
</sharedIps>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__0</vm_name>
</deployment_details>
143
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>START_SERVICE_VM_ALIVE</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
Second Callback - Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Service group started successfully
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b5262d</host_uuid>
<host_name>my-ucs-5</host_name>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<interfaces>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
144
</interface>
</interfaces>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__0</vm_name>
</deployment_details>
<deployment_details>
<host_uuid>8ccdfc8e02fabad4b3205e9f135a118cc0b8cc6489dede7a99de601c</host_uuid>
<host_name>my-ucs-4</host_name>
<vm_uuid>35c2fd9d-b246-40c2-afc3-f1ebac7585cb</vm_uuid>
<interfaces>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.114</ip_address>
<mac_address>FA:16:3E:73:19:F9</mac_address>
<nic_id>0</nic_id>
<port_uuid>c970d093-48a1-4899-ad21-aaee614a5dbc</port_uuid>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.97</ip_address>
<mac_address>fa:16:3e:6c:76:21</mac_address>
<nic_id>1</nic_id>
<port_uuid>f4afa5aa-ac9a-4005-a2a2-d4b4b4e0fe83</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
</interfaces>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__38628__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__1</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>START_SERVICE_SERVICE_ACTIVE</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
145
Reboot Service
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
service/{internal_deployment_id}
Description
Reboot a deployed
service for a
tenant
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
Callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation - reboot
URL to be used for
callback
URL to handle
events
notification
Request Example:
POST
/v0/SystemAdminTenantId/deployments/service/SystemAdminTenantIddepWillyescNS1
KVNS1KV_WILL_YESC1.4 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<service_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
<operation>reboot</operation>
</service_operation>
Response
Response Codes
146
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for reboot deployments.Results will be
sent to http://10.85.77.91:9010.
Response(callback)
Response Codes
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
esctransaction-id
esc-statuscode
esc-statusmessage
Style
Header
Type
String
Header
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success or
error message
147
deployment_nam Body
e
internal_tenan Body
t_id
service_name
Body
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
String
String
Deployment name of the Service
VM
Internal tenant ID of the
Virtual Machine
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
First Callback – Notification one callback for each VM that is successfully rebooted and one
callback for each VM that received VM Alive event
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: VM successfully rebooted
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWill…</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>VM_REBOOTED</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29e-f194f12a…</external_deployment_id>
<external_service_registration_id>b37aad30-cbe…</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_Y…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
148
ESC-Status-Code: 200
ESC-Status-Message: VM_Alive event received after rebooted, VM ID:
[NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4_
_0__YESC_WILL_VMGROUP_NS1KV__0]
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b5262d</host_uuid>
<host_name>my-ucs-5</host_name>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<interfaces>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
</interfaces>
<sharedIps>
<nic_id>0</nic_id>
<shared_ip>192.168.0.113</shared_ip>
</sharedIps>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__0</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>REBOOT_SERVICE_VM_ALIVE</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
149
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
Second Callback - Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Service group rebooted successfully
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<host_uuid>2c5f08eb9eda6981813dd7a2fd68b13f6dceed41ebb3e2b0b6b5262d</host_uuid>
<host_name>my-ucs-5</host_name>
<vm_uuid>ed9e550d-7473-4d73-b2e5-8e43955f0632</vm_uuid>
<interfaces>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.96</ip_address>
<mac_address>fa:16:3e:af:1f:99</mac_address>
<nic_id>1</nic_id>
<port_uuid>02973060-3749-4e44-b19c-b68f0ab930d6</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.112</ip_address>
<mac_address>fa:16:3e:73:19:f8</mac_address>
<nic_id>0</nic_id>
<port_uuid>716cbee5-81d1-464c-9070-3950996d99df</port_uuid>
<shared_ip>192.168.0.113</shared_ip>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
</interfaces>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__17023__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__0</vm_name>
</deployment_details>
<deployment_details>
150
<host_uuid>8ccdfc8e02fabad4b3205e9f135a118cc0b8cc6489dede7a99de601c</host_uuid>
<host_name>my-ucs-4</host_name>
<vm_uuid>35c2fd9d-b246-40c2-afc3-f1ebac7585cb</vm_uuid>
<interfaces>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.114</ip_address>
<mac_address>FA:16:3E:73:19:F9</mac_address>
<nic_id>0</nic_id>
<port_uuid>c970d093-48a1-4899-ad21-aaee614a5dbc</port_uuid>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.97</ip_address>
<mac_address>fa:16:3e:6c:76:21</mac_address>
<nic_id>1</nic_id>
<port_uuid>f4afa5aa-ac9a-4005-a2a2-d4b4b4e0fe83</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
</interfaces>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__38628__admin__SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_
YESC1.4__0__YESC_WILL_VMGROUP_NS1KV__1</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>REBOOT_SERVICE_SERVICE_ACTIVE</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
151
Disable Monitoring for VNF
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
service/{internal_deployment_id}
Description
Disable monitoring
for VNF
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
Callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation –
disable_maintenanc
e
URL to be used for
callback
URL to handle
events
notification
Request Example:
POST
/v0/SystemAdminTenantId/deployments/service/SystemAdminTenantIddepWillyescNS1
KVNS1KV_WILL_YESC1.4 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<service_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
<operation>disable_maintenance</operation>
</service_operation>
Response
Response Codes
152
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for disable_maintenance deployments.
Results will be sent to http://10.85.77.91:9010.
Response(callback)
Response Codes
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
Style
escHeader
transaction-id
Type
String
esc-statuscode
esc-statusmessage
Header
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success or
error message
153
deployment_nam Body
e
internal_tenan Body
t_id
service_name
Body
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
String
String
Deployment name of the Service
VM
Internal tenant ID of the
Virtual Machine
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
First Callback – Notification one callback for each VM that has unset monitoring successfully
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Unset Monitoring VM successfully
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<host_uuid>8ccdfc8e02fabad4b3205e9f135a118cc0b8cc6489dede7a99de60…</host_uuid>
<host_name>my-ucs-4</host_name>
<vm_uuid>35c2fd9d-b246-40c2-afc3-f1ebac7585cb</vm_uuid>
<interfaces>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.114</ip_address>
<mac_address>FA:16:3E:73:19:F9</mac_address>
<nic_id>0</nic_id>
<port_uuid>c970d093-48a1-4899-ad21-aaee614a5dbc</port_uuid>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.97</ip_address>
<mac_address>fa:16:3e:6c:76:21</mac_address>
<nic_id>1</nic_id>
<port_uuid>f4afa5aa-ac9a-4005-a2a2-d4b4b4e0fe83</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
</interfaces>
154
<sharedIps>
<nic_id>0</nic_id>
<shared_ip>192.168.0.113</shared_ip>
</sharedIps>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__38628__admin__SystemAdminTenantIddepWilly…</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>MAINTENANCE_SERVICE_STAGE_VM_MONITOR_UNSET</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescN…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_Y…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
Second Callback - Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: SVC_UNSET_MONITOR_WORKFLOW_STATE_MACHINE completed successfully
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>MAINTENANCE_SERVICE_STAGE_SERVICE_MONITOR_UNSET</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
155
156
Enable Monitoring for VNF
Verb
POST
URI
/v0/{internal_tenant_id}/deployments/
service/{internal_deployment_id}
Description
Enable monitoring
for VNF
Request
Request Parameters:
Name
Style
Type
Req
uir
ed
client-transaction-id
Header
String
No
operation
Body
String
Yes
Callback
Header
String
Yes
Callback-ESC-Events
Header
String
Yes
Description
Transaction ID
supplied by ESC NB
client used for
debugging and
logging
Specifies the
operation –
enable_maintenance
URL to be used for
callback
URL to handle
events
notification
Request Example:
POST
/v0/SystemAdminTenantId/deployments/service/SystemAdminTenantIddepWillyescNS1
KVNS1KV_WILL_YESC1.4 HTTP/1.1
Host: client.host.com
Content-Type: application/xml
Accept: application/xml
Client-Transaction-Id: 123456
Callback:/
<?xml version='1.0' encoding='UTF-8'?>
<service_operation xmlns='urn:ietf:params:xml:ns:netconf:base:1.0'>
<operation>enable_maintenance</operation>
</service_operation>
Response
Response Codes
157
Normal Response Code(s): 200
Error Response Code(s): 400 Bad Request, 500 Internal Server Error, 404
Resource Not found
Response Parameters
Name
esc-transaction-id
Style
Header
Type
String
esc-request-status
Header
String
Description
A unique internal
transaction ID
generated by ESC for
every request
A message describing
the status of the
request
Response Parameters Example
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 0
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Request-Status: Request submitted for enable_maintenance deployments.
Results will be sent to http://10.85.77.91:9010.
Response(callback)
Response Codes
Normal Response Code: 200
Error Response Code(s): Internal Server Error (500)
Response(callback)Parameters
Name
Style
escHeader
transaction-id
Type
String
esc-statuscode
esc-statusmessage
Header
String
Header
String
Description
A unique internal transaction ID
generated by ESC for every
request
Code representing Http status
code
A message describing the
response could be a success or
error message
158
deployment_nam Body
e
internal_tenan Body
t_id
service_name
Body
String
service
_version
Body
String
ip_address
mac_address
vm_uuid
vm_group_name
vm_name
Body
Body
Body
Body
Body
String
String
String
String
String
String
String
Deployment name of the Service
VM
Internal tenant ID of the
Virtual Machine
Service name of the registered
service used by the VM
Service version of the
registered service used by the
VM
IP address of the interface
MAC address of the interface
VM UUID in OpenStack
VM group name
VM name
First Callback – Notification one callback for each VM that has set monitoring successfully
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: Monitoring VM successfully.
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_details>
<host_uuid>8ccdfc8e02fabad4b3205e9f135a118cc0b8cc6489dede7a99de6…</host_uuid>
<host_name>my-ucs-4</host_name>
<vm_uuid>35c2fd9d-b246-40c2-afc3-f1ebac7585cb</vm_uuid>
<interfaces>
<interface>
<network_uuid>7af5c7df-6246-4d53-91bd-aa12a1607656</network_uuid>
<ip_address>192.168.0.114</ip_address>
<mac_address>FA:16:3E:73:19:F9</mac_address>
<nic_id>0</nic_id>
<port_uuid>c970d093-48a1-4899-ad21-aaee614a5dbc</port_uuid>
<subnet_uuid>7cb6815e-3023-4420-87d8-2b10efcbe14e</subnet_uuid>
</interface>
<interface>
<network_uuid>c5a30da2-be89-40c9-bbe2-ba49136d8f89</network_uuid>
<ip_address>3.3.3.97</ip_address>
<mac_address>fa:16:3e:6c:76:21</mac_address>
<nic_id>1</nic_id>
<port_uuid>f4afa5aa-ac9a-4005-a2a2-d4b4b4e0fe83</port_uuid>
<subnet_uuid>f6b3a6c8-f5e4-4d00-b6f3-cf0e42a96ef5</subnet_uuid>
</interface>
</interfaces>
159
<sharedIps>
<nic_id>0</nic_id>
<shared_ip>192.168.0.113</shared_ip>
</sharedIps>
<vm_group_name>YESC_WILL_VMGROUP_NS1KV</vm_group_name>
<vm_name>NS1KV_WILL_YESC__38628__admin__SystemAdminTenantIddepWill…</vm_name>
</deployment_details>
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>MAINTENANCE_SERVICE_STAGE_VM_ALIVE</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS…</internal_deployment_id>
<internal_service_registration_id>NS1KV_WILL_Y…</internal_service_registration_id>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
Second Callback - Notification
HTTP/1.1 200 OK
Content-Type: application/xml; charset=UTF-8
Content-Length: 200
Date: Sun, 1 Jan 2011 9:00:00 GMT
ESC-Transaction-Id: 123456
ESC-Status-Code: 200
ESC-Status-Message: SVC_SET_MONITOR_WORKFLOW_STATE_MACHINE completed successfully
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<deployment_name>depWillyescNS1KV</deployment_name>
<deployment_stage>MAINTENANCE_SERVICE_STAGE_SERVICE_ACTIVE</deployment_stage>
<external_deployment_id>a39f015b-4e8c-4d72-a29ef194f12a1f3b</external_deployment_id>
<external_service_registration_id>b37aad30-cbe1-4c83-b09c536c3941d89e</external_service_registration_id>
<external_tenant_id>13ba276203b748aebc48f4643c47fcd2</external_tenant_id>
<internal_deployment_id>SystemAdminTenantIddepWillyescNS1KVNS1KV_WILL_YESC1.4</interna
l_deployment_id>
<internal_service_registration_id>NS1KV_WILL_YESC1.4</internal_service_registration_id
>
<internal_tenant_id>SystemAdminTenantId</internal_tenant_id>
<service_name>NS1KV_WILL_YESC</service_name>
<service_version>1.4</service_version>
</deployment>
160
161
© Copyright 2026 Paperzz