Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • a standard template to the Appliance Manager using the Appliance Manager API
  • an OVA file to the Appliance Manager using the Appliance Manager API

Template

...

files

To upload a standard template you will need:

...

To upload an OVA file you will need:
  • diskFile
    • OVA format with a filename extension of ".ova"
    • can contain multiple disks
    • no need to provide template metadata, e.g. disk capacity, because this is in the OVF descriptor file

Preparatory

...

steps

Step 1. Retrieve the appliance manager base URI
Code Block
curl -X GET https://myabiquo/api/admin/datacenters/1/remoteservices

...

Code Block
   {
      "id": 3, 
      "links": [
        {
          "href": "https://myabiquo:443/api/admin/remoteservices/3", 
          "rel": "edit", 
          "title": "APPLIANCEMANAGER", 
          "type": "application/vnd.abiquo.remoteservice+json"
        }, 
        {
          "href": "https://myabiquo:443/api/admin/remoteservices/3/action/check", 
          "rel": "check", 
          "title": "check", 
          "type": ""
        }, 
        {
          "href": "https://myabiquo:443/api/admin/datacenters/1", 
          "rel": "datacenter", 
          "title": "BCDC", 
          "type": "application/vnd.abiquo.datacenter+json"
        }
      ], 
      "status": 1, 
      "type": "APPLIANCE_MANAGER", 
      "uri": "https://myabiquo:443/am", 
      "uuid": "Abiquo"
    }, 

Step 2. For a standard template, specify the template meta-data in JSON or XML

Sample JSON template

Code Block
{
"name":"a new template",
"description":"this is a test",
"categoryName":"simpaticos",
"diskFileFormat":"VMDK_FLAT",
"requiredCpu":1,
"requiredHDInMB":2,
"requiredRamInMB":256
}

...

Tip

TIP: use qemu-img to determine the diskFileFormat and requiredHDInMB (=capacity for compressed formats)

Upload

...

standard template example

The following example shows how to upload a single disk file named 'disk.vmdk' and metadata stored in file 'template.json' for the enterprise with id '1'

...

In the returned 'Location' header there is a link to reference the template that was created.

Check the

...

upload

Get the metadata:

Code Block
$ curl --verbose -uadmin:xabiquo -X GET "http://10.60.1.223/am/erepos/1/templates/1/10.60.1.223/1fc06416-6696-4b55-9d7c-d58bc51aaf5a/disk.vmdk"

...

Code Block
$ curl --verbose -uadmin:xabiquo -X GET "http://10.60.1.223/am/files/1/10.60.1.223/1fc06416-6696-4b55-9d7c-d58bc51aaf5a/disk.vmdk"

Identify

...

your template in the API

The relative path (1/10.60.1.223/1fc06416-6696-4b55-9d7c-d58bc51aaf5a/disk.vmdk) should be used to identify the virtual machine template you created in the abiquo API

...

Code Block
<virtualmachinetemplate>
....
    <link title="a new template" rel="edit"
    type="application/vnd.abiquo.virtualmachinetemplate+xml"
    href="http://localhost:80/api/admin/enterprises/1/datacenterrepositories/1/virtualmachinetemplates/32" />
    <link rel="template"
    href="http://10.60.1.223:80/am/erepos/1/templates/1/10.60.1.223/1fc06416-6696-4b55-9d7c-d58bc51aaf5a/disk.vmdk" />
    <link rel="diskfile"
    href="http://10.60.1.223:80/am/files/1/10.60.1.223/1fc06416-6696-4b55-9d7c-d58bc51aaf5a/disk.vmdk" />
...
</virtualmachinetemplate>

Upload OVA

...

template example

To upload an OVA template, start by reading the above sections that describe the #Template Files and the #Preparatory Steps.

...