EPAM Cloud Orchestrator – Maestro API Reference Guidep=i/csdg_02_maestro_api_guid… ·...
-
Upload
hoangtuong -
Category
Documents
-
view
227 -
download
2
Transcript of EPAM Cloud Orchestrator – Maestro API Reference Guidep=i/csdg_02_maestro_api_guid… ·...
Legal Notice: This document contains privileged and/or confidential information and may not be disclosed, distributed or
reproduced without the prior written permission of EPAM®.
EPAM Cloud Orchestrator
Maestro API
Developer’s Guide
January 2018
CSDG-02
Version 2.1.4
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 2
CONTENTS
Contents .................................................................................................................................. 2
Preface .................................................................................................................................... 4
About this Guide .............................................................................................................. 4
Audience .......................................................................................................................... 4
The structure of the Guide ............................................................................................... 4
Documentation References ............................................................................................. 5
1 JSON Justification ........................................................................................................... 6
2 Configuration ................................................................................................................... 8
2.1 Maven configuration for Maestro JAVA SDK .......................................................... 8
2.2 Entry Point ............................................................................................................... 8
2.3 Typical Working Scenario ........................................................................................ 8
2.4 Maestro Java SDK Structure ................................................................................. 10
3 Authorization Algorithm ................................................................................................. 12
4 Command Reference .................................................................................................... 13
4.1 HTTP Header ........................................................................................................ 13
4.2 Attach Volume ....................................................................................................... 14
4.3 Audit ...................................................................................................................... 15
4.4 Activate Console .................................................................................................... 17
4.5 Get Console ........................................................................................................... 18
4.6 Create and Attach Volume .................................................................................... 19
4.7 Create Checkpoint ................................................................................................. 20
4.8 Create Image ......................................................................................................... 21
4.9 Create Key Pair ..................................................................................................... 23
4.10 Delete Checkpoint ................................................................................................. 24
4.11 Delete Image ......................................................................................................... 25
4.12 Delete Instance Properties .................................................................................... 26
4.13 Delete Instance Tag .............................................................................................. 27
4.14 Delete Key Pair ...................................................................................................... 28
4.16 Delete Volume ....................................................................................................... 29
4.17 Delete Volume Properties ..................................................................................... 30
4.18 Delete Volume Tag ................................................................................................ 31
4.19 Describe Checkpoints ........................................................................................... 32
4.20 Describe Images .................................................................................................... 33
4.21 Describe Instances ................................................................................................ 34
4.22 Describe Instance Properties ................................................................................ 36
4.23 Describe Instance Tags ......................................................................................... 37
4.25 Describe Key Pairs ................................................................................................ 38
EPAM Cloud Orchestrator - Maestro API Reference Guide
EPAM PUBLIC 3
4.26 Describe Projects .................................................................................................. 39
4.27 Describe Shapes ................................................................................................... 40
4.28 Describe Scripts .................................................................................................... 41
4.29 Describe Volumes ................................................................................................. 42
4.30 Describe Volume Properties .................................................................................. 43
4.31 Describe Volume Tags .......................................................................................... 44
4.32 Describe Zones ..................................................................................................... 45
4.33 Detach Volumes .................................................................................................... 46
4.34 Go to Checkpoint ................................................................................................... 47
4.35 Reattach Volume ................................................................................................... 48
4.36 Reboot Instance .................................................................................................... 49
4.37 Revert to Checkpoint ............................................................................................. 50
4.38 Run Instance ......................................................................................................... 51
4.39 Set Instance Properties ......................................................................................... 52
4.40 Set Instance Tag ................................................................................................... 54
4.41 Set Volume Properties .......................................................................................... 55
4.43 Set Volume Tag ..................................................................................................... 57
4.44 Start Instance ........................................................................................................ 58
4.45 Stop Instance ......................................................................................................... 59
4.46 Upload Script ......................................................................................................... 60
4.47 Terminate Instance ................................................................................................ 61
5 Orchestrator Ruby Gem ................................................................................................ 63
6 API Errors handling ....................................................................................................... 64
6.1 General Errors Flow .............................................................................................. 64
6.2 CLI Errors. Level 1................................................................................................. 65
6.3 SDK Errors. Level 2. .............................................................................................. 66
6.4 EO Core Errors. Level 3. ....................................................................................... 75
Table of Figures ............................................................................................................. 78
Version History .............................................................................................................. 78
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 4
PREFACE
ABOUT THIS GUIDE
The EPAM Cloud Orchestrator API Reference Guide provides description, syntax and options for the
main commands available through Maestro Application Programming Interface (API). This includes
commands to manage instances, storage volumes, checkpoints, machine images, key pairs, scripts and
general commands.
The purpose of the Application Programming Interface can best be described as enabling other developers
use EPAM Cloud Orchestrator across different platforms and languages.
All of the aforementioned allows us to achieve virtual platform independence and keeps Orchestrator
experience not limited to interaction via Web UI and Command Line Interface.
This manual is still a work in progress. Please, check regularly for updates and provide us your remarks
and suggestions.
AUDIENCE
This guide is designed for EPAM Cloud users who manage their own infrastructure via Maestro API
THE STRUCTURE OF THE GUIDE
The guide consists of six sections:
1. JSON justification provides the explanation of JSON usage with Maestro tools
2. Maestro API configuration provides the configuration details.
3. Authorization Algorithm gives a step by step instruction for Maestro API authorization.
4. Command Reference comprises a major part of the document. It includes a list of Maestro CLI
command descriptions with corresponding examples and useful notes.
5. Orchestrator Ruby Gem gives the information on Orchestrator manipulations by Ruby tools.
6. API Errors handling provides the information on different types of API errors.
The guide also includes a set of Appendices, dedicated to API errors handling.
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 5
DOCUMENTATION REFERENCES
EPAM Orchestration is described in details in a number of documents, oriented on different aspects of
Orchestration usage, and on different types of users.
You can find these documents on our Documentation page.
The answers to the most frequently asked questions can be found on the FAQ page.
EPAM Cloud terms and conditions are described in the EPAM Cloud Terms and Conditions. Please take a
look at this document in order to avoid misunderstandings and conflicts that may arise during the service
usage.
The terminology of EPAM Cloud and the related products can be found on the Glossary page.
Please email your comments and feedback to EPAM Cloud Consulting at
[email protected] to help us provide you with documentation that is as clear,
correct and readable as possible.
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 6
1 JSON JUSTIFICATION
Maestro Software Developer’s Kit (SDK) has been implemented using JSON-RPC as a Remote
Procedure Call (RPC) protocol. It uses JSON for serialization and has been chosen due to its simplicity,
lightweight and cleanness, among other advantages (see below).
The protocol works by sending a request to a server implementing it. The client is typically a software
application, intended to call a single method of a remote system. Multiple input parameters can be passed
to a remote method as an array or an object, whereas the method itself can return multiple output data as
well.
A remote method is invoked by sending a request to a remote service using HTTP or a TCP/IP socket
(starting from version 2.0). When using HTTP, the content-type can be defined as application/json.
All transfer types are single objects, serialized using JSON. A request is a call to a specific method provided
by a remote system. It must contain three certain properties:
● method – a string with the name of the method to be invoked
● params – an array of objects to be passed as parameters to the defined method
● id – a value of any type, which is used to match the response with the request it is replying to.
The receiver of the request must reply with a valid response to all received requests. A response must
contain the properties mentioned below.
● result – the data returned by the invoked method. If an error occurred while invoking the method,
this value must be null.
● error – a specified Error code if there was an error invoking the method, otherwise null.
● id – the id of the request it is responding to.
Since there are situations where no response is needed or even desired, notifications were introduced. A
notification is similar to a request except for the id, which is not needed because no response will be
returned. In this case the id property should be omitted or be null.
There are many different ways to implement API for the application. For example, REST based API means
that each unique URL is a representation of some object or resource. A user can get the contents of that
object using an HTTP GET method, to delete it, then use POST, PUT, or DELETE to modify the object (in
practice most of the services use POST for this). REST is great for public-facing APIs, intended for use by
other developers. They can be designed in accordance with common standards, as to not require a lot of
preexisting knowledge about the service that is going to be used.
However, in our case EPAM Cloud Orchestration API has to provide access to a specific set of functions.
Our main goal was to develop a lightweight, well-specified interface that does not have direct access to
data, but performs a remote call of Orchestration functionality.
We have considered the following advantages of JSON-RPC:
• Unicode – both JSON and JSON-RPC support Unicode out-of-the-box;
• Transport-independent – JSON-RPC can be used with any transport socket: TCP/IP, HTTP,
HTTPS etc.;
• Direct support of Null/None;
• Support of named/keyword parameters;
• Built-in request-response matching ("id"-field);
• Error codes: ranked and well specified, covering a wide spectrum of possible exceptions;
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 7
• Notifications.
All procedure calls are strictly atomic and return a well specified, determined result. Clients are not required
to know procedure names and the specific order of arguments, because this specifics of JSON-RPC is
hidden within our implementation to make the SDK more convenient for use.
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 8
2 CONFIGURATION
2.1 MAVEN CONFIGURATION FOR MAESTRO JAVA SDK
Add the following within the <dependencies> section of your POM:
<dependencies>
<dependency>
<groupId>maestro</groupId>
<artifactId>maestro-sdk</artifactId>
<version>4.0.3</version>
</dependency>
</dependencies>
The artifacts are available via EPAM Maven Repository.
<repositories>
<repository>
<id>artifactory.epam.com</id>
<name>artifactory.epam.com-releases</name>
<url>http://artifactory.epam.com/artifactory/EPM-CIT</url>
</repository>
</repositories>
2.2 ENTRY POINT
The entry point for Maestro Java SDK is MaestroAPIClient. It can be reached by the following address:
com.maestro.sdk.client.
2.3 TYPICAL WORKING SCENARIO
1. Create a client
MaestroApiClient client = new MaestroApiClientImpl(new
Configuration(Protocol.JSON_RPC, "http://localhost:8080"));
client.setCredentials("[email protected]","faa312aa-1e5f-40e2-942b-99e7a91f865c");
2. Create commands
GetProjectTotal req1 = new GetProjectTotal(PROJECT, 2013, 1, null);
GetProjectTotal req2 = new GetProjectTotal(PROJECT, 2013, 2, null);
3. Launch them simultaneously or one by one
List<Result<?>> results = client.execute(Arrays.<Command<?>>asList(req1, req2));
4. Process the result
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 9
for (Result<?> result : results) {
if (result.getError() == null) {
GetProjectTotalResult totalResult = (GetProjectTotalResult) result.getResult();
System.out.println(totalResult.getYear() + "-" + totalResult.getMonth() + ":" +
totalResult.getTotalPrice().toPlainString());
} else {
System.out.println("Error: " + result.getError().getCode());
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 10
2.4 MAESTRO JAVA SDK STRUCTURE
The following paragraph describes the command structure available at the
com.maestro.sdk.client.command.* path.
Figure 1 - Maestro Java SDK structure
The first two groups contain a basic set of commands.
• Common – contains the commands required for routine operation:
o describe zone
o describe region
o describe project
o describe shape
o authorize
o audit
• Meta – commands related to
o instance tags
o instance properties
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 11
The following are ‘Target object’-related command groups:
• Checkpoints
• Images
• Instances
• Key pairs
• Network
• Volumes
• Stacks
• Reports
The final group contains System commands:
• Permissions
• Quotas
• System
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 12
3 AUTHORIZATION ALGORITHM
The SDK client for Maestro API uses three headers to provide authorization information into the server.
• <Maestro-access-id> is a common user domain name e.g. ‘John_Doe’.
• <Maestro-authorization> is key, generated using the HMAC-SHA256 algorithm.
• <Maestro-date> is a date presented as ‘EEE, dd MMM yyyy HH:mm:ss z’, with US locale and 0
GMT time zone.
• <Content> is a chain of parameters and action. For example, to describe instances in a personal
project, it would be like ‘project-id=personal:region=epam-by2:action=describe-instances’.
1. Get String representation uses the following data:
String data = “POST” + ”:” + <Maestro-access-id> + “:” + <Maestro-date> + “:” +
<content>
2. Construct SecretKey from a byte array:
<User token> is “token=5d424390accbc8bbfa43a3fde53407a3”
byte[] key = <User token> + <Maestro-date> convert to byte
secretKey = new SecretKey(key, "HmacSHA256")
3. Sign the data with the HMAC-SHA256 Algorithm
Mac mac = Mac.getInstance(“HmacSHA256”);
mac.init(secretKey);
byte[] bytes = data.getBytes(“UTF-8”);
byte[] signature = mac.doFinal(bytes);
signature = Base64.encodeBase64(signature);
The new String(signature) value is the <Maestro-authorization> header.
On the Server side we have to get the same signature and compare it with the Client’s signature.
Java SDK sample:
If you use Maestro Java SDK, all of the above is performed inside MaestroApiClient class.
MaestroApiClient client = new MaestroApiClientImpl(
new Configuration(Protocol.JSON_RPC, "http://localhost:8080"));
client.setCredentials("[email protected]", "faa312aa-1e5f-40e2-942b-99e7a91f865c");
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 13
4 COMMAND REFERENCE
4.1 HTTP HEADER
The following header applies to all SDK commands and should be placed at the beginning of each HTTP
request.
POST /maestro2/api/rpc HTTP/1.1
Maestro-authorization: <authorization token>
Maestro-access-id: <user_name>@epam.com
Maestro-api-version: <api version e.g. 3.0.1>
Maestro-sdk-version: <sdk version e.g. 1.0.0>
Content-Type: application/json
Maestro-date: <Current date e.g. Sat, 3 Aug 2013 00:00:00 GMT>
Content-Length: <e.g. 106>
Host: localhost:8080
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.2.3 (java 1.5)
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 14
4.2 ATTACH VOLUME
Description
Attaches specified storage volume to the specified instance.
Java SDK Sample
AttachVolume request = new AttachVolume("DEMOPRO", "EPAM-BY1", "vol-91e62dcb",
"EVBYMINSD0595T3", "/dev/sda1");
AttachVolumeResult response = client.execute(request);
ApiVolume volume = response.getVolume();
JSON RPC Input Parameters
Method: attachVolume
Name Description
zone Virtualization region
project PMC Project ID
volumeId Storage volume ID
instanceId ID of an instance to attach the volume to
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "attachVolume",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"volumeId": "%VOLUME_ID%",
"instanceId": "%INSTANCE_ID%"
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"volume": {
"volumeId": "vol-00x0x0xx",
"size": 1024,
"realSize": 0,
"used": false,
"state": "attaching",
"system": false
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 15
4.3 AUDIT
Description
Views all relevant instance-related information for a specified period of time.
Java SDK sample
Audit request = new Audit(); request.setProject("PROJECT");
request.setGroup("PROJECT");
request.setSubGroup("QUOTA");
request.setType("UPDATE_PROJECT_QUOTA");
request.setDescending(false);
request.setLimit(100);
request.setSkip(0);
request.setFrom(new Date());
request.setTo(new Date());
AuditResult response = client.execute(request);
List<ApiAuditRecord> auditRecords = response.getAuditRecords();
JSON RPC Input Parameters
Method: audit
Name Description
zone Virtualization region
project PMC Project ID
group Resource group
subGroup Resource subgroup
skip Number of events to skip
limit Events limit
descending Ascending/descending order
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "audit",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"group": "%RESOUCE_GROUP%",
"subGroup": "%RESOURCE_SUBGROUP%",
"skip": %NUMBER%,
"limit": %NUMBER%,
"descending": %true/false%
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 16
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"auditRecords": [
{
"zone": "EPAM-BY1",
"project": "EPMC-CLO",
"date": "2013-08-03T00:00:00EEST",
"user": "System",
"group": "VIRT",
"subGroup": "INSTANCE",
"type": "INSTANCE_STARTED",
"objectId": "EVBYMINSD0000X0",
"message": "Instance started."
},
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 17
4.4 ACTIVATE CONSOLE
Description
Activates console access for the specified instance
Java SDK sample
ActivateConsole request = new ActivateConsole("DEMOPRO", "EPAM-BY1", "EVBYMINSD0T3");
ActivateConsoleResult response = client.execute(request);
ApiConsole console = response.getConsole();
JSON RPC Input Parameters
Method: activateConsole
Name Description
zone Virtualization region
project PMC Project ID
instanceId ID of an instance to activate console access for
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "activateConsole",
"params": {
"zone": "%ZPNE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"console": {
"state": "enabled",
"port": -1
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 18
4.5 GET CONSOLE
Description
Provides console access credentials for the specified instance
Java SDK sample
GetConsole request = new GetConsole("DEMOPRO", "EPAM-BY1", "EVBYMINSD0595T3");
GetConsoleResult response = client.execute(request);
ApiConsole console = response.getConsole();
JSON RPC Input Parameters
Method: getConsole
Name Description
zone Virtualization region
project PMC Project ID
instanceId ID of an instance to get console access credentials for
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "getConsole",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"console": {
"state": "enabled",
"host": "epbyminsd0000.minsk.epam.com",
"password": "1337",
"port": 18866
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 19
4.6 CREATE AND ATTACH VOLUME
Description
Creates and attaches a storage volume to the specified instance.
Java SDK sample
CreateAndAttachVolume request = new CreateAndAttachVolume("DEMOPRO", "EPAM-BY1",
"EVBYMINSD0595T3", 20, "/dev/sda1");
CreateAndAttachVolumeResult response = client.execute(request);
ApiVolume volume = response.getVolume();
JSON RPC Input Parameters
Method: createAndAttachVolume
Name Description
zone Virtualization region
project PMC Project ID
instanceId ID of an instance to attach a new volume to
sizeGb Volume size in gigabytes
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "createAndAttachVolume",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%",
"sizeGb": 1
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"volume": {
"volumeId": "vol-00x0x0xx",
"size": 1024,
"instanceId": "EVBYMINSD000X0",
"used": true,
"state": "creating",
"system": false
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 20
4.7 CREATE CHECKPOINT
Description
Creates an instance recovery point.
Java SDK sample
CreateCheckpoint request = new CreateCheckpoint("DEMOPRO", "EPAM-BY1", "description",
"EVBYMINSD0595T3");
CreateCheckpointResult response = client.execute(request);
ApiCheckpoint checkpoint = response.getCheckpoint();
JSON RPC Input Parameters
Method: createCheckpoint
Name Description
project PMC Project ID
zone Virtualization region
description Checkpoint description
instanceId ID of an instance to create a recovery point for
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "createCheckpoint",
"params": {
"project": "%PROJECT_ID%",
"zone": "%ZONE_NAME%",
"description": "description",
"instanceId": "%INSTANCE_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"checkpoint": {
"checkpointId": "checkpoint-2013_08_03_00_00_00_EVBYMINSD0000X0",
"state": "creating",
"description": "description",
"current": false
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 21
4.8 CREATE IMAGE
Description
Creates an image based on the instance and its storages. The image can be used later to run new identical
instances.
Java SDK sample
CreateImage request = new CreateImage("DEMOPRO", "EPAM-BY1", "EVBYMINSD0595T3",
"ImageName", "description", true);
CreateImageResult response = client.execute(request);
ApiImage image = response.getImage();
JSON RPC Input Parameters
Method: createImage
Name Description
zone Virtualization region
project PMC Project ID
instanceId ID of an instance to create an image of
name Checkpoint name
description Checkpoint description
confirmed Set to ‘true’ if you agree with image creation terms (see description or the ‘or2-create-image’ command in Maestro CLI Reference Guide)
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "createImage",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%",
"name": "%CHECKPOINT_NAME%",
"description": "%CHECKPOINT_DESCRIPTION%",
"confirmed": %true/false%
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 22
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"image": {
"imageId": "testimage",
"description": "description",
"group": "project",
"state": "creating"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 23
4.9 CREATE KEY PAIR
Description
Creates a key pair used to access instances without the need to provide login credentials.
Java SDK sample
CreateKeyPair request = new CreateKeyPair("DEMOPRO", "EPAM-BY1");
request.setSize(20);
CreateKeyPairResult response = client.execute(request);
ApiKeyPair keyPair = response.getKeyPair();
JSON RPC Input Parameters
Method: createKeyPair
Name Description
project PMC Project ID
name Key pair name
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "createKeyPair",
"params": {
"project": "%PROJECT_ID%",
"name": "%KEY_NAME%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"keyPair": {
"name": "key1",
"owner": "John Doe",
"project": "EPMC-CLO",
"privateKey": "LS0tLS1…S0tCg\u003d\u003d"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 24
4.10 DELETE CHECKPOINT
Description
Deletes an instance recovery point.
Java SDK sample
DeleteCheckpoint request = new DeleteCheckpoint("DEMOPRO", "EPAM-BY1",
"EVBYMINSD0595T3", "VirtualMachineSnapshot-snapshot-1848");
DeleteCheckpointResult response = client.execute(request);
ApiCheckpoint checkpoint = response.getCheckpoint();
JSON RPC Input Parameters
Method: deleteCheckpoint
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of an instance the checkpoint belongs to
checkpoindId ID of a checkpoint to delete
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "deleteCheckpoint",
"params": {
"project": "%PROJECT_ID%",
"zone": "%ZONE_NAME%",
"instanceId": "%INSTANCE_ID%",
"checkpointId": "%CHECKPOINT_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"checkpoint": {
"checkpointId": "checkpoint-2013_8_03_00_00_00_EVBYMINSD0000X0",
"state": "deleting",
"description": "description",
"current": true,
"sizeMB": 1741
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 25
4.11 DELETE IMAGE
Description
Deletes a custom machine image.
Java SDK sample
DeleteImage request = new DeleteImage("DEMOPRO", "EPAM-BY1", "ImageName");
DeleteImageResult response = client.execute(request);
ApiImage image = response.getImage();
JSON RPC Input Parameters
Method: deleteImage
Name Description
zone Virtualization region
project PMC Project ID
imageId ID of an image to be deleted
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "deleteImage",
"params": {
"zone": "EPAM-BY1",
"project": "EPMC-CLO",
"imageId": "testimage"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"image": {
"imageId": "testimage",
"description": "description",
"group": "project",
"state": "deleting",
"sizeMB": 2918
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 26
4.12 DELETE INSTANCE PROPERTIES
Description
Deletes user-defined metadata from instances.
Java SDK sample
DeleteInstanceProperties request = new DeleteInstanceProperties("DEMOPRO", "EPAM-BY1",
"EVBYMINSD0595T3");
DeleteInstancePropertiesResult response = client.execute(request);
Set<String> properties = response.getProperties();
JSON RPC Input Parameters
Method: deleteInstanceProperties
Name Description
zone Virtualization region
project PMC Project ID
instanceId ID of an instance to delete properties for
properties Keys of properties to be deleted
all Set to true to delete all assigned properties
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "deleteInstanceProperties",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%",
"properties": ["secure_prop"],
"all": %true/false%
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"properties": ["secure_prop"]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 27
4.13 DELETE INSTANCE TAG
Description
Deletes custom tags, assigned to instances for billing purposes.
Java SDK sample
DeleteInstanceTag request = new DeleteInstanceTag("DEMOPRO", "EPAM-BY1",
"EVBYMINSD0595T3", true);
DeleteInstanceTagResult response = client.execute(request);
ApiTag tag = response.getTag();
JSON RPC Input Parameters
Method: deleteInstanceTag
Name Description
zone Virtualization region
project PMC Project ID
instanceId ID of an instance to delete a tag from
overrideVolumes Set to ‘true’ to apply the change to all volumes attached to the instance
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "deleteInstanceTag",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%",
"overrideVolumes": %true/false%
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tag": {
"prefix": "user",
"key": "tag",
"value": "my_tag"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 28
4.14 DELETE KEY PAIR
Description
Deletes a specified key pair.
Java SDK sample
DeleteKeyPair request = new DeleteKeyPair("DEMOPRO", "EPAM-BY1");
DeleteKeyPairResult response = client.execute(request);
ApiKeyPair keyPair = response.getKeyPair();
JSON RPC Input Parameters
Method: deleteKeyPair
Name Description
project PMC Project ID
name Key pair name
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "deleteKeyPair",
"params": {
"project": "EPMC-CLO",
"name": "key1"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"keyPair": {
"name": "key1",
"owner": "John Doe",
"project": "EPMC-CLO"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 29
4.16 DELETE VOLUME
Description
Deletes the specified storage volume.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: deleteVolume
Name Description
zone Virtualization region
project PMC Project ID
volumeId ID of a volume to delete
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "deleteVolume",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"volumeId": "%VOLUME_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"volume": {
"volumeId": "vol-00x0x0xx",
"size": 1024,
"realSize": 0,
"instanceId": "EVBYMINSD0000X0",
"used": true,
"state": "deleting",
"system": false
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 30
4.17 DELETE VOLUME PROPERTIES
Description
Deletes user-defined metadata from storage volumes.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: deleteVolumeProperties
Name Description
zone Virtualization region
project PMC Project ID
volumeId ID of a volume to delete properties for
properties Keys of properties to be deleted
all Set to true to delete all assigned properties
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "deleteVolumeProperties",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"volumeId": "%VOLUME_ID%",
"properties": ["secure_prop"],
"all": %true/false%
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"properties": ["secure_prop"]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 31
4.18 DELETE VOLUME TAG
Description
Deletes the specified storage volume tag.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: deleteVolumeTag
Name Description
zone Virtualization region
project PMC Project ID
volumeId ID of a volume to be deleted
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "deleteVolume",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"volumeId": "%VOLUME_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"volume": {
"volumeId": "vol-00x0x0xx",
"size": 1024,
"realSize": 0,
"instanceId": "EVBYMINSD0000X0",
"used": true,
"state": "deleting",
"system": false
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 32
4.19 DESCRIBE CHECKPOINTS
Description
Describes checkpoints created for the specified instance.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeCheckpoints
Name Description
project PMC Project ID
zone Virtualization region
instanceIds ID of instances to describe checkpoints for
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeCheckpoints",
"params": {
"project": "%PROJECT_ID%",
"zone": "%ZONE_NAME%",
"instanceIds": ["%INSTANCE_ID%"]
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"checkpoints": [
{
"checkpointId": "checkpoint-2013_8_03_00_00_00_EVBYMINSD0000X0",
"state": "ready",
"description": "description",
"current": true,
"sizeMB": 1757
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 33
4.20 DESCRIBE IMAGES
Description
Describes available machine images.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeImages
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of instances to describe checkpoints for
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeImages",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"images": [
{
"imageId": "Win7-64",
"description": "Windows 7 64-bit Enterprise",
"group": "enterprise",
"state": "ready",
"sizeMB": 0
},
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 34
4.21 DESCRIBE INSTANCES
Description
Returns information about instances belonging to your project.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeInstances
Name Description
project PMC Project ID
Zone Virtualization region
HTTP Request 1
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeInstances",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
}
}
HTTP Request 2
<HTTP HEADER>
{
"jsonrpc":"2.0",
"id":1,
"method":"describeInstances",
"params":{
"zone":"EPAM-ZONE",
"project":"EPM-PROJECT",
"instancesFilterCriteria":{
"instanceState":["RUNNING"]
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 35
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"instances": [
{
"instanceId": "EVBYMINSD000X0",
"zone": "EPAM-BY1",
"dnsName": "EVBYMINSD000X0.minsk.epam.com",
"privateIp": "10.6.001.001",
"state": "running",
"cpu": 2,
"memory": 3840,
"guestOS": "Red Hat Enterprise Linux 6 (64-bit)",
"owner": "Unknown",
"created": "2013-07-17T18:47:49EEST",
"vlanName": "Server Network"
}, ]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 36
4.22 DESCRIBE INSTANCE PROPERTIES
Description
Retrieves user-defined metadata from instances.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeInstanceProperties
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of an instance to describe properties for
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeInstanceProperties",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"instanceProperties": [
{
"key": "simple_prop",
"value": "prop_value",
"secure": false
},
{
"key": "secure_prop",
"value": "*****",
"secure": true
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 37
4.23 DESCRIBE INSTANCE TAGS
Description
Retrieves custom tags, assigned to an instance for billing purposes.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeInstanceTags
Name Description
zone Virtualization region
project PMC Project ID
instanceId ID of an instance to describe tags for
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeInstanceTags",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tags": [
{
"prefix": "user",
"key": "tag",
"value": "my_tag"
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 38
4.25 DESCRIBE KEY PAIRS
Description
Describes Orchestrator key pairs available for the specified project
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeKeypairs
Name Description
project PMC Project ID
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeKeyPairs",
"params": {
"project": "%PROJECT_NAME%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"keyPairs": [
{
"name": "key1",
"owner": "John Doe",
"project": "EPMC-CLO"
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 39
4.26 DESCRIBE PROJECTS
Description
Describes all activated projects accessible by current user
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeProjects
Name Description
project PMC Project ID
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeProjects",
"params": {}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"projects": [
{
"name": "DEMOPRO",
"zone": "EPAM-BY1",
"active": true,
"activationDate": "2013-07-17T18:42:28EEST",
"shapes": ["small", "medium", "large"],
"instanceCreationIntervalCount": 20,
"instanceCreationIntervalHours": 24,
"volumeCreationIntervalCount": 5,
"volumeCreationIntervalHours": 24,
"maxVolumeSizeGb": 200,
"maxCheckpointsPerInstance": 1,
"autoConfigurationDisabled": false
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 40
4.27 DESCRIBE SHAPES
Description
Describes machine shapes, available for the specified project.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeShapes
Name Description
project PMC Project ID
zone Virtualization region
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeShapes",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"shapes": [
{
"name": "SMALL",
"awsType": "m1.small",
"cpu": 1,
"memoryMb": 1740
},
{
"name": "MEDIUM",
"awsType": "m1.medium",
"cpu": 2,
"memoryMb": 3840
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 41
4.28 DESCRIBE SCRIPTS
Description
Describes scripts, uploaded and available for the specified project.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeScripts
Name Description
project PMC Project ID
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeScripts",
"params": {
"project": "%PROJECT_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"scripts": [
{
"project": "EPMC-CLO",
"name": "script1",
"description": "script description",
"link": "/files/0xx000x0-0000-0000-x000-x00x00000000/script3"
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 42
4.29 DESCRIBE VOLUMES
Description
Describes storage volumes belonging to the specified project.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeVolumes
Name Description
zone Virtualization region
project PMC Project ID
volumeId ID of a volume to describe
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeVolumes",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"volumes": [
{
"volumeId": "vol-00x0x0xx",
"size": 20480,
"realSize": 2923,
"instanceId": "EVBYMINSD0000X0",
"used": true,
"state": "ready",
"system": true
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 43
4.30 DESCRIBE VOLUME PROPERTIES
Description
Retrieves user-defined metadata from storage volumes.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeVolumeProperties
Name Description
project PMC Project ID
zone Virtualization region
volumeId ID of a volume to describe properties for
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeVolumeProperties",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"volumeId": "%VOLUME_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"volumeProperties": [
{
"key": "simple_prop",
"value": "prop_value",
"secure": false
},
{
"key": "secure_prop",
"value": "*****",
"secure": true
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 44
4.31 DESCRIBE VOLUME TAGS
Description
Retrieves custom tags, assigned to a volume for billing purposes.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeVolumeTags
Name Description
zone Virtualization region
project PMC Project ID
volumeId ID of an instance to describe tags for
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeVolumeTags",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"volumeId": "%VOLUME_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tags": [
{
"prefix": "user",
"key": "tag",
"value": "my_tag"
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 45
4.32 DESCRIBE ZONES
Description
Describes all virtualization regions available for the specified project
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: describeZones
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "describeZones",
"params": {
"project": "%PROJECT_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"zones": [
{
"name": "AWS-USEAST"
},
{
"name": "EPAM-BY1"
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 46
4.33 DETACH VOLUMES
Description
Detaches a storage volume from the specified instance.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: detachVolume
Name Description
zone Virtualization region
project PMC Project ID
volumeId ID of a volume to detach
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "detachVolume",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"volumeId": "vol-29d0d8de"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"volume": {
"volumeId": "vol-00x0x0xx",
"size": 1024,
"realSize": 0,
"instanceId": "EVBYMINSD1181T3",
"used": true,
"state": "detaching",
"system": false
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 47
4.34 GO TO CHECKPOINT
Description
Reverts to the specified instance checkpoint.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: goToCheckpoint
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of an instance
checkpointId ID of a checkpoint to revert to
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "goToCheckpoint",
"params": {
"project": "%PROJECT_ID%",
"zone": "%ZONE_NAME%",
"instanceId": "%INSTANCE_ID%",
"checkpointId": "%CHECKPOINT_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"checkpoint": {
"checkpointId": "checkpoint-2013_8_3_0_EVBYMINSD0X",
"state": "restoring",
"description": "description",
"current": true,
"sizeMB": 1741
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 48
4.35 REATTACH VOLUME
Description
Detaches specified volume from one instance and attaches it to another instance.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: rettachVolume
Name Description
zone Virtualization region
project PMC Project ID
volumeId Storage volume ID
instanceId ID of an instance to attach the volume to
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "reattachVolume",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%",
"volumeId": "%VOLUME_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"volume": {
"volumeId": "vol-00x0x0xx",
"size": 1024,
"realSize": 0,
"instanceId": "EVBYMINSD0000X0",
"used": true,
"state": "detaching",
"system": false
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 49
4.36 REBOOT INSTANCE
Description
Reboots the specified instance.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: rebootInstance
Name Description
zone Virtualization region
project PMC Project ID
instanceId ID of an instance to reboot
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "rebootInstance",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%"
}
}
Response Example
{ "jsonrpc": "2.0",
"id": 1,
"result": {
"instance": {
"instanceId": "EVBYMINSD0000X0",
"zone": "EPAM-BY1",
"dnsName": "EVBYMINSD0000X0.minsk.epam.com",
"privateIp": "10.6.001.001",
"state": "rebooting",
"cpu": 1,
"memory": 1740,
"guestOS": "Ubuntu Linux (64-bit)",
"owner": "John Doe",
"created": "2013-08-03T00:00:00EEST",
"image": "Ubuntu10.04_64-bit",
"shape": "SMALL",
"vlanName": "Server Network"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 50
4.37 REVERT TO CHECKPOINT
Description
Reverts to the most recent instance checkpoint.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: revertToCheckpoint
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of an instance
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "revertToCheckpoint",
"params": {
"project": "%PROJECT_ID%",
"zone": "%ZONE_NAME%",
"instanceId": "%INSTANCE_ID%"
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"checkpoint": {
"checkpointId": "checkpoint-2013_8_03_00_00_00_EVBYMINSD0000X0",
"state": "restoring",
"description": "description",
"current": true,
"sizeMB": 1757
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 51
4.38 RUN INSTANCE
Description
Creates and launches a new Cloud instance.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: runInstance
Name Description
zone Virtualization region
project PMC Project ID
imageId ID of a machine image to use
shape Hardware shape to use
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "runInstance",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"imageId": "%MACHINE_IMAGE_ID%",
"shape": "%SHAPE%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"instance": {
"instanceId": "EVBYMINSD0000X0",
"zone": "EPAM-BY1",
"state": "starting",
"cpu": 1,
"memory": 1740,
"owner": "John Doe",
"created": "2013-08-03T00:00:00EEST",
"image": "Ubuntu10.04_64-bit",
"shape": "SMALL"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 52
4.39 SET INSTANCE PROPERTIES
Description
Assigns user-defined metadata to instances.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: setInstanceProperties
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of an instance to assign properties to
key Property key
value Property value
secure Simple or secure
append Set to ‘true’ to append new properties to existing ones, instead of overwriting
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "setInstanceProperties",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%",
"properties": [
{
"key": "%PROPERTY_KEY%",
"value": "%PROPERTY_VALUE%",
"secure": %true/false%
}
],
"append": false
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 53
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"instanceProperties": [
{
"key": "simple_prop",
"value": "prop_value",
"secure": false
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 54
4.40 SET INSTANCE TAG
Description
Assigns a custom tag to an instance for billing purposes.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: setInstanceTag
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of an instance to assign a tag to
tag Tag name
overrideVolumes Set to ‘true’ to apply to all volumes, attached to the instance
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "setInstanceTag",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"tag": "my_tag",
"instanceId": "%INSTANCE_ID%",
"overrideVolumes": %true/false%
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tag": {
"prefix": "user",
"key": "tag",
"value": "my_tag"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 55
4.41 SET VOLUME PROPERTIES
Description
Assigns user-defined metadata to storage volumes.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: setVolumeProperties
Name Description
project PMC Project ID
zone Virtualization region
volumeId ID of a storage volume to assign properties to
key Property key
value Property value
secure Simple or secure
append Set to ‘true’ to append new properties to existing ones, instead of overwriting
HTTP Request
{
"jsonrpc": "2.0",
"id": 1,
"method": "setVolumeProperties",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"volumeId": "%VOLUME_ID%",
"properties": [
{
"key": "%KEY_NAME",
"value": "%VALUE_NAME%",
"secure": %true/false%
}
],
"append": false
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 56
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"instanceProperties": [
{
"key": "secure_prop",
"value": "*****",
"secure": true
}
]
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 57
4.43 SET VOLUME TAG
Description
Assigns a custom tag to a storage volume instance for billing purposes.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: setVolumeTag
Name Description
project PMC Project ID
zone Virtualization region
volumeId ID of an instance to assign a tag to
tag Tag name
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "setVolumeTag",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"volumeId": "%VOLUME_ID%",
"tag": "%TAG%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tag": {
"prefix": "user",
"key": "tag",
"value": "my_tag"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 58
4.44 START INSTANCE
Description
Starts stopped instances.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: startInstance
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of an instance to start
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "startInstance",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"instance": {
"instanceId": "EVBYMINSD0000X0",
"zone": "EPAM-BY1",
"state": "starting",
"cpu": 1,
"memory": 1740,
"guestOS": "Ubuntu Linux (64-bit)",
"owner": "John Doe",
"created": "2013-08-03T00:00:00EEST",
"image": "Ubuntu10.04_64-bit",
"shape": "SMALL",
"vlanName": "Server Network"
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 59
4.45 STOP INSTANCE
Description
Stops launched instances.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: stopInstance
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of an instance to stop
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "stopInstance",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%"
}
}
Response Example
{ "jsonrpc": "2.0",
"id": 1,
"result": {
"instance": {
"instanceId": "EVBYMINSD0000X0",
"zone": "EPAM-BY1",
"dnsName": "EVBYMINSD0000X0.minsk.epam.com",
"privateIp": "10.6.001.001",
"state": "stopping",
"cpu": 1,
"memory": 1740,
"guestOS": "Ubuntu Linux (64-bit)",
"owner": "John Doe",
"created": "2013-08-03T00:00:00EEST",
"image": "Ubuntu10.04_64-bit",
"shape": "SMALL",
"vlanName": "Server Network"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 60
4.46 UPLOAD SCRIPT
4.46
Description
Uploads the specified script.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: uploadScript
Name Description
project PMC Project ID
name Script name
description Script description
content Script body
mimeType Content type
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "uploadScript",
"params": {
"project": "%PROJECT_ID%",
"name": "%SCRIPT_NAME%",
"description": "%SCRIPT_DESCRIPTION%",
"content": "%SCRIPT_BODY%",
"mimeType": "%e.g. application/octet-stream%"
}
}
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"scriptFile": {
"project": "EPMC-CLO",
"name": "script3",
"description": "script description",
"link": "/files/0xx000x0-0000-0000-x000-x00x00000000/script3"
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 61
4.47 TERMINATE INSTANCE
Description
Terminates the specified instance.
Java SDK sample
This manual is still a work in progress. This sample will appear shortly
JSON RPC Input Parameters
Method: terminateInstance
Name Description
project PMC Project ID
zone Virtualization region
instanceId ID of an instance to terminate
HTTP Request
<HTTP HEADER>
{
"jsonrpc": "2.0",
"id": 1,
"method": "terminateInstance",
"params": {
"zone": "%ZONE_NAME%",
"project": "%PROJECT_ID%",
"instanceId": "%INSTANCE_ID%"
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 62
Response Example
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"instance": {
"instanceId": "EVBYMINSD000X0",
"zone": "EPAM-BY1",
"dnsName": "EVBYMINSD000X0.minsk.epam.com",
"privateIp": "10.6.001.001",
"state": "terminating",
"cpu": 1,
"memory": 1740,
"guestOS": "Ubuntu Linux (64-bit)",
"owner": "John Doe",
"created": "2013-08-03T00:00:00EEST",
"image": "Ubuntu10.04_64-bit",
"shape": "SMALL",
"vlanName": "Server Network"
}
}
}
}
}
}
}
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 63
5 ORCHESTRATOR RUBY GEM
Our developers created a tool that allows the users manipulate EPAM Orchestrator using the Ruby tools.
The supported gem provides basic functionality to the EPAM Cloud.
This gem is a private one so it's not available in public rubygems repositories. Still, you can use
bundler to work with git repository.
Below, you can see step-by steps instructions on the Cloud Ruby Gem installation:
• Linux-way
1. Create Gemfile with next contents:
source 'https://rubygems.org' gem 'fog-or2', :git =>
'https://git.epam.com/yauhen_artsiukhou/fog-or2.git', :tag => 'v0.3.1'
2. In same directory, execute bundle install
3. Test it preliminary, by running a Ruby code sample as:
require 'OR2'
This should return 0.
• Windows-way
1. Create Gemfile with next contents:
source 'https://rubygems.org' gem 'fog-or2', :git =>
'https://git.epam.com/yauhen_artsiukhou/fog-or2.git', :tag => 'v0.3.1'
2. In same directory, execute bundle install
3. Locate folder with gems, installed by Bundler (it may be located inside of Ruby gem's
folder, for example: RUBY_PATH\gems\RUBY_VER\bundler\gems. Due to this, we have to
include this dir in Ruby $LOAD_PATH variable, because it is not there by default.
4. To fix p.3 - we can either run Ruby with option -I
ruby -I RUBY_PATH\gems\RUBY_VER\bundler\gems\fog-or2\lib
OR
set RUBYLIB= RUBY_PATH\gems\RUBY_VER\bundler\gems\fog-or2\lib
5. Test it preliminary, by running Ruby code simple as:
require 'OR2'
This should return 0.
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 64
6 API ERRORS HANDLING
The section provides error codes for CLI, SDK and EO Core level issues.
The issues of other levels are out of scope of this document. If you need assistance with them, please,
submit a respective Request on support.epam.com.
6.1 GENERAL ERRORS FLOW
A command, initiated by a cloud user, typically passes 5 or 6 levels of execution. These levels are:
CLI SDK EO-Core [HP CSA] HP OO Environment
On each level, the command is processed and validated before being passed further, and on each level an
error can occur. In most cases, when an error occurs, the information about it is passed back to the user,
going through previous levels. In some cases the initial message is passed “as is”, and in some it is
manipulated and restructured on its way back.
Moreover, when an error occurs, the information about it is logged to the corresponding place, depending
on the level where it happened.
Below, you can see a diagram illustrating the typical operation flow:
CLI(Level 1)
SDK(Level 2)
EO CORE(Level 3)
HP CSA (Level 4)
HP OO(Level 5)
Environment(Level 6)
or2run
Validate
Error 1 Check Permissions
Error 2` Error 2
GO
GO
Validate
Validate
Error 3Error 3`
Error 4Error 4`Error 4``
GO
GO
GO
Error 5`Error 5``Error 5```Error 5````
Logging A Logging B Logging B Logging C Logging D Logging E
GOError 5
Error 6Error 6`Error 6``Error 6```
Virtualization
Error
USER
Laptop
Figure 2 - Operation flow diagram
It should be noted that the process on the HP CSA level are asynchronous. After the command is passed,
HP CSA does not wait for its execution, and always reports success. Therefore, under such conditions,
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 65
there is no possibility to monitor if any issues occur on L4-L5 stage. On L5-L6 stage, some processes are
synchronized and the others are not, so, we can see only a part of the errors that occur.
When it deals with asynchronous processes, we cannot notify the users on the problems that occur. We
also cannot deal with the problems that appear on Orchestrator.
Each of the components reports the operation success or failure. If no response is received during one
minute, a connection failure is detected. In such case, the user gets an <internal error> message.
6.2 CLI ERRORS. LEVEL 1.
The CLI errors are displayed as a message during the program execution and include an error code.
Each execution of a Maestro-CLI command returns an exit code. The user can see the exit code for the
command by entering the following line in your command line immediately after running a Maestro-CLI
command:
echo %ERRORLEVEL%
The list of all exit codes is provided in the table below:
Error code
Unix error code description
Server response Possible causes, CLIException
0 Success 200 OK (HTTP/1.0 - RFC 1945)
Successful command execution
1 Operation not permitted
Any not described below
Not specified execution fail, scripts exit code 1
13 Permission denied
N/A Cannot retrieve user credentials
401 Unauthorized (HTTP/1.0 - RFC 1945)
UnauthorizedException
22 Invalid argument
NA
CLI arguments parsing error: invalid or missing JCommander CLI arguments, environment variables or properties values
400 Bad Request (HTTP/1.1 - RFC 2616)
BadRequestException
CliValidationException
InvalidRequestException
41 Unknown error 41 403 Forbidden (HTTP/1.0 - RFC 1945)
ForbiddenException
58 Unknown error 58 405 Method Not Allowed (HTTP/1.1 - RFC 2616)
NotAllowedException
61 No data available 204 No Content (HTTP/1.0 - RFC 1945)
No data for the specified request is available
70 Communication error on send
Any HTTPResponse from HTTPClient is null
111 NA java.net.UnknownHostException
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 66
Error code
Unix error code description
Server response Possible causes, CLIException
Connection refused
NA org.apache.http.conn.HttpHostConnectException
133 Unknown error 133
404 Not Found (HTTP/1.0 - RFC 1945)
NotFoundException
134 Unknown error 134
500 Server Error (HTTP/1.0 - RFC 1945)
CliException
135 Unknown error 135
NA Cannot get maestro-cli client version
NA Invalid response content type (expecting application/xml)
406 Not Acceptable (HTTP/1.1 - RFC 2616)
InvalidCliVersionException
136 Unknown error 136
417 Expectation Failed (HTTP/1.1 - RFC 2616)
CliVirtualizationException
137 Unknown error 137
412 Precondition Failed Action confirmation required
138 Unknown error 138
302 Moved Temporarily (HTTP/1.0 - RFC 1945)
EPAM Orchestrator maintenance is in progress
If the returned error does not provide you with the sufficient information, you can ask the user to turn on the
verbose mode that invokes logging of all the communication processes between the CLI and the SDK.
The details on verbose mode activation are given in Maestro CLI Developer's Guide (Chapter 5. Log
Subsystem)
6.3 SDK ERRORS. LEVEL 2.
When a command comes to SDK, the user permissions are checked first. The following stages are passed:
1. Authorization (see Authorization Algorithm section for details)
2. Quotas check
3. User permissions check.
When the validation stage is passed, the command is being processed by SDK. At any of these points
exceptions can occur.
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 67
There is a range of error codes reserved for SDK errors of different types:
Error Code Ranges Error Type
[-32768, 32767] Whole interval
[-32768, -32000] RPC errors
[-31999, 0] Not Used
[0, 100000] Not Used
[10001 to 15000] Parameter validation errors
[15001, 16000] Authorization errors
[16001, 20000] Not Used
[20001, 25000] Business logic errors
[25001, 32767] Not Used
In sections below, you can find the error codes for the different groups.
RPC Errors
The table below shows the list of the error codes for pre-defined RPC errors.
Error Error Code
INTERNAL_SERVER_ERROR -32750
INTERNAL_SERVER_ERROR_FAILED_TO_AUTHORIZE -32749
PARSE_ERROR -32700
INVALID_REQUEST -32600
INVALID_PARAMETERS -32602
METHOD_NOT_FOUND -32601
INTERNAL_RPC_ERROR -32603
UNABLE_TO_SERIALIZE_RESPONSE -32001
UNABLE_GET_API_HANDLER -32002
INVALID_METHOD_NAME -32003
INVALID_AUTHORIZATION_PARAMS -32004
UNAUTHORIZED_REQUEST -32005
INVALID_CLIENT_VERSION -32006
MAESTRO_EXCEPTION -32007
MISSING_API_SDK_VERSION -32008
WRONG_API_SDK_VERSION -32009
ZONE_UNAVAILABLE -32010
Parameter Validation Errors
The table below displays the existing parameter validation errors for different operations:
Error Error Code
INVALID_CONTENT_TYPE 10002
MISSING_PROJECT_PARAM 10003
INVALID_COMPUTE_QUOTA_PARAM 10004
MISSING_COMPUTE_QUOTA_PARAM 10005
INVALID_STORAGE_QUOTA_PARAM 10006
MISSING_STORAGE_QUOTA_PARAM 10007
INVALID_TOTAL_QUOTA_PARAM 10008
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 68
Error Error Code
MISSING_TOTAL_QUOTA_PARAM 10009
MISSING_QUOTA_EXCEED_ACTION_PARAM 10010
INVALID_QUOTA_ALERT_THRESHOLD_PARAM 10011
MISSING_QUOTA_ALERT_THRESHOLD_PARAM 10012
MISSING_ACTIVE_PARAM 10013
MISSING_FROM_PARAM 10014
MISSING_TO_PARAM 10015
FROM_DATE_AFTER_TO_DATE 10016
MISSING_ZONE_PARAM 10017
MISSING_VOLUME_ID_PARAM 10018
MISSING_INSTANCE_ID_PARAM 10019
MISSING_VOLUME_SIZE_PARAM 10020
INVALID_SIZE_PARAM 10021
INVALID_CHECKPOINT_DESCRIPTION_PARAM 10022
MISSING_IMAGE_ID_PARAM 10023
INVALID_NAME_PARAM 10024
MISSING_DESCRIPTION_PARAM 10025
MISSING_NAME_PARAM 10026
MISSING_CHECKPOINT_PARAM 10027
INVALID_DAYS_PARAM 10028
INVALID_TIME_FRAME_MAXIMUM_PARAM 10029
INVALID_TIME_FRAME_PARAM 10030
MISSING_INSTANCES_PARAM 10031
MISSING_PROPERTIES_FOR_DELETE 10032
MISSING_TAG_PARAM 10033
INVALID_TAG_VALUE_PARAM 10034
MISSING_INSTANCE_PROPERTIES_PARAM 10035
MISSING_SHAPE_PARAM 10036
INVALID_INSTANCE_EXPIRATION_PARAM 10037
INVALID_GROUP_PARAM 10038
INVALID_SHAPE_PARAM 10039
INVALID_QUOTA_EXCEED_ACTION_PARAM 10040
INVALID_REGEXP_PARAM 10041
MISSING_VLAN_NAME_PARAM 10042
MISSING_INSTANCE_PROPERTY_KEY_NAME_PARAM 10043
MISSING_INSTANCE_PROPERTY_VALUE_PARAM 10044
INVALID_META_LENGTH_PARAM 10045
INVALID_SHAPES_PARAM 10046
MISSING_PROJECT_NAME_PARAM 10047
MISSING_PMC_PROJECT_CODE_PARAM 10048
MISSING_ACCESS_KEY_PARAM 10049
MISSING_SECRET_KEY_PARAM 10050
MISSING_EC2_ENDPOINT_PARAM 10051
MISSING_CLOUD_FORMATION_ENDPOINT_PARAM 10052
INVALID_ALERT_ON_PARAM 10053
INVALID_STOP_ON_PARAM 10054
INVALID_TAG_LENGTH_PARAM 10055
EMPTY_SHAPES_PARAM 10056
EMPTY_PERMISSION_GROUP_NAME_PARAM 10057
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 69
Error Error Code
EMPTY_OPERATION_LIST_PARAM 10058
INVALID_OPERATION_PARAM 10059
EMPTY_PMC_ROLE_PARAM 10060
EMPTY_PERMISSION_GROUPS_PARAM 10061
MISSING_YEAR_PARAM 10062
MISSING_MONTH_PARAM 10063
INVALID_YEAR_MONTH_DAY_PARAMS 10064
EMPTY_EMAIL_PARAM 10065
INVALID_EMAIL_PARAM 10066
MISSING_GROUP_PARAM 10067
MISSING_SUBGROUP_PARAM 10068
INVALID_SKIP_PARAM 10069
MISSING_LIMIT_PARAM 10070
INVALID_LIMIT_PARAM 10071
INVALID_AUDIT_GROUP_PARAM 10072
INVALID_AUDIT_SUB_GROUP_PARAM 10073
INVALID_AUDIT_TYPE_PARAM 10074
EMPTY_GROUP_NAME_EXCEPTION 10075
MISSING_VOLUME_PROPERTIES_PARAM 10076
MISSING_UPLOADING_TEMPLATE_NAME_PARAM 10077
MISSING_STACK_NAME_PARAM 10078
INVALID_STACK_NAME_PARAM 10079
MISSING_UPLOADING_TEMPLATE_DESCRIPTION_PARAM 10080
MISSING_UPLOADING_SCRIPT_NAME_PARAM 10081
MISSING_UPLOADING_SCRIPT_DESCRIPTION_PARAM 10082
MISSING_UPLOADING_SCRIPT_CONTENT_PARAM 10083
MISSING_MIME_TYPE_PARAM 10084
MISSING_FULL_USER_NAME_PARAM 10085
MISSING_USER_LOGIN_PARAM 10086
MISSING_USER_PASSWORD_PARAM 10087
INVALID_PROJECT_CONTACT_TYPE_PARAM 10088
MISSING_PROJECT_CONTACT_TYPE_PARAM 10089
MISSING_INSTANCE_CREATION_INTERVAL_PARAM 10090
MISSING_CREATION_COUNT_PARAM 10091
MISSING_MAXIMUM_SIZE_PARAM 10092
EMPTY_IP_ADDRESSES_LIST_PARAM 10093
MISSING_CUSTOM_MEMORY_GB_PER_MONTH_MULTIPLIER_PARAM 10094
INVALID_MAX_VOLUME_SIZE_PARAM 10095
INVALID_CREATION_VOLUMES_COUNT_PARAM 10096
INVALID_CREATION_INTERVAL_HOURS_PARAM 10097
INVALID_CREATION_INSTANCES_COUNT_PARAM 10098
EMPTY_MAX_ALLOWED_CHECKPOINTS_PARAM 10099
INVALID_MAX_ALLOWED_CHECKPOINTS_PARAM 10100
INVALID_UPLOAD_TEMPLATE_PARAMETERS 10101
EMPTY_PROJECT_CONTACTS_LIST 10102
INVALID_CUSTOM_MEMORY_GB_PER_MONTH_MULTIPLIER_PARAM 10103
MISSING_CHECKPOINT_ACTIVE_1GB_PER_MONTH_PARAM 10104
INVALID_CHECKPOINT_ACTIVE_1GB_PER_MONTH_PARAM 10105
MISSING_CHECKPOINT_ACTIVE_2GB_PER_MONTH_PARAM 10106
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 70
Error Error Code
INVALID_CHECKPOINT_ACTIVE_2GB_PER_MONTH_PARAM 10107
MISSING_CHECKPOINT_GB_UNDER_VALUE_PER_MONTH_PARAM 10108
INVALID_CHECKPOINT_GB_UNDER_VALUE_PER_MONTH_PARAM 10109
MISSING_CHECKPOINT_GB_OVER_VALUE_PER_MONTH_PARAM 10110
INVALID_CHECKPOINT_GB_OVER_VALUE_PER_MONTH_PARAM 10111
MISSING_CHECKPOINT_OVER_VALUE_PARAM 10112
INVALID_CHECKPOINT_OVER_VALUE_PARAM 10113
MISSING_CHECKPOINT_PASSIVE_GB_PER_MONTH_PARAM 10114
INVALID_CHECKPOINT_PASSIVE_GB_PER_MONTH_PARAM 10115
MISSING_CHECKPOINT_ROUNDING_PARAM 10116
MISSING_CHECKPOINT_CALCULATION_MODE_PARAM 10117
MISSING_CHECKPOINT_SCALE_PARAM 10118
INVALID_CHECKPOINT_SCALE_PARAM 10119
MISSING_COEFFICIENT_PARAM 10120
INVALID_COEFFICIENT_PARAM 10121
MISSING_CUSTOM_WINDOWS_LICENSE_PER_MEMORY_GB_PER_MONTH_MULTIPLIER_PARAM
10122
INVALID_CUSTOM_WINDOWS_LICENSE_PER_MEMORY_GB_PER_MONTH_MULTIPLIER_PARAM
10123
MISSING_CUSTOM_V_CORE_PER_MONTH_MULTIPLIER_PARAM 10124
INVALID_CUSTOM_V_CORE_PER_MONTH_MULTIPLIER_PARAM 10125
MISSING_CUSTOM_WINDOWS_LICENSE_PER_MONTH_MULTIPLIER_PARAM
10126
INVALID_CUSTOM_WINDOWS_LICENSE_PER_MONTH_MULTIPLIER_PARAM
10127
MISSING_CUSTOM_WINDOWS_LICENSE_PER_V_CORE_PER_MONTH_MULTIPLIER_PARAM
10128
INVALID_CUSTOM_WINDOWS_LICENSE_PER_V_CORE_PER_MONTH_MULTIPLIER_PARAM
10129
MISSING_FIXED_HOURS_IN_MONTH_PARAM 10130
INVALID_FIXED_HOURS_IN_MONTH_PARAM 10131
MISSING_HOURS_IN_MONTH_MODE_PARAM 10132
MISSING_INSTANCE_BASE_PRICE_PARAM 10133
INVALID_INSTANCE_BASE_PRICE_PARAM 10134
MISSING_INSTANCE_BASE_ROUNDING_PARAM 10135
MISSING_INSTANCE_BASE_SCALE_PARAM 10136
INVALID_INSTANCE_BASE_SCALE_PARAM 10137
MISSING_INSTANCE_RUN_FEE_PARAM 10138
INVALID_INSTANCE_RUN_FEE_PARAM 10139
MISSING_INSTANCE_RUN_FEE_ROUNDING_PARAM 10140
MISSING_INSTANCE_RUN_FEE_SCALE_PARAM 10141
INVALID_INSTANCE_RUN_FEE_SCALE_PARAM 10142
MISSING_MACHINE_IMAGE_CALCULATION_MODE_PARAM 10143
MISSING_MACHINE_IMAGE_GB_OVER_VALUE_PER_MONTH_PARAM 10144
INVALID_MACHINE_IMAGE_GB_OVER_VALUE_PER_MONTH_PARAM 10145
MISSING_MACHINE_IMAGE_GB_UNDER_VALUE_PER_MONTH_PARAM 10146
INVALID_MACHINE_IMAGE_GB_UNDER_VALUE_PER_MONTH_PARAM 10147
MISSING_MACHINE_IMAGE_OVER_VALUE_MONTH_PARAM 10148
INVALID_MACHINE_IMAGE_OVER_VALUE_PARAM 10149
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 71
Error Error Code
MISSING_MACHINE_IMAGE_ROUNDING_PARAM 10150
INVALID_MACHINE_IMAGE_ROUNDING_PARAM 10151
MISSING_MACHINE_IMAGE_SCALE_PARAM 10152
INVALID_MACHINE_IMAGE_SCALE_PARAM 10153
MISSING_MEMORY_GB_PER_MONTH_PARAM 10154
INVALID_MEMORY_GB_PER_MONTH_PARAM 10155
INVALID_MEMORY_ROUNDING_PARAM 10156
MISSING_MEMORY_ROUNDING_PARAM 10157
MISSING_MEMORY_SCALE_PARAM 10158
INVALID_MEMORY_SCALE_PARAM 10159
MISSING_ROUNDING_MODE_PARAM 10160
MISSING_SCALE_PARAM 10161
INVALID_SCALE_PARAM 10162
MISSING_STORAGE_ACTIVE_GB_PER_MONTH_PARAM 10163
INVALID_STORAGE_ACTIVE_GB_PER_MONTH_PARAM 10164
MISSING_STORAGE_CALCULATION_MODE_PARAM 10165
MISSING_STORAGE_GB_OVER_VALUE_PER_MONTH_PARAM 10166
INVALID_STORAGE_GB_OVER_VALUE_PER_MONTH_PARAM 10167
MISSING_STORAGE_GB_UNDER_VALUE_PER_MONTH_PARAM 10168
INVALID_STORAGE_GB_UNDER_VALUE_PER_MONTH_PARAM 10169
MISSING_STORAGE_OVER_VALUE_PARAM 10170
INVALID_STORAGE_OVER_VALUE_PARAM 10171
MISSING_STORAGE_PASSIVE_GB_PER_MONTH_PARAM 10172
INVALID_STORAGE_PASSIVE_GB_PER_MONTH_PARAM 10173
MISSING_STORAGE_ROUNDING_PARAM 10174
MISSING_STORAGE_SCALE_PARAM 10175
INVALID_STORAGE_SCALE_PARAM 10176
MISSING_USE_SINCE_PARAM 10177
MISSING_V_CORE_PER_MONTH_PARAM 10178
INVALID_V_CORE_PER_MONTH_PARAM 10179
MISSING_V_CORES_ROUNDING_PARAM 10180
MISSING_V_CORES_SCALE_PARAM 10181
INVALID_V_CORES_SCALE_PARAM 10182
MISSING_WINDOWS_LICENSE_PER_MEMORY_GB_PER_MONTH_PARAM 10183
INVALID_WINDOWS_LICENSE_PER_MEMORY_GB_PER_MONTH_PARAM 10184
MISSING_WINDOWS_LICENSE_PER_MONTH_PARAM 10185
INVALID_WINDOWS_LICENSE_PER_MONTH_PARAM 10186
MISSING_WINDOWS_LICENSE_PER_V_CORE_PER_MONTH_PARAM 10187
INVALID_WINDOWS_LICENSE_PER_V_CORE_PER_MONTH_PARAM 10188
MISSING_WINDOWS_PRICE_CALCULATION_MODE_PARAM 10189
MISSING_WINDOWS_ROUNDING_PARAM 10190
MISSING_WINDOWS_SCALE_PARAM 10191
INVALID_WINDOWS_SCALE_PARAM 10192
INVALID_CONNECTION_TIME_OUT_PARAM 10193
INVALID_READ_TIME_OUT_PARAM 10194
INVALID_MAX_CONNECTIONS_PARAM 10195
MISSING_AMIID_PARAM 10196
PARAMETERS_NOT_FOUND 10197
INVALID_STORAGE_CALCULATION_MODE_PARAM 10198
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 72
Error Error Code
INVALID_CHECKPOINT_CALCULATION_MODE_PARAM 10199
INVALID_INSTANCE_RUN_FEE_ROUNDING_PARAM 10200
INVALID_INSTANCE_BASE_ROUNDING_PARAM 10201
INVALID_WINDOWS_ROUNDING_PARAM 10202
INVALID_ROUNDING_PARAM 10203
INVALID_V_CORES_ROUNDING_PARAM 10204
INVALID_HOURS_IN_MONTH_MODE_PARAM 10205
INVALID_CHECKPOINT_ROUNDING_PARAM 10206
INVALID_MACHINE_IMAGE_CALCULATION_MODE_PARAM 10207
INVALID_WINDOWS_PRICE_CALCULATION_MODE 10208
MISSING_HPOO_FLOW_PARAM 10209
INVALID_FLOW_DESCRIPTOR_PARAM 10210
INVALID_RETRY_COUNT_PARAM 10211
INVALID_LOGIN_PARAM 10212
INVALID_USERNAME_PARAM 10213
INVALID_CRON_EXPRESSION_PARAM 10214
MISSING_BUCKET_NAME_PARAM 10215
MISSING_ACCOUNT_ID_PARAM 10216
MISSING_DETAILED_KEY_PATTERN_PARAM 10217
MISSING_BILLING_KEY_PATTERN_PARAM 10218
MISSING_COST_ALLOCATION_KEY_PATTERN_PARAM 10219
MISSING_CRON_EXPRESSION_PARAM 10220
MISSING_BILL_FROM_PARAM 10221
MISSING_REGION_PARAM 10222
MISSING_URL_PARAM 10223
MISSING_CSA_USER_NAME_PARAM 10224
MISSING_CSA_USER_PASSWORD_PARAM 10225
MISSING_CSP_USER_NAME_PARAM 10226
MISSING_ORGANIZATION_NAME_PARAM 10227
MISSING_CATALOG_NAME_PARAM 10228
MISSING_IP_IN_PROJECT 10229
INVALID_TYPE_DESCRIPTOR_PARAM 10230
MISSING_TYPE_DESCRIPTOR_PARAM 10231
MISSING_OFFERING_NAME_PARAM 10232
MISSING_CPU_NAME_PARAM 10233
MISSING_RAM_NAME_PARAM 10234
PROPERTIES_INSTANCE_AND_VOLUME_PROVIDED 10235
MISSING_INSTANCE_AND_VOLUME 10236
PROPERTIES_INSTANCE_AND_STACK_PROVIDED 10237
MISSING_WAIT_FOR_CONFIG_PARAM 10238
MISSING_TO_CHECK_PARAM 10239
INVALID_MAESTRO_STACK_COMMAND 10240
INVALID_MAESTRO_STACK_FLOW 10241
INVALID_CHECK_FIELD_PARAM 10242
INVALID_CHECK_IS_PARAM 10243
MISSING_COMMAND_NAME_PARAM 10244
INVALID_WAIT_FIELD_PARAM 10245
INVALID_WAIT_REQUIRED_PARAM 10246
INVALID_TEMPLATE_PARAM 10247
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 73
Error Error Code
INVALID_DESCRIBE_STACK_RESOURCES_PARAMS 10248
MISSING_SERVICE_NAME_PARAM 10249
MISSING_FILE_CONTENT 10250
INVALID_FILE_TYPE 10251
MISSING_FILE_NAME 10252
MISSING_FILE_MIME_TYPE 10253
MISSING_FILE_DESCRIPTION 10254
MISSING_LOG_FILE_PATH_PARAM 10259
ILLEGAL_LOG_FILE_PATH_PARAM 10260
ILLEGAL_CRITERIA_PARAMETERS_PROVIDED 10261
MISSING_CHEF_MODE_PARAMETER 10262
INVALID_CHEF_MODE 10264
Authorization Errors
The following authorization errors are possible:
Error Error code
PMC_UNAVAILABLE 15001
PMC_BAD_SESSION 15010
PMC_AUTHORIZATION_ERROR 15020
PMC_CLIENT_FOR_SESSION_IS_DEAD 15030
MAX_LOGIN_ATTEMPTS_EXCEEDED 15040
Business Logic Errors
The following Business Logic errors can occur:
Error Error code
ACTIVE_PROJECT_NOT_FOUND 20001
NOT_ENOUGH_PERMISSIONS 20002
ZONE_NOT_FOUND 20003
INSTANCE_NOT_FOUND 20004
INVALID_SCRIPTS 20005
QUOTA_INVALID_INSTANCE_COUNT 20006
QUOTA_INVALID_SHAPE 20007
KEY_NAME_NOT_FOUND 20008
ACTION_BLOCKED_FOR_REGION 20009
ACTION_WITH_PARAMETERS_BLOCKED_FOR_REGION 20010
MAINTENANCE_MODE 20011
PROJECT_ALREADY_EXISTS 20014
PERMISSION_GROUP_ALREADY_EXISTS 20015
PERMISSION_GROUP_NOT_FOUND 20016
PERMISSION_GROUP_MAPPING_ALREADY_EXISTS 20017
INCORRECT_PERMISSION_GROUP_NAME 20018
UNSUPPORTED_REPORT_PERIOD 20019
PERMISSION_GROUP_MAPPING_NOT_FOUND 20020
USER_NOT_FOUND 20021
TOO_OLD_REPORT_PERIOD 20022
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 74
Error Error code
PERMISSION_USER_MAPPING_ALREADY_EXISTS 20023
SCRIPT_MAX_COUNT 20024
SCRIPT_ALREADY_EXISTS 20025
USER_ALREADY_EXISTS 20026
USER_LOGIN_ALREADY_EXISTS 20027
MACHINE_IMAGE_NOT_FOUND 20028
INCORRECT_ZONE 20029
MACHINE_IMAGE_ALREADY_EXISTS 20030
UNABLE_TO_DEACTIVATE_PROJECT 20031
CHANGE_OWNER_USER_NOT_FOUND 20032
NOT_PMC_USER 20033
FLOW_NOT_FOUND 20034
PMC_ROLE_DOES_NOT_EXIST 20035
DUPLICATED_AWS_CREDENTIALS 20036
AWS_BILLING_ACCOUNT_ALREADY_EXISTS 20037
AWS_BILLING_ACCOUNT_NOT_FOUND 20038
UNABLE_TO_DELETE_AWS_BILLING_ACCOUNT 20039
REGION_NOT_FOUND 20040
ZONE_ALREADY_EXISTS 20041
INCORRECT_CSA_OFFERING_DESCRIPTOR 20042
LIMITED_FUNCTIONALITY_QUOTA 20043
LIMITED_FUNCTIONALITY_QUOTA_NOT_ACTIVE 20044
INVALID_CONFIGURATION_TEMPLATE 20045
LIMITED_VOLUME_COUNT_QUOTA 20046
LIMITED_VOLUME_SIZE_QUOTA 20047
MISSING_INSTANCE_IN_SYSTEM 20048
INVALID_RESOURCE_ID_SPECIFIED 20049
NO_RESOURCE_PARAMS_SPECIFIED 20050
SERVICE_DEACTIVATION_FAILED 20051
SERVICE_NOT_FOUND 20052
INVALID_INSTANCES_FOR_DESCRIBE_CHECKPOINTS_TAG 20053
SERVICE_ALREADY_ACTIVATED 20054
EO_STACK_TEMPLATE_ALREADY_EXISTS 20055
EO_STACK_TEMPLATE_QUOTA_EXCEEDS 20056
FAILED_TO_UPLOAD_FILE 20057
ZABBIX_TEMPLATE_ALREADY_EXISTS 20058
ZABBIX_TEMPLATE_QUOTA_EXCEEDS 20059
ZABBIX_TEMPLATE_CONTENT_DOES_NOT_MATCH_SCHEMA 20060
FAILED_TO_GET_KEY 20061
INVALID_EO_STACK_TEMPLATE_NAME 20062
FAILED_TO_DESCRIBE_FILES 20063
EXCESSIVE_CALLS 20064
SERVICE_ALREADY_DEACTIVATED 20065
OVERRIDE_IS_FORBIDDEN_FOR_PARAM 20066
FAILED_TO_STOP_INSTANCE_MONITORING 20067
MONITORING_NOT_STARTED 20068
FAILED_TO_DELETE_FILE_UNKNOWN 20069
FAILED_TO_DELETE_FILE 20070
SERVICE_NOT_SUPPORTED 20071
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 75
Error Error code
SERVICE_CURRENTLY_UNAVAILABLE 20072
FAILED_TO_EXECUTE_COMMAND 20073
FAILED_TO_STOP_INSTANCE_LOGGING 20074
LOGGING_NOT_STARTED 20075
USER_SCHEDULE_NOT_FOUND_ON_PROJECT 20076
SERVICE_NOT_ACTIVE_FOR_PROJECT_IN_ZONE 20077
INVALID_EXPIRATION_PARAM 20078
INVALID_PROJECT_CHEF_STATE 20079
PROJECT_NOT_FOUND 20080
FAILED_TO_DEACTIVATE_EPC_CHEF_FOR_PROJECT 20081
MAESTRO_STACK_ROLLBACK_IS_NOT_SUPPORTED_FOR_ZONE 20082
FAILED_TO_RESOLVE_CLOUD_SERVICE 20083
CHEF_MODE_ALREADY_SET 20084
NOT_ENOUGH_QUOTA_TO_CREATE_STACK 20085
LOAD_BALANCER_NOT_STARTED 20086
NOT_PERMITTED_FOR_PERSONAL_PROJECTS 20087
LOAD_BALANCER_NOT_STARTED 20086
NOT_PERMITTED_FOR_PERSONAL_PROJECTS 20087
6.4 EO CORE ERRORS. LEVEL 3.
On EO Core level, the command input parameters are validated, and the task is passed to HP CSA or to
HP OO directly. The processes on these layers are asynchronous, and it is difficult or impossible to keep
track of the issues that appear.
The Errors on EO Core are registered in log files at Orchestrator GrayLog server. The GrayLog Server can
be accessed by the Errors button (available for support team members only) on Cloud Management
Console.
Error Error code
INVALID_IMAGE 30000
VLAN_NOT_EXIST_FOR_PROJECT 30001
INSTANCE_NOT_EXIST 30002
INSTANCE_NOT_IN_STOPPED_STATE 30003
VOLUME_NOT_EXIST 30004
VOLUME_ATTACHED 30005
VOLUME_ALREADY_ATTACHED_TO 30006
VOLUME_NOT_READY 30007
VOLUME_NOT_ATTACHED 30008
VOLUME_SYS_DISK 30009
UNABLE_TO_DELETE_VOLUME 30010
UNABLE_TO_DETACH_VOLUME 30011
INCORRECT_VOLUME_REQUESTED_SIZE 30012
UNKNOWN_VOLUME_SIZE 30013
UNABLE_TO_REATTACH_VOLUME 30014
CHECKPOINTS_COUNT_LIMITATION 30015
CHECKPOINT_OPERATIONS_PROHIBITTED_DUE_TO_INSTANCE_STATE 30016
CHECKPOINT_CURRENT_NOT_FOUND 30017
CHECKPOINT_NOT_FOUND 30018
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 76
Error Error code
MACHINE_IMAGE_ALREADY_EXIST 30019
INSTANCE_IS_NOT_STOPPED 30020
CHECKPOINT_OPERATIONS_IN_PROGRESS 30021
CHECKPOINT_VOLUMES_OPERATIONS_IN_PROGRESS 30022
SHAPE_NOT_VALID_FOR_MACHINE_IMAGE 30023
INSTANCE_DOES_NOT_HAVE_TAG 30024
VOLUME_DOES_NOT_HAVE_TAG 30025
TEMPLATE_NOT_EXISTS 30026
TEMPLATE_NOT_READY 30027
TEMPLATE_CONTENT_CAN_NOT_BE_EMPTY 30028
TEMPLATE_PARAMETER_IS_INCORRECT 30029
STACK_NAME_ALREADY_EXIST 30030
STACK_NAME_NOT_EXIST 30031
AWS_EMPTY_PARAMETER_ERROR 30032
AWS_INVALID_PARAMETER_ERROR 30033
AWS_IS_NOT_IN_ALLOWED_PARAMETER_PATTERN_ERROR 30034
AWS_NOT_ALLOWED_PARAMETER_ERROR 30035
AWS_NOT_LESS_MAX_VALUE 30036
AWS_LENGTH_NOT_LESS_MAX_VALUE 30037
AWS_LENGTH_NOT_GREATER_MIN_VALUE 30038
AWS_NOT_GREATER_MIN_VALUE 30039
AWS_EXCEPTION_WITH_CODE 30040
AWS_EXCEPTION 30041
AWS_NO_DEVICE 30042
AWS_CANNOT_RESOLVE_INSTANCE_ZONE 30043
NOT_AVAILABLE_IN_ZONE 30044
MACHINE_IMAGE_IS_NOT_IN_PROJECT 30045
MACHINE_IMAGE_IS_NOT_READY_DELETING 30046
MACHINE_IMAGE_IS_NOT_READY_CREATING 30047
MACHINE_IMAGE_IS_NOT_READY_ERROR 30048
HPOO_INSTANCE_NOT_READY 30049
INSTANCE_HAS_CHECKPOINTS_PROHIBITED 30050
ACTION_CONFIRMATION_REQUIRED 30052
UNABLE_GET_CONSOLE 30053
ACTIVATE_CONSOLE 30054
ACTIVATE_CONSOLE_FAILED 30055
ACTIVATE_CONSOLE_INSTANCE_NOT_STOPPED 30056
GET_CONSOLE_INVALID_INSTANCE_STATE 30057
GET_CONSOLE_INSTANCE_STATE_UNKNOWN 30058
LIMITED_FUNCTIONALITY 30061
SHAPE_NOT_AVAILABLE_FOR_ZONE 30063
KEY_NOT_FOUND 30064
TEMPLATE_NAME_ALREADY_EXIST_RENAME_OR_ENABLE_OVERWRITE_OPTION
30065
TEMPLATE_PARAMETERS_IS_INCORRECT 30066
UNABLE_TO_REATTACH_VOLUME_SOURCE_INSTANCE_IS_RUNNING 30067
UNABLE_TO_REATTACH_VOLUME_BASED_ON_TECHNICAL_CAUSES 30068
INSTANCE_ALREADY_MIGRATED 30069
CHECKPOINT_DOES_NOT_HAVE_TAG 30070
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 77
Error Error code
CHECKPOINT_NOT_EXIST 30071
SERVICE_NOT_ACTIVATED 30072
SOURCE_SERVER_NOT_STARTED 30073
INSTANCE_MUST_BE_RUNNING 30074
SERVICE_CONFIG_FAILED 30092
NO_SUCH_TEMPLATE_ON_ZABBIX_SERVER 30075
SYSTEM_TEMPLATE_WAS_NOT_FOUND 30076
INSTANCE_IS_ALREADY_BEING_MONITORED 30077
FAILED_TO_READ_TEMPLATE 30078
FAILED_TO_UPLOAD_TEMPLATE 30079
INVALID_INSTANCE_STATE 30080
INSTANCE_IS_NOT_MONITORED 30081
CANNOT_CONNECT_TO_ZABBIX_SERVER 30082
MONITORING_OF_WIN_XP_IS_NOT_SUPPORTED 30083
FAILED_TO_GET_ZABBIX_SESSION 30084
INSTANCE_IS_ALREADY_BEING_LOGGED 30085
INVALID_INSTANCE_PROJECT 30086
NO_CHEF_VALIDATION_PEM_PROVIDED 30087
FAILED_TO_SAVE_CHEF_VALIDATION_PEM 30088
FAILED_TO_GET_VALIDATION_PEM_FILE 30089
INSTANCE_ACTS_AS_SERVICE_SOURCE 30090
VOLUMES_OPERATIONS_IN_PROGRESS 30091
PREVIOUS_OPERATION_IN_PROGRESS 30093
EPAM Cloud Orchestrator – Maestro API Reference Guide
EPAM PUBLIC 78
TABLE OF FIGURES
Figure 1 - Maestro Java SDK structure ....................................................................................................... 10
Figure 2 - Operation flow diagram ............................................................................................................... 64
VERSION HISTORY
Version Date Summary
2.1.4 January 31, 2018 - Suspend instance section removed
2.1.3 November 30, 2017 - MSQ3 information removed
2.1.2 December 16, 2016 - Classification changed from Confidential to Public, approved by Dzmitry Pliushch
2.1.1 October 22, 2016 - Git repositories links updated
2.1 February 13, 2016 - Authorization algorithm section updated
2.0 December 20, 2015 - Formatting updated - Ruby Gem usage described - API Error Handling section added
1.1 November 1, 2014 - Updated documentation references
1.02 June 21, 2014 - Updated Describe example
1.01 November 28, 2013 - Added Preface - Updated documentation links
1.1 November 1, 2014 - Updated documentation references
1.0 August 03, 2013 - First published