Nothing Special   »   [go: up one dir, main page]

OnApp+6 7+Federation+Guide

Download as pdf or txt
Download as pdf or txt
You are on page 1of 142

OnApp Cloud 6.

7 Federation Guide
OnApp Cloud 6.7 Federation Guide

Table of Contents

1 Sellers.................................................................................................................................... 7
2 Buyers ................................................................................................................................... 8
3 Users ..................................................................................................................................... 9
4 Other .................................................................................................................................... 10
5 API ....................................................................................................................................... 11
6 What's New ......................................................................................................................... 12
6.1 OnApp 6.5 Edge 3 ............................................................................................................ 12
6.2 OnApp 6.3......................................................................................................................... 12
6.3 OnApp 6.0......................................................................................................................... 12
6.4 OnApp 5.9......................................................................................................................... 12
6.5 OnApp 5.7......................................................................................................................... 12
6.6 OnApp 5.6......................................................................................................................... 12
6.7 OnApp 5.5......................................................................................................................... 12
6.8 OnApp 5.4......................................................................................................................... 13
6.9 OnApp 5.3......................................................................................................................... 13
6.10 OnApp 5.2 ..................................................................................................................... 13
6.11 OnApp 5.1 ..................................................................................................................... 13
6.12 OnApp 5.0 ..................................................................................................................... 13
6.13 OnApp 4.3 ..................................................................................................................... 14
6.14 OnApp 4.2 ..................................................................................................................... 14
6.15 OnApp 4.1 ..................................................................................................................... 14
6.16 OnApp 4.0 ..................................................................................................................... 14
6.17 OnApp 3.5 ..................................................................................................................... 15
6.18 OnApp 3.4 ..................................................................................................................... 15
6.19 OnApp 3.3.1 .................................................................................................................. 15
7 Document Revisions .......................................................................................................... 17
8 Supported Functionality .................................................................................................... 21
9 How It Works ...................................................................................................................... 22
9.1 How Cloud Motion Works ................................................................................................. 23
9.2 How Federation Support Works ....................................................................................... 23
10 Limitations/Prerequisites............................................................................................... 26
11 Permissions .................................................................................................................... 27
11.1 Federation ..................................................................................................................... 27
11.2 Federation Failed Action ............................................................................................... 27
12 Marketplace T&C ............................................................................................................ 28
12.1 Sellers' Rules ................................................................................................................ 28
12.2 Buyers' Rules ................................................................................................................ 28
13 Licensing ......................................................................................................................... 29
13.1 View License Details ..................................................................................................... 29
14 Market Pricing ................................................................................................................. 30
14.1 Pro Tier: For Production Environments ........................................................................ 30
14.1.1 Hourly Pricing .............................................................................................................................. 30
14.1.2 Pricing Details ............................................................................................................................. 30
15 Sellers .............................................................................................................................. 32
15.1 Configuration ................................................................................................................. 32
15.2 Federated Zone Management ...................................................................................... 32
15.3 API ................................................................................................................................ 32
15.4 Selling Walk-Through.................................................................................................... 32
15.4.1 Step 1. View compute zones ....................................................................................................... 33
15.4.2 Step 2. Select zone ..................................................................................................................... 33

2
OnApp Cloud 6.7 Federation Guide

15.4.3 Step 3. Set compute zone properties .......................................................................................... 33


15.4.4 Step 4. Select pricing tier ............................................................................................................ 34
15.4.5 Step 5. Select certificates ............................................................................................................ 34
15.4.6 Step 6. Specify limits for compute zone resources ..................................................................... 34
15.4.7 Step 7. Review prices for compute zone resources .................................................................... 34
15.4.8 Step 8. Confirm settings .............................................................................................................. 34
15.4.9 Step 9. View federated zone details ............................................................................................ 34
15.5 Configure Cloud ............................................................................................................ 34
15.5.1 1. Add Location Group(s) ............................................................................................................ 35
15.5.2 2. Configure Compute Resources ............................................................................................... 35
15.5.3 3. Configure Data Stores............................................................................................................. 36
15.5.4 4. Configure Networks................................................................................................................. 36
15.5.5 5. Configure Backup Servers ...................................................................................................... 36
15.5.6 6. Create Template Store ............................................................................................................ 36
15.5.7 7. Configure Relations Between Entities ..................................................................................... 37
15.5.8 8. Ensure SSL Certificates Are Valid........................................................................................... 37
15.5.9 9. Configure CloudBoot Integrated Storage ................................................................................ 37
15.6 Seller Pricing Tiers for Compute Zones ........................................................................ 37
15.6.1 Dev Tier: For Non-Critical Workloads.......................................................................................... 38
15.6.2 Pro Tier: For Production Environments ....................................................................................... 39
15.6.3 Tier Requirements....................................................................................................................... 40
15.6.4 Want to set your own pricing? ..................................................................................................... 41
15.7 Edit Federated Zone ..................................................................................................... 41
15.7.1 Edit Federated Zone ................................................................................................................... 41
15.7.2 Edit Buckets for Federated Zone................................................................................................. 44
15.8 Federation Capacity Pricing .......................................................................................... 44
15.8.1 Traditional Pricing Model ............................................................................................................. 45
15.8.2 OnApp Federation Pricing ........................................................................................................... 46
15.9 Make Federated Zone Private ...................................................................................... 47
15.9.1 Making Zone Private Workflow ................................................................................................... 47
15.9.2 Make Zone Private ...................................................................................................................... 48
15.9.3 Generate Trust Token ................................................................................................................. 49
15.9.4 Configure Prices.......................................................................................................................... 49
15.10 Manage Notifications for a Zone ................................................................................... 50
15.10.1 View Notifications .................................................................................................................... 50
15.10.2 Create Notification................................................................................................................... 51
15.10.3 Delete Notification ................................................................................................................... 51
15.11 Disable And Remove Zone From Federation ............................................................... 51
15.11.1 Disable Federated Zones ........................................................................................................ 52
15.11.2 Remove Zones from Federation ............................................................................................. 53
15.12 Add Zones to Federation .............................................................................................. 54
15.12.1 Add Zone to Federation .......................................................................................................... 55
15.13 Check Consumption of Federated Compute Resources .............................................. 59
16 Buyers.............................................................................................................................. 61
16.1 Federated Zone Management ...................................................................................... 61
16.2 Other ............................................................................................................................. 61
16.3 Configuration ................................................................................................................. 61
16.4 API ................................................................................................................................ 61
16.5 Buying Walk-through..................................................................................................... 61
16.5.1 Step 1. View list of zones in Federation ...................................................................................... 62
16.5.2 Step 2. Filter through list of available zones ................................................................................ 62
16.5.3 Step 3. View pricing for zone ...................................................................................................... 62
16.5.4 Step 4. Subscribe to zone ........................................................................................................... 63
16.5.5 Step 5. Fill in zone's details ......................................................................................................... 63
16.5.6 Step 6. Review details................................................................................................................. 63
16.6 Subscribe to Federated Zone ....................................................................................... 63
16.6.1 Subscribe to Federated Zone ...................................................................................................... 64
16.6.2 View Federated Zone .................................................................................................................. 68
16.7 Trust Tokens and Private Federated Zone ................................................................... 70
16.7.1 Subscribe to Private Federated Zone.......................................................................................... 70
16.7.2 Edit Trust Token .......................................................................................................................... 71
16.7.3 Delete Trust Token...................................................................................................................... 71
16.8 Request Location .......................................................................................................... 71
16.9 Notifications .................................................................................................................. 72

3
OnApp Cloud 6.7 Federation Guide

16.9.1 View Notifications ........................................................................................................................ 72


16.9.2 Edit Notifications ......................................................................................................................... 73
16.9.3 Notify Users ................................................................................................................................ 73
16.10 Suspend/Unsuspend Federated Zone .......................................................................... 73
16.10.1 Suspend Federated Zone ....................................................................................................... 73
16.10.2 Unsuspend Federated Zone ................................................................................................... 74
16.11 Unsubscribe from Federated Zone ............................................................................... 74
16.12 Manage Template Groups in Template Store............................................................... 75
16.12.1 Add Local Template Group to Template Store ........................................................................ 76
16.12.2 Assign Template to Local Template Group ............................................................................. 76
16.12.3 Remove Template from Local Template Group ...................................................................... 77
16.12.4 Change Template Price .......................................................................................................... 77
16.12.5 View/Edit/Delete Local Template Group ................................................................................. 77
16.12.6 Add Local Template Group to User's Bucket .......................................................................... 77
16.13 Manage User VSs ......................................................................................................... 78
16.13.1 View User VSs ........................................................................................................................ 78
16.13.2 Manage User VSs ................................................................................................................... 79
16.13.3 Accelerate VS ......................................................................................................................... 79
16.13.4 Purge Content ......................................................................................................................... 80
16.13.5 Report Problem with VS .......................................................................................................... 81
16.13.6 Virtual Server Failed Actions ................................................................................................... 82
16.13.7 IP Report ................................................................................................................................. 83
17 Users ................................................................................................................................ 85
17.1 Deploying Servers Walk-through .................................................................................. 85
17.1.1 Create Server from Wizard ......................................................................................................... 85
17.1.2 Configure Resources .................................................................................................................. 86
17.1.3 Add Recipes ................................................................................................................................ 86
17.1.4 Confirmation ................................................................................................................................ 86
17.2 Move VS to Another Location ....................................................................................... 86
17.2.1 Create virtual server at location that supports Cloud Motion ....................................................... 87
17.2.2 Initialize Cloud Motion ................................................................................................................. 87
17.3 Create VS in Federated Zone ....................................................................................... 88
17.3.1 Step 1 of 6. Cloud Locations ....................................................................................................... 89
17.3.2 Step 2 of 6. Templates ................................................................................................................ 90
17.3.3 Step 3 of 6. Virtual Server Properties .......................................................................................... 90
17.3.4 Step 4 of 5. Resources................................................................................................................ 91
17.3.5 Step 5 of 6. Recipes .................................................................................................................... 92
17.3.6 Step 6 of 6. Confirmation ............................................................................................................ 93
18 Buyers API ...................................................................................................................... 94
18.1 Get List of Federated Resources .................................................................................. 94
18.2 Get Federated Resource Details .................................................................................. 98
18.3 Subscribe to Federated Zones ................................................................................... 102
18.4 Unsubscribe from Federated Zones ........................................................................... 102
18.5 Suspend Zone ............................................................................................................. 103
18.6 Unsuspend Zone ......................................................................................................... 103
18.7 Add Trust Token ......................................................................................................... 103
18.8 Edit Trust Token .......................................................................................................... 104
18.9 Delete Trust Token ..................................................................................................... 104
18.10 Get List of Trust Tokens.............................................................................................. 105
18.11 Add VS in Federation .................................................................................................. 105
18.12 Report a Problem with a VS ....................................................................................... 107
18.13 Get Zone Cloud Score ................................................................................................ 107
18.14 Set Default Firewall Rules........................................................................................... 108
18.15 Edit a Notification for a Zone....................................................................................... 109
18.16 Notify Users ................................................................................................................ 109
18.17 Add a Firewall Rule ..................................................................................................... 110
18.18 Apply Firewall Rules ................................................................................................... 111
18.19 Save Default Firewall Rules ........................................................................................ 111
18.20 Add IP Address ........................................................................................................... 111
18.21 Delete IP Address ....................................................................................................... 112
18.22 Rebuild VS Network .................................................................................................... 112
18.23 Get Zone Uptime Graph .............................................................................................. 113

4
OnApp Cloud 6.7 Federation Guide

18.24 Failed Actions ............................................................................................................. 114


18.24.1 Get List of Failed Actions ...................................................................................................... 114
18.24.2 Get List of Failed Actions for VS ........................................................................................... 114
18.24.3 Get Failed Action Details ....................................................................................................... 115
18.24.4 Get Failed Action Details for VS ............................................................................................ 116
18.24.5 Delete Failed Actions for VS ................................................................................................. 117
18.24.6 Delete Failed Actions ............................................................................................................ 117
18.25 Manage Virtual Server Recipes .................................................................................. 118
18.25.1 Get List of Virtual Server Recipes ......................................................................................... 118
18.25.2 Assign Recipe to Virtual Server ............................................................................................ 120
18.25.3 Remove Recipe from Virtual Server ...................................................................................... 121
18.25.4 Run Recipe on Multiple Virtual Servers................................................................................. 121
18.26 Enable Accelerator for Virtual Server ......................................................................... 122
18.27 Disable Accelerator for Virtual Server ......................................................................... 123
18.28 Purge Files .................................................................................................................. 123
18.29 Purge All Content ........................................................................................................ 124
19 Sellers API ..................................................................................................................... 125
19.1 Add Public Zone to Federation ................................................................................... 125
19.2 Add Private Zone to Federation .................................................................................. 126
19.3 Enable Federated Zone .............................................................................................. 129
19.4 Disable Federated Zone ............................................................................................. 129
19.5 Remove Zone from Federation ................................................................................... 130
19.6 Add Trust Token ......................................................................................................... 130
19.7 Get List of Trust Tokens.............................................................................................. 131
19.8 Remove Trust Token .................................................................................................. 132
19.9 Get Federated Cloud Version ..................................................................................... 132
19.10 Report Problem with VS .............................................................................................. 133
19.11 Create Notification for Zone ........................................................................................ 134
19.12 Delete Notification for Zone ........................................................................................ 134
19.13 Switch Public Zone to Private ..................................................................................... 135
20 General FAQ .................................................................................................................. 136
21 Buyer FAQ ..................................................................................................................... 138
22 Seller FAQ ..................................................................................................................... 140

5
OnApp Cloud 6.7 Federation Guide

• Please contact your account manager to enable Federation on your OnApp Cloud.
• The information in this guide covers the functionality for the latest OnApp release. If
some features described at this guide are missing at your Control Panel, most probably,
you are running an earlier version of OnApp.
Here is the sorted list of the documentation currently available for Federation.

6
OnApp Cloud 6.7 Federation Guide

1 Sellers

• Seller Rules
• Selling Walk-Through
• Configure Cloud
• Add Zones to Federation
• Seller Pricing Tiers for Compute Zones
• Edit Federated Zone
• Manage Notifications for a Zone
• Make Federated Zone Private
• Disable And Remove Zone From Federation

7
OnApp Cloud 6.7 Federation Guide

2 Buyers

• Market Pricing
• Buying Walk-through
• Subscribe to Federated Zone
• Request Location
• Manage User VSs
• Trust Tokens and Private Federated Zone
• Notifications
• Unsubscribe from Federated Zone
• Virtual Service Providers

8
OnApp Cloud 6.7 Federation Guide

3 Users

• Create VS in Federated Zone


• Deploying Servers Walk-through

9
OnApp Cloud 6.7 Federation Guide

4 Other

• How It Works
• How Support Works
• General FAQ
• Seller FAQ
• Buyer FAQ

10
OnApp Cloud 6.7 Federation Guide

5 API

• Sellers API
• Buyers API

11
OnApp Cloud 6.7 Federation Guide

6 What's New

The information in this guide covers the functionality of the latest OnApp release. If some
features described in this guide are missing on your Control Panel, most probably, you
are running an earlier version of OnApp.

6.1 OnApp 6.5 Edge 3


Added new Essential Tier, which was developed for traditional virtual server provider offerings.

6.2 OnApp 6.3


Updated Marketplace Terms and Conditions for Buyers and Sellers.

6.3 OnApp 6.0


Implemented the default acceleration for federation virtual servers.

6.4 OnApp 5.9


• Added the possibility for buyers to assign recipes to multiple virtual servers in
Federation.
• Added the possibility to purge content for accelerated virtual servers in Federation.

6.5 OnApp 5.7


Adapted Federation billing plans to the buckets functionality to enable managing resource
allocation and prices of a federated VS through the Access Control and Rate Card.

6.6 OnApp 5.6


Improved federated template behavior. Now if a seller deletes a template on which at least one
VS is running from a group, the template will not be removed from the buyer's federated
template group.

6.7 OnApp 5.5


• Added ability to add backup server zone and pricing for backups during Adding zone to
Federation
• Added ability to view seller's transaction ID in buyer's logs
• Added ability to enable acceleration for federated VS

12
OnApp Cloud 6.7 Federation Guide

6.8 OnApp 5.4


• Added ability to configure recipes and custom recipe variables for VSs created in
Federation.
• Added resources ratios for VSs built on public federated zones.
• Added ability to install SSH Keys for federated virtual servers.
• Improved Cloud Motion functionality.
• Fixed several bugs.

6.9 OnApp 5.3


• Implemented certificates for zones added to Federation. Certificates are selected during
the publishing process and are visible to buyers in the Marketplace. If you want to add
certificates to a zone published prior to OnApp 5.3, you need to contact our support
team.
• Added notifications on template group changes.
• Fixed the issue when template pricing was showing incorrectly to end customer in
certain situations.
• Fixed several bugs.

6.10 OnApp 5.2


• Implemented Cloud motion functionality, which allows buyers and users to move virtual
servers between locations.
• Improved Cloud Score design and updated calculation of scores for federated zones.
• Fixed several bugs.

6.11 OnApp 5.1


• Improved network port speed limiting: during VS creation you can not set a bigger
network port speed than indicated by a seller during adding zone to the federation.
• Fixed several bugs.

6.12 OnApp 5.0


September, 2016
• Implemented tier pricing for federated zones. Tier pricing applies only to public zones. A
Seller selects the required tier when adding a zone to Federation. The Marketplace
screen for Buyers has also undergone changes. They can now filter the zone's list
according to the pricing tier, the cloud score, or additional options available in the zone.
• Report a Problem button moved to Tools
• Fixed several bugs.

13
OnApp Cloud 6.7 Federation Guide

6.13 OnApp 4.3


May, 2016
• Fixed several bugs.

6.14 OnApp 4.2


February, 2016
• Added possibility to view the list of federated zones you are subscribed to and
to unsubscribe from federated zone if needed
• Added notification alerts when you remove a zone from Federation
• Added possibility reset root password, change owner, and manage auto-backups
for federated VSs
• Added possibility to integrate WHMCS for OnApp VSP
• Implemented management of VS failed actions notifications
• Added uptime graph
• Added locations for federated zones

6.15 OnApp 4.1


August, 2015
• Added possibility to make federated zone private.
• Implemented the possibility to manage notifications for a zone.
• Added possibility to edit billing plan for federated zone.
• Added possibility to measure performance benchmarks regarding CPU, bandwidth, and
disk operations for federated zones.
• Added Manage Trust Tokens section.
• Changes to terminology and the user interface. The following terminology changes
have been made in the 4.1 version of the OnApp Cloud: hypervisors have been
renamed as compute resources and hypervisor zones - as compute zones. Compute
resources is a collective name for hypervisors, vCloud hypervisors, and other
hypervisor types.

6.16 OnApp 4.0


9th June, 2015
• Added possibility to generate trust tokens. Only the buyers who have a trust token from
the seller can access the zone.
• Implemented possibility to add disks to a federated virtual server.
• Added possibility to delete disks on a federated virtual server.
• Added possibility to rebuild a federated virtual server with a new template.
• Added the FAQ chapter.

14
OnApp Cloud 6.7 Federation Guide

6.17 OnApp 3.5


19th February, 2015
• Added possibility to edit virtual server disks. You can only resize disks.
Add/change/delete options are not available. The resize will fail if your current usage is
greater than the new size you request. Note, that any changes on disk size will lead to
reboot of your VS.
• Added Report a Problem with VS chapter. There is a possibility for Sellers and Buyers
to report a problem VS directly into the OnApp support portal with a click of a button.

6.18 OnApp 3.4


December, 2014
• Added Firewall rules management option.
• Implemented resource synchronization between Seller and Buyer.
• Added Display accurate Zone resources option.
• Added Suspend a Published Zone option.
• Added Display of Wholesale Pricing for Buyer option.
• Added Index to show the overall rating of the zones available for subscription.
• Added a warning message on the virtual server creation page, clarifying that the
resources available are spread across multiple hypervisors.
• Once the buyer has unsubscribed, the templates associated with that federated zone
are removed from the buyer's template list.
• Error messages became more informative and indicate the reason of the failure.
• Fixed the performance of the virtual server's console via API.
• Ensured basic virtual server's operations when Hypervisor Zone is closed on the
Seller's side.
• Fixed the statistics calculation for the buyer's virtual servers.

6.19 OnApp 3.3.1


October, 2014
• Added possibility to edit VSs in Federation like normal OnApp VSs: now it is possible to
resize VS RAM, CPU, CPU priority.
• Added the option to filter activity logs. The OnApp Dashboard lists all the
transactions/logs related to Federation. Use the Hide Successful Market
Notifications button in the Activity Log to remove successful items from the list. Click the
button again to show the full list.
• Seller's versioning. The buyer has the functionality appropriate for the version of the
OnApp cloud which seller is running. When a buyer is running a more recent version of
the cloud, the functionality will still be pertinent to the seller's CP version.
• Implemented templates synchronization:

a. When a seller adds a template to a template group published to Federation, the


template appears in buyer’s CP in the respective template group.

15
OnApp Cloud 6.7 Federation Guide

b. When a seller removes a template from a template group published to


Federation, the template is also removed from the buyer’s CP in the respective
template group.
c. The seller cannot delete a template on which VSs are already built.
d. The buyer cannot make any changes to the templates in the template group
provided by seller. To set their own price, the buyer should copy the templates
to their own (local) template groups.

• Fixed the problem with the way the Dashboard licensing fetches the number of HV
cores for Federation reseller.
• Fixed the issue when seller had access to a VS through web console if buyer opened
and logged into console.
• Fixed the problem when IP addresses are duplicated in virtual network after buyer has
removed VSs from subscribed Hypervisor zone,
• Implemented network port speed limitation on the Market.
• Fixed pagination for the Settings > Federated Resources > Unsubscribed hypervisor
zones screen.
• Market logs are now shown at CP.
• Fixed the problem when seller could reset password for buyer’s VSs.
• Blocked the possibility to remove a subscribed template store for buyer.

16
OnApp Cloud 6.7 Federation Guide

7 Document Revisions
November, 2021 v. 6.7 Edge 1
• Removed the info about Essential Tier
March, 2021 v. 6.5 Edge 3
• Removed the info about Enterprise Tier
June, 2020
• Added Marketplace Terms and Conditions section
• Removed Seller Rules and SLA&MLA sections
October, 2019
• Updated Manage Template Groups in Template Store section
• Updated Create VS in Federated Zone section
• Updated Manage User VSs section
April, 2019
• Updated Licensing section
• Updated Selling Walk-through section
• Updated Configure Cloud section
• Updated Edit Federated Zone section
• Updated Make Federated Zone Private section
• Updated Manage Notifications for a Zone section
• Updated Disable and Remove Zone from Federation section
• Updated Buying Walk-through section
• Updated Subscribe to Federated Zone section
• Updated Trust Tokens and Private Federated Zone section
• Updated Manage User VSs section
• Updated Request Location section
• Updated Notifications section
• Updated Suspend/Unsuspend Federated Zone section
• Updated Unsubscribe from Federated Zone section
• Updated Manage Template Groups in Template Store section
• Updated Create VS in Federated Zone section
• Updated Move VS to Another Location section
October, 2018
• Updated Manage Notifications for a Zone section
• Updated Notifications section
February, 2018
• Updated Edit Federated Zone section
• Updated Create VS in Federated Zone section
November, 2017

17
OnApp Cloud 6.7 Federation Guide

• Updated Manage Template Groups in Template Store section


• Updated Add Zones to Federation section
August, 2017
• Updated Create VS in Federated Zone section
• Updated Buying Walk-through section
• Updated Create VS in Federated Zone section
• Updated Manage User VSs section
May, 2017
• Updated Create VS in Federated Zone section
• Updated Deploying Server Walk-through section
• Updated Move VS to Another Location section
• Updated Add Zones to Federation, Configure Cloud and Limitations/Prerequisites
sections
January, 2017
• Updated Add Zones to Federation section
• Updated Selling Walk-Through section
• Updated Subscribe to Federated Zone section
• Updated Create VS in Federated Zone section
• Updated Manage Template Groups in Template Store section
December, 2016
• Added Move VS to Another Location section
• Added How Cloud Motion Works section
• Updated Buying Walk-through section
• Updated Unsubscribe from Federated Zone section
• Updated Subscribe to Federated Zone section
• Updated Configure Cloud section
• Updated Selling Walk-Through section
• Updated Edit Federated Zone section
• Updated Add Zones to Federation section
• Updated Get List of Federated Resources section
• Updated Get Federated Resource Details section
• Updated Deploying Servers Walk-through section
• Updated Create VS in Federated Zone section
• Updated Manage User VSs section
October, 2016
• Updated Manage User VSs, Create VS in Federated Zone sections
September, 2016
• Updated Manage User VSs, How Federation Support Works, 2022-06-10_17-57-
37_VSP Configuration sections

18
OnApp Cloud 6.7 Federation Guide

• Updated Add Zones To Federation section


• Updated Edit Federated Zone section
• Updated Make Federated Zone Private section
• Updated Add Public Zone to Federation section
• Updated Selling Walk-Through section
• Updated Buying Walk-through section
• Updated Subscribe to Federated Zone section
• Updated Get Federated Resource Details section
• Updated Get List of Federated Resources section
• Updated Unsubscribe from Federated Zone section
February, 2016
• Added WHMCS Integration for VSP section
• Added Get Zone Uptime Graph section
• Updated Disable And Remove Zone From Federation section
• Updated Create VS in Federated Zone section
• Updated Subscribe to Federated Zone section
• Updated Unsubscribe from Federated Zone section
• Updated Manage User VSs section
• Updated Selling Walk-Through section
August, 2015
• Added Make Federated Zone Private section
• Added Manage Notifications for a Zone section
• Added Notifications section
• Added Cloud Score section
• Added Manage Trust Tokens section
• Updated Buying section
• Updated Deploying Servers section
• Updated Subscribe to Federated Zone section
• Updated Create VS in Federated Zone section
• Updated Supported Functionality section

June 9th, 2015


• Added Supported Functionality section
• Added Add Trust Token - Seller section
• Added Get List of Trust Tokens - Seller section
• Added Remove Trust Token section
• Added Add Trust Token - Buyer section
• Added Get List of trust Tokens - Buyer section

19
OnApp Cloud 6.7 Federation Guide

• Added Generate Trust Tokens section


• Updated Subscribe to Federated Zone section
• Updated Add Zones to Federation section
• Updated Permissions section
• Updated Add Zone to Federation section
June 04th, 2015
• Added the General FAQ, Seller FAQ, Buyer FAQ sections
April 20th, 2015
• Added Add VS in Federation section with the example of API calls.
January 9th, 2015
• Added Edit Virtual Server Disks option: added possibility to resize Virtual Server Disk.
• Added Report a Problem with VS section: added possibility to report a problem with
VS.
September 10th, 2014
• Added the info that federated VS can be edited now like normal VSs to Manage User
VSs section: added possibility to resize RAM, CPU, CPU priority.
• Updated the Add Zones to Federation section with the info on how to hide successful
notifications and template group synchronization.
March 31st, 2014
• Removed the backups from the Limitations/Prerequisites section as the backups are
now supported for the VS created in Federation.
• Removed View VSs in Federation section as this possibility is no longer supported.
• Added info on incremental backups which should be enabled to Subscribe to Federated
Zone and Add Zones to Federation.
• Updated View VSs in Federation section

December 20th, 2013


• Initial version

20
OnApp Cloud 6.7 Federation Guide

8 Supported Functionality
The following table illustrates the functions that are available or unavailable in Federation for
sellers and buyers. Generally, the end-users have the same functionality range as buyers
limited by the permissions set.

Functionality Seller Buyer

Version 5.5 and up

Purge Content for Accelerated VS ✓ ✓

Assign Recipe to Multiple Servers - ✓

Unavailable Functionality

Segregate VS / Autoscale VS / Suspend VS - -

Set VS VIP status - -

Set SSH keys - -

Configure VS network interface - -

Edit VS network speed - -

Convert VS Backup to template - -

VS CPU Utilization - -

21
OnApp Cloud 6.7 Federation Guide

9 How It Works
OnApp Federation is a central trading system that connects sellers, buyers, and users to create
the largest federated compute cloud in the world and gives each OnApp Hosting Partner a
global reach and almost unlimited capacity. Fully integrated with the OnApp Control Panel, any
accredited seller can sell resources through the marketplace, and any OnApp hosting partner
can access the global market of supply.
• OnApp sellers can submit under-utilized compute zones to the marketplace, specifying
the 'buy price' they wish to charge.
• OnApp buyers can subscribe to remote compute zones and publish them through their
Control Panel as if they were a local zone.
• Users (customers of a buyer) can deploy virtual servers in the zones (local and remote)
provided by buyers.
The following visuals show the model of how Federation works for sellers and buyers.

Proceed to Selling Walk-Through/Buying Walk-through/Deploying Servers Walk-through


chapters for the step-by-step instructions on how to configure Federation.

22
OnApp Cloud 6.7 Federation Guide

9.1 How Cloud Motion Works


Cloud Motion allows buyers and users to move virtual servers between locations. This requires
them to be subscribed to two federated zones which have CloudBoot Integrated storage. When
buyers or users move their virtual server, a target server is built from the same template as the
source VS and with the same configuration, but at the selected location. Then, the disk of the
source VS is replicated to the target VS. After the replication process is complete, the source
VS is deleted from the source cloud.

The Cloud Motion functionality relates to all participants of the Federation:


• Sellers supply zones with CloudBoot Integrated storage to the Federation. When
publishing such zones, sellers mark them as supporting Cloud Motion. If a seller has
published a zone with CloudBoot Integrated storage prior to OnApp 5.2, it will be
automatically marked as suitable for Cloud Motion functionality.

• Buyers subscribe to at least two federated zones with CloudBoot Integrated storage.
Such zones have Cloud Motion listed among their features. Buyers also can move their
VSs between Cloud Motion compatible zones to which they have subscribed.

• Users create virtual servers at Cloud Motion compatible locations by selecting the
Cloud Motion option at the first step of the VS creation wizard. Later from the VS Details
page, they can move their server to another location. Cloud Motion statuses are
displayed in the Control Panel and after the process is complete users can manage
their VS on the new location.

9.2 How Federation Support Works


Within the OnApp Compute Federation, members (Buyers and Sellers) have a relationship with
OnApp, not directly with each other. For Support situations tickets are handled by OnApp
initially then, as required, are sent to the Seller.
OnApp Buyers must open a support ticket using the Report a Problem button (VS label >
Actions > Federation Options > Report a Problem) to start the Support process.

23
OnApp Cloud 6.7 Federation Guide

This is an overview of how the Support flow works within the Compute Federation (click to
enlarge):

24
OnApp Cloud 6.7 Federation Guide

25
OnApp Cloud 6.7 Federation Guide

10 Limitations/Prerequisites
The following limitations and prerequisites exist for OnApp Federation:
Functionality Limitations and prerequisites

Availability OnApp customers will need to run version 3.5 of the OnApp Control Panel.
OnApp v6.0 is recommended. Sellers running on versions prior to OnApp 5.0
can no longer publish new zones to Federation.

Backups OnApp supports both normal and incremental backups. Incremental backups
occupy less disk space. The backup type, available for buyers, depends on
settings made by sellers.

CDN Access CDN Marketplace for consuming bandwidth globally.

Control Panel Please, be advised, it is required that both buyer and seller have the latest
version of the OnApp Control Panel for the latest features to be available.

Currency USD is the currency of the Federation. As OnApp Federation is a global


marketplace, this keeps pricing simple across geographies.

Compute Currently, only KVM compute resources are available.


resources

IP addresses Sellers should not use private IP addresses in the networks associated with
published Compute Zone.

Overcommit In the first release, there is no protection against CPU overcommit (running
multiple VSs per CPU core).

Payment Buyers must be using Credit Card as their payment method to OnApp to enter
method the Federation. If you need to place a Credit Card on your account, please
contact us.

Pricing Sellers can set prices according to the selected Tier. See Seller Pricing Tiers
for Compute Zones

SSL A valid SSL certificate signed by a trusted authority is an absolute requirement


Certificates for a Seller. Please monitor your SSL certificate's expiration. Otherwise, your
Control Panel will be inaccessible.

SLA All Sellers must agree and adhere to the Seller SLA and the Marketplace T&C,
including Seller notification requirements.

Templates Currently, Windows and Linux templates are available. You can add/remove
templates to the published Compute Zone by adding or removing templates
from the associated template group.

Windows VSs Windows virtual machines are supported with MAK licensing only. A buyer
might not have any licenses but a seller MUST have at least one free.

Withdrawal Sellers must give a minimum of 28 days' notice before removing a zone from
the market and terminating end-user workloads. See here for details.

VMware VMware zones (seller side) are not supported currently.

Virtual servers See the Supported Functionality section to learn what Virtual Server
functionality is available

Cloud Motion Only zones with CloudBoot Integrated Storage are compatible with Cloud
Motion functionality. Additionally, OnApp currently supports moving virtual
servers with one IP address and one disk (not including the swap disk).

26
OnApp Cloud 6.7 Federation Guide

11 Permissions

11.1 Federation
OnApp Administrators can control users' ability to create different tiers of service with
Federation. Depending on the the permissions set, users can act as sellers or buyers.
• Any actions on federation resources - the user can perform all actions on federated
zones
• Add compute zone to federation - the user can provide resources to Federation. If this
permission is enabled, it also lets users manage trust tokens and publish private and
public zones to Federation.
• View unsubscribed federation resources - the user can view all compute zones that are
available on Federation
• Remove compute zone from federation - the user can remove a compute zone from
Federation
• Activate or deactivate compute zone for federation - the user can deactivate a compute
zone from Federation so that customers could not create any more VSs on that zone;
the zone can be activated at any time later
• Unsubscribe from the compute zone - the user can unsubscribe from federated zone
• Subscribe to the compute zone - the user can subscribe to a federated zone so that to
create VSs in this zone
• Report a federation problem on any virtual server - buyer can report a problem on any
VS. We strongly recommend not to enable this permission for your end customers, who
you have provided a Federated VS to.
• Report a federation problem on user's own virtual server - buyer can report a problem
on their own VS. We strongly recommend not to enable this permission for your end
customers, who you have provided a Federated VS to.
• Move any virtual server to another federated location - the user can change any virtual
server's federated location
• Move own virtual server to another federated location - the user can change their own
virtual server's federated location

11.2 Federation Failed Action


OnApp administrators can control users' ability to manage federated VSs failed actions through
the Control Panel's Roles menu. You can set the following federated VSs failed
actions permissions for user roles:
• Any actions on federation failed actions - the user can perform any action on failed
actions
• Clean all federation failed actions - the user can clean all failed actions
• Clean own federation failed actions - the user can clean only those failed actions that
refer to the VSs they have built
• Read all federation failed actions - the user can view all failed actions
• Read own federation failed actions - the user can view only those failed actions that
refer to the VSs they have built

27
OnApp Cloud 6.7 Federation Guide

12 Marketplace T&C
All users of OnApp Federation accept Marketplace Terms and Conditions (MTCs). MTCs
include Buyers' and Sellers' rules that state the desired way of using the service.

12.1 Sellers' Rules


As a Seller on Marketplace, you accept Sellers' Rules. We rate the capacity you provide on
Marketplace using the scoring mechanism. Your scoring results are compared with the results
of other sellers and then we assign your cloud a rating. The higher your rating, the closer to the
top of the providers' list your cloud appears on Marketplace.

For us to be able to score your capacity, you should run an OnApp version that is under current
support. If you want to upgrade your cloud, see Upgrade Guides. If you need our help with the
upgrade, get in touch with your Account Manager.

12.2 Buyers' Rules


As a Buyer on Marketplace, you accept Buyers' Rules. You are responsible for maintaining a
copy of your and your users' content and accept the OnApp payment rules applicable to the
pricing tier you selected.

28
OnApp Cloud 6.7 Federation Guide

13 Licensing
Federation is enabled upon request. Please contact your Account Manager to register interest.
After the Federation has been enabled, the details of your license will be displayed in OnApp
Cloud.

13.1 View License Details

To view the license details:


1. Log in to your OnApp Cloud
2. Go to Admin > Settings > License.
3. On the page that appears, the you will see the status of your Federation setup for Seller
and Buyer roles.

29
OnApp Cloud 6.7 Federation Guide

14 Market Pricing
Market pricing is available in Tiers. Dev or Pro workload needs can be met across a range of
global cloud locations with specific pricing and performance options.
Dev Tier: For Non-critical Workloads
The Dev tier is designed for non critical/development hosting. Virtual Servers can be locally
hosted or provided with failover enabled. The zone might have back ups available.

14.1 Pro Tier: For Production Environments


This tier is designed for production ready customer applications and data. This tier always offers
failover for the Virtual Servers can you buy. Storage performance can range, but we suggest
SSD from our providers. You’ll be able to take backups of your Virtual Servers.
On this page:

• Pro Tier: For Production Environments


o Hourly Pricing
o Pricing Details

For public zones, the Federation SLA provides a 100% Network & Compute Resource Uptime.

14.1.1 Hourly Pricing


Resource Dev Tier Pro Tier

CPU/Cores $0.0000001 $0.0001

RAM/Memory $0.000008 $0.00001

Storage/Disk $0.000005 $0.0005

IP Address $0.00001 $0.001

Bandwidth $0.01/GB $0.02/GB

14.1.2 Pricing Details


Federation price calculator is available at your Control Panel > Compute
Federation > Marketplace. You can use it to learn hourly and monthly prices by moving the
sliders to set the amount of CPU (cores), RAM (MB), disk size (GB), and number of IP address
you require as depicted below.

30
OnApp Cloud 6.7 Federation Guide

Find out where you can buy from at OnApp Federation.

31
OnApp Cloud 6.7 Federation Guide

15 Sellers
Sellers are OnApp customers who publish compute zones to the OnApp Federation, along with
associated storage and network. The Seller selects from pricing tiers for their zone and
competes with other Sellers on geography, service level and performance. Sellers can publish
public and private zones to Federation:
• When publishing public zones to Federation, sellers select a pricing tier which
determines the prices for the zone's resource. Public zones are visible to all buyers in
the Federation. If required public zones can be switched to private.
• When publishing private zones to Federation, sellers can set their own prices for the
zone's resources. These zones are visible only to a limited number of buyers who have
received a trust token from the seller. Private zones cannot be switched to public.
Selling through Federation is an easy, out-of-the-box process, fully supported by the OnApp
software, with no additional technical integration.
To become a Seller, contact your account manager. Sellers can of course also be Buyers.
Here is the sorted list of the documentation currently available for Sellers.

15.1 Configuration
Configure Cloud
Selling Walk-Through

15.2 Federated Zone Management


Marketplace T&C
Seller Pricing Tiers for Compute Zones
Add Zones to Federation
Edit Federated Zone
Make Federated Zone Private
Manage Notifications for a Zone
Disable And Remove Zone From Federation

15.3 API
Sellers API

15.4 Selling Walk-Through


This document applies to sellers. Otherwise, refer to the Buyers or Users sections of this guide.

32
OnApp Cloud 6.7 Federation Guide

This is the quick step-by-step demonstration of the actions required to set up the Federation
and start selling zones. Sellers publish un-used or lightly-used compute zones to the Federation
in OnApp Control Panel. Each zone has CPU/Memory/Disk/Network/Templates costs and
capacities configured.

15.4.1 Step 1. View compute zones

Go to Admin > Settings > Compute zones. The page that loads shows the list of all compute
zones in your cloud.

15.4.2 Step 2. Select zone

Select the zone you want to add to the Federation. To publish a zone, just click
the Actions button and choose Add to Federation.
On this page:

• Step 1. View compute zones


• Step 2. Select zone
• Step 3. Set compute zone properties
• Step 4. Select pricing tier
• Step 5. Select certificates
• Step 6. Specify limits for compute zone resources
• Step 7. Review prices for compute zone resources
• Step 8. Confirm settings
• Step 9. View federated zone details

See also:
• Add Zones To Federation
• Make Federated Zone Private
• Disable And Remove Zone From Federation
• Edit Federated Zone
• Manage Notifications for a Zone
• Backup Server Zones Settings
• Sellers API
• Sellers (FAQ)

15.4.3 Step 3. Set compute zone properties


Fill in the zone's properties:
• provider
• data store zone

33
OnApp Cloud 6.7 Federation Guide

• backup server zone


• network zone
• template group
• whether the zone is private or not
• description

15.4.4 Step 4. Select pricing tier


Currently, you can choose between the Dev and Pro pricing tiers. The page also shows the
prices for zone's resources depending on the selected tier. If you are adding a private zone,
there is no tier selection, but you can still specify the configurations for your zone.

15.4.5 Step 5. Select certificates


Select the certificates you have and their expiration date.

15.4.6 Step 6. Specify limits for compute zone resources


Fill in the compute zone resource Limits. You need to choose the compute resource, data store
and network limits.

15.4.7 Step 7. Review prices for compute zone resources


This step appears in the wizard only if you are adding a private zone. Fill in the compute
zone Pricing. You need to set the compute resource, data store and network resource pricing.

15.4.8 Step 8. Confirm settings


Review the details of the federated zone. If you are satisfied with your federated zone
configuration click Add to Federation.

15.4.9 Step 9. View federated zone details


That’s it: your zone is now available on the Federation and buyers can subscribe to it.

15.5 Configure Cloud


This document applies to Sellers.

You need to configure your cloud properly to be able to publish compute zones to Federation.
For this, follow the listed procedure step by step:

34
OnApp Cloud 6.7 Federation Guide

You need to be running OnApp 5.0 or higher to add compute zones to Federation. Sellers
running on versions prior to OnApp 5.0 can no longer publish new zones.

15.5.1 1. Add Location Group(s)

The first step is to add location group(s) to your cloud. Location groups are the locations
registered in OnApp dashboard on the Dashboard Cloud License screen. The location group
ties сompute resource, network, data store and backup server zones into the same location
group.

On this page:

• 1. Add Location Group(s)


• 2. Configure Compute Resources
• 3. Configure Data Stores
• 4. Configure Networks
• 5. Configure Backup Servers
• 6. Create Template Store
• 7. Configure Relations Between Entities
• 8. Ensure SSL Certificates Are Valid
• 9. Configure CloudBoot Integrated Storage

See also:
• Location Groups
• Compute Zones
• Compute Resources
• Data Store Zones Settings
• Network Zones
• Template Store

15.5.2 2. Configure Compute Resources

To publish zones to Federation, you need to add compute zones and compute resources to
your cloud. When adding a compute zone, select the location group you added in Step 1. After
that, attach the newly created compute resource to the compute zone you've added.

You can only publish zones of the virtual type to Federation. For more information, refer
to Zone Types.

35
OnApp Cloud 6.7 Federation Guide

15.5.3 3. Configure Data Stores

To provide your federated zone with storage space, you need to configure data store zones and
data stores. When adding a data store zone, select the location group you added in Step 1. You
should also attach the new data store to the data store zone you've added.

Do not select a local compute resource during the creation process. Otherwise, you will
not be able to add the data store zone to the compute zone.

15.5.4 4. Configure Networks

To provide IP address(es) to your federated zone, you need to perform the necessary network
configurations. To do this, create network zones and networks. While creating a network zone,
select the location group you added in Step 1. When adding the network, select the network
zone you've created. The network will be automatically attached to the network zone you chose
during creation.

IP addresses in the network(s) should be public, as only public IPs can be used for
Federation.

15.5.5 5. Configure Backup Servers

You should use a backup server to store templates, ISO and OVA images, and backups of
virtual servers. First, you create a backup server and then a backup server zone. Next, you
assign the backup server to the backup server zone.

15.5.6 6. Create Template Store

Next, you need to add a template store. The template store enables you to organize individual
templates into groups. Users who will subscribe to your federated zone will be able to choose
among the templates from this template store to create virtual servers.
Additionally, you need to add the Debian 7.8 x64 Compute Performance Test template to your
template store for zone evaluation. Every zone published to the market is automatically tested
every two weeks for performance benchmarks regarding CPU, bandwidth and disk operations.
The test scores are recalculated into an index by comparing the scores of all other zones on the
market.
OnApp service will subscribe as a buyer to your zone, deploy a special testing virtual server and
conduct a test. After the test virtual server will be deleted and the service will unsubscribe.
The main requirement is that any published zone has a template Debian 7.8 x64 Compute
Performance Test. On your CP dashboard menu, go to Cloud >Templates > Template
list > System Templates > Available, search for the above template and download it. This
template should be in the Template Group selected while publishing the zone.

Do not change the name of template Debian 7.8 x64 Compute Performance Test.
Make sure your SSL certificates are valid.

36
OnApp Cloud 6.7 Federation Guide

15.5.7 7. Configure Relations Between Entities

You should associate the networks, data stores, and backup servers with the compute
zone, not compute resource. Data stores, networks, and backup servers associated with
compute resources are not available in Federation.

Once you've added all the necessary resources to your cloud, you need to associate them with
the compute zone you've created in Step 2. For this, assign the data store (Step 3), network
(Step 4), and backup server (Step 5) to the compute zone (Step 2).

Each data store can be associated with only one compute zone.

15.5.8 8. Ensure SSL Certificates Are Valid


If you're using SSL certificates, make sure that they are valid. Otherwise, the Control Panel may
be inaccessible. You must ensure that SSL is valid and is renewed when prompted by the SSL
provider.
Invalid SSL certificates mean:
• New Buyers will not be able to access your resources
• Buyers already accessing your resources will be unable to manage their Virtual
Servers
• OnApp cannot collect usage, meaning you may lose revenue for loss of billing
• The Cloud Score cannot be measured

15.5.9 9. Configure CloudBoot Integrated Storage


If you want to provide buyers with the Cloud Motion functionality, the zone you publish to
Federation should have CloudBoot Integrated Storage configured. The Cloud Motion feature
allows users to migrate their virtual servers from one federated compute zone to another. For
more information on CloudBoot Integrated Storage, refer to OnApp Storage.

If you have published a zone with CloudBoot Integrated storage prior to OnApp 5.2, it will
be automatically marked as suitable for Cloud Motion functionality.

15.6 Seller Pricing Tiers for Compute Zones


In order to provide a Compute Zone to the public Federation, Sellers must select a pricing tier
and provide the necessary requirements for that zone, as provided below.

All Sellers must agree and adhere to the Seller SLA and the Seller Rules, including Seller
notification requirements.

On this page:

37
OnApp Cloud 6.7 Federation Guide

• Dev Tier: For Non-Critical Workloads


• Pro Tier: For Production Environments
• Tier Requirements
• Want to set your own pricing?

15.6.1 Dev Tier: For Non-Critical Workloads


The Dev tier is designed for non-critical/development hosting. You can oversell resources,
supply Virtual Servers with failover or host from local storage, and provide backups if you like.
Dev Tier Sellers must provide a 100% network and compute resource uptime guarantee.
Sells a small Virtual Server* for ~$4/month

38
OnApp Cloud 6.7 Federation Guide

15.6.2 Pro Tier: For Production Environments


This tier is designed for production ready customer applications and data. You’ll need a SAN or
OnApp Storage, so your Virtual Servers can failover. We’d prefer SSDs for storage performance
to be as high as possible. You’ll need the ability to provide backups, which you can charge
for. Pro Tier Sellers must provide a 100% network and compute resource uptime guarantee.
Sells a small Virtual Server* for ~$11/month

39
OnApp Cloud 6.7 Federation Guide

*Small Virtual Server is 512 MB RAM, 1 vCPU, 20 GB Disk, 100 MB Transfer.

All Sellers must agree and adhere to the Seller SLA and the Seller Rules, including Seller
notification requirements.

15.6.3 Tier Requirements

40
OnApp Cloud 6.7 Federation Guide

Dev Pro
HA or Local

Optional HA

SLA 1 x Payout 10 x Payout

Network & Compute resource 100% 100%


uptime

Storage Performance Optional SSD preferred

Backups Optional Yes

Templates Selection by Latest Linux and Windows templates from


Seller OnApp Repo

Windows License Optional Yes

Cross Location Replication No No

DDos Protection Optional Optional

IPv6 Optional Optional

DNS No Optional

15.6.4 Want to set your own pricing?


Sure thing - you will need to create a private zone and when we receive an inquiry from a Buyer
we will let you know. You will need to generate a Trust Token to provide access to the Buyer.

All Seller zones are subject to our Pre-Flight check, where our team will be assessing
your Compute zone and ensuring this is set up according to the tier you have chosen.

15.7 Edit Federated Zone


This document applies to sellers. Otherwise, refer to the Buyers or Users sections of this guide.

You can change the zone's parameters and the price of a federated zone after it is published. If
you reduce the price for the resource, the change takes place immediately. However, if you
increase the pricing, the change will take effect after 28 days.

• If you have published a zone with CloudBoot Integrated storage prior to OnApp 5.2,
it will be automatically marked as suitable for Cloud Motion functionality.
• If you want to add certificates to a zone published prior to OnApp 5.3, you need to
contact our support team.

15.7.1 Edit Federated Zone


On this page:

41
OnApp Cloud 6.7 Federation Guide

• Edit Federated Zone


• Edit Buckets for Federated Zone

See also:
• Selling Walk-through
• Add Zones to Federation
• Make Federated Zone Private
• Disable And Remove Zone From Federation

Please be advised, for the changes to take effect on the Buyer's side, the Seller must
remove the compute zone from the federation and supply it again.

To edit Federated compute zones:


1. Go to your Control Panel > Admin > Settings menu, and click the Compute
Zones icon.
2. The screen that appears will show all zones currently set up in the cloud.
3. Click the Actions button next to the required compute zone, then click Edit. You can
edit the following compute zone details:

o Label - the compute zone's name


o Location group - the compute zone's location group
o Release resource type - the compute zone's resource type. This option allows
to free up the compute resources and over-commit RAM, CPU, and CPU
shares by means of the virtual servers that are shut down. By default, the
compute zone is created with the Memory Guarantee option enabled. In this
case, the over-committing cannot be used. To enable resource releasing,
choose either the Ballooning or Only Started VS option.

▪ Memory guarantee - the actual free compute resource memory is


calculated. All virtual servers residing on the compute resource will be
able to start.
▪ Ballooning (KVM compute resources only) - free compute resource
memory is calculated with the ability to use memory over-
committing. Note: a virtual server may be migrated to another compute
resource if there is not enough memory for it to start up on the compute
resource with the ballooning option enabled.

Do not use the ballooning option if there is at least one edge or


storage server within the compute zone.

▪ Only started VS - only the memory of running virtual servers is


calculated

o Max VS to start at once - the maximum number of virtual servers that can be
started simultaneously on this compute resource (5 recommended). This option
ensures that virtual servers with VIP status will be booted prior to other servers.

42
OnApp Cloud 6.7 Federation Guide

o Placement type - specify the compute resource selection algorithm, that will be
used on virtual server provisioning and recovery, per compute zone:

▪ Take HV with maximum free RAM (Round Robin) - set this type to
select the compute resource with maximum free RAM during the VS
recovery. This option allows to perform faster migration of virtual
servers with the lesser number of iterations during the failover.

Note: this option behaves in different ways, depending on the


event:
• On provisioning, the round-robin algorithm will be used on
compute resource selection.
• On recovery, the compute resource with maximum free
RAM will be selected.

▪ Take HV with minimum required free RAM - with this type the system
selects the compute resource with minimum required free RAM. This
option allows filling compute resource as tightly as possible before
starting to use next compute resource in the zone.

o Failover timeout - a time period for which the iterations will run during the
failover if the compute resource does not respond

o CPU Units - edit the amount of CPU units assigned to each compute resource
in this zone by default

o Update compute resource CPU units - move the slider to apply the edited
number of CPU units to all the compute resources in this zone

o CPU guarantee - move the slider to the right to ensure there is enough CPU on
the compute zone to create a new VS

o Disable failover - move the slider to the right to enable the VS migration to
another compute resource if the compute resource on which it is running goes
offline

• When you assign compute resource to the new compute zone


without any compute resources, the disable failover zone’s
parameter automatically takes the value of the compute resource.
• When all compute resources within the zone have the same value,
the compute zone’s disable failover status will be the same,
otherwise the compute resources zone’s failover status will be set
to disabled.
• When you change the compute zone’s disable failover value, this
change will be applied to all compute resources within this zone.

o Run Sysprep - enable or disable Windows virtual server deployment without


running Sysprep

It is not possible to set VS password when creating a Windows-based


VMware virtual server without running a Sysprep.

o Extended CPU Flags - move the slider to the right to enable the usage of
extended CPU flags

43
OnApp Cloud 6.7 Federation Guide

o Instance Package VSs - move the slider to the right to enable the usage of
instance packages to build VSs

If you enable the Instance Package VSs option, this compute zone will
be available to create VSs using only instance packages.

o Custom Config - specify any custom commands you want to run when a
compute zone is booted. This parameter is applicable only to CloudBoot
compute resources.

4. Click the Save button to save your changes.

If you have already supplied a zone to the Market and want to install an SSL certificate,
contact support to schedule a time slot, as some back-end changes will be required.

15.7.2 Edit Buckets for Federated Zone

You can change the bucket's limits and pricing for private federated zones. However, you
cannot edit bucket's pricing and resource limits for public federated zones.

To edit the billing for a federated zone:


1. Go to your Control Panel > Admin > Settings menu, and click the Compute
Zones icon. The screen that appears will show all zones currently set up in the cloud.
2. Click the label of the federated zone you are interested in.
3. On the page that loads, click the name of the bucket in the Being sold box.
4. Edit limits and pricing for compute zone(s), data store zone(s), and network zone(s).
For more information, refer to the corresponding sections of the Configure Resource
Allocation and Prices page.
The buyers subscribed to this zone will receive a notification if the pricing for the zone was
changed. Such notification will list the new pricing from the seller, showing in parentheses how
the price was modified.

15.8 Federation Capacity Pricing


This document applies to sellers. Otherwise refer to the Buyers or Users sections of this guide.

44
OnApp Cloud 6.7 Federation Guide

The OnApp Federation enables you to sell your compute cloud infrastructure on an open and
totally transparent global marketplace. Through the marketplace, service providers all over the
world can buy your infrastructure on a pay-for-usage basis, and use it to host apps and content
for their clients.
It's a new way to sell infrastructure, and for many service providers it can be tricky to price the
infrastructure you sell through the OnApp Federation. This section helps you work out the
optimal price for the compute zones you publish.

15.8.1 Traditional Pricing Model

The OnApp Federation is, in many ways, similar to infrastructure reselling you're used to:
Breakdown of traditional hosting pricing, per customer:
• Cost of Hardware
• Cost of Infrastructure (DC, bandwidth, etc.)
• Cost of Logistics (HR, offices, etc.)
• Cost of Support
• Cost Per Acquisition (CPA: sales & marketing)
These points constitute the Total Cost A.
Direct Price = Total cost A x Profit %

On this page:

• Traditional Pricing Model


• OnApp Federation Pricing

See also:
• Selling Walk-through
• Add Zones to Federation
• Make Federated Zone Private
• Disable And Remove Zone From Federation
• Edit Federated Zone
• Manage Notifications for a Zone
• Sellers API
• Sellers (FAQ)

45
OnApp Cloud 6.7 Federation Guide

15.8.2 OnApp Federation Pricing

Pricing the zones you publish to the OnApp Federation is quite straightforward. However, when
you sell on the OnApp Federation, there are three key differences that you need to take into
consideration:

Don't include CPAs or support

Your Federation zone pricing should not include sales and marketing costs (CPAs) or support
costs, because the OnApp Federation takes care of that for you.

Transparency

Transparent performance and uptime data is the keystone of the OnApp Federation. We
benchmark and monitor uptime for every zone published, and provide this alongside price and
location data, so that buyers can make an informed decision about the infrastructure they will
use.
Therefore, infrastructure with a high cost per hour will compare unfavorably with lower-priced
infrastructure, unless there is a clear benefit to the buyer. That benefit can come in many forms:
an unusual location, exceptional bandwidth, uptime or compute power, outstanding storage
throughput and (in the future) other metrics like privacy, DC certifications and carbon neutrality.

Favor long game

You should also consider reducing the margin you usually work towards for your Federation
zones. In a transparent, on-demand marketplace, there is more benefit to have large numbers
of buyers use your infrastructure in the long term, by offering them additional margin, than there
is in trying to maintain the margins you work towards for direct clients.

How to price for OnApp Federation

Taking that into consideration, your Federation pricing calculation should look like this:
• Cost of Hardware
• Cost of Infrastructure (DC, bandwidth, etc.)
• Cost of Logistics (reduced, as it does not cover support and CPA related activities)
These points constitute the Total Cost B.
Federation Price = Total cost B x Profit % (possibly lower than normal)
For information on how to add a zone to OnApp Federation, refer to the Add Zones to
Federation section.
If you get stuck, please visit the OnApp support portal. Before doing so, please, take a look at
our FAQs, you may find the answer to your query there.

46
OnApp Cloud 6.7 Federation Guide

15.9 Make Federated Zone Private


This document applies to sellers. Otherwise refer to the Buyers or Users sections of this guide.

With OnApp it is also possible to provide your cloud infrastructure only to selected buyers. For
this, you can use the functionality of making a federated zone private. If a zone is private, only
the specified buyers will be able to access this zone. The other buyers will not see the private
zones in the list of federated resources. When adding a private zone, you also set your own
pricing for the zone's resources. If a zone is made public, it will be supplied to the market for
general consumption and all buyers will be able to see the zone and subscribe to it.
Should you require, you can make a zone private either immediately when adding a zone to
Federation, or at any time later after you publish the zone. Note that a private zone cannot be
switched to public.

On this page:

• Making Zone Private Workflow


• Make Zone Private
• Generate Trust Token
• Configure Prices

See also:
• Selling Walk-through
• Add Zones to Federation
• Disable And Remove Zone From Federation
• Edit Federated Zone

15.9.1 Making Zone Private Workflow

This diagram displays the steps you need to perform to make a federated zone private.

47
OnApp Cloud 6.7 Federation Guide

15.9.2 Make Zone Private

To restrict the federated zone usage to a limited number of buyers after the zone was added to
Federation, switch a published zone to private:
1. Go to your Control Panel >Admin > Settings > Compute Zones menu.
2. Click the Actions button next to a required zone and select Make private. You will be
asked for confirmation before the zone is switched to private.

When you switch a public zone to private:


• The buyers who have previously subscribed to the zone will remain subscribed. All
virtual servers created previously on this zone will continue to exist.
• Only those buyers who have a trust token will be able to subscribe to the zone.
After you make a zone private you need to generate trust token(s) for the appropriate buyer(s)
so that they could subscribe to your zone.

48
OnApp Cloud 6.7 Federation Guide

15.9.3 Generate Trust Token

To enable your customers view and subscribe to your private federated zone, you need to
generate a trust token and provide it to your buyers. If you wish to supply a private zone to more
than one buyer, you have to generate a new trust token. To generate a token:
1. Go to your Control Panel> Admin > Settings > Compute Zones and click the label of
the private federated zone.
2. In the Tools menu, choose the Manage tokens option.
3. The page that loads shows the list of your generated tokens for this zone. Click the "+"
icon to generate a new token.
4. Fill in the receiver of the token and click Generate.
5. On the following page, you will see the list of trust tokens you have requested with the
indication whether they were used or not. To see the new token you need to supply to
the buyer, reload the page. The token can be used only once.

If the token is no longer required, you can delete it:


1. Go to your Control Panel > Admin > Settings > Compute Zones and click the label of
the private federated zone.
2. In the Tools menu, choose the Manage tokens option.
3. The page that loads shows the list of your generated tokens for this zone. Click
the Delete icon next to the token you want to remove. You will be asked for
confirmation before the token is deleted.

If you delete a trust token before it is used, the buyer you forwarded this token to, will not
be able to use it.

15.9.4 Configure Prices


After you switch the zone from public to private you can set your own prices for the zone's
resources. To set your prices you need to edit the zone's billing plan:
1. Go to your Control Panel > Admin > Settings > Compute Zones.
2. Click the label of the required zone. The page that loads shows the details of your
federated zone.
3. Click the zone's billing plan label displayed in the Being sold field.
4. On the page that loads, click the name of the billing plan in the Being sold field.
5. Edit limits and pricing for compute zone(s), data store zone(s) and network zone(s). For
more information, refer to the corresponding sections of the Configure Resource
Allocation and Prices page.
After you change the pricing for the zone, the price will apply for all your buyers, including those
who have subscribed to the zone when it was public. Subscribed buyers will receive a
notification that the prices for federated resources have changed.

49
OnApp Cloud 6.7 Federation Guide

15.10 Manage Notifications for a Zone


This document applies to sellers. Otherwise refer to the Buyers or Users sections of this guide.

You can post notifications about events in your federated zone(s) to all buyers subscribed to
that zone. In their turn, buyers can forward these notifications to their users, if required. Once
you post a notification, it will be attached to the zone until it expires, so that new subscribers will
see it.
Once the buyer's Control Panel receives your notification, an email will be sent to the buyer CP
admin.
You can notify all the buyers who have subscribed to your zone in case of any event such as,
for example:
• compute resource/network/datastore maintenance
• a federated zone will be removed from the market
• any other events

You can also access a log file that records events related to tier and ratio services on
your federated zones. The file is located at log/production_market.log on your Control
Panel server.

On this page:

• View Notifications
• Create Notification
• Delete Notification

See also:
• Selling Walk-through
• Add Zones to Federation
• Make Federated Zone Private
• Disable And Remove Zone From Federation
• Edit Federated Zone
• Sellers API
• Sellers (FAQ)

15.10.1 View Notifications

To view the list of current notifications you posted to a zone:

50
OnApp Cloud 6.7 Federation Guide

1. Go to your Control Panel > Admin > Settings > Compute Zones. The following page
displays the list of all compute zones in your system.
2. Click the number in the Notification column next to the zone you are interested in. The
page that loads, displays the list of notifications you have posted for the selected zone
with their messages and the time period they refer to.

15.10.2 Create Notification

To create a new notification for a zone:


1. Go to your Control Panel > Admin > Settings > Compute Zones. The following page
displays the list of all compute zones in your system.
2. Click the number in the Notification column next to the zone you are interested in. The
page that loads, displays the list of notifications you have posted for the selected zone.
3. Click the "+" button.
4. On the page that loads fill in the notification text and its start and end time and date.
5. Click Submit to post the notification. After you create a notification, it will be sent to all
the buyers who are subscribed to the selected zone.

All notifications need to have a start and end time. You cannot create a notification
without indicating its end time.

15.10.3 Delete Notification

To delete a notification you posted for a zone:


1. Go to your Control Panel > Admin > Settings > Compute Zones. The following page
displays the list of all compute zones in your system.
2. Click the number in the Notification column next to the zone you are interested in. The
page that loads, displays the list of notifications you have posted for the selected zone.
3. Click the Delete button next to the notification you want to delete. You will be asked for
confirmation.

Notifications are deleted automatically after their end time expires.

15.11 Disable And Remove Zone From Federation


This document applies to sellers. Otherwise refer to the Buyers or Users sections of this guide.

51
OnApp Cloud 6.7 Federation Guide

• As a Seller on the OnApp Federation you have agreed to adhere to the full Seller
Rules. This page will provide you with the information on when and how you should
notify OnApp.
• For information on notifications in OnApp, refer to Manage Notifications for a Zone
page.

Failure to notify OnApp and your Buyers will impact your Cloud Score and may result in
the suspension or termination of your ability to continue as a Seller temporarily or
permanently.

This page describes how you can disable and remove a published zone from Federation. When
you disable a federated zone, users will no longer be able to create new virtual servers
there. All existing VSs running in that zone will still be able to scale as usual. If you remove a
zone, it will be completely deleted from Federation. The VSs that remain on that zone will be
deleted.

On this page:

• Disable Federated Zones


• Remove Zones from Federation

See also:
• Selling Walk-Through
• Add Zones to Federation
• Make Federated Zone Private
• Disable And Remove Zone From Federation
• Edit Federated Zone
• Manage Notifications for a Zone
• Sellers API
• Sellers (FAQ)

15.11.1 Disable Federated Zones

Disabling a zone will stop users from adding any more VSs to the federated zone. All existing
VSs running in that zone will still be able to scale as usual.
To disable a federated zone:
1. Go to your Control Panel > Admin > Settings > Compute Zones menu.
2. Move the Enable Federation slider to the left next to a required zone.
3. Confirm deactivation of a zone.
After you disable a federated zone, you can remove a zone from Federation if required.

52
OnApp Cloud 6.7 Federation Guide

15.11.2 Remove Zones from Federation

If you want to remove a zone from Federation, you should check if any buyers are subscribed to
that zone and whether VSs are created within that zone or not. Depending on the situation, the
zone removal procedure will differ.

If your cloud is upgraded to OnApp 4.1 version you will receive both notifications and
emails. For older versions you will receive emails only.

15.11.2.1 No buyers are subscribed to the zone


If no buyers are subscribed to the zone yet, take the following steps to remove:
1. Go to your Control Panel > Admin > Settings > Compute Zones menu.
2. Move the Enable Federation slider to the left next to a required zone.
3. Confirm deactivation of a zone.
4. Click the Actions icon next to the zone.
5. Choose Remove from Federation.

15.11.2.2 One or more buyers are subscribed to the zone but there are no VSs within this zone
If one or more buyers are subscribed to the zone, but there are no VSs yet, take the following
steps:
1. Go to your Control Panel > Admin > Settings > Compute Zones menu.
2. Move the Enable Federation slider to the left next to a required zone.
3. Confirm deactivation of a zone.
4. Click the Actions icon next to the zone.
5. Choose Remove from Federation.
After that a notification box will appear with the following message: "There are still Buyers
subscribed to this zone. Zone will be removed in 1 day". All buyers subscribed to the zone will
be automatically notified via email/notification. After one day the zone will be removed from
Federation.

15.11.2.3 One or more buyers are subscribed to the zone and there are VSs within this zone
If one or more buyers are subscribed to the zone, and there are VSs within this zone, take the
following steps:
1. Go to your Control Panel > Admin > Settings > Compute Zones menu.
2. Move the Enable Federation slider to the left next to a required zone.
3. Confirm deactivation of a zone.
4. Click the Actions icon next to the zone.
5. Choose Remove from Federation.

53
OnApp Cloud 6.7 Federation Guide

After that a notification box will appear with the following message: "There are virtual servers
deployed on this zone. Zone will be removed in 1 month". All buyers subscribed to the zone will
be automatically notified via email/notification.
The system will check every six hours whether VSs still remain on the zone you want to
remove. As soon as VSs are deleted from the zone, it will be removed from Federation.
After 28 days, the system will attempt to delete the remaining VSs during a three-hour period. If
for some reason the remaining VSs cannot be deleted, the system will automatically create a
Zendesk ticket to our support team, so that they remove the VSs. The ticket will contain the
following description: “Zone [label] was recalled by Seller 1 month ago and had to be removed
from market. All VSs provisioned on that zone should have been deleted. Please manually
delete listed VSs on seller's CP, then remove the zone from Federation. [list of main VSs
attributes]”
As soon as all VSs are deleted from the zone, it will be removed from Federation.

15.12 Add Zones to Federation


This document applies to Sellers. If you're a Buyer, refer to the Buyers section of this guide.

To add zones to Federation, at first you need to configure all the necessary resources in your
cloud. After that you can proceed to adding compute zones to Federation.
When publishing a zone, you indicate the backup, network and data store zones that will supply
storage and IP address to you federated compute zone. You also indicate the limits for the
zone's compute, network, backup and data store resources. After you publish a zone, buyers
will be able to subscribe to your federated zone and use its resources.
If you are adding a public zone to the Federation, the pricing for the zone's resources are set
according to the pricing tier you select. If required, you can later switch your zone from public to
private.
If you wish to set your own pricing for the zone you add to the Federation, you can publish a
private zone. In this case, only the buyers you provide with a trust token will be able to
subscribe to your zone. Other buyers will not see this zone in Federation. Note that you can not
change the zone from private to public after you publish the zone. However, if required you
can remove the zone from Federation and publish it again as public.
After yo publish a zone you can change pricing and resource limits for private zones. For public
zones, you can only change resource limits. Fore more information refer to Edit Federated
Zone.

• You need to be running OnApp 5.0 or higher to add compute zones to Federation.
Sellers running on versions prior to OnApp 5.0 can no longer publish new zones.
• You can only publish zones of the virtual type to Federation. For more information,
refer to Zone Types.
• vCenter compute zones can only be published as private federated zones.
• If you want to disable prices completely you can do so by enabling the Disable
billing slider at the Edit System Configuration page. It is possible to disable billing
only if there are no compute zones that are added to Federation or any compute
zones subscribed from the Federation on your OnApp CP.

On this page:

• Add Zone to Federation

54
OnApp Cloud 6.7 Federation Guide

o Step 1 of 5. Start
o Step 2 of 6. Tiers
o Step 3 of 6: Certificates
o Step 4 of 6. Limits
o Step 5 of 6. Pricing
o Step 6. Confirmation

See also:
• Selling Walk-Through
• Make Federated Zone Private
• Disable And Remove Zone From Federation
• Edit Federated Zone
• Manage Notifications for a Zone
• Sellers API
• Sellers (FAQ)

15.12.1 Add Zone to Federation

To sell a compute zone to Federation:

Before you add a zone, please ensure you have reviewed the Seller Pricing Tiers for
Compute Zones section.

1. Configure your cloud.


2. When the compute zone is created, the list of all compute zones will be displayed at
your Control Panel > Settings > Compute Zones. Click Actions > Add to
federation next to a required zone.
3. Configure the federated zone in the wizard that appears:

15.12.1.1 Step 1 of 5. Start

Fill in the following fields:


• Provider - enter the provider name
• Data store zone - select a data store zone from the drop-down box. Make sure that
selected data store zone has no data stores attached to compute resources directly.
The data stores should be attached to compute zones.
• Backup server zone - select a backup server zone from a drop-down box.
• Network zone - select a network zone from a drop-down box. Make sure that selected
network zone has no networks attached to compute resources directly. The networks
should be attached to compute zones.
• Template group - select a template group from the drop-down box. All the templates
which are added to this group will be available to buyers who sign up for this federated
zone. Later you can add templates to this template group after the zone is published to

55
OnApp Cloud 6.7 Federation Guide

buyer. In this situation the templates will be synchronized and appear in respective
buyer's template group. If a seller deletes a template from a group, the template will not
be removed from buyer's federated template group.
• Move the Private slider to the right if you want to make this Federated zone private.
Otherwise, the zone will be pubic and all buyers in the Federation will be able to view
and subscribe to this zone. If the zone is made private, only those buyers who have
received a trust token from the seller can access the zone. For more information
see Make Federated Zone Private. vCenter compute zones can only be published as
private federated zones.
• Note that you will not be able to switch a private zone to public once it is published.
• Description - add a necessary description.

15.12.1.2 Step 2 of 6. Tiers

Select the pricing tier for your zone if you are adding a public zone:
• DEV - a tier for non-critical workload
• PRO - a tier for production environment
For public zones, this step also displays the pricing for the zone's resources depending on the
selected tier:
• CPU (Cores) - the price per CPU core/per hour, for VSs powered on/off
• RAM (MB) - the price per RAM (MB) per hour, for VSs powered on/off
• Disk (GB) - the price per GB of disk space per hour for VSs powered on/off
• IP - the price per IP address/per hour for VSs powered on/off
• Data sent (GB) - the price per GB of data sent/per hour for VSs
• Data received (GB) - the price per GB of data received/per hour for VSs

For both public and private zones, configure the following options for you zone. The
configuration of tier options does not influence the pricing for the public zones. The default value
for the tier options is 'NO'.
• HA - whether HA is available for the compute zone. For the Dev Tier you can select HA
meaning that HA is available, or Local indicating that High Availability is not provided for
the zone. For Pro Tier HA is available by default.
• SLA - this parameter indicates the number by which the cost of the resources provided
to the buyer will be multiplied in case of downtime. You will need to compensate the
cost of resource multiplied by this number to your buyers in case of downtime. This
option applies only to public zones.
• Storage Performance - select the storage that will be provided for the federated zone:
SSD or HDD.
• Backups - whether backups will be available in the federated zone. For Pro Tier
backups are available by default. You can select whether backups are available or not
for the Dev Tier.
• Templates - the templates that will be available in the federated zone. For the Dev tier,
buyers will have access to the templates you have selected. For the Pro Tier, buyers
will have access to all templates from the OnApp repository. For the Pro Tier, buyers
will have access to all templates from the OnApp repository and can also request
custom templates.

56
OnApp Cloud 6.7 Federation Guide

• Windows license - whether Windows license will be available in the federated zone. For
Pro Tier, Windows license is available by default. You can select whether Windows
license will be available or not for the Dev Tier.
• DDOS protection - whether DDOS protection will be available for the federated zone.
You can select whether DDOS protection will be available or not for the Dev and Pro
Tier.
• IPv6 - whether IPv6 will be available for the federated zone.
• DNS - whether DNS will be available for the federated zone. You can select whether
DNS will be available or not for the Pro Tier, it not available for others tiers.
• Cloud Motion - whether your zone has CloudBoot Integrated storage. By publishing
zones with CloudBoot Integrated storage you can provide your users with the ability to
migrate their virtual servers between locations. If customers subscribe to two or more
Cloud Motion compatible federated zones they can later move their VSs from one such
zone to another. The Cloud Motion option applies only to zones with CloudBoot
Integrated storage. For more information refer to How Cloud Motion Works.
• Cross Location Replication - whether cross location replication will be available for the
federated zone. This option is not available for the Dev and Pro tiers.
• Network & Compute resource uptime - the uptime provided by the federated zone.
100% uptime is indicated for all three tiers. This option applies only to public zones.
For more information on pricing tiers refer to Seller Pricing Tiers for Compute Zones.

15.12.1.3 Step 3 of 6: Certificates


For both private and public zones you can indicate the certificates you have and their expiration
date. Click in the date field next to the required certificate to indicate its expiration date. You will
be required to present your certificates to our support team or your account manager before
your zone is available for buyers to subscribe. You can indicate the following certificates:
• ISO 27001 - an information security standard which is published by the International
Organization for Standardization (ISO) and the International Electrotechnical
Commission (IEC).
• HIPAA - the federal Health Insurance Portability and Accountability Act of 1996. The
primary goal of the law is to make it easier for people to keep health insurance, protect
the confidentiality and security of healthcare information and help the healthcare
industry control administrative costs.
• PCI/DSS - a proprietary information security standard for organizations that handle
branded credit cards from the major card schemes including Visa, MasterCard,
American Express, etc.
• SOX - a United States federal law that set new or expanded requirements for all U.S.
public company boards, management and public accounting firms.
• Ssae16 - a regulation created by the Auditing Standards Board (ASB) of the American
Institute of Certified Public Accountants (AICPA) for redefining and updating how
service companies report on compliance controls
• Tier 1/Tier 2/ Tier 4/ Tier 4 - levels in a thorough, quantifiable manner published by
Telecommunications Infrastructure Standard for Data Centers in the ANSI/TIA-942 or
Uptime Institute independent certifications

15.12.1.4 Step 4 of 6. Limits

57
OnApp Cloud 6.7 Federation Guide

Note that when you set limits for resources, you indicate the quantity of resources that will
be available to all buyers who subscribe to the zone. For example, if you set the Memory
limit to 1024, the combined RAM of all VSs in the zone authored by all the buyers who
have subscribed to the zone cannot exceed 1024.

Set the following limits for resources:


Compute Resource Limits
• CPU - the maximum number of CPU cores the users can request when signed up for
this federated zone
• CPU share - the maximum CPU share % the users can request when signed up for this
federated zone
• Memory - the maximum RAM (MB) they can request when signed up for this federated
zone

Data Store Limits


• Disk Size - the maximum disk size the users can request when signed up for this
federated zone

Network Limits
• IP Address - the maximum number of IP addresses the users can request when signed
up for this federated zone
• Port Speed - the maximum port speed (Mbps) the users can request when signed
up for this federated zone

Backup Limits
• Backups - the maximum amount of backups the users can request when signed up for
this federated zone
• Backup Disk Size - the maximum backup disk size the users can request when signed
up for this federated zone

15.12.1.5 Step 5 of 6. Pricing


If you are adding a public zone, review the pricing for the resources in the federated zone. The
prices are not editable and are set according to the pricing tier you have selected at the Tiers
step.
If you are adding a private zone, set the pricing for the resources in the federated zone.
Compute Resource Pricing
• CPU - the price per CPU core/per hour, for VSs powered on/off
• CPU share - the prices per CPU share % per hour, for VSs powered on/off
• Memory - the price per RAM (MB) per hour, for VSs powered on/off

Data Store Pricing


• Disk Size - the price per GB of disk space per hour for VSs powered on/off
• Data Read - the price for data read per GB/per hour
• Data Written - the price for data written per GB/per hour

58
OnApp Cloud 6.7 Federation Guide

• Input Requests - the price for input requests per hour. Input requests are measured in
millions and priced per million requests
• Output Requests - the price for output requests per hour. Output requests are
measured in millions and priced per million requests

Network Pricing
• IP Address - the price per IP address/per hour for VSs powered on/off
• Port Speed - the price for Mbps/per hour of port speed
• Data Received - the price per GB of data received/per hour for VSs
• Data Sent - the price per GB of data sent/per hour for VSs

Backup Pricing
• Backups - the price per backup per hour
• Backup Disk Size - the price per GB of backup disk space per hour

15.12.1.6 Step 6. Confirmation


Review the details of the federated zone.
If you want to change any of the details click the Previous button to edit the data you added on
the previous steps of the wizard.
If you are satisfied with your federated zone configuration click Add to Federation.

The OnApp Dashboard will list all the transactions/logs related to Federation. Use
the Hide Successful Market Notifications button to remove successful items from the
list. Click the button again to show the full list.

Make sure your SSL certificates are valid


If you're using SSL certificates, make sure that they are valid. Otherwise, the Control
Panel may be inaccessible. You must ensure that SSL is valid and is renewed when
prompted by the SSL provider.
Invalid SSL certificates mean:
• New Buyers will not be able to access your resources
• Buyers already accessing your resources will be unable to manage their Virtual
Servers
• OnApp cannot collect usage, meaning you may lose revenue for loss of billing
• The Cloud Score cannot be measured

15.13 Check Consumption of Federated Compute Resources


A Market user with the onapp_market_credentials_arbitrary id name is created when you
publish a zone to the Market. Only one user with such a name is created per federated compute
zone. When the zone is removed from the Market, this user becomes suspended. When this
zone is published again, a new user is created.

To check the consumption of a federated compute resource:

59
OnApp Cloud 6.7 Federation Guide

1. Go to your Control Panel > Admin > Users > Overview tab to see the consumption for
a zone and the list of virtual servers deployed in this zone.
2. Click a VS's label to find consumption details for the VS.
If you have two or more compute zones published to the Market and more than one
unsuspended market user, you can identify the market user for this zone:
1. Go to your Control Panel > Admin > Settings menu.
2. Click the Compute Zones icon.
3. Click a federated compute zone's label to see the list of compute resources.
4. Click a compute resource's label to find the list of deployed virtual servers.
5. In the User column, the owner of the servers for this zone is specified.

60
OnApp Cloud 6.7 Federation Guide

16 Buyers
Buyers can subscribe to global clouds via the OnApp Federation and offer a world-class cloud
hosting service without having to buy new hardware in new locations. They can charge their
customers whatever they wish by creating their own billing plan for the resources they buy and
resell. OnApp buyers can very quickly scale their business with no additional investment and
minimal risk. From a buyer’s perspective, Federation is just a selection of clouds which can be
offered to their end users.
To become a buyer, contact your account manager to enable this functionality in OnApp
Dashboard for your license.
Here is the sorted list of the documentation currently available for Sellers.

16.1 Federated Zone Management


Subscribe to Federated Zone
Suspend/Unsuspend Federated Zone
Unsubscribe from Federated Zone

16.2 Other
Manage Template Groups in Template Store
Manage User VSs
Trust Tokens and Private Federated Zone
Notifications
Request Location

16.3 Configuration
Buying Walk-through

16.4 API
Buyers API

16.5 Buying Walk-through


This document applies to buyers. Otherwise refer to the Sellers or Users sections of this guide.

61
OnApp Cloud 6.7 Federation Guide

This is the quick step-by-step demonstration of the actions required to set up the Federation
and start buying zones. Buyers browse the Federation and subscribe to the zones of interest in
OnApp Control Panel. Once subscribed, buyers can obtain real-time capacities for each
zone and add the subscribed zones to existing billing plans. Buyers are billed for the zone
resources their customers have used according to the pricing specified by the seller.

16.5.1 Step 1. View list of zones in Federation


Go into your Control Panel left navigation pane Admin > Compute
Federation > Marketplace to search for federated compute zones. The page that loads shows
the list of available zones.

On this page:

• Step 1. View list of zones in Federation


• Step 2. Filter through list of available zones
• Step 3. View pricing for zone
• Step 4. Subscribe to zone
• Step 5. Fill in zone's details
• Step 6. Review details

See also:
• Subscribe to Federated Zone
• Suspend/Unsuspend Federated Zone
• Trust Tokens and Private Federated Zone
• Manage Template Groups
• Manage User VSs

16.5.2 Step 2. Filter through list of available zones

Using the sliders and check-boxes on the the left you can filter through the zones available in
the Federation to select the ones that comply with your requirements. You can also arrange the
list of zones according to the Cloud/CPU/IOPS/Bandwidth score by clicking the Cloud Score
column name and selecting a score type. The zones with the highest indicator of the selected
score will be shown first.

If you want your users to have access to Cloud Motion functionality, check whether the
zone to which you want to subscribe has Cloud Motion listed among its features.

16.5.3 Step 3. View pricing for zone

Using the pricing calculator you can determine the hourly and monthly price for the resources
you require.

62
OnApp Cloud 6.7 Federation Guide

16.5.4 Step 4. Subscribe to zone

Subscribe to the zone you have selected by clicking the Actions button next to it and selecting
Subscribe.

16.5.5 Step 5. Fill in zone's details


OnApp treats the Federation zone in the same way as the local zones. So, now you just have to
complete a few fields.
• compute zone label
• compute resource label
• data store zone label
• data store label
• network zone label
• network label
• template group label
You can fill in the compute zone label only, then all other fields will be auto-filled with the same
label.
Click Subscribe to finish.

16.5.6 Step 6. Review details


The page that loads shows the details of the zone you have just subscribed to.

That’s it: the subscribed zone appears as a compute zone on your cloud.

If you need to know seller transaction ID details, go to your Control Panel Logs menu and
click the label of specific log item. At the log info part among details you will find Cloned
Transaction field, which specifies seller's transaction ID.

16.6 Subscribe to Federated Zone


This document applies to buyers. Otherwise, refer to the Sellers or Users sections of this guide.

63
OnApp Cloud 6.7 Federation Guide

Buyers can subscribe to federated zones and sell cloud resources to customers. If allowed by
your license, you can search the marketplace and subscribe to a federated zone added by
sellers.
After you subscribe to a compute zone in Federation, the virtual compute resource/data
store/network zones are added to your cloud with the names you specified in the wizard and
you can view the details of this federated zone.

You can select what federated zones are visible to you at Admin > Control Panel >
Marketplace: all federated zones or only the private zones for which you have a trust
token. By default, this page contains both public and private zones available to you. If you
want this page to enlist only the private zones for which you have a trust token, go to
Admin > Control Panel > Settings > Configuration > Federation tab, move the Only
private federated resources slider to the right and click Save configuration.

On this page:

• Subscribe to Federated Zone


• View Federated Zone

See also:
• Buying Walk-through
• Request Location
• Manage User VSs
• Manage Template Groups in Template Store
• Trust Tokens and Private Federated Zone

16.6.1 Subscribe to Federated Zone

To subscribe to a federated zone:


1. Go to Admin > Control Panel left navigation pane Compute
Federation > Marketplace. The screen that appears will show a map containing
markers for all the zones on a Federation with their details. Click the zone's marker on
the map to select it. This zone will appear at the beginning of the list of zones. You
need to click the marker of a private zone to view its pricing.
o Tier - the zone's pricing tier: Dev, Pro, Private, or All Tiers
o Country - the country where this zone is located
o City - the city where this compute zone is located
o Cloud Score - the relative number which is the average of the
IOPS/Bandwidth/CPU scores for this zone. You can arrange the list of zones
according to the Cloud/CPU/IOPS/Bandwidth score by clicking the Cloud Score
column name and selecting a score type from the drop-down list. The zones
with the highest indicator of the selected score will be shown first.

You might see a different Cloud Score value if you apply the tier filter for
the list of available zones. The reason being that in a list with no tier filter

64
OnApp Cloud 6.7 Federation Guide

applied, a zone is compared to all other zones available in Federation.


However, if you apply the tier filter, the zone is compared only to the
zones of the selected tier and the cloud score is based on that
comparison.

o Features - additional functionality provided by the zone. This parameter will list
only the functionality provided by the zone. A zone can provide the following
features: High Availability, backups, cross-location replication, SSD or HDD
storage, Windows license, DDOS protection, DNS, IPv6, Cloud Motion.
o Provider - the name of the seller to whom the zone belongs

If you want your users to have access to Cloud Motion functionality,


check whether the zone to which you want to subscribe has Cloud
Motion listed among its features.

2. Using the sliders and check-boxes on the the left you can filter through the zones
available in the Federation to select the ones that comply with your requirements. The
following filter options are available:
o Tiers - select the zones with which pricing tier you are interested in: All Tiers,
Dev, Pro, or Private.
o Search bar - enter a search word to filter through the available zones. This can
be a country, city or a provider name.
o Price calculator - move the sliders to set the amount of CPU (cores), RAM
(MB), disk size (GB) and number of IP address you require. The boxes with the
information on the three tiers are available under the map and will show the
hourly and monthly price for the selected resources in zones belonging to
different tiers.
o Region - select the zones from which region you are interested in: Europe,
Asia, Northern America, South America, Africa or Oceania.
o Cloud Score - move the slider to the right to select the required cloud score
o Features - tick the check-boxes next to the features you require. You can filter
among zones with the following feature(s): HA, SSD, Windows license, DDOS
protection, IPv6 and DNS.
o Certificates - tick the check-boxes next to the certificates you require. You can
filter among zones with the following certificate(s):
▪ ISO 27001 - an information security standard which is published by the
International Organization for Standardization (ISO) and the
International Electrotechnical Commission (IEC).
▪ HIPAA - the federal Health Insurance Portability and Accountability Act
of 1996. The primary goal of the law is to make it easier for people to
keep health insurance, protect the confidentiality and security of
healthcare information and help the healthcare industry control
administrative costs.
▪ PCI/DSS - a proprietary information security standard for organizations
that handle branded credit cards from the major card schemes
including Visa, MasterCard, American Express, etc.
▪ SOX - a United States federal law that set new or expanded
requirements for all U.S. public company boards, management and
public accounting firms.
▪ Ssae16 - a regulation created by the Auditing Standards Board (ASB)
of the American Institute of Certified Public Accountants (AICPA) for

65
OnApp Cloud 6.7 Federation Guide

redefining and updating how service companies report on compliance


controls
▪ Tier 1/Tier 2/ Tier 4/ Tier 4 - levels in a thorough, quantifiable manner
published by Telecommunications Infrastructure Standard for Data
Centers in the ANSI/TIA-942 or Uptime Institute independent
certifications

3. Click the Actions icon next to the appropriate zone, and choose Subscribe.
4. On the screen that appears, enter the following details:
o Compute zone label - the compute zone with the label specified will be created
in your cloud
o Compute resource label - the compute resource with the label specified will be
created in your cloud
o Datastore zone label - the datastore zone with the label specified will be
created in your cloud
o Datastore label - the data store with the label specified will be created in your
cloud
o Backup server group - INSPECT and INSERT
o Backup server label - INSPECT and INSERT
o Network zone label - the network zone the label specified will be created in
your cloud
o Network label - the network with the label specified will be created in your
cloud
o Template group label - the template group with the desired label will be created
in your cloud

If you want the same label for all instances, mentioned above, you can
fill in compute zone label only, and all other fields will be auto-filled with
the same label.

5. Click the Subscribe button.


Now the federated zone should appear under the Settings > Compute zones menu and you
will be able to create VSs in this zone. Be aware that resources in this zone are spread across
multiple compute resources.

To enable your customers create virtual servers in a federated zone, create a bucket with this
zone and other resources included.

Score
The zone with the greatest performance gets the highest cloud score.
The score is the relative number calculated by the following formula:
(resource benchmark / max resource benchmark)*100 = score
If no tier filter is applied, a zone's score for different parameters is calculated against all
other federated zones. If the tier filter is applied, a zone's scores are calculated against
the zones within the same tier.
Click the Cloud Score button next to the zone you are interested in and select the
corresponding tab to view how the zone's cloud score/CPU benchmark and score/disk
IOPS and score/bandwidth speed and score/Uptime developed over time.
To zoom into a time period drag the chart by holding down the left mouse button and
moving the mouse. Click the Reset Zoom button to zoom out again.

66
OnApp Cloud 6.7 Federation Guide

67
OnApp Cloud 6.7 Federation Guide

16.6.2 View Federated Zone


To view a federated compute zone:
1. Log in to your Control Panel.
2. Go to Admin > Settings > Compute zones menu.

68
OnApp Cloud 6.7 Federation Guide

3. On the page that loads, you will see the list of compute zones in your cloud with the
options to suspend and unsubscribe from a federated zone.
4. Click the compute zone Label to see the compute zone details including:
o the compute resource with the label you specified in the wizard when
subscribing to a zone.
o the amount of VSs created within this zone.
o the total amount of CPU cores, the number of CPU cores available and used.
o the total and free RAM for this compute resource.
5. Click the Tools button at the top right corner of the screen and choose Manage Data
Stores.
6. The page with the virtual federated data store will load with the following details:
o data store identifier
o disk usage (GB)
o disk capacity (GB)
To view the details of the federated network that is attached to your federated compute zone:
1. Go to Admin > Settings > Compute zones menu
2. Click the label of the required compute resource.
3. Click the Tools button at the top right corner of the screen and choose Manage
Networks
4. The page that loads will list the following details:
o network interface name
o label
o network interface identifier

Also, there is another way to access the list of federated zones you are subscribed to:
1. Go to your Control Panel > Admin > Subscribed Zones. The screen that appears will
show the federated zones you have subscribed to with their details.
2. Click the Actions button next to the required zone. Select Unsubscribe if you want to
unsubscribe from the federated zone. Select Local zone to proceed to the compute
zone overview page.

69
OnApp Cloud 6.7 Federation Guide

16.7 Trust Tokens and Private Federated Zone


This document applies to buyers. Otherwise refer to the Sellers or Users sections of this guide.

Sellers can publish private and public zones to Federation. If a zone is public, it is supplied to
the market for general consumption and all buyers can see and subscribe to it. In case of a
private zone, only the buyers who have a trust token from the seller can access the zone. If you
received a trust token from the seller, you can view and subscribe to their private federated
zone.
After the trust token is used it is stored in the data base and cannot be deleted. After you delete
a trust token you will still be able to see the private zone it was associated with.

16.7.1 Subscribe to Private Federated Zone

On this page:

• Subscribe to Private Federated Zone


• Edit Trust Token
• Delete Trust Token

See also:
• Subscribe to Federated Zone
• Buying Walk-through
• Request Location
• Manage User VSs
• Notifications from Seller
To subscribe to a private federated zone:
1. Go to your Control Panel > Admin > Compute Federation > Trust tokens.
2. On the page that loads, click the "+" icon to add a new trust token.
3. Add the sender and the token provided by the seller.
4. Click Use token. On the page that loads you will see the list of the trust tokens you
have used.

70
OnApp Cloud 6.7 Federation Guide

5. Proceed to normal procedure of subscribing to Federated zone. The private federated


zone will be now available for subscription.

16.7.2 Edit Trust Token


To edit a trust token:
1. Go to your Control Panel > Admin > Compute Federation > Trust tokens.
2. The page that loads shows the list of all trust tokens you have added. Click
the Edit button next to the token you are interested in.
3. On the following page, make the required changes in the Sender field.
4. Click Save.

16.7.3 Delete Trust Token


To delete a trust token:
1. Go to your Control Panel > Admin > Compute Federation > Trust tokens.
2. The page that loads shows the list of all trust tokens you have added. Click
the Delete button next to the token you are interested in. You will be asked for
confirmation before the trust token is deleted.

16.8 Request Location


This document applies to buyers. Otherwise refer to the Sellers or Users sections of this guide.

If you do not see a compute zone in a location you require in OnApp Federation, you can
request the location you need. This will forward a letter to OnApp sales who will process your
request and do everything possible to add the location you need.
To request a federated zone in a location of your choice:
1. Go to Admin> Settings > Federation.
2. Click the Request Location button in the top right corner.

3. Fill in the form that appears:


o Company name - enter your company's name
o Email - fill in your email
o Location required - fill in the location you need
o Why do you need this - enter the reason you request this location. This field is
optional.
o When do you need this - enter a time period when you need this location to be
available. This field is optional.
4. Click Submit to finish.

71
OnApp Cloud 6.7 Federation Guide

See also:
Buying Walk-throughSubscribe to Federated ZoneManage User
VSshttps://docs.onapp.com/display/eppo/Manage+Own+Template+GroupTrust Tokens and
Private Federated ZoneNotifications from the Seller
Suspend/Unsuspend Federated Zone
Unsubscribe from Federated Zone

16.9 Notifications
This document applies to buyers. Otherwise refer to the Sellers or Users sections of this guide.

In case there are any important events that relate to the federated zone you are subscribed to,
you will receive notifications from the seller. When your Control Panel receives a notification,
you will be informed about it via email. You can view notifications, edit them or notify users
about new notifications.

You can also access a log file that records events related to tier and ratio services on
zones you are subscribed to. The file is located at log/production_market.log on the
Control Panel server.

16.9.1 View Notifications

To view the list of notifications for the federated zones to which you are subscribed:
1. Go to your Control Panel > Admin > Settings > Compute Zones. The following page
displays the list of all compute zones in your system.
2. Click the number in the Notification column next to the zone you are interested in. The
page that loads, will display the list of notifications that relate to this zone.

On this page:

• View Notifications
• Edit Notifications
• Notify Users

See also:
• Buying Walk-through
• Subscribe to Federated Zone
• Request Location
• Manage User VSs

72
OnApp Cloud 6.7 Federation Guide

16.9.2 Edit Notifications

You can change the message of the notification to other text you find appropriate. To edit the
text of a notification:
1. Go to your Control Panel > Admin > Settings > Compute Zones. The following page
displays the list of all compute zones in your system.
2. Click the number in the Notification column next to the appropriate zone. The page that
loads, displays the list of current notifications that relate to this zone.
3. Click the Actions button next to the notification and select Edit.
4. Edit the text of the message.
5. Click Save.

16.9.3 Notify Users

To inform your users about new notifications:


1. Go to your Control Panel > Admin > Settings > Compute Zones. The following page
displays the list of all compute zones in your system.
2. Click the number in the Notification column next to the zone you are interested in. The
page that loads, displays the list of current notifications that relate to this zone.
3. Click the Actions button next to the notification you want to inform you users about and
select Notify Users. You will be asked for confirmation before the notification is
forwarded to your users. Your users will receive the notifications you forward to them
via e-mail.
When you unsubscribe from a zone, all notifications that relate to it will be removed.
Notifications are deleted automatically after they expire.

16.10 Suspend/Unsuspend Federated Zone


This document applies to buyers. Otherwise refer to the Sellers or Users sections of this guide.

To prevent your users from creating any more VSs on a federated zone, you can suspend this
zone and unsuspend it at any time later. All existing VSs running in that zone will be limited to
basic options - on/off, reboot and delete. To enable your users to create VSs in a federated
compute zone you can unsuspend this zone.

16.10.1 Suspend Federated Zone

To suspend a federated zone:


1. Go to your Control Panel > Admin > Settings > Compute Zones menu.
2. Click the Actions icon next to a required zone and select Close.

73
OnApp Cloud 6.7 Federation Guide

On this page:

• Suspend Federated Zone


• Unsuspend Federated Zone

See also:
• Subscribe to Federated Zone
• Buying Walk-through
• Request Location

16.10.2 Unsuspend Federated Zone

To unsuspend a federated compute zone:


1. Go to your Control Panel > Admin > Settings > Compute Zones menu.
2. Click the Actions icon and select Open.

16.11 Unsubscribe from Federated Zone


This document applies to buyers. Otherwise refer to the Sellers or Users sections of this guide.

You can unsubscribe from federated zone if needed. Before unsubscribing from a federated
zone, make sure that all VSs are manually migrated if data is to be retained and then deleted.
To unsubscribe from a federated zone:
1. Go to your Control Panel > Admin > Subscribed Zones . The screen that appears will
show the federated zones you have subscribed to with their details:
o Tier - the zone's pricing tier: Dev, Pro, or Private
o Country - the country where this zone is located
o City - the city where this compute zone is located
o Cloud Score - the relative number which is the average of the
IOPS/Bandwidth/CPU scores for this zone.
o Features - additional functionality provided by the zone. This parameter will list
only the functionality provided by the zone. A zone can provide the following
features: High Availability, backups, cross location replication, SSD or HDD
storage, Windows license, DDOS protection, DNS, IPv6.
o Provider - name of the seller to whom the zone belongs

74
OnApp Cloud 6.7 Federation Guide

2. Click the Actions icon next to the appropriate zone, and choose Unsubscribe.
Also there is another way to unsubscribe from a federated zone:
1. Go to your Control Panel > Admin > Settings menu.
2. Click the Compute zones icon.
3. On the page that appears, click the Actions button and choose Unsubscribe.
4. Confirm deleting a zone.
See also:
Buying Walk-throughSubscribe to Federated ZoneRequest Location

16.12 Manage Template Groups in Template Store


This document applies to buyers. Otherwise refer to the Sellers or Users sections of this guide.

When you subscribe to a federated zone, all of the templates added by seller to that zone
become available to you. A special federated template group is created in your CP and can be
accessed from the Template Store menu.

Be aware that you can edit only the federated template group's label.

If you want to use templates from federated template group in other template groups, you can
take the following steps:
1. create your own (local) template group,
2. copy there templates from a federated template group,
3. assign your own prices per each template and use this group as a paid billing plan
resource.
When the seller adds to/removes templates from the federated template group the templates
will be also updated in your Control Panel.
If you and the seller are running OnApp 5.3 or higher, a template's price will be updated if it was
changed by the seller and the administrator of your CP will receive an email with the list of
changes the seller made to the federated template group.
If a seller deletes a template on which at least one VS is running from a group, the template will
not be removed from buyer's federated template group.

The following instructions refer to creation of an own (local) template group.

On this page:

• Add Local Template Group to Template Store


• Assign Template to Local Template Group
• Remove Template from Local Template Group
• Change Template Price

75
OnApp Cloud 6.7 Federation Guide

• View/Edit/Delete Local Template Group


• Add Local Template Group to User's Bucket

See also:
• Subscribe to Federated Zone
• Buying Walk-through
• Request Location
• Trust Tokens and Private Federated Zone
• Notifications from the Seller
• Suspend/Unsuspend Federated Zone
• Unsubscribe from Federated Zone

16.12.1 Add Local Template Group to Template Store

To add a template group to the Template Store:


1. Go to your Control Panel > Admin > Template Store menu.
2. Click the "+" button in the upper right corner of the page.
3. Give a name to your group.
4. Specify the Windows Licensing type: MAK, KMS, or User license.
5. For KMS licensing, set the following parameters:
o Server label – the name of the KMS server
o KMS server host – the hostname of the licensing server
o KMS server port – the port used to connect to the licensing server
6. Click Save.
7. You can add child template groups to your template group by clicking the "+" button >
Add Child next to your template group.

16.12.2 Assign Template to Local Template Group

To assign a template to a template group:


1. Go to your Control Panel > Admin > Template Store menu.
2. Click the "+" button next to the required child group's label, then select Add Template.
3. Choose the template from the drop-down box at the Add a template section. The drop-
down list will show all available templates grouped in local and federated zones
respectively.
4. Click Add a template to a group button to confirm. Now the selected template is
copied to the current template group.

76
OnApp Cloud 6.7 Federation Guide

16.12.3 Remove Template from Local Template Group

To remove a template from a template group:


1. Go to your Control Panel > Admin > Template Store menu.
2. Click the template group's label, then click the name of the template group from which
you wish to remove a template.
3. Сlick the Delete icon next to a template you want to remove.
4. Confirm the deletion.

16.12.4 Change Template Price

To change the template price:


1. Go to your Control Panel > Admin > Template Store menu.
2. Click the name of the template group.
3. Click the Edit icon next to the template which price you want to change.
4. Enter the price value and click Save.

16.12.5 View/Edit/Delete Local Template Group

To view/edit/delete a template group:


1. Go to your Control Panel > Admin > Template Store menu.
2. On the page that follows, you'll see the list of all template groups created within your
cloud:
• Click the group's label, then click the child group label to see the list of templates
assigned to this group.
• Click the Edit icon next to a group to edit its name.
• Click Delete icon to delete a group.

16.12.6 Add Local Template Group to User's Bucket

Once you configure your template store and set prices for the templates, you can use this group
as a paid bucket resource. When you add template store limits to a bucket, you limit the number

77
OnApp Cloud 6.7 Federation Guide

of preconfigured system templates available to users signed up for this bucket – they can only
choose among templates from the added template store(s). To add a template store to the
user's bucket:
1. Go to your Control Panel > Admin > Buckets menu.
2. The screen that appears shows all buckets currently available. Click the label of the the
bucket in question.
3. You will be redirected to the Access Control tab of the bucket.
4. Click the Rate Card tab.
5. Click the the + button next to the Pricing For Templates Store.
6. When the new windows pops up, set limits for resources.
For more information on resources allocation and pricing, refer to Configure Resource
Allocation and Prices.

16.13 Manage User VSs


This document applies to buyers. Otherwise, refer to the Sellers or Users sections of this guide.

OnApp allows you to monitor the virtual servers created by your customers on federated
zones. When customers create VSs in federated zones, you can view and moderate these
VSs. Also there is a possibility to report a problem VS directly into OnApp support portal with a
click of a button.

16.13.1 View User VSs

To view virtual servers, created by users within federated zone:


1. Go to your Control Panel > Cloud > Virtual Servers menu to view the list of all VSs
created on federated zones and their details:
o operating system - the OS of the virtual server
o label - the name of the virtual server
o VIP - whether the VIP status is enabled or disabled. Click the icon to
enable/disable VIP status of a particular VS.
o IP addresses - the IP addresses of the virtual server
o disk size - disk size allocate to this virtual server
o RAM - the amount of RAM available for this virtual server
o backups - the number of backups and the space these backups take.
o user - the owner of this VS. Click the user name to see the owner details.
o power - the power status. Click the on/off buttons to change the status.
o actions - the Actions button for quick access to the list of VS actions
2. Click the virtual server's label to view its details.

On this page:

78
OnApp Cloud 6.7 Federation Guide

• View User VSs


• Manage User VSs
• Accelerate VS
• Purge Content
• Report Problem with VS
• Virtual Server Failed Actions
• IP Report

See also:
• Buying Walk-through
• Subscribe to Federated Zone
• Request Location
• Manage Own Template Group
• Trust Tokens and Private Federated Zone

16.13.2 Manage User VSs

When your customers create VSs in federated zones, you can view and moderate these VSs
under the Virtual Servers menu as normal VSs of your users. Refer to corresponding sections
of Admin Guide for details.
Virtual Server Power Administrative Networks Backups Recipes
Options Options Options

Create Reboot Reset Root View network View Recipes


Password interface

Destroy Startup Integrated console Set virtual server Delete


firewall rules backup

Edit Shut down Change owner Edit virtual server Restore


network speed backup

Disk resize Move to another Auto-


location backups

Set SSH keys

Be aware, that during VS creation you cannot set greater network port speed than
indicated by seller when adding zone to federation.

16.13.3 Accelerate VS

79
OnApp Cloud 6.7 Federation Guide

If you are running OnApp 6.0, the federated virtual servers are accelerated by default.
After the upgrade, virtual servers created in previous versions become accelerated as
well.

If you and the seller you are subscribed to are running OnApp version 5.5 or later, you can turn
on acceleration for virtual servers in Federation. Acceleration empowers any websites/VSs
hosted on OnApp Cloud to use CDN. It provides all the benefits of a global CDN without any of
the hassle of configuring and maintaining a CDN platform. Acceleration requires no
modifications to the web applications running on virtual servers. All optimization is entirely
automatic, and using minification & lossless compression of pages, scripts and images, will not
modify or reduce the quality of the source content.
You can enable/disable acceleration for existing VSs at Control Panel > Cloud > Virtual
Servers > Label by using the Accelerate slider.
Acceleration can be enabled on a federated VS in a case there is at least one accelerator VS in
the same network the original VS is using. You can check it using API: POST
virtual_machines/accelerator_presence?ip_id=X where X is VS IP. If it returns true - you can
enable acceleration on a VS.
For more information refer to CDN Accelerator.

When acceleration is enabled by a buyer, OnApp will bill directly the buyer. The price is
$10/month/VS.
The Accelerate slider is available if the following conditions are met:
• Accelerator is available in the network
• IP Address, selected during VS creation, is in the same network as Accelerator
• VS is created by setting own virtual server's resources, not by selecting a
predefined instance package
• The Show IP address selection for new VS slider is activated in the Control Panel >
Admin > Settings menu > Configuration
• Only HTTP is supported. Other protocols, including HTTPS, will be passed through
to the VS directly.
• In order to route the VS’s traffic, the VS must be on the same network with the
Accelerator.
• CDN Accelerator does not support the Internet Protocol version 6 (IPv6).

16.13.4 Purge Content

When acceleration is enabled for a virtual server, you can remove cache content for this VS.
You can purge all content or particular files. When you want to purge particular files, the system
will compare the checksum of the cached file and the new one. The cached file will be purged
only if the checksums vary, that is the files are different. If the checksum of the two files is the
same, the cached file will not be purged. When you purge all content, the checksums of the
cached and new files are not taken into account.
Limitations and prerequisites:
• The purge tool applies only to virtual servers with acceleration enabled.
• You need to have the Allow to purge content of all Virtual Servers or the Allow to purge
content of Own Virtual Servers permissions enabled to use this feature. For more
information, refer to OnApp Permissions.
• If several users accelerate their VSs using one Accelerator, they can purge each other's
files, provided that they enter the correct URL.

80
OnApp Cloud 6.7 Federation Guide

To purge a single file:


1. Go to your Control Panel > Cloud > Virtual Servers menu.
2. Click a label of an accelerated virtual server.
3. Click Acceleration Settings > Purge.
4. In the Paths to Purge box, specify the destination path(s). You can enter only one path
per line. You can enter either the original URL (the one prior to acceleration) or the
accelerated URL.
5. Click the Submit button to purge files.

To purge all content:


1. Go to your Control Panel > Cloud > Virtual Servers menu.
2. Click a label of an accelerated virtual server.
3. Click Acceleration Settings > Purge.
4. Click the Purge All Contents of This Site button to purge all content.

16.13.5 Report Problem with VS

To report a problem with virtual server:


1. Go to your Control Panel > Cloud > Virtual Servers menu.
2. Click the Label of appropriate VS.
3. Click to the Actions button, point to Federation Options, and click the Report a
problem button.
4. On the screen that appears describe a problem and click Submit.
The Report a problem button will fire an email to Federation support.
The email will contain:
• Reporter's login
• Reporter's email
• IP address or hostname of reporter's CP
• Label, IP address and hostname of reporter's virtual server
• IP address or hostname of supplier/seller
• IP address or hostname of trader/buyer
• Message with problem description

We strongly recommend that you do not enable Report a federation problem on any
virtual server and Report a federation problem on user's own virtual server permissions
for your end customers, who you have provided a Federated VS to. For more details,
refer to the Permissions section.

81
OnApp Cloud 6.7 Federation Guide

16.13.6 Virtual Server Failed Actions

After a VS is built, any action you or your user schedules are executed on the Seller CP. In case
any of the scheduled actions fail, the Failed Actions screen will enlist them. You can view the list
of failed actions either for a particular virtual server, or for all VSs you or your users have built.

16.13.6.1 Failed Actions on All Virtual Servers

To view the list of failed actions for all virtual servers built, go to your Control Panel > Admin
> Sysadmin > Failed Actions tab. The page that loads shows the list of failed actions for the
servers with the following details:
• Ref - the ID of the failed action. Click the Ref number to see the log details.
• Date - the date when the failure occurred
• Action - the name of the action that failed
• Virtual Server - the label of the VS on which the action failed. Click the VSs label to see
its Overview page.
If required, you can clean the failed actions for all virtual servers in the cloud, by clicking the
Clean failed actions button. For this action, you require the necessary permissions.

16.13.6.2 Failed Action on Particular Virtual Server

You can view the list of failed actions for a particular VS. To view the last 10 failed actions that
occurred on a specific virtual server:
1. Go to your Control Panel > Cloud > Virtual Servers > VS label.

82
OnApp Cloud 6.7 Federation Guide

2. On the page that loads under the Notes section, you will see the Failed Actions section
that enlists the last 10 failed actions on that virtual server. The failed actions are
displayed with the following details:
• Ref - the ID of the failed action. Click the Ref number to see the log details.
• Date - the date when the failure occurred
• Action - the name of the action that failed

Note that information about the last 10 failed failed actions of a particular VS becomes
unavailable the next day. Still, you can view this info from the list of all failed actions
accessed at VS label > Overview tab > Failed Actions.

To view all the failed actions that occurred on a specific virtual server since it's been built:
1. Go to your Control Panel > Cloud > Virtual Servers > VS label > Overview tab >
Failed Actions.
2. The page that loads shows all the failed actions that occurred on that virtual server with
the following details:
• Ref - the ID of the failed action. Click the Ref number to see the log details.
• Date - the date when the failure occurred
• Action - the name of the action that failed
If required, you can clean the failed actions for the virtual server, by clicking the Clean failed
actions button. For this action, you require the necessary permissions.

16.13.7 IP Report

IP reporting gives possibility to track the IP history, view when the IP addresses were assigned
or unassigned to a particular user and so prevent the illegal activity such as spamming or
hacking.
The IP usage report contains the history of the IP address usage and provides information
about:
• IP address assign/unassign to the VS
• IP address assign/unassign to the User
To view the IP usage report:
1. Go to your Control Panel > Admin > Sysadmin > IP Usage Report tab.
2. Insert the IP address in the corresponding field.
3. You can filter the statistics by time - select the time period from the drop-down menu
and click the Apply button.
4. You will get the statistics divided into several sections:
o From - time and date from which IP address was assigned
o To - time and date from to which IP address was assigned
o Full name - user's first and last name

83
OnApp Cloud 6.7 Federation Guide

o Username - the user to whom the IP address is assigned


o Email - user email
o VS hostname - the name of your host
o VS identifier - the VS identifier
o NIC identifier - the identifier of the network interface
o NIC MAC - MAC address of the network interface
By default, the statistics is stored for no less than six months and is kept on file for easy access
by law enforcement and/or other authorities who request this information.
To export the statistics in csv format, click the Download CSV button.

84
OnApp Cloud 6.7 Federation Guide

17 Users
With OnApp Federation, users receive a broader range of services from their chosen OnApp
hosting partner, having a single point of contact for technical support, SLA and billing. They no
longer need to shop around to find the service that best meets their requirements.
From an end user's perspective, there is very little difference between a federated zone and a
local zone provided by their local seller. With Federation when creating a VS, users choose a
federated location and a VS is created on a federated compute zone.
Here is the list of the documentation currently available for Users:

• Deploying Servers Walk-through


• Move VS to Another Location
• Create VS in Federated Zone

17.1 Deploying Servers Walk-through


This document applies to end users. Otherwise refer to the Sellers or Buyers sections of this
guide.

Users signed up for the corresponding billing plan of the buyer, may create the virtual servers in
Federated zones. Users are not aware that remote zones are operated by another OnApp
partner. They are not able to select compute resources/data stores/networks during the virtual
server creation. Provisioning operations are logged in to the Federation for billing and audit
purposes.

17.1.1 Create Server from Wizard

Before you can deploy, you need to add the federated zone to your user’s billing plan. Then you
can just create a server from the wizard, as usual. If you want to use Cloud Motion functionality,
click the Cloud Motion checkbox at the bottom of the screen. The map will then show only the
zones which are configured for Cloud Motion.

On this page:

• Create Server from Wizard


• Configure Resources
• Add Recipes
• Confirmation

See also:
• Manage User VSs

85
OnApp Cloud 6.7 Federation Guide

• Create VS in Federated Zone


• FAQ

17.1.2 Configure Resources

The server is created from the specific template group. Server resources are configured the
same way as local servers are configured.

17.1.3 Add Recipes

If required, users configure recipes and custom recipe variables for their virtual servers.

17.1.4 Confirmation

Users complete the wizard and the server is ready to go.

17.2 Move VS to Another Location


This document applies to end users. Otherwise refer to the Sellers or Buyers sections of this
guide.
Cloud Motion allows you to move virtual servers between locations. This requires you to be
subscribed to two federated zones which have CloudBoot Integrated storage. When you move
your virtual server, a target server is built from a similar template as the source VS and with the
same configuration, but at the selected location. Then, the disk of the source VS is replicated to
the target VS. After the replication process is complete, the source VS is deleted from the
source cloud.
Besides the VSs that are created with the Cloud Motion checkbox enabled in the creation
wizard, you can also move the VSs built on a Cloud Motion compatible location that do not have
this checkbox enabled. For this you need to run the following rake task:

rake federation:sync_motion_possibility_with_market

• OnApp currently supports moving virtual servers with one IP address and one disk
(not including the swap disk).

86
OnApp Cloud 6.7 Federation Guide

• You can migrate a virtual server only if you have access to a template on the target
zone with the same distro and version as the template from which the source VS is
built on.

On this page:

• Create virtual server at location that supports Cloud Motion


• Initialize Cloud Motion

See also:
• Deploying Servers Walk-through
• Create VS in Federated Zone

17.2.1 Create virtual server at location that supports Cloud Motion

If you want to be able to move your virtual server to another location you need to build it at a
location that supports Cloud Motion. To create a VS on a location compatible with Cloud Motion
click the Cloud Motion checkbox at the Cloud Locations step of the VS creation wizard at your
Control Panel > Cloud > Virtual Servers > Create Virtual Server. The map will then show only
the locations that support Cloud Motion.
For more information on creating virtual servers refer to Create VS in Federated Zone.

Click the Cloud Motion checkbox when selecting a location for the VS to ensure you are
creating the VS in a Cloud Motion compatible location, this will give the ability to move it
to another location in the future. If you do not click this checkbox during VS creation, you
need to run the following rake task to be able to move such a virtual server built in a
compatible location:

rake federation:sync_motion_possibility_with_market

17.2.2 Initialize Cloud Motion


If you need to move your virtual server to another location you can do that from the VS overview
page.

1. Go to your Control Panel > Cloud > Virtual Servers > Label > VS Tools.
2. Select the Move to another location option.
3. On the page that loads, from the drop-down list select the location to which you want to
move the server.

87
OnApp Cloud 6.7 Federation Guide

4. Click Next to move the VS.


5. The next page will display the status of the Cloud Motion process. The following
statuses will appear:
o Control panel has scheduled the creation of target virtual server and the motion
process - the Cloud Motion process has been initialized
o Market has accepted request to perform motion - the replication transaction has
been scheduled on the seller CP
o Tunnel keys have been generated on source and inserted into target - tunnel
keys have been configured successfully. These keys are used by the source
CP to connect to the target VS for the purpose of disk replication.
o Target is being started - the target VS is being started
o Target has started - the target VS has stared successfully
o The replication process from source to target has started - the disk of the
source VS is being replicated to the target VS
o Replication has successfully finished - the disk of the source VS has been
replicated successfully
o Replication process is stopped - the replication process is finished
o Target is being shutdown - the target VS is being shut down. It is required to
shut down the target VS to rebuild its network.
o Target has been shutdown - the target VS has been shut down successfully
o Rebuilding network on target - the target VS's network is being rebuilt
o Target's network has been rebuilt. Target started - the target VS's network has
been rebuilt successfully. The target VS has started.
o Destroying source - the source VS is being deleted
o Motion finished. Waiting for source to be destroyed - all transactions except the
source VS destruction were finished successfully
o Motion has been complete - the Cloud Motion process is complete

You can view the status of Cloud Motion transactions at your Control Panel >
Cloud > Virtual Servers > status of the required server. The status of a VS that
is being moved changes to In motion. If you click this status, you will be
forwarded to the Motion Steps activity log.

6. Click Go to moved VS to see the overview page of the target VS.

17.3 Create VS in Federated Zone


This document applies to end users. Otherwise refer to the Sellers or Buyers sections of this
guide.

For users, creating a virtual server in Federation is almost the same procedure as creating a VS
on local buyer's compute zones. Virtual servers are created from templates. Depending on the
location chosen (remote seller's location or local buyer's), the virtual server will be created
locally or in Federation. The system automatically checks this and the VS creation wizard alters
accordingly.

88
OnApp Cloud 6.7 Federation Guide

When a virtual server is provisioned, the public keys of the Control Panel and your public SSH
keys (if you have SSH keys added) are set for the server.
To create a virtual server on a federated compute zone:
1. Go to your Control Panel > Admin > Virtual Servers menu and press the "+" button, or
click the Create New Virtual Server button at the bottom of the screen.
2. Fill in the VS creation form step by step. Each of these steps is described in the
corresponding sections below.
3. Click the Create Virtual Server button to start the creation process. You will be taken
to the virtual server details screen.

On this page:

• Step 1 of 6. Cloud Locations


• Step 2 of 6. Templates
• Step 3 of 6. Virtual Server Properties
• Step 4 of 5. Resources
• Step 5 of 6. Recipes
• Step 6 of 6. Confirmation

See also:
• Deploying Servers Walk-through
• Move VS to Another Location
• FAQ

17.3.1 Step 1 of 6. Cloud Locations

If there is only one location available this step will be skipped. The wizard will start with the
Templates step. The Cloud Locations step is present in the wizard if the following
requirements are satisfied:
• All compute zones that are added to a user's bucket are assigned to location groups.
• Compute zones that are added to a user's bucket are not assigned to the same location
group.
At this step you choose cloud location for VS creation. The location predefines the available
configurations of VS resources in the following steps of the wizard. If the chosen location is
associated with a local compute zone, the VS creation procedure will be standard. Refer to
the Create VS page. If the selected location is provided in Federation, the VS will be created
remotely. Below are the instructions for completing the wizard if the chosen location is
associated with a federated compute zone:
1. If you want to use Cloud Motion functionality, click the Cloud Motion checkbox. The
map will then show only the zones which are configured for Cloud Motion.
2. Indicate your virtual server's cloud location: country and city.
3. Click Next to proceed to the following step of the wizard.

89
OnApp Cloud 6.7 Federation Guide

• It is required to click the Cloud Motion checkbox when selecting a location for the
VS if you want to be able to move this VS later, otherwise you will not be able to
use Cloud Motion for the VS.
• If you select a dashboard location at this step, only local buyer templates will be
available in the VS creation wizard. If you select a federated location, only the
templates that come with the federated zone you have selected will be available for
selection.

17.3.2 Step 2 of 6. Templates

At this step, specify the template from which your virtual server will be built.
To choose a template:
1. Click the required group icon on the right (Windows, Linux, FreeBSD, etc.) to expand
the list of templates on the left. Every template contains the following info:
o Template's label
o Min memory size, required to create a VS from this template
o Min disk size, required to create a VS from this template
o Virtualization type (Xen or KVM)

Please note that OnApp 6.4 is the last version of OnApp that includes
full support for the Xen compute resources. In OnApp 6.5 Xen,
virtualization type is not supported.

o Price per hour


2. Select the template.
3. Click Next.
Only the templates that come with the federated zone you have selected at Step 1 are available
for selection.
Note that the template group associated with the selected location will be present in the wizard
only if all the resources (template group, data store zone, compute zone, network zone, backup
server zone) of that compute zone are added to the bucket of the current user.

17.3.3 Step 3 of 6. Virtual Server Properties

At this step you need to:


• Give your virtual server a label.
• Give your virtual server a hostname. The hostname should consist of letters [A-Z a-z],
digits [0-9] and dash [ - ]. For more info on hostname validation, refer to RFC standard
documentation.
• Specify the domain for this VS. The default value is localdomain. This parameter is not
applicable for Windows virtual servers.

For example:
test.onapp.com - specify 'test' as hostname, 'onapp.com'- as domain. If you

90
OnApp Cloud 6.7 Federation Guide

leave the domain field blank, the default value 'localdomain' will be used and you
will get the following - test.onapp.com.localdomain.

• Give your virtual server a secure password. It can consist of 6-99 characters, letters [A-
Za-z], digits [0-9], dash [ - ] and lower dash [ _ ]. You can use both lower- and
uppercase letters.
• Click Next.

17.3.4 Step 4 of 5. Resources

You can create a virtual server from a ready-made instance package or select all the necessary
resources manually. The availability of instance packages depends on
your permissions and bucket settings. Therefore, the Resources step can provide two
options: Instance Packages or Create Your Own. If you select an instance package, then click
the Create Your Own tab and proceed to the next step, the system applies resources
from Create Your Own even if you don't select any resources.

17.3.4.1 Instance Packages


Before you create a virtual server from an instance package, consider the following:
• If an instance package applies only to certain compute zones in a bucket, a virtual
server is created on one of the compute resources within one of those zones. If an
instance package is not limited to certain zones, the compute zone and compute
resource are selected automatically from the ones available to a user.
• Instance package virtual servers can be created only in compute zones where all
compute resources are assigned the same number of CPU units. If there are compute
resources with different number of CPU units, it's not possible to create instance
package virtual servers in such zones. The reason is that CPU priority for instance
package virtual servers in this configuration cannot be set to 100%, which is the default
value for such virtual servers.
• If there are no available IP addresses, all instance packages are dimmed in the wizard.
• Instance packages that have resources incompatible with the available compute zones
are dimmed in the wizard.
To create a virtual server from an instance package, click a box for a corresponding package.
The instance package box includes the following details:
• Memory - the number of RAM in MB or GB available in the instance package
• CPUs - the number of CPU cores available in this instance package
• Disk Size - the number of disk size in MB or GB available in this instance package
• Bandwidth - the number of bandwidth in MB or GB available in this instance package
• Price per Hour:
o Mode ON - an estimated hourly price if the virtual server is powered on
o Mode OFF - an estimated hourly price if the virtual server is powered off
• Price per Month:
o Mode ON - an estimated monthly price if the virtual server is powered on
o Mode OFF - an estimated monthly price if the virtual server is powered off
After you click an instance package box, it becomes highlighted in green. Click Next to
proceed to the following step of the wizard.

91
OnApp Cloud 6.7 Federation Guide

17.3.4.2 Create Your Own


Set the resources needed for this VS: RAM, CPU cores, CPU priority.
Primary disk
• Set the primary disk size
Swap disk
• Set the swap disk size.
Network configuration
• Set the port speed for this VS or choose unlimited
• Click Next.

• Be aware, that during VS creation you can not set greater network port speed than
indicated by seller when adding zone to federation.
• There are the following resources ratios for VSs built on public federated zones:
o a 4:1 ratio for CPU cores and RAM. For example, if you are building a VS
with 8 CPU cores, you need to allocate at least 2 GB of RAM to it. The
RAM value in the wizard will be adjusted automatically according to the
number of CPU cores you set.
o a 20:1 ratio for storage and RAM. For example, if you are building a VS
with 5 GB of storage, you need to allocate at least 256 MB of RAM to it.
The RAM value in the wizard will be adjusted automatically according to
the storage size you set.
o a 20:1 ratio for primary and swap disks, if swap disks apply to your VS. For
example, if you set a 1GB swap disk for a VS, the primary disk cannot
exceed 19GB.

17.3.5 Step 5 of 6. Recipes

• The recipes step will be missing in the wizard if there are no recipes created in the
cloud. For information on adding recipes to the cloud, refer to the Recipes page.
• Recipes on the disk resize event are supported only if the seller who provides the
resources runs OnApp version 5.4 and up. Recipes on the network interface added
event are not supported for VSs in Federation.

At this step you need to indicate the recipes you want to assign to your virtual server. This step
is optional. You can create a virtual server without choosing recipes and add them later if
required.
1. Choose a recipe you want to assign to this virtual server by dragging the required
recipe to the Assigned recipes pane.
2. To add a custom variable, click the "+" button next to the Custom recipe variables title
bar, then specify variable details:
o Specify the recipe name and its value.
o Move the Enabled slider to the right to allow use of this variable.
3. Click Next to proceed to the next step of the wizard that completes the virtual server
creation process.

92
OnApp Cloud 6.7 Federation Guide

17.3.6 Step 6 of 6. Confirmation

At the Confirmation step you can find the configuration summary of VS, which will be created.
You can view template's name, RAM size, number of networks, primary disk and swap disk
size, number of cores.
Move the Boot Virtual Server slider to the right if you want the system to automatically build
the VS. If you leave this box blank, you will have to build your server manually after it is created.
After you set up these parameters, click the Create Virtual Server button to start the creation
process.

93
OnApp Cloud 6.7 Federation Guide

18 Buyers API
This chapter provides requests for buyers.

18.1 Get List of Federated Resources


As a buyer, you can get the list of all compute zones in Federation with their details. To do so,
use the following request:
GET /federation/hypervisor_zones/unsubscribed.xml
GET /federation/hypervisor_zones/unsubscribed.json
XML Request Example

curl -i -X GET
http://onapp.test/federation/hypervisor_zones/unsubscribed.xml -u
user:userpass

JSON Request Example

curl -i -X GET
http://onapp.test/federation/hypervisor_zones/unsubscribed.json -u
user:userpass

XML Output Example

94
OnApp Cloud 6.7 Federation Guide

<hypervisor_zones type="array">
<hypervisor_zone>
<label></label>
<provider_name>Test</provider_name>
<seller_page_url nil="true"/>
<description></description>
<federation_id>resource:compute:onapp-test</federation_id>
<country>Ukraine</country>
<city>Lviv</city>
<uptime_percentage type="integer">0</uptime_percentage>
<tier>enterprise</tier>
<latitude type="float">49.839683</latitude>
<longitude type="float">24.029717</longitude>
<cpu_score type="integer">0</cpu_score>
<cpu_index type="integer">0</cpu_index>
<bandwidth_score type="integer">0</bandwidth_score>
<bandwidth_index type="integer">0</bandwidth_index>
<disk_score type="integer">0</disk_score>
<disk_index type="integer">0</disk_index>
<cloud_index type="integer">0</cloud_index>
<hypervisor_zone_pricing>
<cpu_on>0</cpu_on>
<cpu_off>0</cpu_off>
<cpu_priority_on>0</cpu_priority_on>
<cpu_priority_off>0</cpu_priority_off>
<memory_on>22</memory_on>
<memory_off>0</memory_off>
<cpu_max nil="true"/>
<cpu_priority_max nil="true"/>
<memory_max nil="true"/>
</hypervisor_zone_pricing>
<data_store_zone_pricing>
<disk_size_on>22</disk_size_on>
<disk_size_off>0</disk_size_off>
<data_read>0</data_read>
<data_write>0</data_write>
<input_requests>0</input_requests>
<output_requests>0</output_requests>
<disk_size_max nil="true"/>
</data_store_zone_pricing>
<network_zone_pricing>
<ip_addresses_on>900</ip_addresses_on>
<ip_addresses_off>0</ip_addresses_off>
<port_speed>0</port_speed>
<data_read>0</data_read>
<data_sent>0</data_sent>
<ip_addresses_max nil="true"/>
<port_speed_max nil="true"/>
</network_zone_pricing>
<user_virtual_server_pricing>
<auto_scaling>0</auto_scaling>
<template_backup_store>0</template_backup_store>
<backup>0</backup>
<template>0</template>
<auto_scaling_max nil="true"/>
<template_backup_store_max nil="true"/>
<backup_max nil="true"/>
<template_max nil="true"/>
</user_virtual_server_pricing>
<tier_options>
<ha type="boolean">true</ha>
<sla type="boolean">true</sla>
<storage_performance type="boolean">true</storage_performance>
<backups type="boolean">true</backups>
<templates type="boolean">true</templates>
<windows_license type="boolean">true</windows_license>

95
OnApp Cloud 6.7 Federation Guide

<ddos_protection type="boolean">true</ddos_protection>
<ipv6 type="boolean">false</ipv6>
<dns type="boolean">true</dns>
<motion type="boolean">true</motion>
<replication type="boolean">true</replication>
</tier_options>
</hypervisor_zone>
<hypervisor_zone>...</hypervisor_zone>
</hypervisor_zones>

Where:
label - federated zone name
provider_name - the provider name
seller_page_url - the link to the seller's website. Currently, this parameter is not applicable.
description - the description of the zone
federation_id - ID of the Zone in Federation
country - the country where this zone is located
city - the city where this zone is located
uptime_percentage - the zone's uptime percentage
tier - the zone's tier: dev, pro, enterprise
latitude - the latitude coordinates of the zone's location
longitude - the longitude coordinates of the zone's location
cpu_score - zone's CPU score
cpu_index - zone's CPU index
bandwidth_score - zone's bandwidth score
bandwidth_index - zone's bandwidth index
disk_score - zone's disk score
disk_index - zone's disk index
cloud_index - zone's cloud index
hypervisor_zone_pricing - the array of parameters related to the pricing for the zone for
compute zone resources:
cpu_on - the price per CPU core/per hour, for VSs powered on
cpu_off - the price per CPU core/per hour, for VSs powered off
cpu_priority_on - the price per CPU priority % per hour, for VSs powered on
cpu_priority_off - the price per CPU priority % per hour, for VSs powered off
memory_on - the price per RAM (MB) per hour, for VSs powered on
memory_off - the price per RAM (MB) per hour, for VSs powered off
cpu_max - maximum number of CPU cores the users can request when signed up for this
federated zone
cpu_priority_max - the maximum CPU priority % the users can request when signed up for
this federated zone
memory_max - the maximum RAM (MB) they can request when signed up for this federated
zone
data_store_zone_pricing - the array of parameters related to the pricing for the zone for data
store zone resources:

96
OnApp Cloud 6.7 Federation Guide

disk_size_on - the price per GB of disk space per hour for VSs powered on
disk_size_off - the price per GB of disk space per hour for VSs powered off
data_read - the price for data read per GB/per hour
data_write - the price for data written per GB/per hour
input_requests - the price for input requests per hour. Input requests are measured in
millions and priced per million requests.
output_requests - the price for output requests per hour. Output requests are measured in
millions and priced per million
requests.
disk_size_max - the maximum disk size the users can request when signed up for this
federated zone
network_zone_pricing - the array of parameters related to the pricing for the zone for network
zone resources:
ip_addresses_on - the price per IP address/per hour for VSs powered on
ip_addresses_off - the price per IP address/per hour for VSs powered off
port_speed - the price for Mbps/per hour of port speed for VSs
data_rxed - the price per GB of data received/per hour for VSs
data_sent - the price per GB of data sent/per hour for VSs
ip_addresses_max - the maximum number of IP addresses the users can request when
signed up for this federated zone
port_speed_max - the maximum port speed (Mbps) the users can request when signed
up for this federated zone
user_virtual_server_pricing - the array of parameters related to the pricing for the zone for user
resources:
auto_scaling - parameter reserved for future use
template_backup_store - the price for backups&templates
backup - the price per user backup per hour
template - the price per user template per hour
auto_scaling_max - parameter reserved for future use
template_backup_store_max - the maximum amount of disk space (GB) customers can use
for backups and templates when
signed up for this federated zone
backup_max - the maximum number of user backups that can be created when signed
up for this federated zone, according to their template&backup storage space limit
template_max - the maximum number of user templates that can be created when signed
up for this federated zone, according to their template&backup storage space limit
tier_options - array of parameters related to zone configuration:
ha - true if HA is available for the compute zone, otherwise false
sla - the number by which the cost of the resources provided to the buyer will be multiplied in
case of downtime. The seller will need to compensate the cost of resources multiplied by this
number to the buyers in case of downtime.
storage_performance - true if the zone provides SSD storage, false if the zone provides
HDD storage
backups - true if backups are available for the compute zone, otherwise false

97
OnApp Cloud 6.7 Federation Guide

templates - the templates that are available in the federated zone


windows_license - true if Windows license is available for the compute zone, otherwise false
ddos_protection - true if DDOS protection is available for the compute zone, otherwise false
ipv6 - true if IPv6 is available for the compute zone, otherwise false
dns - true if DNS available for the compute zone, otherwise false
motion - true if the zone has CloudBoot Integrated Storage configured, otherwise false. For
more information refer to Move VS to Another Location.
replication - true if cross-location replication is available for the compute zone, otherwise
false

18.2 Get Federated Resource Details


As a buyer you can find a particular federated resource to see its details. To do so, use the
following request:
GET /federation/hypervisor_zones/unsubscribed.xml?q=query
GET /federation/hypervisor_zones/unsubscribed.json?q=query
XML Request Example:

curl -i -X GET
http://onapp.test/federation/hypervisor_zones/unsubscribed.xml?q=query -u
user:userpass

JSON Request Example:

curl -i -X GET
http://onapp.test/federation/hypervisor_zones/unsubscribed.json?q=query -u
user:userpass

Where:
query - part of the name of compute zone's label, location country or city
XML Response Example:

98
OnApp Cloud 6.7 Federation Guide

<hypervisor_zones type="array">
<hypervisor_zone>
<label></label>
<provider_name>Test</provider_name>
<seller_page_url nil="true"/>
<description></description>
<federation_id>resource:compute:onapp-test</federation_id>
<country>Ukraine</country>
<city>Lviv</city>
<uptime_percentage type="integer">0</uptime_percentage>
<tier>enterprise</tier>
<latitude type="float">49.839683</latitude>
<longitude type="float">24.029717</longitude>
<cpu_score type="integer">0</cpu_score>
<cpu_index type="integer">0</cpu_index>
<bandwidth_score type="integer">0</bandwidth_score>
<bandwidth_index type="integer">0</bandwidth_index>
<disk_score type="integer">0</disk_score>
<disk_index type="integer">0</disk_index>
<cloud_index type="integer">0</cloud_index>
<hypervisor_zone_pricing>
<cpu_on>0</cpu_on>
<cpu_off>0</cpu_off>
<cpu_priority_on>0</cpu_priority_on>
<cpu_priority_off>0</cpu_priority_off>
<memory_on>22</memory_on>
<memory_off>0</memory_off>
<cpu_max nil="true"/>
<cpu_priority_max nil="true"/>
<memory_max nil="true"/>
</hypervisor_zone_pricing>
<data_store_zone_pricing>
<disk_size_on>22</disk_size_on>
<disk_size_off>0</disk_size_off>
<data_read>0</data_read>
<data_write>0</data_write>
<input_requests>0</input_requests>
<output_requests>0</output_requests>
<disk_size_max nil="true"/>
</data_store_zone_pricing>
<network_zone_pricing>
<ip_addresses_on>900</ip_addresses_on>
<ip_addresses_off>0</ip_addresses_off>
<port_speed>0</port_speed>
<data_read>0</data_read>
<data_sent>0</data_sent>
<ip_addresses_max nil="true"/>
<port_speed_max nil="true"/>
</network_zone_pricing>
<user_virtual_server_pricing>
<auto_scaling>0</auto_scaling>
<template_backup_store>0</template_backup_store>
<backup>0</backup>
<template>0</template>
<auto_scaling_max nil="true"/>
<template_backup_store_max nil="true"/>
<backup_max nil="true"/>
<template_max nil="true"/>
</user_virtual_server_pricing>
<tier_options>
<ha type="boolean">true</ha>
<sla type="boolean">true</sla>
<storage_performance type="boolean">true</storage_performance>
<backups type="boolean">true</backups>
<templates type="boolean">true</templates>
<windows_license type="boolean">true</windows_license>

99
OnApp Cloud 6.7 Federation Guide

<ddos_protection type="boolean">true</ddos_protection>
<ipv6 type="boolean">false</ipv6>
<dns type="boolean">true</dns>
<motion type="boolean">true</motion>
<replication type="boolean">true</replication>
</tier_options>
</hypervisor_zone>

Where:
label - federated zone name
provider_name - the provider name
seller_page_url - the link to the seller's website. Currently, this parameter is not applicable.
description - the description of the zone
federation_id - ID of the Zone in Federation
country - the country where this zone is located
city - the city where this zone is located
uptime_percentage - the zone's uptime percentage
tier - the zone's tier: dev, pro, enterprise
latitude - the latitude coordinates of the zone's location
longitude - the longitude coordinates of the zone's location
cpu_score - zone's CPU score
cpu_index - zone's CPU index
bandwidth_score - zone's bandwidth score
bandwidth_index - zone's bandwidth index
disk_score - zone's disk score
disk_index - zone's disk index
cloud_index - zone's cloud index
hypervisor_zone_pricing - the array of parameter related to the pricing for the zone for compute
zone resources:
cpu_on - the price per CPU core/per hour, for VSs powered on
cpu_off - the price per CPU core/per hour, for VSs powered off
cpu_priority_on - the price per CPU priority % per hour, for VSs powered on
cpu_priority_off - the price per CPU priority % per hour, for VSs powered off
memory_on - the price per RAM (MB) per hour, for VSs powered on
memory_off - the price per RAM (MB) per hour, for VSs powered off
cpu_max - maximum number of CPU cores the users can request when signed up for this
federated zone
cpu_priority_max - the maximum CPU priority % the users can request when signed up for
this federated zone
memory_max - the maximum RAM (MB) they can request when signed up for this federated
zone
data_store_zone_pricing - the array of parameter related to the pricing for the zone for data
store zone resources:
disk_size_on - the price per GB of disk space per hour for VSs powered on

100
OnApp Cloud 6.7 Federation Guide

disk_size_off - the price per GB of disk space per hour for VSs powered off
data_read - the price for data read per GB/per hour
data_write - the price for data written per GB/per hour
input_requests - the price for input requests per hour. Input requests are measured in
millions and priced per million requests.
output_requests - the price for output requests per hour. Output requests are measured in
millions and priced per million
requests.
disk_size_max - the maximum disk size the users can request when signed up for this
federated zone
network_zone_pricing - the array of parameter related to the pricing for the zone for network
zone resources:
ip_addresses_on - the price per IP address/per hour for VSs powered on
ip_addresses_off - the price per IP address/per hour for VSs powered off
port_speed - the price for Mbps/per hour of port speed for VSs
data_rxed - the price per GB of data received/per hour for VSs
data_sent - the price per GB of data sent/per hour for VSs
ip_addresses_max - the maximum number of IP addresses the users can request when
signed up for this federated zone
port_speed_max - the maximum port speed (Mbps) the users can request when signed
up for this federated zone
user_virtual_server_pricing - the array of parameter related to the pricing for the zone for user
resources:
auto_scaling - parameter reserved for future use
template_backup_store - the price for backups&templates
backup - the price per user backup per hour
template - the price per user template per hour
auto_scaling_max - parameter reserved for future use
template_backup_store_max - the maximum amount of disk space (GB) customers can use
for backups and templates when
signed up for this federated zone
backup_max - the maximum number of user backups which can be created when signed
up for this federated zone, according to their template&backup storage space limit
template_max - the maximum number of user templates which can be created when signed
up for this federated zone, according to their template&backup storage space limit
tier_options - array of parameters related to zone configuration:
ha - 'true' if HA is available for the compute zone, otherwise 'false'
sla - the number by which the cost of the resources provided to the buyer will be multiplied in
case of downtime. The seller will need to compensate the cost of resource multiplied by this
number to the buyers in case of downtime.
storage_performance - 'true' if the zone provides SSD storage, 'false' if the zone provides
HDD storage
backups - 'true' if backups are available for the compute zone, otherwise 'false'
templates - the templates that are available in the federated zone

101
OnApp Cloud 6.7 Federation Guide

windows_license - 'true' if Windows licence is available for the compute zone, otherwise
'false'
ddos_protection - 'true' if DDOS protection is available for the compute zone, otherwise
'false'
ipv6 - 'true' if IPv6 is available for the compute zone, otherwise 'false'
dns - 'true' if DNS available for the compute zone, otherwise 'false'
motion - 'true' if the zone has CloudBoot Integrated Storage configured, otherwise 'false'. For
more information refer to Move VS to Another Location.
replication - 'true' if cross location replication is available for the compute zone, otherwise
'false'

18.3 Subscribe to Federated Zones


As a buyer you can subscribe to compute zones available in Federation. To do so, use the
following request:
POST /federation/hypervisor_zones/:id/subscribe.xml
POST /federation/hypervisor_zones/:id/subscribe.json
XML Request Example

curl -i -X POST
http://onapp.test/federation/hypervisor_zones/12/subscribe.xml -u
user:userpass -d ''

Json Request Example

curl -i -X POST
http://onapp.test/federation/hypervisor_zones/12/subscribe.json -u
user:userpass -d ''

Where
id* - federated compute zone ID which you can find using GET request (e.g.
resource:compute:onapp-KpY4wXq2N)

18.4 Unsubscribe from Federated Zones


As a buyer, you can unsubscribe from a federated zone so that your users could create no more
VSs in a zone. To do so, use the following request:
DELETE /federation/hypervisor_zones/:id/unsubscribe.xml
DELETE /federation/hypervisor_zones/:id/unsubscribe.json
XML Request Example

curl -i -X DELETE
http://onapp.test/federation/hypervisor_zones/:id/unsubscribe.xml -u
user:userpass

JSON Request Example

102
OnApp Cloud 6.7 Federation Guide

curl -i -X DELETE
http://onapp.test/federation/hypervisor_zones/:id/unsubscribe.json -u
user:userpass

Where:
id* - hypervizor zone ID

18.5 Suspend Zone


As a buyer, you can prevent your users from creating any more VSs on a federated zone. To
suspend this zone and unsuspend it at any time later, use the following request:
PUT /federation/hypervisor_zones/:id/close.xml
PUT /federation/hypervisor_zones/:id/close.json
XML Request Example

curl -i -X PUT http://onapp.test/federation/hypervisor_zones/12/close.xml


-u user:userpass

Json Request Example

curl -i -X PUT http://onapp.test/federation/hypervisor_zones/12/close.json


-u user:userpass

Where:
id* - hypervizor zone ID

18.6 Unsuspend Zone


As a buyer, you can unsuspend a suspended federated zone. To do sp, use the following
request:
PUT /federation/hypervisor_zones/:id/open.xml
PUT /federation/hypervisor_zones/:id/open.json
XML Request Example

curl -i -X PUT http://onapp.test/federation/hypervisor_zones/12/open.xml -


u user:userpass

JSON Request Example

curl -i -X PUT http://onapp.test/federation/hypervisor_zones/12/open.json


-u user:userpass

Where
id* - hypervizor zone ID

18.7 Add Trust Token


As a buyer, you can register trust tokens to access private zones. To do so, use the following
request:
POST /federation/trader_tokens.xml

103
OnApp Cloud 6.7 Federation Guide

POST /federation/trader_tokens.json

Once you have used the token, you cannot remove it.

XML Request Example

curl -i -X POST -H 'Content-type: application/xml'


http://onapp.test/federation/trader_tokens.xml -u user:userpass -d
'<token><token>6c877224081ac0f224e63aaddd0b12ddb7c9b6220658953edb9951bf651
36bbf</token><sender>seller_name</sender></token>'

JSON Request Example

curl -i -X POST -H 'Content-type: application/json'


http://onapp.test/federation/trader_tokens.json -u user:userpass -d
'{"token":{"token":"a11d1cdb6f92525898458b93c10a4f87f359701478e108b24e3290
39e3252443", "sender":"seller_name"}}'

Where:
token - the token that lets you access private zones
sender - the name of the seller who generated the token

18.8 Edit Trust Token


As a buyer, you can edit the sender of the trust token. To do so, use the following request:
PUT /federation/trader_tokens/:id.xml
PUT /federation/trader_tokens/:id.json
XML Request Example

curl -i -X PUT -u user:userpass -H 'Accept: application/xml' -H 'Content-


type: application/xml' -d '<token><sender>new1</sender></token>' --url
http://onapp.test/federation/trader_tokens/12.xml

JSON Request Example

curl -i -X PUT -u user:userpass -H 'Accept: application/json' -H 'Content-


type: application/json' -d '{"token": {"sender": "new1"}}' --url
http://onapp.test/federation/trader_tokens/12.json

Where:sender - the seller who send you the trust token

18.9 Delete Trust Token


As a buyer, you can remove trust tokens that you have added. To do so, use the following
request:
DELETE /federation/trader_tokens/:id.xml
DELETE /federation/trader_tokens/:id.json
XML Request Example

104
OnApp Cloud 6.7 Federation Guide

curl -i -X DELETE -u user:userpass -H 'Accept: application/xml' -H


'Content-type: application/xml' --url
http://onapp.test/federation/trader_tokens/12.xml

JSON Request Example

curl -i -X DELETE -u user:userpass -H 'Accept: application/json' -H


'Content-type: application/json' --url
http://onapp.test/federation/trader_tokens/12.json

Where:
id - ID of the token

18.10 Get List of Trust Tokens


As a buyer, you can view the list of trust tokens you have used:
GET /federation/trader_tokens.xml
GET /federation/trader_tokens.json
XML Request Example:

curl -i -X GET -H 'Content-type: application/xml'


http://onapp.test/federation/trader_tokens.xml -u user:userpass

Json Request Example:

curl -i -X GET -H 'Content-type: application/json'


http://onapp.test/federation/trader_tokens.json -u user:userpass

XML Response Example:

<tokens type="array"> <token> <id type="integer">1</id>


<sender>test</sender> <token>
8f40eab53d1d9be135fe51c1b78c74aca5b3f9f509bf24a7485c97a185616a90 </token>
</token> <token>...</token> </tokens>

Where:
id - ID of the token
sender - the name of the seller who generated the token
token - the token itself, use this string to access the private zone

18.11 Add VS in Federation


To add a VS based on a federated zone, use the following request:
POST /virtual_machines.xml
POST /virtual_machines.json
XML Request Example

105
OnApp Cloud 6.7 Federation Guide

curl -i -X POST -H 'Accept: application/xml' -H 'Content-type:


application/xml' -u user:userpass -d
'<virtual_machine><template_id>8</template_id><label>zaza</label><hostname
>zaza</hostname><initial_root_password>ehgebhewvtwh</initial_root_password
><memory>128</memory><cpus>1</cpus><cpu_shares>1</cpu_shares><primary_disk
_size>5</primary_disk_size><swap_disk_size>1</swap_disk_size><rate_limit>1
</rate_limit><required_virtual_machine_build>1</required_virtual_machine_b
uild><recipe_joins_attributes><1506004212431><recipe_id>3</recipe_id></150
6004212431></recipe_joins_attributes><required_virtual_machine_startup>1</
required_virtual_machine_startup></virtual_machine>' --url
http://onapp.test/virtual_machines.xml

JSON Request Example

curl -i -X POST -H 'Accept: application/json' -H 'Content-type:


application/json' -u user:userpass -d
'{"virtual_machine":{"template_id":"8", "label":"zaza", "hostname":"zaza",
"initial_root_password":"tyrhsghj657th", "memory":"128", "cpus":"1",
"cpu_shares":"1", "primary_disk_size":"5",
"recipe_joins_attributes"=>{"1506004212431"=>{"recipe_id"=>"3"}},
"swap_disk_size":"1", "rate_limit":"1",
"required_virtual_machine_build":"1",
"required_virtual_machine_startup":"1" }}' --url
http://onapp.test/virtual_machines.json

Where:
memory* - amount of RAM assigned to the VS

There are the following resources ratios for VSs built on public federated zones:
• a 4:1 ratio for CPU cores and RAM. For example, if you are building a VS with 8
CPU cores, you need to allocate at least 2 GB of RAM to it.
• a 20:1 ratio for storage and RAM. For example, if you are building a VS with 5 GB
of storage, you need to allocate at least 256 MB of RAM to it.
If you do not allocate the required amount of RAM to the VS the build process will fail.

cpus* - number of CPUs assigned to the VS


cpu_shares* - required parameter. For KVM compute resource the CPU priority value is always
100
hostname* - set the host name for this VS
label* - user-friendly VS description
primary_disk_size* - set the disk space for this VS
swap_disk_size* - set swap space. There is no swap disk for Windows-based VSs
rate_limit - set max port speed. Optional parameter: if none set, the system sets port speed to
unlimited
required_virtual_machine_build * - set 1 to build VS automatically
required_virtual_machine_startup - set 1 to start up the VS automatically, otherwise set 0
(default state is "1")
template_id * - the ID of a template from which a VS should be built
recipe_id - the ID of the recipe you wish to assign to this VS
initial_root_password - the root password for a VS. Optional, if none specified, the system will
provide a random password. It can consist of 6-32 characters, letters [A-Za-z], digits [0-9], dash
[ - ] and lower dash [ _ ]. You can use both lowercase and uppercase letters

106
OnApp Cloud 6.7 Federation Guide

The following characters are not allowed for Windows-based virtual servers:
• percent sign [%]
• double quotation marks [“]
• brackets [<,>]
• vertical bar [|]
• caret [^]
• ampersand [&]
• parentheses [(,)]

18.12 Report a Problem with a VS


To report a problem with a virtual server, use the following request:
POST /federation/virtual_machines/:vm_identifier/report_a_problem.xml
POST /federation/virtual_machines/:vm_identifier/report_a_problem.json
XML Request Example

curl -i -X POST -H 'Content-type: application/xml'


http://onapp.test/federation/virtual_machines/12/report_a_problem.xml -u
user:userpass -d
'<federation_problem><body>:text_problem</body></federation_problem>'

JSON Request Example

curl -X POST -H "Accept: application/json" -H "Content-Type:


application/x-www-form-urlencoded" -u user:userpass -d
'federation_problem[body]=:text_problem'
'http://onapp.test/federation/virtual_machines/12/report_a_problem.json'

Where:
body - the description of the problem

18.13 Get Zone Cloud Score


To get the cloud score graph for a zone, use the following request:
GET /federation/hypervisor_zones/:federation_id/scores.xml
GET /federation/hypervisor_zones/:federation_id/scores.json
XML Request Example

curl -X GET -H "Accept: application/xml" -H "Content-Type:


application/xml" -u user:userpass
'http://onapp.test/federation/hypervisor_zones/12/scores.xml'

JSON Request Example

curl -X GET -H "Accept: application/json" -H "Content-Type:


application/json" -u user:userpass
'http://onapp.test/federation/hypervisor_zones/12/scores.json'

XML Output Example

107
OnApp Cloud 6.7 Federation Guide

<hypervisor_zone_scores type="array">
<hypervisor_zone_score>
<cpu_score type="integer">10</cpu_score>
<disk_score type="integer">20</disk_score>
<bandwidth_score type="integer">30</bandwidth_score>
<cpu_index type="integer">75</cpu_index>
<disk_index type="integer">90</disk_index>
<bandwidth_index type="integer">19</bandwidth_index>
<cloud_index type="integer">67</cloud_index>
<created_at>2015-08-14T13:30:38.065Z</created_at>
</hypervisor_zone_score>
<hypervisor_zone_score>...</hypervisor_zone_score>
</hypervisor_zone_scores>

Where:
cpu_score - zone's CPU score
disk_score - zone's disk score
bandwidth_score - zone's bandwidth score
cpu_index - zone's CPU index
disk_index - zone's disk index
bandwidth_index - zone's bandwidth index
cloud_index - zone's CPU index
created_at - time in [YYYY][MM][DD]T[hh][mm][ss]Z format

18.14 Set Default Firewall Rules


To set default firewall rules, use the following request:
PUT
/virtual_machines/:virtual_machine_id/firewall_rules/update_defaults.x
ml
PUT
/virtual_machines/:virtual_machine_id/firewall_rules/update_defaults.j
son
XML Request Example

curl -i -X PUT -u user:userpass -H 'Accept: application/xml' -H 'Content-


type: application/xml' -d
'<network_interfaces><159><default_firewall_rule>ACCEPT</default_firewall_
rule></159></network_interfaces>' --url
http://onapp.test/virtual_machines/12/firewall_rules/update_defaults.xml

JSON Request Example

curl -i -X PUT -u user:userpass -H 'Accept: application/json' -H 'Content-


type: application/json' -d
'{"network_interfaces":{"159":{"default_firewall_rule":"ACCEPT"}}}' --url
http://onapp.test/virtual_machines/12/firewall_rules/update_defaults.json

Where:
network_interfaces - the array of VS network interfaces. To set default firewall rules for a VS
(either DROP or ACCEPT), you need to set the rule for each network interface the VS is using.

108
OnApp Cloud 6.7 Federation Guide

default_firewall_rule - set default firewall rule for the particular VS network interface – either
DROP or ACCEPT

18.15 Edit a Notification for a Zone


To edit a notification for a zone, use the following request:
PUT /federation/hypervisor_zones/:hypervisor_group_id/announcements/:i
d.xml
PUT /federation/hypervisor_zones/:hypervisor_group_id/announcements/:i
d.json
XML Request Example

curl -i -X PUT -H 'Accept: application/xml' -H 'Content-type:


application/xml' -u user:userpass -d '<announcement><created_at>2015-07-
28T14:28:36+03:00</created_at><federation_id>announcement:onapp-
resource:compute:onapp-U1zyxCOZHs5F-LRfqdkvMb0mDI-
jw5zIzaIkzCdxn7lcOfQpAqUYvw</federation_id><finish_at>2017-
0212T00:00:00+03:00</finish_at><hypervisor_group_id>2810</hypervisor_group
_id><id>78</id><kind /><start_at>2016-02-
12T00:00:00+03:00</start_at><text>new_text</text><updated_at>2015-07-
28T14:34:15+03:00</updated_at></announcement>' --url
http://onapp.test/federation/hypervisor_zones/12/announcements/3.xml

JSON Request Example

curl -i -X PUT -H 'Accept: application/json' -H 'Content-type:


application/json' -u user:userpass -d
'{"announcement":{"created_at":"2015-07-
28T14:28:36+03:00","federation_id":"announcement:onapp-
resource:compute:onapp-U1z-yxCOZHs5F-LRfqdkvMb0mDI-
jw5zIzaIkzCdxn7lcOfQpAqUYvw","finish_at":"2017-02-
12T00:00:00+03:00","hypervisor_group_id":2810,"id":78,"kind":null,"start_a
t":"2016-02-12T00:00:00+03:00","text":"new_text","updated_at":"2015-07-
28T14:34:15+03:00"}}' --url
http://onapp.test/federation/hypervisor_zones/12/announcements/3.json

Where:
created_at - the time in the [YYYY][MM][DD]T[hh][mm][ss]Z format
federation_id - the ID of a compute zone at the market
finish_at - the time and date when the notification expires
hypervisor_group_id - the ID of the compute zone associated with the notification
kind - parameter reserved for future use
start_at - the notification start time and date
text - the text of the notification
updated_at - the time in the [YYYY][MM][DD]T[hh][mm][ss]Z format

18.16 Notify Users


To inform your users about new notifications, use the following request:
POST /federation/hypervisor_zones/:hypervisor_group_id/announcements/:
id/notify_users.xml

109
OnApp Cloud 6.7 Federation Guide

POST /federation/hypervisor_zones/:hypervisor_group_id/announcements/:
id/notify_users.json
XML Request Example

curl -i -X POST -H 'Accept: application/xml' -H 'Content-type:


application/xml' -u user:userpass --url
http://onapp.test/federation/hypervisor_zones/12/announcements/3/notify_us
ers.xml

JSON Request Example

curl -i -X POST -H 'Accept: application/json' -H 'Content-type:


application/json' -u user:userpass --url
http://onapp.test/federation/hypervisor_zones/12/announcements/3/notify_us
ers.json

18.17 Add a Firewall Rule


To add a firewall rule, use the following request:
POST /virtual_machines/:virtual_machine_id/firewall_rules.xml
POST /virtual_machines/:virtual_machine_id/firewall_rules.json
XML Request Example

curl -i -X POST -H 'Accept: application/xml' -H 'Content-type:


application/xml' -u user:userpass -d
'<firewall_rule><address></address><command>DROP</command><protocol>TCP</p
rotocol><network_interface_id></network_interface_id><port></port></firewa
ll_rule>' --url http://onapp.test/virtual_machines/12/firewall_rules.xml

JSON Request Example

curl -i -X POST -H 'Accept: application/json' -H 'Content-type:


application/json' -u user:userpass -d
'{"firewall_rule":{"address":"","command":"DROP","protocol":"TCP","network
_interface_id":"","port":""}}' --url
http://onapp.test/virtual_machines/12/firewall_rules.json

Where:
address - the IP address for which this rule is active.
• Leave the empty field to apply this rule to all IPs
• Enter hyphen-separated IPs to apply the rule to an IP range (e.g. 192.168.1.1-
192.168.1.10)
• Enter the IPs with slash to apply the rule to CIDR (e.g. 192.168.1.1/24)
command - the command to ACCEPT or DROP the abovementioned IPs
protocol - protocol type (TCP or UDP)
network_interface_id - interface of the network
port - the port addresses
• Leave the empty field to apply the rule to all ports
• Enter colon-separated ports to apply the rule to a port range (e.g. 1024:1028)

110
OnApp Cloud 6.7 Federation Guide

• Enter comma-separated ports to apply the rule to the list of ports (e.g. 80,443,21)

18.18 Apply Firewall Rules


To apply firewall rules for a virtual server, use the following request:
POST /virtual_machines/:virtual_machine_id/update_firewall_rules.xml
POST /virtual_machines/:virtual_machine_id/update_firewall_rules.json
XML Request Example

curl -i -X POST -u user:userpass -H 'Accept: application/xml' --url


http://onapp.test/virtual_machines/12/update_firewall_rules.xml

JSON Request Example

curl -i -X POST -u user:userpass -H 'Accept: application/json' --url


http://onapp.test/virtual_machines/12/update_firewall_rules.json

18.19 Save Default Firewall Rules


To save default firewall rules for a VS (either DROP or ACCEPT), use the following request:
PUT
/virtual_machines/:virtual_machine_id/network_interfaces/:network_inte
rface_id.xml
PUT
/virtual_machines/:virtual_machine_id/network_interfaces/:network_inte
rface_id.json
XML Request Example

curl -i -X PUT -u user:userpass -H 'Accept: application/xml' -H 'Content-


type: application/xml' -d
'<network_interface><default_firewall_rule>DROP</default_firewall_rule></n
etwork_interface>' --url
http://onapp.test/virtual_machines/12/network_interfaces/80.xml

JSON Request Example

curl -i -X PUT -u user:userpass -H 'Accept: application/json' -H 'Content-


type: application/json' -d
'{"network_interface":{"default_firewall_rule":"DROP"}}' --url
http://onapp.test/virtual_machines/12/network_interfaces/80.json

Where:
default_firewall_rule - set default firewall rule for the particular VS network interface – either
DROP or ACCEPT

18.20 Add IP Address


To add an IP address, use the following request:
POST /virtual_machines/:virtual_machine_id/ip_addresses.xml

111
OnApp Cloud 6.7 Federation Guide

POST /virtual_machines/:virtual_machine_id/ip_addresses.json
XML Request Example

curl -i -X POST -u user:userpass -H 'Accept: application/xml' -H 'Content-


type: application/xml'-d
'<ip_address_join><network_interface_id></network_interface_id></ip_addres
s_join>' --url http://onapp.test/virtual_machines/12/ip_addresses.xml

JSON Request Example

curl -i -X POST -u user:userpass -H 'Accept: application/json' -H


'Content-type: application/json'-d
'{"ip_address_join":{"network_interface_id":""}}' --url
http://onapp.test/virtual_machines/12/ip_addresses.json

Where:
network_interface_id - specify the ID of network interface to which the IP address should be
added

18.21 Delete IP Address


To delete an IP address, use the following request:
DELETE /virtual_machines/:virtual_machine_id/ip_addresses/:id.xml
DELETE /virtual_machines/:virtual_machine_id/ip_addresses/:id.json
XML Request Example

curl -i -X DELETE -u user:userpass -H 'Accept: application/xml' -H


'Content-type: application/xml' --url
http://onapp.test/virtual_machines/9/ip_addresses/80.xml

JSON Request Example

curl -i -X DELETE -u user:userpass -H 'Accept: application/json' -H


'Content-type: application/json' --url
http://onapp.test/virtual_machines/9/ip_addresses/80.json

18.22 Rebuild VS Network


To rebuild the network for a particular VS, use the following request:
POST /virtual_machines/:virtual_machine_id/rebuild_network.xml
POST /virtual_machines/:virtual_machine_id/rebuild_network.json
XML Request Example

curl -i -X POST -u user:userpass -H 'Accept: application/xml' -H 'Content-


type: application/xml' -d
'<is_shutdown_required>true</is_shutdown_required><shutdown_type>graceful<
/shutdown_type><required_startup>1</required_startup>' --url
http://onapp.test/virtual_machines/jkfghngcdhyg/rebuild_network.xml

JSON Request Example

112
OnApp Cloud 6.7 Federation Guide

curl -i -X POST -u user:userpass -H 'Accept: application/json' -H


'Content-type: application/json' -d
'{"is_shutdown_required":"true","shutdown_type":"graceful","required_start
up":"1"}' --url
http://onapp.test/virtual_machines/jkfghngcdhyg/rebuild_network.json

Where:
is_shutdown_required - true, if shutdown is needed to rebuild the network; otherwise, false
shutdown_type - type of the VS shutdown: hard, graceful or soft
required_startup - set 1 to start up the VS automatically after build; otherwise, set 0

18.23 Get Zone Uptime Graph


To get the uptime graph for a zone, use the following request:
GET /federation/hypervisor_zones/:federation_id/uptime.xml
GET /federation/hypervisor_zones/:federation_id/uptime.json
XML Request Example

curl -X GET -H "Accept: application/xml" -H "Content-Type:


application/xml" -u user:userpass
'http://onapp.test/federation/hypervisor_zones/12/uptime.xml'

JSON Request Example

curl -X GET -H "Accept: application/json" -H "Content-Type:


application/json" -u user:userpass
'http://onapp.test/federation/hypervisor_zones/12/uptime.json'

XML Output Example

<hypervisor_zone_uptimes type="array">
<hypervisor_zone_uptime>
<date>2015-10-13</date>
<uptime_percentage type="float">99.4186046511628</uptime_percentage>
</hypervisor_zone_uptime>
<hypervisor_zone_uptime>
<date>2015-10-14</date>
<uptime_percentage type="float">100.0</uptime_percentage>
</hypervisor_zone_uptime>
<hypervisor_zone_uptime>
<date>2015-10-15</date>
<uptime_percentage type="float">100.0</uptime_percentage>
</hypervisor_zone_uptime>
<hypervisor_zone_uptime>...</hypervisor_zone_uptime>
</hypervisor_zone_uptimes>

Where:
date - the date when the zone's uptime was measured
uptime_percentage - zone's uptime percentage

113
OnApp Cloud 6.7 Federation Guide

18.24 Failed Actions

18.24.1 Get List of Failed Actions


As a buyer, you can view the list of failed actions for all virtual servers deployed by you or your
users. To do so, use the following request:
GET /federation/failed_actions.xml
GET /federation/failed_actions.json
XML Request Example:

curl -i -X GET -u user:userpass -H 'Accept: application/xml' --url


http://onapp.test/federation/failed_actions.xml

JSON Request Example:

curl -i -X GET -u user:userpass -H 'Accept: application/json' --url


http://onapp.test/federation/failed_actions.json

XML Output Example

<federation_failed_actions type="array">
<federation_failed_action>
<action>OnappMarket::Trader.release_ip</action>
<created_at type="datetime">2015-11-20T11:33:05+03:00</created_at>
<data>
<errors>
<base type="array">
<base>Invalid login or password.</base>
</base>
</errors>
</data>
<id type="integer">19</id>
<updated_at type="datetime">2015-11-20T11:33:05+03:00</updated_at>
<virtual_machine_id type="integer">321</virtual_machine_id>
</federation_failed_action>
<federation_failed_action>...<federation_failed_action>
</federation_failed_actions>

Where:
action - the name of the action that failed
created_at - time in [YYYY][MM][DD]T[hh][mm][ss]Z format
errors - the error(s) that occurred
id - the ID of the failed action
updated_at - time in [YYYY][MM][DD]T[hh][mm][ss]Z format
virtual_machine_id - the ID of the VS on which the action failed

18.24.2 Get List of Failed Actions for VS


As a buyer you can view the list of failed actions for a particular virtual server deployed by you
or your users. To do so, use the following request:
GET
/federation/virtual_machines/:virtual_machine_id/failed_actions.xml
GET /federation/virtual_machines/:virtual_machine_id/failed_actions.js
on

114
OnApp Cloud 6.7 Federation Guide

XML Request Example

curl -i -X GET -u user:userpass -H 'Accept: application/xml' --url


http://onapp.test/federation/virtual_machines/321/failed_actions.xml

JSON Request Example

curl -i -X GET -u user:userpass -H 'Accept: application/json' --url


http://onapp.test/federation/virtual_machines/321/failed_actions.json

Where:
virtual_server_id - the ID of the VS for which you want to view the failed actions list
XML Output Example

<federation_failed_actions type="array">
<federation_failed_action>
<action>OnappMarket::Trader.release_ip</action>
<created_at type="datetime">2015-11-20T11:33:05+03:00</created_at>
<data>
<errors>
<base type="array">
<base>Invalid login or password.</base>
</base>
</errors>
</data>
<id type="integer">19</id>
<updated_at type="datetime">2015-11-20T11:33:05+03:00</updated_at>
<virtual_machine_id type="integer">321</virtual_machine_id>
</federation_failed_action>
<federation_failed_action>...<federation_failed_action>
</federation_failed_actions>

Where:
action - the name of the action that failed
created_at - time in [YYYY][MM][DD]T[hh][mm][ss]Z format
errors - the error(s) that occurred
id - the ID of the failed action
updated_at - time in [YYYY][MM][DD]T[hh][mm][ss]Z format
virtual_machine_id - the ID of the VS on which the action failed

18.24.3 Get Failed Action Details


As a buyer, you can view the details of a failed action for any virtual server deployed by you or
your users. To do so, use the following request:
GET /federation/failed_actions/:failed_action_id.xml
GET /federation/failed_actions/:failed_action_id.json
XML Request Example

curl -i -X GET -u user:userpass -H 'Accept: application/xml' --url


http://onapp.test/federation/failed_actions/19.xml

JSON Request Example

115
OnApp Cloud 6.7 Federation Guide

curl -i -X GET -u user:userpass -H 'Accept: application/json' --url


http://onapp.test/federation/failed_actions/19.json

Where:
failed_action_id - ID of the failed action for which you want to view details
XML Output Example

<federation_failed_action>
<action>OnappMarket::Trader.release_ip</action>
<created_at type="datetime">2015-11-20T11:33:05+03:00</created_at>
<data>
<errors>
<base type="array">
<base>Invalid login or password.</base>
</base>
</errors>
</data>
<id type="integer">19</id>
<updated_at type="datetime">2015-11-20T11:33:05+03:00</updated_at>
<virtual_machine_id type="integer">321</virtual_machine_id>
</federation_failed_action>

Where:
action - the name of the action that failed
created_at - time in [YYYY][MM][DD]T[hh][mm][ss]Z format
errors - the error(s) that occurred
id - the ID of the failed action
updated_at - time in [YYYY][MM][DD]T[hh][mm][ss]Z format
virtual_machine_id - the ID of the VS on which the action failed

18.24.4 Get Failed Action Details for VS


As a buyer, you can view the list of failed actions for a particular virtual server deployed by you
or your users. To do so, use the following request:
GET
/federation/virtual_machines/:virtual_machine_id/failed_actions/:faile
d_action_id.xml
GET /federation/virtual_machines/:virtual_machine_id/failed_actions/:f
ailed_action_id.json
XML Request Example

curl -i -X GET -u user:userpass -H 'Accept: application/xml' --url


http://onapp.test/federation/virtual_machines/321/failed_actions/19.xml

JSON Request Example

curl -i -X GET -u user:userpass -H 'Accept: application/json' --url


http://onapp.test/federation/virtual_machines/321/failed_actions/19.json

Where:
virtual_server_id - the ID of the VS for which you want to view the failed action details
failed_action_id - the ID of the failed action for which you want to view the details

116
OnApp Cloud 6.7 Federation Guide

XML Output Example

<federation_failed_action>
<action>OnappMarket::Trader.release_ip</action>
<created_at type="datetime">2015-11-20T11:33:05+03:00</created_at>
<data>
<errors>
<base type="array">
<base>Invalid login or password.</base>
</base>
</errors>
</data>
<id type="integer">19</id>
<updated_at type="datetime">2015-11-20T11:33:05+03:00</updated_at>
<virtual_machine_id type="integer">321</virtual_machine_id>
</federation_failed_action>

Where:
action - the name of the action that failed
created_at - time in [YYYY][MM][DD]T[hh][mm][ss]Z format
errors - the error(s) that occurred
id - the ID of the failed action
updated_at - time in [YYYY][MM][DD]T[hh][mm][ss]Z format
virtual_machine_id - the ID of the VS on which the action failed

18.24.5 Delete Failed Actions for VS


As a buyer, you can delete the list of failed actions for a particular virtual server deployed by you
or your users. To do so, use the following request:
DELETE
/federation/virtual_machines/:virtual_machine_id/failed_actions.xml
DELETE /federation/virtual_machines/:virtual_machine_id/failed_actions
.json
XML Request Example

curl -i -X DELETE -u user:userpass -H 'Accept: application/xml' --url


http://onapp.test/federation/virtual_machines/12/failed_actions.xml

JSON Request Example

curl -i -X DELETE -u user:userpass -H 'Accept: application/json' --url


http://onapp.test/federation/virtual_machines/12/failed_actions.json

Where:
virtual_server_id - the ID of the VS for which you want to delete the failed actions list

18.24.6 Delete Failed Actions


As a buyer, you can delete the list of failed actions for all virtual servers deployed by you or your
users. To do so, use the following request:
DELETE /federation/failed_actions.xml
DELETE /federation/failed_actions.json
XML Request Example

117
OnApp Cloud 6.7 Federation Guide

curl -i -X DELETE -u user:userpass -H 'Accept: application/xml' --url


http://onapp.test/federation/failed_actions.xml

JSON Request Example

curl -i -X DELETE -u user:userpass -H 'Accept: application/json' --url


http://onapp.test/federation/failed_actions.json

18.25 Manage Virtual Server Recipes


Use the following API calls to view, assign and delete recipes for your virtual servers in
Federation.

18.25.1 Get List of Virtual Server Recipes


To get the list of federated virtual server recipes, use the following request:
GET /virtual_machines/:virtual_machine_id/recipe_joins.xml
GET /virtual_machines/:virtual_machine_id/recipe_joins.json
XML Request Example

curl -i -X GET -u user:userpass


http://onapp.test/virtual_machines/9/recipe_joins.xml -H 'Accept:
application/xml' -H 'Content-type: application/xml'

JSON Request Example

curl -i -X GET -u user:userpass


http://onapp.test/virtual_machines/9/recipe_joins.json -H 'Accept:
application/json' -H 'Content-type: application/json'

XML Output Example

118
OnApp Cloud 6.7 Federation Guide

<recipes>
<recipe>
<compatible_with>unix</compatible_with>
<created_at type="datetime">2012-10-22T12:46:49+00:00</created_at>
<description>Create initial folder structure</description>
<id type="integer">1</id>
<label>Create folders</label>
<script_type>vbs</script_type>
<updated_at type="datetime">2012-10-22T12:46:49+00:00</updated_at>
<user_id type="integer">2</user_id>
<recipe_steps type="array">
<recipe_step>
<created_at type="datetime">2012-10-22T12:46:49+00:00</created_at>
<fail_anything_else type="boolean">true</fail_anything_else>
<fail_values/>
<failure_goto_step type="integer">2</failure_goto_step>
<id type="integer">1</id>
<number type="integer">1</number>
<on_failure>goto_step</on_failure>
<on_success>proceed</on_success>
<pass_anything_else type="boolean">false</pass_anything_else>
<pass_values type="boolean">true</pass_values>
<recipe_id type="integer">1</recipe_id>
<result_source>exit_code</result_source>
<script>mkdir /tmp</script>
<success_goto_step nil="true"/>
<updated_at type="datetime">2012-10-22T12:46:49+00:00</updated_at>
</recipe_step>
</recipe_steps>
</recipe>
</recipes>

Where:
compatible_with - recipe compatibility: windows or unix
created_at — the date when the recipe was created in the [YYYY][MM][DD]T[hh][mm][ss]Z
format
description - recipe description
id - recipe ID
label - recipe label
script_type - script type for Windows-compatible recipes:
• bat
• vbs
• powershell (PowerShell v1.0)
updated_at — the date when the recipe was updated in the [YYYY][MM][DD]T[hh][mm][ss]Z
format
use_on_hv_zones - true, if the recipe can be used on compute zones, otherwise false
use_on_vms - true, if the recipe can be used on virtual servers, otherwise false
user_id — the ID of a recipe owner
recipe_steps - an array of recipe steps with the following details:
• created_at — the date when the step was created in the
[YYYY][MM][DD]T[hh][mm][ss]Z format
• updated_at — the date when the step was updated in the
[YYYY][MM][DD]T[hh][mm][ss]Z format

119
OnApp Cloud 6.7 Federation Guide

• fail_anything_else - set true, if you have specified the recipe pass value, otherwise set
false

You can only specify behavior for one scenario: for example, if the
fail_anything_else = false, pass_anything_else must be set to true.

• fail_values - recipe fail value


• failure_goto_step - if the on_failure parameter = goto_step, specify the step to proceed
to. If you specify the nonexistent step, the recipe will be stopped.
• id - step ID
• number - step number
• on_failure - step behavior in case of failure:
o proceed - proceed to the next step.
o fail - terminate the recipe and mark it as failed.
o stop - terminate the recipe and mark it as successful.
o go_to_step - specify the step to proceed to. If you specify the nonexistent step,
the recipe will be stopped.

• on_success - step behavior in case of success:


o proceed - proceed to the next step.
o fail - terminate the recipe and mark it as failed.
o stop - terminate the recipe and mark it as successful.
o go_to_step - specify the step to proceed to. If you specify the nonexistent step,
the recipe will be stopped.

• pass_anything_else - set true, if you have specified the recipe fail value, otherwise set
false
• pass_values - recipe pass value
• recipe_id - ID of a recipe the step belongs to
• result_source - step result source:
o exit_code - an exit status, e.g. 0 will be returned on success
o std_out - standard output
o std_err - standard error
o std_out_and_std_err - standard output and standard error
• success_goto_step - if the on_success parameter = goto_step, specify the step to
proceed to. If you specify the nonexistent step, the recipe will be stopped.

18.25.2 Assign Recipe to Virtual Server


To assign a recipe to a federated virtual server, use the following request:
POST /virtual_machines/:virtual_machine_id/recipe_joins.xml
POST /virtual_machines/:virtual_machine_id/recipe_joins.json
XML Request Example

120
OnApp Cloud 6.7 Federation Guide

curl -i -X POST -H "Accept: application/xml" -H "Content-


type:application/xml" -d
'<recipe_join><recipe_id>6</recipe_id><event_type>vm_provisioning</event_t
ype></recipe_join>' -u user:userpass
http://onapp.test/virtual_machines/9/recipe_joins.xml

JSON Request Example

curl -i -X POST -H "Accept: application/json" -H "Content-


type:application/json" -d '{"recipe_join":{"recipe_id":"6",
"event_type":"vm_provisioning"}}' -u user:userpass
http://onapp.test/virtual_machines/9/recipe_joins.json

Where:
recipe_join - an array of recipe join details:
• recipe_id - ID of a recipe you want to assign
• event_type - type of the event you want to assign the recipe to:

o vm_provisioning - run the recipe during VS provisioning


o vm_network_rebuild - run the recipe when rebuilding a network
o vm_disk_add - run the recipe when adding a disk
o vm_nic_add - run the recipe when adding a network interface
o vm_disk_resize - run the recipe when resizing a VS disk
o vm_resize - run the recipe when resizing a VS

• virtual_machine_id - ID of a virtual server you want to assign the recipe to

18.25.3 Remove Recipe from Virtual Server


To remove a recipe from a federated virtual server, use the following request:
DELETE
/virtual_machines/:virtual_machine_id/recipe_joins/:recipe_join_id.xml
DELETE
/virtual_machines/:virtual_machine_id/recipe_joins/:recipe_join_id.jso
n
XML Request Example

curl -i -X DELETE -H "Accept: application/xml" -H "Content-


type:application/xml" -u user:userpass
http://onapp.test/virtual_machines/h76rawyvwphxk6/recipe_joins/1.xml

JSON Request Example

curl -i -X DELETE -H "Accept: application/json" -H "Content-


type:application/json" -u user:userpass
http://onapp.test/virtual_machines/h76rawyvwphxk6/recipe_joins/1.json

In the URL, specify the ID of a virtual server and the ID of a recipe you want to remove.

18.25.4 Run Recipe on Multiple Virtual Servers


To run a recipe on multiple federated virtual servers, use the following request:

121
OnApp Cloud 6.7 Federation Guide

POST /recipes/:recipe_id/run.xml
POST /recipes/:recipe_id/run.json
XML Request Example

curl -i -X POST -H 'Accept: application/xml' -H 'Content-


type:application/xml' -u user:userpass -d '<virtual_machines
type="array"><virtual_machine>vm1_identifier</virtual_machine><virtual_mac
hine>vm2_identifier</virtual_machine></virtual_machines>' --url
http://onapp.test/recipes/9/run.xml

JSON Request Example

curl -i -X POST -H 'Accept: application/json' -H 'Content-type:


application/json' -u user:password -d
'{"virtual_machines":[":vm1_identifier",":vm2_identifier"]}' --url
http://onapp/recipes/9/run.json

Where:
vm1_identifier - replace this with the identifier of a virtual server you want to run the recipe on.
ID of the required recipe in the URL.

This request returns the multi status code - 207.

When applying one recipe to several servers via API, there is a possibility to run the
recipe incompatible with the server type (Unix recipe on Windows server or vice versa). In
this case, the transaction will be scheduled and completed, but the recipe will not do
anything.

18.26 Enable Accelerator for Virtual Server

If you are running OnApp 6.0, the federated virtual servers are accelerated by default.

To enable acceleration for VS, use the following request:


POST /virtual_machines/:id/accelerate.xml
POST /virtual_machines/:id/accelerate.json
XML Request Example

curl -i -X POST http://onapp.test/virtual_machines/12/accelerate.xml -u


user:userpass -H 'Accept: application/xml' -H 'Content-type:
application/xml'

JSON Request Example

122
OnApp Cloud 6.7 Federation Guide

curl -i -X POST http://onapp.test/virtual_machines/12/accelerate.json -u


user:userpass -H 'Accept: application/json' -H 'Content-type:
application/json'

18.27 Disable Accelerator for Virtual Server

If you are running OnApp 6.0, the federated virtual servers are accelerated by default.

To disable acceleration for VS, use the following request:


POST /virtual_machines/:id/decelerate.xml
POST /virtual_machines/:id/decelerate.json
XML Request Example

curl -i -X POST http://onapp.test/virtual_machines/12/decelerate.xml -u


user:userpass -H 'Accept: application/xml' -H 'Content-type:
application/xml'

JSON Request Example

curl -i -X POST http://onapp.test/virtual_machines/12/decelerate.json -u


user:userpass -H 'Accept: application/json' -H 'Content-type:
application/json'

18.28 Purge Files

This action is available only for accelerated virtual servers.

To purge one or several files, the system will compare the checksum of the cached file and the
new one. The cached file will be purged only if the checksums vary, that is, the files are
different. If the checksum of the two files is the same, the cached file will not be purged.
To purge one or several cached files, use the following request:
POST /virtual_machines/:virtual_machine_id/purge.xml
POST /virtual_machines/:virtual_machine_id/purge.json
XML Request Example

curl -i -X POST -u user:userpass -H 'Accept: application/xml' -H 'Content-


type: application/xml' --url
'http://onapp.test/virtual_machines/12/purge.xml' -d '<purge_paths
type="array"><purge_path>http://ww-real-
stat3.com/path2</purge_path><purge_path>http://ww-real-
stat4.com/path3</purge_path></purge_paths>'

JSON Request Example

123
OnApp Cloud 6.7 Federation Guide

curl -i -X POST -u user:userpass -H 'Accept: application/json' -H


'Content-type: application/json'--url
'http://onapp.test/virtual_machines/12/purge.json' -d
'{"purge_paths":["http://ww-real-stat3.com/path2", "http://ww-real-
stat4.com/path3"]}'

Where:
purge_path - the path to the file that you want to purge
If you need to purge all content, refer to Purge All Content.

18.29 Purge All Content

This action is available only for accelerated virtual servers.

To purge all cached content, use the following request:


POST /virtual_machines/:virtual_machine_id/purge_all.xml
POST /virtual_machines/:virtual_machine_id/purge_all.json
XML Request Example

curl -i -X POST -u user:userpass -H 'Accept: application/xml' -H 'Content-


type: application/xml' --url
'http://onapp.test/virtual_machines/12/purge_all.xml'

JSON Request Example

curl -i -X POST -u user:userpass -H 'Accept: application/json' -H


'Content-type: application/json' --url
'http://onapp.test/virtual_machines/12/purge_all.json'

If you need to purge only certain files, refer to Purge Files.

124
OnApp Cloud 6.7 Federation Guide

19 Sellers API
This chapter provides requests for sellers.

19.1 Add Public Zone to Federation


As a seller, you can submit a public zone to Federation. To add a public zone, use the following
request:
POST /federation/hypervisor_zones/:id/add.xml
POST /federation/hypervisor_zones/:id/add.json
XML Request Example

curl -i -X POST -H 'Content-type: application/xml'


http://onapp.test/federation/hypervisor_zones/12/add.xml -u user:userpass
-d
'<hypervisor_zone><provider_name>test</provider_name><data_store_zone_id>5
</data_store_zone_id><network_zone_id>4</network_zone_id><template_group_i
d>1</template_group_id><backup_server_group_label>12</backup_server_group_
label><backup_server_label>9</backup_server_label><private>0</private><des
cription></description><hypervisor_zone_pricing_attributes><cpu_max></cpu_
max><cpu_priority_max></cpu_priority_max><memory_max></memory_max></hyperv
isor_zone_pricing_attributes><data_store_zone_pricing_attributes><disk_siz
e_max></disk_size_max></data_store_zone_pricing_attributes><network_zone_p
ricing_attributes><ip_addresses_max></ip_addresses_max><port_speed_max></p
ort_speed_max></network_zone_pricing_attributes><tier>dev</tier><tier_opti
ons_attributes><ha>1</ha><storage_performance>1</storage_performance><back
ups>1</backups><windows_license>1</windows_license><replication>1</replica
tion><ddos_protection>1</ddos_protection><ipv6>1</ipv6><dns>0</dns></tier_
options_attributes></hypervisor_zone>'

JSON Request Example

curl -i -X POST -H 'Content-type: application/json'


http://onapp.test/federation/hypervisor_zones/12/add.json -u user:userpass
-d '{"hypervisor_zone":{"provider_name":"test", "data_store_zone_id":"5",
"network_zone_id":"4", "template_group_id":"1",
"backup_server_group_label":"12", "backup_server_label":"9",
"private":"0", "description":"",
"hypervisor_zone_pricing_attributes":{"cpu_max":"", "cpu_priority_max":"",
"memory_max":""},
"data_store_zone_pricing_attributes":{"disk_size_max":"",
"disk_size_on":"222"},
"network_zone_pricing_attributes":{"ip_addresses_max":"",
"port_speed_max":""}, "tier":"dev", "tier_options_attributes":{"ha":"1",
"storage_performance":"1", "backups":"1", "windows_license":"1",
"replication":"1", "ddos_protection":"1", "ipv6":"1", "dns":"0"}}}'

Where:
provider_name - enter the provider name
data_store_zone_id - ID of the data store zone assigned to the compute zone
network_zone_id - ID of the network zone assigned to the compute zone
template_group_id - ID of the template store assigned to the compute zone
backup_server_group_label - the label of backup server group
backup_server_label - the label of backup server

125
OnApp Cloud 6.7 Federation Guide

private - set `0` if you want to add a public zone to the Federation
description - add an optional description
hypervisor_zone_pricing_attributes - array of parameters related to compute zone resources:
cpu_max - the maximum number of CPU cores the users can request when signed up for
this federated zone
cpu_priority_max - the maximum CPU priority % the users can request when signed up for
this federated zone
memory_max - the maximum RAM users can request when signed up for this federated
zone
data_store_zone_pricing_attributes - array of parameters related to data store zone resources:
disk_size_max - the maximum disk size users can request when signed up for this federated
zone
network_zone_pricing_attributes - array of parameters related to data store zone resources:
ip_addresses_max - the maximum number of IP addresses the users can request when
signed up for this federated zone
port_speed_max - the maximum port speed the users can request when signed up for this
federated zone
tier - the pricing tier for the zone: dev or pro
tier_options_attributes - array of parameters related to zone configuration:

The default value for the tier options is '0'.

ha - set to '1' if HA is available for the compute zone, otherwise, set '0'
storage_performance - set '1' if the zone provides SSD storage, set '0' if the zone provides
HDD storage
backups - set to '1' if backups are available for the compute zone, otherwise, set '0'
windows_license - set to '1' if Windows licence is available for the compute zone, otherwise,
set '0'
replication - set to '1' if cross location replication is available for the compute zone,
otherwise, set '0'
ddos_protection - set to '1' if DDOS protection is available for the compute zone, otherwise,
set '0'
ipv6 - set to '1' if IPv6 is available for the compute zone, otherwise, set '0'
dns - set to '1' if DNS available for the compute zone, otherwise, set '0'
id - compute zone ID

19.2 Add Private Zone to Federation


As a seller, you can submit a zone to Federation. To add a zone, use the following request:
POST /federation/hypervisor_zones/:id/add.xml
POST /federation/hypervisor_zones/:id/add.json
XML Request Example

126
OnApp Cloud 6.7 Federation Guide

curl -i -X POST -H 'Content-type: application/xml'


http://onapp.test/federation/hypervisor_zones/12/add.xml -u user:userpass
-d
'<hypervisor_zone><provider_name>test</provider_name><data_store_zone_id>5
</data_store_zone_id><network_zone_id>4</network_zone_id><template_group_i
d>1</template_group_id><backup_server_group_label>12</backup_server_group_
label><backup_server_label>9</backup_server_label><private>1</private><des
cription></description><hypervisor_zone_pricing_attributes><cpu_max></cpu_
max><cpu_priority_max></cpu_priority_max><memory_max></memory_max><cpu_on>
222</cpu_on><cpu_off>0</cpu_off><cpu_priority_on>0</cpu_priority_on><cpu_p
riority_off>0</cpu_priority_off><memory_on>0</memory_on><memory_off>0</mem
ory_off></hypervisor_zone_pricing_attributes><data_store_zone_pricing_attr
ibutes><disk_size_max></disk_size_max><disk_size_on>222</disk_size_on><dis
k_size_off>0</disk_size_off><data_read>0</data_read><data_write>0</data_wr
ite><input_requests>0</input_requests><output_requests>0</output_requests>
</data_store_zone_pricing_attributes><network_zone_pricing_attributes><ip_
addresses_max></ip_addresses_max><port_speed_max></port_speed_max><ip_addr
esses_on>222</ip_addresses_on><ip_addresses_off>0</ip_addresses_off><port_
speed>0</port_speed><data_read>0</data_read><data_sent>0</data_sent></netw
ork_zone_pricing_attributes><tier>private</tier><tier_options_attributes><
ha>1</ha><storage_performance>1</storage_performance><backups>1</backups><
windows_license>1</windows_license><replication>1</replication><ddos_prote
ction>1</ddos_protection><ipv6>1</ipv6><dns>0</dns></tier_options_attribut
es></hypervisor_zone>'

JSON Request Example

curl -i -X POST -H 'Content-type: application/json'


http://onapp.test/federation/hypervisor_zones/12/add.json -u user:userpass
-d '{"hypervisor_zone":{"provider_name":"test", "data_store_zone_id":"5",
"network_zone_id":"4", "template_group_id":"1",
"backup_server_group_label":"12", "backup_server_label":"9",
"private":"1", "description":"",
"hypervisor_zone_pricing_attributes":{"cpu_max":"", "cpu_priority_max":"",
"memory_max":"", "cpu_on":"222", "cpu_off":"0", "cpu_priority_on":"0",
"cpu_priority_off":"0", "memory_on":"0", "memory_off":"0"},
"data_store_zone_pricing_attributes":{"disk_size_max":"",
"disk_size_on":"222", "disk_size_off":"0", "data_read":"0",
"data_write":"0", "input_requests":"0", "output_requests":"0"},
"network_zone_pricing_attributes":{"ip_addresses_max":"",
"port_speed_max":"", "ip_addresses_on":"222", "ip_addresses_off":"0",
"port_speed":"0", "data_rxed":"0", "data_sent":"0"}, "tier":"private",
"tier_options_attributes":{"ha":"1", "storage_performance":"1",
"backups":"1", "windows_license":"1", "replication":"1",
"ddos_protection":"1", "ipv6":"1", "dns":"0"}}}'

Where:
provider_name - enter the provider name
data_store_zone_id - ID of the data store zone assigned to the compute zone
network_zone_id - ID of the network zone assigned to the compute zone
template_group_id - ID of the template store assigned to the compute zone
backup_server_group_label - the label of backup server group
backup_server_label - the label of backup server
private - set 1 if you want to add a private zone to the Federation
description - add an optional description
hypervisor_zone_pricing_attributes - an array of parameters related to compute zone resources:
cpu_max - the maximum number of CPU cores the users can request when signed up for
this federated zone

127
OnApp Cloud 6.7 Federation Guide

cpu_priority_max - the maximum CPU priority % the users can request when signed up for
this federated zone
memory_max - the maximum RAM users can request when signed up for this federated
zone
cpu_on - the price per CPU core per hour, for VSs powered on. This parameter is applicable
only if you are adding a private zone.
cpu_off - the price per CPU core per hour, for VSs powered off. This parameter is applicable
only if you are adding a private zone.
cpu_priority_on - the prices per CPU priority % per hour, for VSs powered on. This
parameter is applicable only if you are adding a private zone.
cpu_priority_off - the prices per CPU priority % per hour, for VSs powered off. This
parameter is applicable only if you are adding a private zone.
memory_on - the price per Mb/hour for RAM when a VS is on. This parameter is applicable
only if you are adding a private zone.
memory_off - the price per Mb/hour for RAM when a VS is off. This parameter is applicable
only if you are adding a private zone.
data_store_zone_pricing_attributes - an array of parameters related to data store zone
resources:
disk_size_max - the maximum disk size users can request when signed up for this federated
zone
disk_size_on - the price per GB of disk space for VSs powered on. This parameter is
applicable only if you are adding a private zone.
disk_size_off - the price per GB of disk space for VSs powered off. This parameter is
applicable only if you are adding a private zone.
data_read - the price for data read per GB. This parameter is applicable only if you are
adding a private zone.
data_write - the price for data written per GB. This parameter is applicable only if you are
adding a private zone.
input_requests - the price for input requests. Input requests are measured in millions and
priced per million requests. This parameter is applicable only if you are adding a private
zone.
output_requests - the price for output requests. Output requests are measured in millions
and priced per million requests. This parameter is applicable only if you are adding a private
zone.
network_zone_pricing_attributes - an array of parameters related to data store zone resources:
ip_addresses_max - the maximum number of IP addresses the users can request when
signed up for this federated zone
port_speed_max - the maximum port speed the users can request when signed up for this
federated zone
ip_addresses_on - the price per IP address/per hour for VSs powered on. This parameter is
applicable only if you are adding a private zone.
ip_addresses_off - the price per IP address/per hour for VSs powered off. This parameter is
applicable only if you are adding a private zone.
port_speed - the price per Mb per second of port speed. This parameter is applicable only if
you are adding a private zone.
data_read - the price per GB of data received. This parameter is applicable only if you are
adding a private zone.

128
OnApp Cloud 6.7 Federation Guide

data_sent - the price per GB of data sent. This parameter is applicable only if you are adding
a private zone.
tier - the pricing tier for the zone. Set private to add a private zone.
tier_options_attributes - array of parameters related to zone configuration:

The default value for the tier options is '0'.

ha - set to 1 if HA is available for the compute zone, otherwise, set 0


storage_performance - set 1 if the zone provides SSD storage, set 0 if the zone provides
HDD storage
backups - set to 1 if backups are available for the compute zone, otherwise, set 0
windows_license - set to 1 if Windows license is available for the compute zone, otherwise,
set 0
replication - set to 1 if cross-location replication is available for the compute zone, otherwise,
set 0
ddos_protection - set to 1 if DDOS protection is available for the compute zone, otherwise,
set 0
ipv6 - set to 1 if IPv6 is available for the compute zone, otherwise, set 0
dns - set to 1 if DNS available for the compute zone, otherwise, set 0
id - compute zone ID

19.3 Enable Federated Zone


As a seller, you can enable a federated zone. To do so, use the following request:
POST /federation/hypervisor_zones/:id/activate.xml
POST /federation/hypervisor_zones/:id/activate.json
XML Request Example

curl -i -X POST
http://onapp.test/federation/hypervisor_zones/12/activate.xml -u
user:userpass

JSON Request Example

curl -i -X POST
http://onapp.test/federation/hypervisor_zones/12/activate.json -u
user:userpass

Where:
id* - compute zone ID

19.4 Disable Federated Zone


As a seller, you can disable a zone to prevent users from adding any more VSs to the federated
zone. To disable a zone, use the following request:
POST /federation/hypervisor_zones/:id/deactivate.xml
POST /federation/hypervisor_zones/:id/deactivate.json

129
OnApp Cloud 6.7 Federation Guide

XML Request Example

curl -i -X POST
http://onapp.test/federation/hypervisor_zones/12/deactivate.xml -u
user:userpass

JSON Request Example

curl -i -X POST
http://onapp.test/federation/hypervisor_zones/12/deactivate.json -u
user:userpass

Where:
id* - compute zone ID

19.5 Remove Zone from Federation


As a seller, you can remove a zone from Federation. To do so, use the following request:
DELETE /federation/hypervisor_zones/:id/remove.xml
DELETE /federation/hypervisor_zones/:id/remove.json

If you want to remove a zone from Federation, you should check if any buyers are
subscribed to that zone and whether VSs are created within that zone or not. Depending
on the situation, the zone removal procedure will differ:
• If no buyers are subscribed to the zone yet, the zone will be removed at once.
• If one or more buyers are subscribed to the zone, but there are no VSs yet, the
zone will be removed in one day.
• If one or more buyers are subscribed to the zone, and there are VSs within this
zone, the zone will be removed after 28 days.
For more information, refer to Disable And Remove Zone from Federation.

XML Request Example

curl -i -X DELETE
http://onapp.test/federation/hypervisor_zones/12/remove.xml -u
user:userpass

JSON Request Example

curl -i -X DELETE
http://onapp.test/federation/hypervisor_zones/12/remove.json -u
user:userpass

Where:
id* - compute zone ID

19.6 Add Trust Token


As a seller, you can add new trust tokens for your private zones. To do so, use the following
request:
POST /federation/hypervisor_zones/:hypervisor_zone_id/supplier_tokens.
xml

130
OnApp Cloud 6.7 Federation Guide

POST /federation/hypervisor_zones/:hypervisor_zone_id/supplier_tokens.
json
XML Request Example

curl -i -X POST -H 'Content-type: application/xml'


http://onapp.test/federation/hypervisor_zones/12/supplier_tokens.xml -u
user:userpass -d '<token><receiver>buyer_name</receiver></token>'

JSON Request Example

curl -i -X POST -H 'Content-type: application/json'


http://onapp.test/federation/hypervisor_zones/12/supplier_tokens.json -u
user:userpass -d '{"token":{"receiver":"buyer_name"}}'

Where:
receiver - the name of the buyer for whom the token is generated

19.7 Get List of Trust Tokens


As a seller, you can view the list of trust tokens. To do so, use the following request:
GET /federation/hypervisor_zones/:hypervisor_zone_id/supplier_tokens.x
ml
GET /federation/hypervisor_zones/:hypervisor_zone_id/supplier_tokens.j
son
XML Request Example

curl -i -X GET -H 'Content-type: application/xml'


http://onapp.test/federation/hypervisor_zones/12/supplier_tokens.xml -u
user:userpass

JSON Request Example

curl -i -X GET -H 'Content-type: application/json'


http://onapp.test/federation/hypervisor_zones/12/supplier_tokens.json -u
user:userpass

XML Output Example

<tokens type="array">
<token>
<hypervisor_group_id type="integer">3</hypervisor_group_id>
<id type="integer">5</id>
<receiver>new</receiver>
<token>
8bd7fbe18b8acf505dfcbcd18d707b8ea57cbd4d26f1421de7666908a325e977
</token>
<used type="boolean">false</used>
</token>
<token>...</token>
</tokens>

Where:
hypervisor_group_id - the ID of the compute resource group for which the token was created
id - ID of the token

131
OnApp Cloud 6.7 Federation Guide

receiver - name of the buyer for whom the token was made
token - the token itself, the buyer uses this string to access the private zone
used - whether the token has been used or not

19.8 Remove Trust Token


As a seller, you can remove trust tokens that were generated for your private zones. To do so,
use the following request:
DELETE /federation/hypervisor_zones/:hypervisor_zone_id/supplier_token
s/:token_id.xml
DELETE /federation/hypervisor_zones/:hypervisor_zone_id/supplier_token
s/:token_id.json

Once the token has been used by the buyer, you cannot remove it.

XML Request Example

curl -i -X DELETE -H 'Content-type: application/xml'


http://onapp.test/federation/hypervisor_zones/12/supplier_tokens/3.xml -u
user:userpass

JSON Request Example

curl -i -X DELETE -H 'Content-type: application/json'


http://onapp.test/federation/hypervisor_zones/12/supplier_tokens/3.json -u
user:userpass

Where:
hypervisor_zone_id - the ID of the compute resource group for which the token was created
token_id - ID of the token

19.9 Get Federated Cloud Version


Both sellers and buyers can get a federated cloud versions. To get the federated zone details,
use the following request:
GET /settings/hypervisor_zones.xml
GET /settings/hypervisor_zones.json
XML Request Example

curl -i -X GET -H 'Accept: application/xml' -H 'Content-type:


application/xml' -u user:userpass --url
http://onapp.test/settings/hypervisor_zones.xml

JSON Request Example

curl -i -X GET -H 'Accept: application/json' -H 'Content-type:


application/json' -u user:userpass --url
http://onapp.test/settings/hypervisor_zones.json

XML Output Example

132
OnApp Cloud 6.7 Federation Guide

<hypervisor-groups type="array">
<hypervisor_group>
<created_at type="datetime">2013-04-11T11:39:01+03:00</created_at>
<default_gateway>127.0.0.1</default_gateway>
<failover_timeout type="integer">15</failover_timeout>
<id type="integer">1</id>
<label>XEN4</label>
<location_group_id type="integer">38</location_group_id>
<max_vms_start_at_once type="integer">2</max_vms_start_at_once>
<network_failure type="boolean">false</network_failure>
<prefer_local_reads type="boolean">false</prefer_local_reads>
<recovery_type>roundrobin</recovery_type>
<release_resource_type>memory_guarantee</release_resource_type>
<run_sysprep type="boolean">true</run_sysprep>
<server_type>virtual</server_type>
<storage_channel type="integer">2</storage_channel>
<updated_at type="datetime">2013-05-08T11:00:02+03:00</updated_at>
<vlan nil="true"/>
<max_host_free_memory type="integer">6435</max_host_free_memory>
<max_host_cpu type="integer">4</max_host_cpu>
<cpu_units type="integer">282</cpu_units>
<supplier_version nil="true"/>
<supplier_provider nil="true"/>
</hypervisor_group>
</hypervisor_groups>

Where:
supplier_version - the version of the OnApp cloud running
supplier_provider - who provides the resource (the company)

19.10 Report Problem with VS


To report a problem with a virtual server, use the following request:
POST /federation/virtual_machines/:vm_identifier/report_a_problem.xml
POST /federation/virtual_machines/:vm_identifier/report_a_problem.json
XML Request Example

curl -i -X POST -H 'Content-type: application/xml'


http://onapp.test/federation/virtual_machines/rhdf-567-
fgh/report_a_problem.xml -u user:userpass -d
'<federation_problem><body>:text_problem</body></federation_problem>'

JSON Request Example

curl -X POST -H "Accept: application/json" -H "Content-Type:


application/x-www-form-urlencoded" -u user:userpass -d
'federation_problem[body]=:text_problem'
'http://onapp.test/federation/virtual_machines/rhdf-567-
fgh/report_a_problem.json'

Where:
body - the description of the problem

133
OnApp Cloud 6.7 Federation Guide

19.11 Create Notification for Zone


To create a new notification for a zone, use the following request:
POST /federation/hypervisor_zones/:hypervisor_zone_id/announcements.xm
l
POST /federation/hypervisor_zones/:hypervisor_zone_id/announcements.js
on
XML Request Example

curl -i -X POST -H 'Accept: application/xml' -H 'Content-type:


application/xml' -u user:userpass -d '<announcement><created_at>2015-02-
12T17:16:36+03:00</created_at><finish_at>2017-02-
12T00:00:00+03:00</finish_at><start_at>2016-02-
12T00:00:00+03:00</start_at><text>:new_text</text><updated_at>2015-02-
12T17:16:37+03:00</updated_at></announcement>' --url
http://onapp.test/federation/hypervisor_zones/12/announcements.xml

JSON Request Example

curl -i -X POST -H 'Accept: application/json' -H 'Content-type:


application/json' -u user:userpass -d
'{"announcement":{"created_at":"2015-02-
12T17:16:36+03:00","finish_at":"2017-02-
12T00:00:00+03:00","start_at":"2016-02-
12T00:00:00+03:00","text":":new_text","updated_at":"2015-02-
12T17:16:37+03:00"}}' --url
http://onapp.test/federation/hypervisor_zones/12/announcements.json

Where:
created_at - the time in the [YYYY][MM][DD]T[hh][mm][ss]Z format
finish_at - the time and date when the notification expires
start_at - the notification start time and date
text - the text of the notification
updated_at - the time in the [YYYY][MM][DD]T[hh][mm][ss]Z format

19.12 Delete Notification for Zone


To delete a notification for a zone, use the following request:
DELETE /federation/hypervisor_zones/:hypervisor_zone_id/announcements/
:id.xml
DELETE /federation/hypervisor_zones/:hypervisor_zone_id/announcements/
:id.json
XML Request Example

curl -i -X DELETE -u user:userpass -H 'Accept: application/xml' -H


'Content-type: application/xml' --url
http://onapp.test/federation/hypervisor_zones/12/announcements/3.xml

JSON Request Example

134
OnApp Cloud 6.7 Federation Guide

curl -i -X DELETE -u user:userpass -H 'Accept: application/json' -H


'Content-type: application/json' --url
http://onapp.test/federation/hypervisor_zones/12/announcements/3.json

19.13 Switch Public Zone to Private


To switch a public federated zone to private, use the following request:
PUT /federation/hypervisor_zones/:id/make_private.xml
PUT /federation/hypervisor_zones/:id/make_private.json
XML Request Example

curl -i -X PUT -u user:userpass -H 'Accept: application/xml' -H 'Content-


type: application/xml' --url
http://onapp.test/federation/hypervisor_zones/12/make_private.xml

JSON Request Example

curl -i -X PUT -u user:userpass -H 'Accept: application/json' -H 'Content-


type: application/json' --url
http://onapp.test/federation/hypervisor_zones/12/make_private.json

135
OnApp Cloud 6.7 Federation Guide

20 General FAQ
• What Version of OnApp Do I Need to Be Using to Enter the Federation?

Federation is compatible with OnApp version 3.5 and above. We suggest you
upgrading to the latest version of OnApp to experience the most recent features and
new UI.http://cloud.net/
• How Do I Set Up as a Buyer?

You need to set up Buyer Balances and review then sign our latest Master License
Agreement - contact us to help you to get started.
Please also ensure you take a look here: What Do I Need to Become a Buyer?

• Why Should I Use a Federated Market?

Not only can you supply your customers with new locations to host their applications
worldwide but you now can start to attract new customers on a global scale. Our
marketplace allows you to compete with industry giants without having to invest
$millions into building your own DCs globally. There are no commitments when buying,
so you can consume capacity for as long as your customers require it.

• How Do I Set Up as a Seller?

Follow our Federation Guide for quick and easy deployment.

• Can I Set Up a Private Zone for Selected Buyers Only?

Yes, you can give specific Buyers (inside your organization or externally) exclusive
access via Trust Tokens and Private Federated Zone.

• How Does My Zone Receive a Cloud Score on the Market?


Every zone published to the market is automatically tested regularly for performance
benchmarks regarding CPU, bandwidth and disk operations. The test scores are
recalculated into an index by comparing the scores of all other zones on the
market. Our service will subscribe as a Buyer to your zone, deploy a special testing
virtual server and conduct a test. After the test, the virtual server will be deleted and the
service will unsubscribe.

• I am a vCD OnApp Customer, Can I Join the Federation?

Not yet, but we will let you know when you can.

• I Need to Buy From a Location That Is Not Available, Can You Provide This?

We will always do our best to find a Seller in a location our Buyers need it - contact
us to request a location and we will get to work.

• Do I Need to Be Using OnApp Storage to Sell on the Federation?

No, you can use any storage solution.

136
OnApp Cloud 6.7 Federation Guide

• Will I Need to Be Using Incremental Backups to Be a Seller in the Federation?

Yes, we need Incremental backups in place in your Cloud.

137
OnApp Cloud 6.7 Federation Guide

21 Buyer FAQ
• What Do I Need to Become a Buyer?

We’ll need to ensure your Payment method for all OnApp services is by Credit Card, that
you’re paying in US Dollars, and that you have 0-day payment terms (i.e. the credit card
transaction is on the date of invoice).
Then you’ll need to set up Balances in your account as follows:
• Buyer Balance
• Top Up Amount
• Low Balance
• Suspend Balance
You may see our Buyers' Rules in Appendix A to MTC on the website.

• What Is a Buyer's Balance?

This is the monetary balance to be maintained by you on your account. We suggest a


minimum of $100 to get started.

• What Is the Top Up Amount?

This is the amount we will debit from your credit card when your account needs a boost.

• What Happens When I Reach the Low Balance?

We’ll apply to your credit card for the Top Up Amount and apply it to your OnApp
account so you can continue using our services.

• What Happens When I Reach the Suspend Balance?

This can happen if your Buyer balance is not maintained, perhaps your payment failed
when we tried to take a Top Up Amount. Your Capacity will be shut down until your
Buyer’s Balance is back to normal.

• Do I Need to Have a Credit Card on File With You to Use the Federation as a
Buyer?

Yes, you do. We only accept Credit Cards as a payment method for the Federation. If
you need to supply us with a new credit card for payments, please contact us.

• When Will I Be Charged?

We will track your balance and apply for the Top Up Amount if you start falling short.
When a payment is taken, we’ll send you a notification.

• When Will I Receive an Invoice?

At the end of every month, we will send you an invoice that details your expenditure in
the Federation on the account.

• How Does the Sales Tax Work?

OnApp applies VAT only to the consumption of Buyers who themselves are based

138
OnApp Cloud 6.7 Federation Guide

within the EU. No VAT or Sales Tax is levied on Buyers based in other jurisdictions. In
general, this means VAT is added to the cost of consumption for Buyers based in the
UK, and non-VAT-registered Buyers elsewhere in the EU.

• What If I Want to Change the Top-Up Amounts?

You can contact your Account Manager and request a change; we will action this for
you. We may also contact you if we feel the frequency of Top-Ups is too great.

• I'm Paying a Regular Subscription to OnApp for Other Services. Will this Be
Charged Against the Balance?

Yes, it will. We will invoice you for your subscription on the relevant date, and when due
it will be taken from any Balance on the account. If the Balance is too small, then a
Top-up will be triggered. Think of your OnApp account as a single sum of money to pay
for all the services you from OnApp.

139
OnApp Cloud 6.7 Federation Guide

22 Seller FAQ
• How Do I Become a Seller?
Contact your Account Manager, or, if you’re new to OnApp, please contact us to apply. If
you’re a successful applicant, we will enable the Federation on your license key. See
our Seller Rules.

• How Do I Get Paid?

Within 10 days of the end of the month, OnApp will pay the Seller the credit in excess of
the Buyer Balance (subject to a minimum excess credit of $100). Payments will be
made to the same credit card from which the Top Up is drawn.

• Can I Use the Money I Earn to Pay for Other Services?

Yes, you can. OnApp will apply credit balances to your purchases from the Market or
other subscriptions with OnApp. This will help reduce credit card fees for us all.

• Who Does the Invoicing?

OnApp will raise and send you one invoice per month on your behalf for all resources
consumed by the Buyers. No matter how many Buyers consume your resources, it is
still just one invoice. This invoice is from you to OnApp. You should process it at your
end just like any other invoice you raise on a customer.

• How Does Sales Tax Work?

OnApp applies VAT only to the services from Sellers who themselves are based within
the EU. No VAT or Sales Tax is applied to services of Sellers based in other
jurisdictions. In general, this means VAT is added to funds earned in the Federation for
Sellers based in the UK, and non-VAT-registered Buyers elsewhere in the EU. The VAT
transaction is between the Seller and OnApp - it is not passed through to the Buyer.

• How Does My Zone Receive a Cloud Score on the Market?


Every zone published to the market is automatically tested regularly for performance
benchmarks regarding CPU, bandwidth, and disk operations. The test scores are
recalculated into an index by comparing the scores of all other zones on the
market. Our service will subscribe as a Buyer to your zone, deploy a special testing
virtual server and conduct a test. After the test, the virtual server will be deleted and the
service will unsubscribe.
How the cloud score is calculated Formula used

Cloud score is the average of the sum of resource scores cloud score = (CPU
in the cloud. score+bandwidth score +
disk score)/3

How the resource score is calculated Formula used

1. Counting the resource benchmark


The benchmark for each resource is calculated through a
number of tests using unixbench, ipeft, and ioping tools
for CPU, bandwidth, and disks respectively.

140
OnApp Cloud 6.7 Federation Guide

How the cloud score is calculated Formula used

2. Counting the maximum resource benchmark, which is resource score=(resource


the maximal value among all the clouds in your tier. benchmark/max resource
benchmark)*100
3. Getting the resource score
The resource benchmark is compared to the maximal
resource benchmark with the formula:

• How Do I Price Federation Capacity?


Pricing the zones you publish to the OnApp Federation is quite straightforward. However,
when you sell on the OnApp Federation, there are three key differences that you need
to take into consideration:
1. Don't include CPAs or support
Your Federation zone pricing should not include sales and marketing costs (CPAs) or
support costs, because the OnApp Federation takes care of that for you.
2. Transparency
Transparent performance and uptime data are the keystones of the OnApp Federation. We
benchmark and monitor uptime for every zone published, and provide this alongside
price and location data so that buyers can make an informed decision about the
infrastructure they will use.
Therefore, infrastructure with a high cost per hour will compare unfavorably with lower-
priced infrastructure, unless there is a clear benefit to the buyer. That benefit can come
in many forms: an unusual location, exceptional bandwidth, uptime or compute power,
outstanding storage throughput, and (in the future) other metrics like privacy, DC
certifications, and carbon neutrality.
3. Favor the long game
You should also consider reducing the margin you usually work towards for your Federation
zones. In a transparent, on-demand marketplace, there is more beneficial to have large
numbers of buyers use your infrastructure in the long term, by offering them additional
margin, than there is in trying to maintain the margins you work towards for direct
clients.
How to price for the OnApp Federation
Taking that into consideration, your Federation pricing calculation should look like this:
o Cost of Hardware
o Cost of Infrastructure (DC, bandwidth, etc.)
o Cost of Logistics (reduced, as it does not cover support and CPA related
activities)

These points constitute the Total Cost B. Federation Price = Total cost B x Profit %
(possibly lower than normal)

• How Do I Locate the Owners/Buyers of a Federation VS?


1. Identify any subscribers to the zone. Go to the federated compute zones
page /settings/hypervisor_zone/xxxx and add a .json at the end of the URL.
On the .json page, search for the zone identifier that looks like following:
resource:compute:onapp-csOP8xxxx-JOMakxxxxxxx
2. Place this identifier in the following
URL: http://mk.in.cloud.net/resource/resource:compute:onapp-

141
OnApp Cloud 6.7 Federation Guide

7NRhX2xxxxxxxxxxx/subscribed_cloud_hosts.
By entering this URL in a proxy, the web browser provides the list of all subscribers to
the zone. The username / password for the mk.in.cloud page
is admin / password

Example of subscriber to the Zone: {"ok":true,"errors":{"ok":"ok"},"data":["cloud.onapp.net"]}


Example of no subscribers to the zone: {"ok":true,"errors":{"ok":"ok"},"data":[ ]}
3. Go to each of the subscriber's Control Panel and at the VS page search for the VS by
hostname (the hostname is unique and the best way
to identify the VSs across clouds).

142

You might also like