User Tools

Site Tools


nova-rdp

This is an old revision of the document!


Nova RDP Support

Nova currently provides support for VNC and SPICE graphical consoles. VNC in particular is the protocol employed natively by most popular hypervisors supported by Nova. Microsoft Hyper-V in this context is a remarkable exception, as it employs the Remote Desktop Protocol (RDP) for graphical console access, based on Open Specifications and implemented by various open source projects.

Getting console connection details

Nova includes internally the required proxy solutions for VNC (novnc, xvpvnc) and SPICE, but this is not the case for RDP. Beside that, it's also desirable to leave to third party the ability to choose a custom graphical console UI solution not necessarily included with Nova. A public API has been provided to retrieve the relevant information by providing a valid console authentication token.

Get console connection info: V2 API

Verb URI Description
GET /console-auth-tokens/{token_id}/action Gets the connection info for the specified console authentication token.

Normal Response Code(s): 200

Error Response Code(s): badRequest (400), unauthorized (401), itemNotFound (404)

Example. Get console connection request: XML

<?xml version="1.0" encoding="UTF-8"?>
<os-getConsoleConnectInfo/>

Example. Get console connection request: JSON

{
    "os-getConsoleConnectInfo": null
}

Example. Get console connection response: XML

<?xml version='1.0' encoding='UTF-8'?>
<console>
    <instance_uuid>b48316c5-71e8-45e4-9884-6c78055b9b13</instance_uuid>
    <host>localhost</host>
    <port>3389</port>
    <internal_access_path>51af38c3-555e-4884-a314-6c8cdde37444</internal_access_path>
</console>

Example. Get console connection response: JSON

 {
    "console": {
        "instance_uuid": "b48316c5-71e8-45e4-9884-6c78055b9b13",
        "host": "localhost",
        "port": 3389,
        "internal_access_path": "51af38c3-555e-4884-a314-6c8cdde37444"
    }
} 

Get console connection info: V3 API

Verb URI Description
GET /servers/id/action gets the connection info for the specified server.

Normal Response Code(s): 200

Error Response Code(s): badRequest (400), unauthorized (401), itemNotFound (404)

Example. Get console connection request: XML

<?xml version="1.0" encoding="UTF-8"?>
<get_console_connect_info/>

Example. Get console connection request: JSON

{
    "get_console_connect_info": null
}

Example. Get console connection response: XML

Same output as in the V2 API example

Example. Get console connection response: JSON

Same output as in the V2 API example

nova-rdp.1387759578.txt.gz · Last modified: 2013/12/23 02:46 by admin