voxel.voxcloud.create

Provision a new VoxCLOUD VM.

Parameters

hostname (required)
Hostname for the new device. This must contain only letters, numbers, dashes, and dots, and must begin/end with a letter or number. The use of a fully qualified domain name is recommended.
disk_size (required)
Total amount of disk space (in GB) to allocate to the VM (5-100), including space that will be used for a swap partition.
facility (required)
Datacenter facility code, available via voxel.voxcloud.facilities.list or voxel.voxservers.facilities.list.
image_id (required)
Operating system image identifier; use voxel.images.list to get the list of available images.
processing_cores (required)
Number of processing cores to allocate to the VM. Must be a positive integer. Maximum value depends on the account type; contact Voxel if you need assistance.
postinstall_script (optional)
Postinstall script to be run after a VoxSTRUCTURE device is successfully provisioned. Must contain the complete contents of the script to be run.
swap_space (optional)
Swap space (in GB) to allocate to the VoxSTRUCTURE device (from within the total disk allocation). 1 GB per processor core by default. Must be nonzero integer.
kickstart (optional)
Either freeform text in the format of a "kickstart" file, or an "http(s)://" type URL to a kickstart file.

Authentication Settings

admin_password (optional)
Password for administrative user (root) access. A password must be at least five characters, must contain a number, an upper case letter, and cannot be based on dictionary words. If a password is not specified, one will be generated for you automatically. Available in voxel.devices.list.
console_password (optional)
Password for remote console. A password must be at least five characters, must contain a number, an upper case letter, and cannot be based on dictionary words. If a password is not specified, one will be generated for you automatically. Available in voxel.devices.list.
ssh_username (optional)
Username for SSH access.
ssh_password (optional)
Password for SSH access. A password must be at least five characters, must contain a number, an upper case letter, and cannot be based on dictionary words. If a password is not specified, one will be generated for you automatically. Available in voxel.devices.list.
voxel_access (optional)
Allow Voxel administrative access to the machine. Should be either "true" or "false". Defaults to "false"

Network Settings

backend_ip (optional)
Backend IP address to assign to the VoxSTRUCTURE device --- must be chosen from the customer's private VLAN assignment.
frontend_ip (optional)
Public-facing IP address to assign to the VoxSTRUCTURE device --- must be chosen from the customer's public VLAN assignment.

Chef

chef_client (optional)Labs
Name of the chef client to use for authentication against chef.
chef_run_list (optional)Labs
Chef recipes and roles to install and manage on the chef node. The format of a valid runlist is a comma delimited list of recipes and roles such as chef_run_list="recipe[mongo],role[webserver]".
chef_node (optional)Labs
Name of the chef node to be manipulated.
chef_server (optional)Labs
Device ID of a Chef Server to use in lieu of the default.
chef_env (optional)Labs
Chef environment that your node will be associated with.

Example Response

<rsp stat="ok">
  <device>
     <id>1234</id>
     <last_update>1235386846</last_update>
     <status>QUEUED</status>
  </device>
</rsp>

Notes

This method will queue a new VoxCLOUD virtual machine for provisioning. The VM should be provisioned within several minutes. To check on the status of your new VM's provisioning, use voxel.voxcloud.status.

Method Specific Error Codes

401: Customer VoxSTRUCTURE quota reached
According to quotas, the customer may not allocate more devices of the desired type. Contact agile-support@internap.com for help adjusting quotas.
206: Failed acquiring resource
A resource required to perform the action could not be obtained. Please try again or contact Voxel for assistance.
501: User needs Labs access
This method may only be accessed by customers who have been granted Voxel Labs access. Contact agile-support@internap.com for details.
129: Invalid chef runlist
The chef runlist specified is invalid. A valid runlist should be of the form: recipe[ops::mongo],role[ntp_dev1]
130: Unknown chef node
The chef node specified is invalid. Ensure that the node name is specified correctly.
128: Invalid chef client
The chef client provided is invalid. Ensure that the client name is specified correctly.
124: Unknown chef environment
The chef environment specified was not found in the chef server.
127: Unknown chef client
The chef client specified was not found in the chef server or its validation key is missing in ubersmith. Use voxel.chef.clients.create to create a new client.
125: Unknown chef server
The chef server specified was not found in ubersmith.