Data Processing API v1.1

Cluster templates

A cluster template configures a Hadoop cluster. A cluster template lists node groups with the number of instances in each group. You can also define cluster-scoped configurations in a cluster template.

GET
/v1.1/{project_id}/cluster-templates/{cluster_template_id}

Show cluster template details

Shows details for a cluster template.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

cluster_template_id

path

string

The unique identifier of the cluster template.

Response Parameters

Name

In

Type

Description

description (Optional)

body

string

Description of the cluster template

use_autoconfig

body

boolean

If set to true, the cluster is auto configured.

cluster_configs

body

object

A set of key and value pairs that contain the cluster configuration.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

default_image_id

body

string

The default ID of the image.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

plugin_name

body

string

The name of the plugin.

is_default

body

boolean

If set to true, the cluster is the default cluster.

is_protected

body

boolean

If set to true, the object is protected.

shares

body

string

The sharing of resources in the cluster.

domain_name (Optional)

body

string

Domain name for internal and external hostname resolution. Required if DNS service is enabled.

tenant_id

body

string

The UUID of the tenant.

node_groups

body

object

The detail properties of the node in key-value pairs.

is_public

body

boolean

If set to true, the object is public.

hadoop_version

body

string

The version of the Hadoop used in the cluster.

id

body

string

The UUID of the cluster template.

name

body

string

The name of the cluster template.

Response Example

{
    "cluster_templates": [
        {
            "is_public": false,
            "anti_affinity": [],
            "name": "cluster-template",
            "created_at": "2015-09-14T10:38:44",
            "tenant_id": "808d5032ea0446889097723bfc8e919d",
            "cluster_configs": {},
            "shares": null,
            "id": "57c92a7c-5c6a-42ea-9c6f-9f40a5aa4b36",
            "default_image_id": null,
            "is_default": false,
            "updated_at": null,
            "plugin_name": "vanilla",
            "node_groups": [
                {
                    "image_id": null,
                    "shares": null,
                    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                    "node_configs": {},
                    "auto_security_group": false,
                    "availability_zone": null,
                    "count": 1,
                    "flavor_id": "2",
                    "id": "1751c04e-8f39-467e-a421-480961172d4b",
                    "security_groups": null,
                    "use_autoconfig": true,
                    "volumes_availability_zone": null,
                    "created_at": "2015-09-14T10:38:44",
                    "node_group_template_id": "0bb9f1a4-0c44-4dc5-9452-6741c62ed9ae",
                    "updated_at": null,
                    "volumes_per_node": 0,
                    "is_proxy_gateway": false,
                    "name": "master",
                    "volume_mount_prefix": "/volumes/disk",
                    "node_processes": [
                        "namenode",
                        "resourcemanager",
                        "oozie",
                        "historyserver"
                    ],
                    "volumes_size": 0,
                    "volume_local_to_instance": false,
                    "volume_type": null
                },
                {
                    "image_id": null,
                    "shares": null,
                    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                    "node_configs": {},
                    "auto_security_group": false,
                    "availability_zone": null,
                    "count": 3,
                    "flavor_id": "2",
                    "id": "3ee85068-c455-4391-9db2-b54a20b99df3",
                    "security_groups": null,
                    "use_autoconfig": true,
                    "volumes_availability_zone": null,
                    "created_at": "2015-09-14T10:38:44",
                    "node_group_template_id": "846edb31-add5-46e6-a4ee-a4c339f99251",
                    "updated_at": null,
                    "volumes_per_node": 0,
                    "is_proxy_gateway": false,
                    "name": "worker",
                    "volume_mount_prefix": "/volumes/disk",
                    "node_processes": [
                        "datanode",
                        "nodemanager"
                    ],
                    "volumes_size": 0,
                    "volume_local_to_instance": false,
                    "volume_type": null
                }
            ],
            "neutron_management_network": "b1610452-2933-46b0-bf31-660cfa5621bd",
            "domain_name": null,
            "hadoop_version": "2.7.1",
            "use_autoconfig": true,
            "description": null,
            "is_protected": false
        },
        {
            "is_public": true,
            "anti_affinity": [],
            "name": "asd",
            "created_at": "2015-08-18T08:39:39",
            "tenant_id": "808d5032ea0446889097723bfc8e919d",
            "cluster_configs": {
                "general": {}
            },
            "shares": null,
            "id": "5a9c787c-2078-4f7d-9a66-27759be9051b",
            "default_image_id": null,
            "is_default": false,
            "updated_at": "2015-09-14T08:41:15",
            "plugin_name": "vanilla",
            "node_groups": [
                {
                    "image_id": null,
                    "shares": null,
                    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                    "node_configs": {},
                    "auto_security_group": true,
                    "availability_zone": "",
                    "count": 1,
                    "flavor_id": "2",
                    "id": "a65864dd-3f99-4d29-a011-f7711cc23fa0",
                    "security_groups": [],
                    "use_autoconfig": true,
                    "volumes_availability_zone": null,
                    "created_at": "2015-08-18T08:39:39",
                    "node_group_template_id": "42ce49de-1b8f-41d5-8f4a-244ec0826d92",
                    "updated_at": null,
                    "volumes_per_node": 1,
                    "is_proxy_gateway": false,
                    "name": "asd",
                    "volume_mount_prefix": "/volumes/disk",
                    "node_processes": [
                        "namenode",
                        "jobtracker"
                    ],
                    "volumes_size": 10,
                    "volume_local_to_instance": false,
                    "volume_type": null
                }
            ],
            "neutron_management_network": null,
            "domain_name": null,
            "hadoop_version": "2.7.1",
            "use_autoconfig": true,
            "description": "",
            "is_protected": false
        }
    ],
    "markers": {
        "prev": null,
        "next": "2c76e0d3-56cd-4d28-bb4f-4808e538c7b9"
    }
}
PUT
/v1.1/{project_id}/cluster-templates/{cluster_template_id}

Update cluster templates

Updates a cluster template.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

cluster_template_id

body

string

The UUID of the cluster template.

Request Example

{
    "description": "Updated template",
    "plugin_name": "vanilla",
    "hadoop_version": "2.7.1",
    "name": "vanilla-updated",
    "cluster_configs": {
        "HDFS": {
            "dfs.replication": 2
        }
    }
}

Response Parameters

Name

In

Type

Description

description (Optional)

body

string

Description of the cluster template

use_autoconfig

body

boolean

If set to true, the cluster is auto configured.

cluster_configs

body

object

A set of key and value pairs that contain the cluster configuration.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

default_image_id

body

string

The default ID of the image.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

plugin_name

body

string

The name of the plugin.

is_default

body

boolean

If set to true, the cluster is the default cluster.

is_protected

body

boolean

If set to true, the object is protected.

shares

body

string

The sharing of resources in the cluster.

domain_name (Optional)

body

string

Domain name for internal and external hostname resolution. Required if DNS service is enabled.

tenant_id

body

string

The UUID of the tenant.

node_groups

body

object

The detail properties of the node in key-value pairs.

is_public

body

boolean

If set to true, the object is public.

hadoop_version

body

string

The version of the Hadoop used in the cluster.

id

body

string

The UUID of the cluster template.

name

body

string

The name of the cluster template.

DELETE
/v1.1/{project_id}/cluster-templates/{cluster_template_id}

Delete cluster template

Deletes a cluster template.

Normal response codes:204

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

cluster_template_id

body

string

The UUID of the cluster template.

GET
/v1.1/{project_id}/cluster-templates

List cluster templates

Lists available cluster templates.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

limit (Optional)

path

integer

Maximum number of objects in response data.

marker (Optional)

path

string

ID of the last element on the list which won’t be in response.

sort_by (Optional)

path

string

The field for sorting cluster templates. this parameter accepts the following values: name, plugin_name, hadoop_version, created_at, updated_at, id. Also this values can started with - prefix for descending sort. For example: -name.

Response Parameters

Name

In

Type

Description

markers (Optional)

body

object

The markers of previous and following pages of data. This field exists only if limit is passed to request.

prev (Optional)

body

string

The marker of previous page. May be null if previous page is first or if current page is first.

next (Optional)

body

string

The marker of next page of list data.

description (Optional)

body

string

Description of the cluster template

use_autoconfig

body

boolean

If set to true, the cluster is auto configured.

cluster_configs

body

object

A set of key and value pairs that contain the cluster configuration.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

default_image_id

body

string

The default ID of the image.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

plugin_name

body

string

The name of the plugin.

is_default

body

boolean

If set to true, the cluster is the default cluster.

is_protected

body

boolean

If set to true, the object is protected.

shares

body

string

The sharing of resources in the cluster.

domain_name (Optional)

body

string

Domain name for internal and external hostname resolution. Required if DNS service is enabled.

tenant_id

body

string

The UUID of the tenant.

node_groups

body

object

The detail properties of the node in key-value pairs.

is_public

body

boolean

If set to true, the object is public.

hadoop_version

body

string

The version of the Hadoop used in the cluster.

id

body

string

The UUID of the cluster template.

name

body

string

The name of the cluster template.

GET
/v1.1/{project_id}/cluster-templates?limit=2

Response Example

{
    "cluster_templates": [
        {
            "is_public": false,
            "anti_affinity": [],
            "name": "cluster-template",
            "created_at": "2015-09-14T10:38:44",
            "tenant_id": "808d5032ea0446889097723bfc8e919d",
            "cluster_configs": {},
            "shares": null,
            "id": "57c92a7c-5c6a-42ea-9c6f-9f40a5aa4b36",
            "default_image_id": null,
            "is_default": false,
            "updated_at": null,
            "plugin_name": "vanilla",
            "node_groups": [
                {
                    "image_id": null,
                    "shares": null,
                    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                    "node_configs": {},
                    "auto_security_group": false,
                    "availability_zone": null,
                    "count": 1,
                    "flavor_id": "2",
                    "id": "1751c04e-8f39-467e-a421-480961172d4b",
                    "security_groups": null,
                    "use_autoconfig": true,
                    "volumes_availability_zone": null,
                    "created_at": "2015-09-14T10:38:44",
                    "node_group_template_id": "0bb9f1a4-0c44-4dc5-9452-6741c62ed9ae",
                    "updated_at": null,
                    "volumes_per_node": 0,
                    "is_proxy_gateway": false,
                    "name": "master",
                    "volume_mount_prefix": "/volumes/disk",
                    "node_processes": [
                        "namenode",
                        "resourcemanager",
                        "oozie",
                        "historyserver"
                    ],
                    "volumes_size": 0,
                    "volume_local_to_instance": false,
                    "volume_type": null
                },
                {
                    "image_id": null,
                    "shares": null,
                    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                    "node_configs": {},
                    "auto_security_group": false,
                    "availability_zone": null,
                    "count": 3,
                    "flavor_id": "2",
                    "id": "3ee85068-c455-4391-9db2-b54a20b99df3",
                    "security_groups": null,
                    "use_autoconfig": true,
                    "volumes_availability_zone": null,
                    "created_at": "2015-09-14T10:38:44",
                    "node_group_template_id": "846edb31-add5-46e6-a4ee-a4c339f99251",
                    "updated_at": null,
                    "volumes_per_node": 0,
                    "is_proxy_gateway": false,
                    "name": "worker",
                    "volume_mount_prefix": "/volumes/disk",
                    "node_processes": [
                        "datanode",
                        "nodemanager"
                    ],
                    "volumes_size": 0,
                    "volume_local_to_instance": false,
                    "volume_type": null
                }
            ],
            "neutron_management_network": "b1610452-2933-46b0-bf31-660cfa5621bd",
            "domain_name": null,
            "hadoop_version": "2.7.1",
            "use_autoconfig": true,
            "description": null,
            "is_protected": false
        },
        {
            "is_public": true,
            "anti_affinity": [],
            "name": "asd",
            "created_at": "2015-08-18T08:39:39",
            "tenant_id": "808d5032ea0446889097723bfc8e919d",
            "cluster_configs": {
                "general": {}
            },
            "shares": null,
            "id": "5a9c787c-2078-4f7d-9a66-27759be9051b",
            "default_image_id": null,
            "is_default": false,
            "updated_at": "2015-09-14T08:41:15",
            "plugin_name": "vanilla",
            "node_groups": [
                {
                    "image_id": null,
                    "shares": null,
                    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                    "node_configs": {},
                    "auto_security_group": true,
                    "availability_zone": "",
                    "count": 1,
                    "flavor_id": "2",
                    "id": "a65864dd-3f99-4d29-a011-f7711cc23fa0",
                    "security_groups": [],
                    "use_autoconfig": true,
                    "volumes_availability_zone": null,
                    "created_at": "2015-08-18T08:39:39",
                    "node_group_template_id": "42ce49de-1b8f-41d5-8f4a-244ec0826d92",
                    "updated_at": null,
                    "volumes_per_node": 1,
                    "is_proxy_gateway": false,
                    "name": "asd",
                    "volume_mount_prefix": "/volumes/disk",
                    "node_processes": [
                        "namenode",
                        "jobtracker"
                    ],
                    "volumes_size": 10,
                    "volume_local_to_instance": false,
                    "volume_type": null
                }
            ],
            "neutron_management_network": null,
            "domain_name": null,
            "hadoop_version": "2.7.1",
            "use_autoconfig": true,
            "description": "",
            "is_protected": false
        }
    ],
    "markers": {
        "prev": null,
        "next": "2c76e0d3-56cd-4d28-bb4f-4808e538c7b9"
    }
}
POST
/v1.1/{project_id}/cluster-templates

Create cluster templates

Creates a cluster template.

Normal response codes:202

Request

Name

In

Type

Description

project_id

body

string

The UUID of the project.

Request Example

{
    "plugin_name": "vanilla",
    "hadoop_version": "2.7.1",
    "node_groups": [
        {
            "name": "worker",
            "count": 3,
            "node_group_template_id": "846edb31-add5-46e6-a4ee-a4c339f99251"
        },
        {
            "name": "master",
            "count": 1,
            "node_group_template_id": "0bb9f1a4-0c44-4dc5-9452-6741c62ed9ae"
        }
    ],
    "name": "cluster-template"
}

Response Parameters

Name

In

Type

Description

description (Optional)

body

string

Description of the cluster template

use_autoconfig

body

boolean

If set to true, the cluster is auto configured.

cluster_configs

body

object

A set of key and value pairs that contain the cluster configuration.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

default_image_id

body

string

The default ID of the image.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

plugin_name

body

string

The name of the plugin.

is_default

body

boolean

If set to true, the cluster is the default cluster.

is_protected

body

boolean

If set to true, the object is protected.

shares

body

string

The sharing of resources in the cluster.

domain_name (Optional)

body

string

Domain name for internal and external hostname resolution. Required if DNS service is enabled.

tenant_id

body

string

The UUID of the tenant.

node_groups

body

object

The detail properties of the node in key-value pairs.

is_public

body

boolean

If set to true, the object is public.

hadoop_version

body

string

The version of the Hadoop used in the cluster.

id

body

string

The UUID of the cluster template.

name

body

string

The name of the cluster template.

Clusters

A cluster is a group of nodes with the same configuration.

GET
/v1.1/{project_id}/clusters

List available clusters

Lists available clusters.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

limit (Optional)

path

integer

Maximum number of objects in response data.

marker (Optional)

path

string

ID of the last element on the list which won’t be in response.

sort_by (Optional)

path

string

The field for sorting clusters. this parameter accepts the following values: name, plugin_name, hadoop_version, status, id. Also this values can started with - prefix for descending sort. For example: -name.

Response Parameters

Name

In

Type

Description

markers (Optional)

body

object

The markers of previous and following pages of data. This field exists only if limit is passed to request.

prev (Optional)

body

string

The marker of previous page. May be null if previous page is first or if current page is first.

next (Optional)

body

string

The marker of next page of list data.

count

body

integer

The number of nodes in the cluster.

info

body

object

A set of key and value pairs that contain cluster information.

cluster_template_id

body

string

The UUID of the cluster template.

is_transient

body

boolean

If set to true, the cluster is transient.

provision_progress

body

array

A list of the cluster progresses.

status

body

string

The status of the cluster.

neutron_management_network

body

string

The UUID of the neutron management network.

clusters

body

array

The list of clusters.

management_public_key

body

string

The SSH key for the management network.

status_description

body

string

The description of the cluster status.

trust_id

body

integer

The id of the trust.

domain_name (Optional)

body

string

Domain name for internal and external hostname resolution. Required if DNS service is enabled.

GET
/v1.1/{project_id}/clusters

Response Example

{
    "clusters": [
        {
            "is_public": false,
            "tenant_id": "808d5032ea0446889097723bfc8e919d",
            "shares": null,
            "domain_name": null,
            "status_description": "",
            "plugin_name": "vanilla",
            "neutron_management_network": "b1610452-2933-46b0-bf31-660cfa5621bd",
            "info": {
                "YARN": {
                    "Web UI": "http://172.18.168.115:8088",
                    "ResourceManager": "http://172.18.168.115:8032"
                },
                "HDFS": {
                    "Web UI": "http://172.18.168.115:50070",
                    "NameNode": "hdfs://vanilla-cluster-master-0:9000"
                },
                "JobFlow": {
                    "Oozie": "http://172.18.168.115:11000"
                },
                "MapReduce JobHistory Server": {
                    "Web UI": "http://172.18.168.115:19888"
                }
            },
            "user_keypair_id": "apavlov",
            "management_public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCfe9ARO+t9CybtuC1+cusDTeQL7wos1+U2dKPlCUJvNUn0PcunGefqWI4MUZPY9yGmvRqfINy7/xRQCzL0AwgqzwcCXamcK8JCC80uH7j8Vxa4kJheG1jxMoz/FpDSdRnzNZ+m7H5rjOwAQANhL7KatGLyCPQg9fqOoaIyCZE/A3fztm/XjJMpWnuANpUZubZtISEfu4UZKVk/DPSlBrbTZkTOvEog1LwZCZoTt0rq6a7PJFzJJkq0YecRudu/f3tpXbNe/F84sd9PhOSqcrRbm72WzglyEE8PuS1kuWpEz8G+Y5/0tQxnoh6khj9mgflrdCFuvpdutFLH4eN5MFDh Generated-by-Sahara\n",
            "id": "e172d86c-906d-418e-a29c-6189f53bfa42",
            "cluster_template_id": "57c92a7c-5c6a-42ea-9c6f-9f40a5aa4b36",
            "node_groups": [
                {
                    "image_id": null,
                    "shares": null,
                    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                    "node_configs": {
                        "YARN": {
                            "yarn.nodemanager.vmem-check-enabled": "false",
                            "yarn.scheduler.maximum-allocation-mb": 2048,
                            "yarn.scheduler.minimum-allocation-mb": 256,
                            "yarn.nodemanager.resource.memory-mb": 2048
                        },
                        "MapReduce": {
                            "yarn.app.mapreduce.am.resource.mb": 256,
                            "mapreduce.task.io.sort.mb": 102,
                            "mapreduce.reduce.java.opts": "-Xmx409m",
                            "mapreduce.reduce.memory.mb": 512,
                            "mapreduce.map.memory.mb": 256,
                            "yarn.app.mapreduce.am.command-opts": "-Xmx204m",
                            "mapreduce.map.java.opts": "-Xmx204m"
                        }
                    },
                    "auto_security_group": false,
                    "availability_zone": null,
                    "count": 1,
                    "flavor_id": "2",
                    "id": "0fe07f2a-0275-4bc0-93b2-c3c1e48e2815",
                    "security_groups": null,
                    "use_autoconfig": true,
                    "instances": [
                        {
                            "created_at": "2015-09-14T10:57:36",
                            "id": "4867d92e-cc7b-4cde-9a1a-149e91caa491",
                            "management_ip": "172.18.168.115",
                            "updated_at": "2015-09-14T10:57:39",
                            "instance_id": "b9f16a07-88fc-423e-83a3-489598fe6737",
                            "internal_ip": "10.50.0.60",
                            "instance_name": "vanilla-cluster-master-0"
                        }
                    ],
                    "volumes_availability_zone": null,
                    "created_at": "2015-09-14T10:57:11",
                    "node_group_template_id": "0bb9f1a4-0c44-4dc5-9452-6741c62ed9ae",
                    "updated_at": "2015-09-14T10:57:36",
                    "volumes_per_node": 0,
                    "is_proxy_gateway": false,
                    "name": "master",
                    "volume_mount_prefix": "/volumes/disk",
                    "node_processes": [
                        "namenode",
                        "resourcemanager",
                        "oozie",
                        "historyserver"
                    ],
                    "volumes_size": 0,
                    "volume_local_to_instance": false,
                    "volume_type": null
                },
                {
                    "image_id": null,
                    "shares": null,
                    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                    "node_configs": {
                        "YARN": {
                            "yarn.nodemanager.vmem-check-enabled": "false",
                            "yarn.scheduler.maximum-allocation-mb": 2048,
                            "yarn.scheduler.minimum-allocation-mb": 256,
                            "yarn.nodemanager.resource.memory-mb": 2048
                        },
                        "MapReduce": {
                            "yarn.app.mapreduce.am.resource.mb": 256,
                            "mapreduce.task.io.sort.mb": 102,
                            "mapreduce.reduce.java.opts": "-Xmx409m",
                            "mapreduce.reduce.memory.mb": 512,
                            "mapreduce.map.memory.mb": 256,
                            "yarn.app.mapreduce.am.command-opts": "-Xmx204m",
                            "mapreduce.map.java.opts": "-Xmx204m"
                        }
                    },
                    "auto_security_group": false,
                    "availability_zone": null,
                    "count": 3,
                    "flavor_id": "2",
                    "id": "c7a3bea4-c898-446b-8c67-6d378d4c06c4",
                    "security_groups": null,
                    "use_autoconfig": true,
                    "instances": [
                        {
                            "created_at": "2015-09-14T10:57:37",
                            "id": "f3633b30-c1e4-4144-930b-ab5b780b87be",
                            "management_ip": "172.18.168.118",
                            "updated_at": "2015-09-14T10:57:39",
                            "instance_id": "0cf1ee81-aa72-48da-be2c-65bc2fa51f8f",
                            "internal_ip": "10.50.0.63",
                            "instance_name": "vanilla-cluster-worker-0"
                        },
                        {
                            "created_at": "2015-09-14T10:57:37",
                            "id": "0d66fd93-f277-4a94-b46a-f5866aa0c38f",
                            "management_ip": "172.18.168.117",
                            "updated_at": "2015-09-14T10:57:40",
                            "instance_id": "4a937391-b594-4ad0-9a53-00a99a691383",
                            "internal_ip": "10.50.0.62",
                            "instance_name": "vanilla-cluster-worker-1"
                        },
                        {
                            "created_at": "2015-09-14T10:57:37",
                            "id": "0982cefd-5c58-436e-8f1e-c1d0830f18a7",
                            "management_ip": "172.18.168.116",
                            "updated_at": "2015-09-14T10:57:40",
                            "instance_id": "839b1d56-6d0d-4aa4-9d05-30e029c276f8",
                            "internal_ip": "10.50.0.61",
                            "instance_name": "vanilla-cluster-worker-2"
                        }
                    ],
                    "volumes_availability_zone": null,
                    "created_at": "2015-09-14T10:57:11",
                    "node_group_template_id": "846edb31-add5-46e6-a4ee-a4c339f99251",
                    "updated_at": "2015-09-14T10:57:37",
                    "volumes_per_node": 0,
                    "is_proxy_gateway": false,
                    "name": "worker",
                    "volume_mount_prefix": "/volumes/disk",
                    "node_processes": [
                        "datanode",
                        "nodemanager"
                    ],
                    "volumes_size": 0,
                    "volume_local_to_instance": false,
                    "volume_type": null
                }
            ],
            "provision_progress": [
                {
                    "created_at": "2015-09-14T10:57:18",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "0a6d95f9-30f4-4434-823a-a38a7999a5af",
                    "step_type": "Engine: create cluster",
                    "step_name": "Create Heat stack",
                    "updated_at": "2015-09-14T10:57:38",
                    "successful": true,
                    "total": 1,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T10:58:16",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "29f2b587-c34c-4871-9ed9-9235b411cd9a",
                    "step_type": "Engine: create cluster",
                    "step_name": "Configure instances",
                    "updated_at": "2015-09-14T10:58:22",
                    "successful": true,
                    "total": 4,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T11:00:27",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "36f1efde-90f9-41c1-b409-aa1cf9623e3e",
                    "step_type": "Plugin: start cluster",
                    "step_name": "Start the following process(es): Oozie",
                    "updated_at": "2015-09-14T11:01:15",
                    "successful": true,
                    "total": 1,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T10:58:22",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "602bcc27-3a2d-42c8-8aca-ebc475319c72",
                    "step_type": "Plugin: configure cluster",
                    "step_name": "Configure instances",
                    "updated_at": "2015-09-14T10:59:21",
                    "successful": true,
                    "total": 4,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T10:59:21",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "7e291df1-2d32-410d-ae89-33ab6f83cf17",
                    "step_type": "Plugin: configure cluster",
                    "step_name": "Configure topology data",
                    "updated_at": "2015-09-14T10:59:37",
                    "successful": true,
                    "total": 1,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T11:00:01",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "8ab7933c-ad61-4a4f-88db-23ce78ee10f6",
                    "step_type": "Plugin: start cluster",
                    "step_name": "Start the following process(es): DataNodes, NodeManagers",
                    "updated_at": "2015-09-14T11:00:11",
                    "successful": true,
                    "total": 3,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T11:00:11",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "9c8dc016-8c5b-4e80-9857-80c41f6bd971",
                    "step_type": "Plugin: start cluster",
                    "step_name": "Await DataNodes start up",
                    "updated_at": "2015-09-14T11:00:21",
                    "successful": true,
                    "total": 1,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T11:00:21",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "c6327532-222b-416c-858f-73dbb32b8e97",
                    "step_type": "Plugin: start cluster",
                    "step_name": "Start the following process(es): HistoryServer",
                    "updated_at": "2015-09-14T11:00:27",
                    "successful": true,
                    "total": 1,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T10:57:41",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "d3eca726-8b44-473a-ac29-fba45a893725",
                    "step_type": "Engine: create cluster",
                    "step_name": "Wait for instance accessibility",
                    "updated_at": "2015-09-14T10:58:14",
                    "successful": true,
                    "total": 4,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T10:58:14",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "d7a875ff-64bf-41aa-882d-b5061c8ee152",
                    "step_type": "Engine: create cluster",
                    "step_name": "Mount volumes to instances",
                    "updated_at": "2015-09-14T10:58:15",
                    "successful": true,
                    "total": 0,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T10:59:55",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "ded7d227-10b8-4cb0-ab6c-25da1462bb7a",
                    "step_type": "Plugin: start cluster",
                    "step_name": "Start the following process(es): ResourceManager",
                    "updated_at": "2015-09-14T11:00:00",
                    "successful": true,
                    "total": 1,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T10:59:38",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "e1701ff5-930a-4212-945a-43515dfe24d1",
                    "step_type": "Plugin: start cluster",
                    "step_name": "Start the following process(es): NameNode",
                    "updated_at": "2015-09-14T10:59:54",
                    "successful": true,
                    "total": 1,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                },
                {
                    "created_at": "2015-09-14T10:57:38",
                    "tenant_id": "808d5032ea0446889097723bfc8e919d",
                    "id": "eaf0ab1b-bf8f-48f0-8f2c-fa4f82f539b9",
                    "step_type": "Engine: create cluster",
                    "step_name": "Assign IPs",
                    "updated_at": "2015-09-14T10:57:41",
                    "successful": true,
                    "total": 4,
                    "cluster_id": "e172d86c-906d-418e-a29c-6189f53bfa42"
                }
            ],
            "hadoop_version": "2.7.1",
            "use_autoconfig": true,
            "trust_id": null,
            "description": null,
            "created_at": "2015-09-14T10:57:11",
            "is_protected": false,
            "updated_at": "2015-09-14T11:01:15",
            "is_transient": false,
            "cluster_configs": {
                "HDFS": {
                    "dfs.replication": 3
                }
            },
            "anti_affinity": [],
            "name": "vanilla-cluster",
            "default_image_id": "4118a476-dfdc-4b0e-8d5c-463cba08e9ae",
            "status": "Active"
        }
    ]
}
POST
/v1.1/{project_id}/clusters

Create cluster

Creates a cluster.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

Request Example

{
    "plugin_name": "vanilla",
    "hadoop_version": "2.7.1",
    "cluster_template_id": "57c92a7c-5c6a-42ea-9c6f-9f40a5aa4b36",
    "default_image_id": "4118a476-dfdc-4b0e-8d5c-463cba08e9ae",
    "user_keypair_id": "test",
    "name": "vanilla-cluster",
    "neutron_management_network": "b1610452-2933-46b0-bf31-660cfa5621bd"
}

Response Parameters

Name

In

Type

Description

count

body

integer

The number of nodes in the cluster.

info

body

object

A set of key and value pairs that contain cluster information.

cluster_template_id

body

string

The UUID of the cluster template.

is_transient

body

boolean

If set to true, the cluster is transient.

provision_progress

body

array

A list of the cluster progresses.

status

body

string

The status of the cluster.

neutron_management_network

body

string

The UUID of the neutron management network.

management_public_key

body

string

The SSH key for the management network.

status_description

body

string

The description of the cluster status.

trust_id

body

integer

The id of the trust.

domain_name (Optional)

body

string

Domain name for internal and external hostname resolution. Required if DNS service is enabled.

POST
/v1.1/{project_id}/clusters/multiple

Create multiple clusters

Creates multiple clusters.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

Request Example

{
    "plugin_name": "vanilla",
    "hadoop_version": "2.6.0",
    "cluster_template_id": "9951f86d-57ba-43d6-9cb0-14ed2ec7a6cf",
    "default_image_id": "bc3c3d3c-2684-4bf8-a9fa-388fb71288a9",
    "user_keypair_id": "test",
    "name": "def-cluster",
    "count": 2,
    "cluster_configs": {},
    "neutron_management_network": "7e31648b-4b2e-4f32-9b0a-113581c27076"
}
GET
/v1.1/{project_id}/clusters/{cluster_id}

Show details of a cluster

Shows details for a cluster, by ID.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

cluster_id

path

string

The ID of the cluster

Response Parameters

Name

In

Type

Description

count

body

integer

The number of nodes in the cluster.

info

body

object

A set of key and value pairs that contain cluster information.

cluster_template_id

body

string

The UUID of the cluster template.

is_transient

body

boolean

If set to true, the cluster is transient.

provision_progress

body

array

A list of the cluster progresses.

status

body

string

The status of the cluster.

neutron_management_network

body

string

The UUID of the neutron management network.

management_public_key

body

string

The SSH key for the management network.

status_description

body

string

The description of the cluster status.

trust_id

body

integer

The id of the trust.

domain_name (Optional)

body

string

Domain name for internal and external hostname resolution. Required if DNS service is enabled.

Response Example

{
    "cluster": {
        "is_public": false,
        "tenant_id": "808d5032ea0446889097723bfc8e919d",
        "shares": null,
        "domain_name": null,
        "status_description": "",
        "plugin_name": "vanilla",
        "neutron_management_network": "b1610452-2933-46b0-bf31-660cfa5621bd",
        "info": {},
        "user_keypair_id": "test",
        "management_public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCfe9ARO+t9CybtuC1+cusDTeQL7wos1+U2dKPlCUJvNUn0PcunGefqWI4MUZPY9yGmvRqfINy7/xRQCzL0AwgqzwcCXamcK8JCC80uH7j8Vxa4kJheG1jxMoz/FpDSdRnzNZ+m7H5rjOwAQANhL7KatGLyCPQg9fqOoaIyCZE/A3fztm/XjJMpWnuANpUZubZtISEfu4UZKVk/DPSlBrbTZkTOvEog1LwZCZoTt0rq6a7PJFzJJkq0YecRudu/f3tpXbNe/F84sd9PhOSqcrRbm72WzglyEE8PuS1kuWpEz8G+Y5/0tQxnoh6khj9mgflrdCFuvpdutFLH4eN5MFDh Generated-by-Sahara\n",
        "id": "e172d86c-906d-418e-a29c-6189f53bfa42",
        "cluster_template_id": "57c92a7c-5c6a-42ea-9c6f-9f40a5aa4b36",
        "node_groups": [
            {
                "image_id": null,
                "shares": null,
                "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                "node_configs": {
                    "YARN": {
                        "yarn.nodemanager.vmem-check-enabled": "false",
                        "yarn.scheduler.maximum-allocation-mb": 2048,
                        "yarn.scheduler.minimum-allocation-mb": 256,
                        "yarn.nodemanager.resource.memory-mb": 2048
                    },
                    "MapReduce": {
                        "yarn.app.mapreduce.am.resource.mb": 256,
                        "mapreduce.task.io.sort.mb": 102,
                        "mapreduce.reduce.java.opts": "-Xmx409m",
                        "mapreduce.reduce.memory.mb": 512,
                        "mapreduce.map.memory.mb": 256,
                        "yarn.app.mapreduce.am.command-opts": "-Xmx204m",
                        "mapreduce.map.java.opts": "-Xmx204m"
                    }
                },
                "auto_security_group": false,
                "availability_zone": null,
                "count": 1,
                "flavor_id": "2",
                "id": "0fe07f2a-0275-4bc0-93b2-c3c1e48e2815",
                "security_groups": null,
                "use_autoconfig": true,
                "instances": [],
                "volumes_availability_zone": null,
                "created_at": "2015-09-14T10:57:11",
                "node_group_template_id": "0bb9f1a4-0c44-4dc5-9452-6741c62ed9ae",
                "updated_at": "2015-09-14T10:57:12",
                "volumes_per_node": 0,
                "is_proxy_gateway": false,
                "name": "master",
                "volume_mount_prefix": "/volumes/disk",
                "node_processes": [
                    "namenode",
                    "resourcemanager",
                    "oozie",
                    "historyserver"
                ],
                "volumes_size": 0,
                "volume_local_to_instance": false,
                "volume_type": null
            },
            {
                "image_id": null,
                "shares": null,
                "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
                "node_configs": {
                    "YARN": {
                        "yarn.nodemanager.vmem-check-enabled": "false",
                        "yarn.scheduler.maximum-allocation-mb": 2048,
                        "yarn.scheduler.minimum-allocation-mb": 256,
                        "yarn.nodemanager.resource.memory-mb": 2048
                    },
                    "MapReduce": {
                        "yarn.app.mapreduce.am.resource.mb": 256,
                        "mapreduce.task.io.sort.mb": 102,
                        "mapreduce.reduce.java.opts": "-Xmx409m",
                        "mapreduce.reduce.memory.mb": 512,
                        "mapreduce.map.memory.mb": 256,
                        "yarn.app.mapreduce.am.command-opts": "-Xmx204m",
                        "mapreduce.map.java.opts": "-Xmx204m"
                    }
                },
                "auto_security_group": false,
                "availability_zone": null,
                "count": 3,
                "flavor_id": "2",
                "id": "c7a3bea4-c898-446b-8c67-6d378d4c06c4",
                "security_groups": null,
                "use_autoconfig": true,
                "instances": [],
                "volumes_availability_zone": null,
                "created_at": "2015-09-14T10:57:11",
                "node_group_template_id": "846edb31-add5-46e6-a4ee-a4c339f99251",
                "updated_at": "2015-09-14T10:57:12",
                "volumes_per_node": 0,
                "is_proxy_gateway": false,
                "name": "worker",
                "volume_mount_prefix": "/volumes/disk",
                "node_processes": [
                    "datanode",
                    "nodemanager"
                ],
                "volumes_size": 0,
                "volume_local_to_instance": false,
                "volume_type": null
            }
        ],
        "provision_progress": [],
        "hadoop_version": "2.7.1",
        "use_autoconfig": true,
        "trust_id": null,
        "description": null,
        "created_at": "2015-09-14T10:57:11",
        "is_protected": false,
        "updated_at": "2015-09-14T10:57:12",
        "is_transient": false,
        "cluster_configs": {
            "HDFS": {
                "dfs.replication": 3
            }
        },
        "anti_affinity": [],
        "name": "vanilla-cluster",
        "default_image_id": "4118a476-dfdc-4b0e-8d5c-463cba08e9ae",
        "status": "Validating"
    }
}
DELETE
/v1.1/{project_id}/clusters/{cluster_id}

Delete a cluster

Deletes a cluster.

Normal response codes:204

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

cluster_id

path

string

The ID of the cluster

PUT
/v1.1/{project_id}/clusters/{cluster_id}

Scale cluster

Scales a cluster.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

cluster_id

body

string

The UUID of the cluster.

Request Example

{
    "add_node_groups": [
        {
            "count": 1,
            "name": "b-worker",
            "node_group_template_id": "bc270ffe-a086-4eeb-9baa-2f5a73504622"
        }
    ],
    "resize_node_groups": [
        {
            "count": 4,
            "name": "worker"
        }
    ]
}

Response Parameters

Name

In

Type

Description

count

body

integer

The number of nodes in the cluster.

info

body

object

A set of key and value pairs that contain cluster information.

cluster_template_id

body

string

The UUID of the cluster template.

is_transient

body

boolean

If set to true, the cluster is transient.

provision_progress

body

array

A list of the cluster progresses.

status

body

string

The status of the cluster.

neutron_management_network

body

string

The UUID of the neutron management network.

management_public_key

body

string

The SSH key for the management network.

status_description

body

string

The description of the cluster status.

trust_id

body

integer

The id of the trust.

domain_name (Optional)

body

string

Domain name for internal and external hostname resolution. Required if DNS service is enabled.

PATCH
/v1.1/{project_id}/clusters/{cluster_id}

Update cluster

Updates a cluster.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

cluster_id

path

string

The ID of the cluster

Request Example

{
    "name": "public-vanilla-cluster",
    "is_public": true
}

Response Parameters

Name

In

Type

Description

count

body

integer

The number of nodes in the cluster.

info

body

object

A set of key and value pairs that contain cluster information.

cluster_template_id

body

string

The UUID of the cluster template.

is_transient

body

boolean

If set to true, the cluster is transient.

provision_progress

body

array

A list of the cluster progresses.

status

body

string

The status of the cluster.

neutron_management_network

body

string

The UUID of the neutron management network.

management_public_key

body

string

The SSH key for the management network.

status_description

body

string

The description of the cluster status.

trust_id

body

integer

The id of the trust.

domain_name (Optional)

body

string

Domain name for internal and external hostname resolution. Required if DNS service is enabled.

GET
/v1.1/{project_id}/clusters/{cluster_id}

Show progress

Shows provisioning progress for a cluster.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

cluster_id

path

string

The ID of the cluster

Response Example

{
    "status": "Error",
    "neutron_management_network": "7e31648b-4b2e-4f32-9b0a-113581c27076",
    "is_transient": false,
    "description": "",
    "user_keypair_id": "vgridnev",
    "updated_at": "2015-03-31 14:10:59",
    "plugin_name": "spark",
    "provision_progress": [
        {
            "successful": false,
            "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
            "created_at": "2015-03-31 14:10:20",
            "step_type": "Engine: create cluster",
            "updated_at": "2015-03-31 14:10:35",
            "events": [
                {
                    "instance_name": "sample-worker-spark-004",
                    "successful": false,
                    "created_at": "2015-03-31 14:10:35",
                    "updated_at": null,
                    "event_info": "Node sample-worker-spark-004 has error status\nError ID: 3e238c82-d1f5-4560-8ed8-691e923e16a0",
                    "instance_id": "b5ba5ba8-e9c1-47f7-9355-3ce0ec0e449d",
                    "node_group_id": "145cf2fb-dcdf-42af-a4b9-a4047d2919d4",
                    "step_id": "3f243c67-2c27-47c7-a0c0-0834ad17f8b6",
                    "id": "34afcfc7-bdb0-43cb-b142-283d560dc6ad"
                },
                {
                    "instance_name": "sample-worker-spark-001",
                    "successful": true,
                    "created_at": "2015-03-31 14:10:35",
                    "updated_at": null,
                    "event_info": null,
                    "instance_id": "c532ab71-38da-475a-95f8-f8eb93b8f1c2",
                    "node_group_id": "145cf2fb-dcdf-42af-a4b9-a4047d2919d4",
                    "step_id": "3f243c67-2c27-47c7-a0c0-0834ad17f8b6",
                    "id": "4ba50414-5216-4161-bc7a-12716122b99d"
                }
            ],
            "cluster_id": "c26ec982-ba6b-4d75-818c-a50240164af0",
            "step_name": "Wait for instances to become active",
            "total": 5,
            "id": "3f243c67-2c27-47c7-a0c0-0834ad17f8b6"
        },
        {
            "successful": true,
            "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
            "created_at": "2015-03-31 14:10:12",
            "step_type": "Engine: create cluster",
            "updated_at": "2015-03-31 14:10:19",
            "events": [],
            "cluster_id": "c26ec982-ba6b-4d75-818c-a50240164af0",
            "step_name": "Run instances",
            "total": 5,
            "id": "407ba50a-c799-46af-9dfb-6aa5f6ade426"
        }
    ],
    "anti_affinity": [],
    "node_groups": [],
    "management_public_key": "Sahara",
    "status_description": "Creating cluster failed for the following reason(s): Node sample-worker-spark-004 has error status\nError ID: 3e238c82-d1f5-4560-8ed8-691e923e16a0",
    "hadoop_version": "1.0.0",
    "id": "c26ec982-ba6b-4d75-1f8c-a50240164af0",
    "trust_id": null,
    "info": {},
    "cluster_template_id": "5a9a09a3-9349-43bd-9058-16c401fad2d5",
    "name": "sample",
    "cluster_configs": {},
    "created_at": "2015-03-31 14:10:07",
    "default_image_id": "e6a6c5da-67be-4017-a7d2-81f466efe67e",
    "tenant_id": "9cd1314a0a31493282b6712b76a8fcda"
}

Data sources

A data source object defines the location of input or output for MapReduce jobs and might reference different types of storage.

The Data Processing service does not validate data source locations.

GET
/v1.1/{project_id}/data-sources/{data_source_id}

Show data source details

Shows details for a data source.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

data_source_id

path

string

The UUID of the data source.

Response Parameters

Name

In

Type

Description

description

body

string

The description of the data source object.

url

body

string

The url of the data source object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

is_protected

body

boolean

If set to true, the object is protected.

is_public

body

boolean

If set to true, the object is public.

type

body

string

The type of the data source object.

id

body

string

The UUID of the data source.

name

body

string

The name of the data source.

Response Example

{
    "data_source": {
        "is_public": false,
        "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
        "is_protected": false,
        "created_at": "2015-03-26 11:18:10.691493",
        "id": "953831f2-0852-49d8-ac71-af5805e25256",
        "updated_at": null,
        "name": "swift_input",
        "description": "This is input",
        "url": "swift://container/text",
        "type": "swift"
    }
}
DELETE
/v1.1/{project_id}/data-sources/{data_source_id}

Delete data source

Deletes a data source.

Normal response codes:204

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

data_source_id

path

string

The UUID of the data source.

PUT
/v1.1/{project_id}/data-sources/{data_source_id}

Update data source

Updates a data source.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

data_source_id

path

string

The UUID of the data source.

Request Example

{
    "description": "This is public input",
    "is_protected": true
}
GET
/v1.1/{project_id}/data-sources

List data sources

Lists all data sources.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

limit (Optional)

path

integer

Maximum number of objects in response data.

marker (Optional)

path

string

ID of the last element on the list which won’t be in response.

sort_by (Optional)

path

string

The field for sorting data sources. this parameter accepts the following values: id, name, type, created_at, updated_at. Also this values can started with - prefix for descending sort. For example: -name.

Response Parameters

Name

In

Type

Description

markers (Optional)

body

object

The markers of previous and following pages of data. This field exists only if limit is passed to request.

prev (Optional)

body

string

The marker of previous page. May be null if previous page is first or if current page is first.

next (Optional)

body

string

The marker of next page of list data.

description

body

string

The description of the data source object.

url

body

string

The url of the data source object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

is_protected

body

boolean

If set to true, the object is protected.

is_public

body

boolean

If set to true, the object is public.

type

body

string

The type of the data source object.

id

body

string

The UUID of the data source.

name

body

string

The name of the data source.

GET
/v1.1/{project_id}/data-sourses?sort_by=-name

Response Example

{
    "data_sources": [
        {
            "is_public": false,
            "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
            "is_protected": false,
            "created_at": "2015-03-26 11:18:10",
            "id": "953831f2-0852-49d8-ac71-af5805e25256",
            "name": "swift_input",
            "updated_at": null,
            "description": "This is input",
            "url": "swift://container/text",
            "type": "swift"
        },
        {
            "is_public": false,
            "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
            "is_protected": false,
            "created_at": "2015-03-26 11:09:36",
            "id": "d7fffe9c-3b42-46a9-8be8-e98f586fa7a9",
            "name": "hdfs_input",
            "updated_at": null,
            "description": "This is hdfs input",
            "url": "hdfs://test-master-node:8020/user/hadoop/input",
            "type": "hdfs"
        }
    ]
}
POST
/v1.1/{project_id}/data-sources

Create data source

Creates a data source.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

Request Example

{
    "description": "This is hdfs input",
    "url": "hdfs://test-master-node:8020/user/hadoop/input",
    "type": "hdfs",
    "name": "hdfs_input"
}

Response Parameters

Name

In

Type

Description

description

body

string

The description of the data source object.

url

body

string

The url of the data source object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

is_protected

body

boolean

If set to true, the object is protected.

is_public

body

boolean

If set to true, the object is public.

type

body

string

The type of the data source object.

id

body

string

The UUID of the data source.

name

body

string

The name of the data source.

Event log

The event log feature provides information about cluster provisioning. In the event of errors, the event log shows the reason for the failure.

GET
/v1.1/{project_id}/clusters/{cluster_id}

Show progress

Shows provisioning progress of cluster.

Normal response codes: 200 Error response codes:

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

cluster_id

body

string

The UUID of the cluster.

Response Example

{
    "status": "Error",
    "neutron_management_network": "7e31648b-4b2e-4f32-9b0a-113581c27076",
    "is_transient": false,
    "description": "",
    "user_keypair_id": "vgridnev",
    "updated_at": "2015-03-31 14:10:59",
    "plugin_name": "spark",
    "provision_progress": [
        {
            "successful": false,
            "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
            "created_at": "2015-03-31 14:10:20",
            "step_type": "Engine: create cluster",
            "updated_at": "2015-03-31 14:10:35",
            "events": [
                {
                    "instance_name": "sample-worker-spark-004",
                    "successful": false,
                    "created_at": "2015-03-31 14:10:35",
                    "updated_at": null,
                    "event_info": "Node sample-worker-spark-004 has error status\nError ID: 3e238c82-d1f5-4560-8ed8-691e923e16a0",
                    "instance_id": "b5ba5ba8-e9c1-47f7-9355-3ce0ec0e449d",
                    "node_group_id": "145cf2fb-dcdf-42af-a4b9-a4047d2919d4",
                    "step_id": "3f243c67-2c27-47c7-a0c0-0834ad17f8b6",
                    "id": "34afcfc7-bdb0-43cb-b142-283d560dc6ad"
                },
                {
                    "instance_name": "sample-worker-spark-001",
                    "successful": true,
                    "created_at": "2015-03-31 14:10:35",
                    "updated_at": null,
                    "event_info": null,
                    "instance_id": "c532ab71-38da-475a-95f8-f8eb93b8f1c2",
                    "node_group_id": "145cf2fb-dcdf-42af-a4b9-a4047d2919d4",
                    "step_id": "3f243c67-2c27-47c7-a0c0-0834ad17f8b6",
                    "id": "4ba50414-5216-4161-bc7a-12716122b99d"
                }
            ],
            "cluster_id": "c26ec982-ba6b-4d75-818c-a50240164af0",
            "step_name": "Wait for instances to become active",
            "total": 5,
            "id": "3f243c67-2c27-47c7-a0c0-0834ad17f8b6"
        },
        {
            "successful": true,
            "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
            "created_at": "2015-03-31 14:10:12",
            "step_type": "Engine: create cluster",
            "updated_at": "2015-03-31 14:10:19",
            "events": [],
            "cluster_id": "c26ec982-ba6b-4d75-818c-a50240164af0",
            "step_name": "Run instances",
            "total": 5,
            "id": "407ba50a-c799-46af-9dfb-6aa5f6ade426"
        }
    ],
    "anti_affinity": [],
    "node_groups": [],
    "management_public_key": "Sahara",
    "status_description": "Creating cluster failed for the following reason(s): Node sample-worker-spark-004 has error status\nError ID: 3e238c82-d1f5-4560-8ed8-691e923e16a0",
    "hadoop_version": "1.0.0",
    "id": "c26ec982-ba6b-4d75-1f8c-a50240164af0",
    "trust_id": null,
    "info": {},
    "cluster_template_id": "5a9a09a3-9349-43bd-9058-16c401fad2d5",
    "name": "sample",
    "cluster_configs": {},
    "created_at": "2015-03-31 14:10:07",
    "default_image_id": "e6a6c5da-67be-4017-a7d2-81f466efe67e",
    "tenant_id": "9cd1314a0a31493282b6712b76a8fcda"
}

Image registry

Use the image registry tool to manage images, add tags to and remove tags from images, and define the user name for an instance operating system. Each plugin lists required tags for an image. To run remote operations, the Data Processing service requires a user name with which to log in to the operating system for an instance.

POST
/v1.1/{project_id}/images/{image_id}/tag

Add tags to image

Adds tags to an image.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

tags

body

array

List of tags to add.

image_id

path

string

The UUID of the image.

Request Example

{
    "tags": [
        "vanilla",
        "2.7.1",
        "some_other_tag"
    ]
}
GET
/v1.1/{project_id}/images/{image_id}

Show image details

Shows details for an image.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

image_id

path

string

The UUID of the image.

Response Parameters

Name

In

Type

Description

status

body

string

The status of the cluster.

username

body

string

The name of the user for the image.

updated

body

string

The date and time when the image was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

For example, 2015-08-27T09:49:58-05:00.

The ±hh:mm value, if included, is the time zone as an offset from UTC.

description

body

string

The description of the image.

created

body

string

The date and time when the image was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

For example, 2015-08-27T09:49:58-05:00.

The ±hh:mm value, if included, is the time zone as an offset from UTC.

image

body

object

A set of key and value pairs that contain image properties.

tags

body

array

List of tags to add.

minDisk

body

integer

The minimum disk space, in GB.

name

body

string

The name of the operating system image.

progress

body

integer

A progress indicator, as a percentage value, for the amount of image content that has been processed.

minRam

body

integer

The minimum amount of random access memory (RAM) for the image, in GB.

id

body

string

The UUID of the image.

metadata

body

object

A set of key and value pairs that contain image metadata.

Response Example

{
    "image": {
        "updated": "2015-02-03T10:29:32Z",
        "metadata": {
            "_sahara_username": "ubuntu",
            "_sahara_tag_vanilla": true,
            "_sahara_tag_2.6.0": true
        },
        "id": "bb8d12b5-f9bb-49f0-aecb-739b8a9bec89",
        "minDisk": 0,
        "status": "ACTIVE",
        "tags": [
            "vanilla",
            "2.6.0"
        ],
        "minRam": 0,
        "progress": 100,
        "username": "ubuntu",
        "created": "2015-02-03T10:28:39Z",
        "name": "sahara-vanilla-2.6.0-ubuntu-14.04",
        "description": null,
        "OS-EXT-IMG-SIZE:size": 1101856768
    }
}
POST
/v1.1/{project_id}/images/{image_id}

Register image

Registers an image in the registry.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

username

body

string

The name of the user for the image.

description

body

string

The description of the image.

image_id

path

string

The UUID of the image.

Request Example

{
    "username": "ubuntu",
    "description": "Ubuntu image for Hadoop 2.7.1"
}

Response Parameters

Name

In

Type

Description

status

body

string

The status of the cluster.

username

body

string

The name of the user for the image.

updated

body

string

The date and time when the image was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

For example, 2015-08-27T09:49:58-05:00.

The ±hh:mm value, if included, is the time zone as an offset from UTC.

description

body

string

The description of the image.

created

body

string

The date and time when the image was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

For example, 2015-08-27T09:49:58-05:00.

The ±hh:mm value, if included, is the time zone as an offset from UTC.

image

body

object

A set of key and value pairs that contain image properties.

tags

body

array

List of tags to add.

minDisk

body

integer

The minimum disk space, in GB.

name

body

string

The name of the operating system image.

progress

body

integer

A progress indicator, as a percentage value, for the amount of image content that has been processed.

minRam

body

integer

The minimum amount of random access memory (RAM) for the image, in GB.

id

body

string

The UUID of the image.

metadata

body

object

A set of key and value pairs that contain image metadata.

DELETE
/v1.1/{project_id}/images/{image_id}

Unregister image

Removes an image from the registry.

Normal response codes:204

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

image_id

path

string

The UUID of the image.

POST
/v1.1/{project_id}/images/{image_id}/untag

Remove tags from image

Removes tags from an image.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

tags

body

array

List of tags to add.

image_id

path

string

The UUID of the image.

Request Example

{
    "tags": [
        "some_other_tag"
    ]
}
GET
/v1.1/{project_id}/images

List images

Lists all images registered in the registry.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

tags

body

array

List of tags to add.

Response Parameters

Name

In

Type

Description

status

body

string

The status of the cluster.

username

body

string

The name of the user for the image.

updated

body

string

The date and time when the image was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

For example, 2015-08-27T09:49:58-05:00.

The ±hh:mm value, if included, is the time zone as an offset from UTC.

description

body

string

The description of the image.

created

body

string

The date and time when the image was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

For example, 2015-08-27T09:49:58-05:00.

The ±hh:mm value, if included, is the time zone as an offset from UTC.

image

body

object

A set of key and value pairs that contain image properties.

tags

body

array

List of tags to add.

minDisk

body

integer

The minimum disk space, in GB.

name

body

string

The name of the operating system image.

images

body

array

The list of images and their properties.

progress

body

integer

A progress indicator, as a percentage value, for the amount of image content that has been processed.

minRam

body

integer

The minimum amount of random access memory (RAM) for the image, in GB.

id

body

string

The UUID of the image.

metadata

body

object

A set of key and value pairs that contain image metadata.

Response Example

{
    "images": [
        {
            "name": "ubuntu-vanilla-2.7.1",
            "id": "4118a476-dfdc-4b0e-8d5c-463cba08e9ae",
            "created": "2015-08-06T08:17:14Z",
            "metadata": {
                "_sahara_tag_2.7.1": true,
                "_sahara_username": "ubuntu",
                "_sahara_tag_vanilla": true
            },
            "username": "ubuntu",
            "progress": 100,
            "OS-EXT-IMG-SIZE:size": 998716928,
            "status": "ACTIVE",
            "minDisk": 0,
            "tags": [
                "vanilla",
                "2.7.1"
            ],
            "updated": "2015-09-04T09:35:09Z",
            "minRam": 0,
            "description": null
        },
        {
            "name": "cdh-latest",
            "id": "ff74035b-9da7-4edf-981d-57f270ed337d",
            "created": "2015-09-04T11:56:44Z",
            "metadata": {
                "_sahara_username": "ubuntu",
                "_sahara_tag_5.4.0": true,
                "_sahara_tag_cdh": true
            },
            "username": "ubuntu",
            "progress": 100,
            "OS-EXT-IMG-SIZE:size": 3281453056,
            "status": "ACTIVE",
            "minDisk": 0,
            "tags": [
                "5.4.0",
                "cdh"
            ],
            "updated": "2015-09-04T12:46:42Z",
            "minRam": 0,
            "description": null
        }
    ]
}

Job binaries

Job binary objects represent data processing applications and libraries that are stored in either the internal database or the Object Storage service.

GET
/v1.1/{project_id}/job-binaries

List job binaries

Lists the available job binaries.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

limit (Optional)

path

integer

Maximum number of objects in response data.

marker (Optional)

path

string

ID of the last element on the list which won’t be in response.

sort_by (Optional)

path

string

The field for sorting job binaries. this parameter accepts the following values: id, name, created_at, updated_at. Also this values can started with - prefix for descending sort. For example: -name.

Response Parameters

Name

In

Type

Description

markers (Optional)

body

object

The markers of previous and following pages of data. This field exists only if limit is passed to request.

prev (Optional)

body

string

The marker of previous page. May be null if previous page is first or if current page is first.

next (Optional)

body

string

The marker of next page of list data.

description

body

string

The description of the job binary object.

url

body

string

The url of the data source object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

is_protected

body

boolean

If set to true, the object is protected.

is_public

body

boolean

If set to true, the object is public.

binaries

body

array

The list of job binary internal objects.

id

path

string

The UUID of the job binary.

name

body

string

The name of the object.

GET
/v1.1/{project_id}/job-binaries?sort_by=created_at

Response Example

{
    "binaries": [
        {
            "is_public": false,
            "description": "",
            "url": "internal-db://d2498cbf-4589-484a-a814-81436c18beb3",
            "tenant_id": "11587919cc534bcbb1027a161c82cf58",
            "created_at": "2013-10-15 12:36:59.375060",
            "updated_at": null,
            "id": "84248975-3c82-4206-a58d-6e7fb3a563fd",
            "name": "example.pig",
            "is_protected": false
        },
        {
            "is_public": false,
            "description": "",
            "url": "internal-db://22f1d87a-23c8-483e-a0dd-cb4a16dde5f9",
            "tenant_id": "11587919cc534bcbb1027a161c82cf58",
            "created_at": "2013-10-15 12:43:52.265899",
            "updated_at": null,
            "id": "508fc62d-1d58-4412-b603-bdab307bb926",
            "name": "udf.jar",
            "is_protected": false
        },
        {
            "is_public": false,
            "description": "",
            "url": "swift://container/jar-example.jar",
            "tenant_id": "11587919cc534bcbb1027a161c82cf58",
            "created_at": "2013-10-15 14:25:04.970513",
            "updated_at": null,
            "id": "a716a9cd-9add-4b12-b1b6-cdb71aaef350",
            "name": "jar-example.jar",
            "is_protected": false
        }
    ]
}
POST
/v1.1/{project_id}/job-binaries

Create job binary

Creates a job binary.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

Request Example

{
    "url": "swift://container/jar-example.jar",
    "name": "jar-example.jar",
    "description": "This is a job binary",
    "extra": {
        "password": "swordfish",
        "user": "admin"
    }
}

Response Parameters

Name

In

Type

Description

description

body

string

The description of the job binary object.

url

body

string

The url of the data source object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

is_protected

body

boolean

If set to true, the object is protected.

is_public

body

boolean

If set to true, the object is public.

id

path

string

The UUID of the job binary.

name

body

string

The name of the object.

GET
/v1.1/{project_id}/job-binaries/{job_binary_id}

Show job binary details

Shows details for a job binary.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_binary_id

path

string

The UUID of the job binary.

Response Parameters

Name

In

Type

Description

description

body

string

The description of the job binary object.

url

body

string

The url of the data source object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

is_protected

body

boolean

If set to true, the object is protected.

is_public

body

boolean

If set to true, the object is public.

id

path

string

The UUID of the job binary.

name

body

string

The name of the object.

Response Example

{
    "job_binary": {
        "is_public": false,
        "description": "an example jar file",
        "url": "swift://container/jar-example.jar",
        "tenant_id": "11587919cc534bcbb1027a161c82cf58",
        "created_at": "2013-10-15 14:25:04.970513",
        "updated_at": null,
        "id": "a716a9cd-9add-4b12-b1b6-cdb71aaef350",
        "name": "jar-example.jar",
        "is_protected": false
    }
}
DELETE
/v1.1/{project_id}/job-binaries/{job_binary_id}

Delete job binary

Deletes a job binary.

Normal response codes:204

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_binary_id

path

string

The UUID of the job binary.

PUT
/v1.1/{project_id}/job-binaries/{job_binary_id}

Update job binary

Updates a job binary.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_binary_id

path

string

The UUID of the job binary.

Request Example

{
    "url": "swift://container/new-jar-example.jar",
    "name": "new-jar-example.jar",
    "description": "This is a new job binary"
}
GET
/v1.1/{project_id}/job-binaries/{job_binary_id}/data

Show job binary data

Shows data for a job binary.

The response body shows the job binary raw data and the response headers show the data length.

Example response:

HTTP/1.1 200 OK
Connection: keep-alive
Content-Length: 161
Content-Type: text/html; charset=utf-8
Date: Sat, 28 Mar 2016 02:42:48 GMT
A = load '$INPUT' using PigStorage(':') as (fruit: chararray);
B = foreach A generate com.hadoopbook.pig.Trim(fruit);
store B into '$OUTPUT' USING PigStorage();

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_binary_id

path

string

The UUID of the job binary.

Response Parameters

Name

In

Type

Description

Content-Length

header

string

The length of the data, in bytes.

Response Example

A = load '$INPUT' using PigStorage(':') as (fruit: chararray);
B = foreach A generate com.hadoopbook.pig.Trim(fruit);
store B into '$OUTPUT' USING PigStorage();

Job executions

A job execution object represents a Hadoop job that runs on a cluster. A job execution polls the status of a running job and reports it to the user. Also a user can cancel a running job.

GET
/v1.1/{project_id}/job-executions/{job_execution_id}/refresh-status

Refresh job execution status

Refreshes the status of and shows information for a job execution.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_execution_id

path

string

The UUID of the job execution.

Response Parameters

Name

In

Type

Description

info

body

object

A set of key and value pairs that contain cluster information.

output_id

body

string

The UUID of the output of job execution object.

start_time

body

string

The date and time when the job started.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

job_id

body

string

The UUID of the job object.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

args

body

array

The list of arguments.

data_source_urls

body

object

The data source URLs.

return_code

body

string

The code returned after job has executed.

oozie_job_id

body

string

The UUID of the oozie_job.

is_protected

body

boolean

If set to true, the job execution object is protected.

cluster_id

body

string

The UUID of the cluster.

end_time

body

string

The end date and time of the job execution.

The date and time when the job completed execution.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

params

body

object

The mappings of values to the parameters.

is_public

body

boolean

If set to true, the job execution object is public.

input_id

body

string

The UUID of the input.

configs

body

object

The mappings of the job tasks.

job_execution

body

object

A set of key and value pairs that contain the job object.

id

body

string

The UUID of the job execution object.

Response Example

{
    "job_execution": {
        "job_configs": {
            "configs": {
                "mapred.reduce.tasks": "1",
                "mapred.map.tasks": "1"
            },
            "args": [
                "arg1",
                "arg2"
            ],
            "params": {
                "param2": "value2",
                "param1": "value1"
            }
        },
        "is_protected": false,
        "input_id": "3e1bc8e6-8c69-4749-8e52-90d9341d15bc",
        "job_id": "310b0fc6-e1db-408e-8798-312e7500f3ac",
        "cluster_id": "811e1134-666f-4c48-bc92-afb5b10c9d8c",
        "created_at": "2015-09-15T09:49:24",
        "end_time": "2015-09-15T12:50:46",
        "output_id": "52146b52-6540-4aac-a024-fee253cf52a9",
        "is_public": false,
        "updated_at": "2015-09-15T09:50:46",
        "return_code": null,
        "data_source_urls": {
            "3e1bc8e6-8c69-4749-8e52-90d9341d15bc": "swift://ap-cont/input",
            "52146b52-6540-4aac-a024-fee253cf52a9": "swift://ap-cont/output"
        },
        "tenant_id": "808d5032ea0446889097723bfc8e919d",
        "start_time": "2015-09-15T12:49:43",
        "id": "20da9edb-12ce-4b45-a473-41baeefef997",
        "oozie_job_id": "0000001-150915094349962-oozie-hado-W",
        "info": {
            "user": "hadoop",
            "actions": [
                {
                    "name": ":start:",
                    "trackerUri": "-",
                    "externalStatus": "OK",
                    "status": "OK",
                    "externalId": "-",
                    "transition": "job-node",
                    "data": null,
                    "endTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                    "errorCode": null,
                    "id": "0000001-150915094349962-oozie-hado-W@:start:",
                    "consoleUrl": "-",
                    "errorMessage": null,
                    "toString": "Action name[:start:] status[OK]",
                    "stats": null,
                    "type": ":START:",
                    "retries": 0,
                    "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                    "externalChildIDs": null,
                    "cred": "null"
                },
                {
                    "name": "job-node",
                    "trackerUri": "http://172.18.168.119:8032",
                    "externalStatus": "FAILED/KILLED",
                    "status": "ERROR",
                    "externalId": "job_1442310173665_0002",
                    "transition": "fail",
                    "data": null,
                    "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                    "errorCode": "JA018",
                    "id": "0000001-150915094349962-oozie-hado-W@job-node",
                    "consoleUrl": "http://ap-cluster-all-0:8088/proxy/application_1442310173665_0002/",
                    "errorMessage": "Main class [org.apache.oozie.action.hadoop.PigMain], exit code [2]",
                    "toString": "Action name[job-node] status[ERROR]",
                    "stats": null,
                    "type": "pig",
                    "retries": 0,
                    "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                    "externalChildIDs": null,
                    "cred": "null"
                },
                {
                    "name": "fail",
                    "trackerUri": "-",
                    "externalStatus": "OK",
                    "status": "OK",
                    "externalId": "-",
                    "transition": null,
                    "data": null,
                    "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                    "errorCode": "E0729",
                    "id": "0000001-150915094349962-oozie-hado-W@fail",
                    "consoleUrl": "-",
                    "errorMessage": "Workflow failed, error message[Main class [org.apache.oozie.action.hadoop.PigMain], exit code [2]]",
                    "toString": "Action name[fail] status[OK]",
                    "stats": null,
                    "type": ":KILL:",
                    "retries": 0,
                    "startTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                    "externalChildIDs": null,
                    "cred": "null"
                }
            ],
            "createdTime": "Tue, 15 Sep 2015 09:49:58 GMT",
            "status": "KILLED",
            "group": null,
            "externalId": null,
            "acl": null,
            "run": 0,
            "appName": "job-wf",
            "parentId": null,
            "conf": "<configuration>\r\n  <property>\r\n    <name>user.name</name>\r\n    <value>hadoop</value>\r\n  </property>\r\n  <property>\r\n    <name>oozie.use.system.libpath</name>\r\n    <value>true</value>\r\n  </property>\r\n  <property>\r\n    <name>mapreduce.job.user.name</name>\r\n    <value>hadoop</value>\r\n  </property>\r\n  <property>\r\n    <name>nameNode</name>\r\n    <value>hdfs://ap-cluster-all-0:9000</value>\r\n  </property>\r\n  <property>\r\n    <name>jobTracker</name>\r\n    <value>http://172.18.168.119:8032</value>\r\n  </property>\r\n  <property>\r\n    <name>oozie.wf.application.path</name>\r\n    <value>hdfs://ap-cluster-all-0:9000/user/hadoop/pig-job-example/3038025d-9974-4993-a778-26a074cdfb8d/workflow.xml</value>\r\n  </property>\r\n</configuration>",
            "id": "0000001-150915094349962-oozie-hado-W",
            "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
            "appPath": "hdfs://ap-cluster-all-0:9000/user/hadoop/pig-job-example/3038025d-9974-4993-a778-26a074cdfb8d/workflow.xml",
            "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
            "toString": "Workflow id[0000001-150915094349962-oozie-hado-W] status[KILLED]",
            "lastModTime": "Tue, 15 Sep 2015 09:50:17 GMT",
            "consoleUrl": "http://ap-cluster-all-0.novalocal:11000/oozie?job=0000001-150915094349962-oozie-hado-W"
        }
    }
}
GET
/v1.1/{project_id}/job-executions

List job executions

Lists available job executions.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

limit (Optional)

path

integer

Maximum number of objects in response data.

marker (Optional)

path

string

ID of the last element on the list which won’t be in response.

sort_by (Optional)

path

string

The field for sorting job executions. this parameter accepts the following values: id, job_template, cluster, status. Also this values can started with - prefix for descending sort. For example: -cluster.

Response Parameters

Name

In

Type

Description

markers (Optional)

body

object

The markers of previous and following pages of data. This field exists only if limit is passed to request.

prev (Optional)

body

string

The marker of previous page. May be null if previous page is first or if current page is first.

next (Optional)

body

string

The marker of next page of list data.

info

body

object

A set of key and value pairs that contain cluster information.

output_id

body

string

The UUID of the output of job execution object.

start_time

body

string

The date and time when the job started.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

job_id

body

string

The UUID of the job object.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

args

body

array

The list of arguments.

data_source_urls

body

object

The data source URLs.

return_code

body

string

The code returned after job has executed.

oozie_job_id

body

string

The UUID of the oozie_job.

is_protected

body

boolean

If set to true, the job execution object is protected.

cluster_id

body

string

The UUID of the cluster.

end_time

body

string

The end date and time of the job execution.

The date and time when the job completed execution.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

params

body

object

The mappings of values to the parameters.

is_public

body

boolean

If set to true, the job execution object is public.

input_id

body

string

The UUID of the input.

configs

body

object

The mappings of the job tasks.

job_execution

body

object

A set of key and value pairs that contain the job object.

id

body

string

The UUID of the job execution object.

job_executions

body

array

The list of job execution objects.

/v1.1/{project_id}/job-executions

Response Example

{
    "job_executions": [
        {
            "job_configs": {
                "configs": {
                    "mapred.reduce.tasks": "1",
                    "mapred.map.tasks": "1"
                },
                "args": [
                    "arg1",
                    "arg2"
                ],
                "params": {
                    "param2": "value2",
                    "param1": "value1"
                }
            },
            "is_protected": false,
            "input_id": "3e1bc8e6-8c69-4749-8e52-90d9341d15bc",
            "job_id": "310b0fc6-e1db-408e-8798-312e7500f3ac",
            "cluster_id": "811e1134-666f-4c48-bc92-afb5b10c9d8c",
            "created_at": "2015-09-15T09:49:24",
            "end_time": "2015-09-15T12:50:46",
            "output_id": "52146b52-6540-4aac-a024-fee253cf52a9",
            "is_public": false,
            "updated_at": "2015-09-15T09:50:46",
            "return_code": null,
            "data_source_urls": {
                "3e1bc8e6-8c69-4749-8e52-90d9341d15bc": "swift://ap-cont/input",
                "52146b52-6540-4aac-a024-fee253cf52a9": "swift://ap-cont/output"
            },
            "tenant_id": "808d5032ea0446889097723bfc8e919d",
            "start_time": "2015-09-15T12:49:43",
            "id": "20da9edb-12ce-4b45-a473-41baeefef997",
            "oozie_job_id": "0000001-150915094349962-oozie-hado-W",
            "info": {
                "user": "hadoop",
                "actions": [
                    {
                        "name": ":start:",
                        "trackerUri": "-",
                        "externalStatus": "OK",
                        "status": "OK",
                        "externalId": "-",
                        "transition": "job-node",
                        "data": null,
                        "endTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                        "errorCode": null,
                        "id": "0000001-150915094349962-oozie-hado-W@:start:",
                        "consoleUrl": "-",
                        "errorMessage": null,
                        "toString": "Action name[:start:] status[OK]",
                        "stats": null,
                        "type": ":START:",
                        "retries": 0,
                        "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                        "externalChildIDs": null,
                        "cred": "null"
                    },
                    {
                        "name": "job-node",
                        "trackerUri": "http://172.18.168.119:8032",
                        "externalStatus": "FAILED/KILLED",
                        "status": "ERROR",
                        "externalId": "job_1442310173665_0002",
                        "transition": "fail",
                        "data": null,
                        "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                        "errorCode": "JA018",
                        "id": "0000001-150915094349962-oozie-hado-W@job-node",
                        "consoleUrl": "http://ap-cluster-all-0:8088/proxy/application_1442310173665_0002/",
                        "errorMessage": "Main class [org.apache.oozie.action.hadoop.PigMain], exit code [2]",
                        "toString": "Action name[job-node] status[ERROR]",
                        "stats": null,
                        "type": "pig",
                        "retries": 0,
                        "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                        "externalChildIDs": null,
                        "cred": "null"
                    },
                    {
                        "name": "fail",
                        "trackerUri": "-",
                        "externalStatus": "OK",
                        "status": "OK",
                        "externalId": "-",
                        "transition": null,
                        "data": null,
                        "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                        "errorCode": "E0729",
                        "id": "0000001-150915094349962-oozie-hado-W@fail",
                        "consoleUrl": "-",
                        "errorMessage": "Workflow failed, error message[Main class [org.apache.oozie.action.hadoop.PigMain], exit code [2]]",
                        "toString": "Action name[fail] status[OK]",
                        "stats": null,
                        "type": ":KILL:",
                        "retries": 0,
                        "startTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                        "externalChildIDs": null,
                        "cred": "null"
                    }
                ],
                "createdTime": "Tue, 15 Sep 2015 09:49:58 GMT",
                "status": "KILLED",
                "group": null,
                "externalId": null,
                "acl": null,
                "run": 0,
                "appName": "job-wf",
                "parentId": null,
                "conf": "<configuration>\r\n  <property>\r\n    <name>user.name</name>\r\n    <value>hadoop</value>\r\n  </property>\r\n  <property>\r\n    <name>oozie.use.system.libpath</name>\r\n    <value>true</value>\r\n  </property>\r\n  <property>\r\n    <name>mapreduce.job.user.name</name>\r\n    <value>hadoop</value>\r\n  </property>\r\n  <property>\r\n    <name>nameNode</name>\r\n    <value>hdfs://ap-cluster-all-0:9000</value>\r\n  </property>\r\n  <property>\r\n    <name>jobTracker</name>\r\n    <value>http://172.18.168.119:8032</value>\r\n  </property>\r\n  <property>\r\n    <name>oozie.wf.application.path</name>\r\n    <value>hdfs://ap-cluster-all-0:9000/user/hadoop/pig-job-example/3038025d-9974-4993-a778-26a074cdfb8d/workflow.xml</value>\r\n  </property>\r\n</configuration>",
                "id": "0000001-150915094349962-oozie-hado-W",
                "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                "appPath": "hdfs://ap-cluster-all-0:9000/user/hadoop/pig-job-example/3038025d-9974-4993-a778-26a074cdfb8d/workflow.xml",
                "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                "toString": "Workflow id[0000001-150915094349962-oozie-hado-W] status[KILLED]",
                "lastModTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                "consoleUrl": "http://ap-cluster-all-0.novalocal:11000/oozie?job=0000001-150915094349962-oozie-hado-W"
            }
        }
    ]
}
GET
/v1.1/{project_id}/job-executions/{job_execution_id}

Show job execution details

Shows details for a job execution, by ID.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_execution_id

path

string

The UUID of the job execution.

Response Parameters

Name

In

Type

Description

info

body

object

A set of key and value pairs that contain cluster information.

output_id

body

string

The UUID of the output of job execution object.

start_time

body

string

The date and time when the job started.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

job_id

body

string

The UUID of the job object.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

args

body

array

The list of arguments.

data_source_urls

body

object

The data source URLs.

return_code

body

string

The code returned after job has executed.

oozie_job_id

body

string

The UUID of the oozie_job.

is_protected

body

boolean

If set to true, the job execution object is protected.

cluster_id

body

string

The UUID of the cluster.

end_time

body

string

The end date and time of the job execution.

The date and time when the job completed execution.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

params

body

object

The mappings of values to the parameters.

is_public

body

boolean

If set to true, the job execution object is public.

input_id

body

string

The UUID of the input.

configs

body

object

The mappings of the job tasks.

job_execution

body

object

A set of key and value pairs that contain the job object.

id

body

string

The UUID of the job execution object.

Response Example

{
    "job_execution": {
        "job_configs": {
            "configs": {
                "mapred.reduce.tasks": "1",
                "mapred.map.tasks": "1"
            },
            "args": [
                "arg1",
                "arg2"
            ],
            "params": {
                "param2": "value2",
                "param1": "value1"
            }
        },
        "is_protected": false,
        "input_id": "3e1bc8e6-8c69-4749-8e52-90d9341d15bc",
        "job_id": "310b0fc6-e1db-408e-8798-312e7500f3ac",
        "cluster_id": "811e1134-666f-4c48-bc92-afb5b10c9d8c",
        "created_at": "2015-09-15T09:49:24",
        "end_time": "2015-09-15T12:50:46",
        "output_id": "52146b52-6540-4aac-a024-fee253cf52a9",
        "is_public": false,
        "updated_at": "2015-09-15T09:50:46",
        "return_code": null,
        "data_source_urls": {
            "3e1bc8e6-8c69-4749-8e52-90d9341d15bc": "swift://ap-cont/input",
            "52146b52-6540-4aac-a024-fee253cf52a9": "swift://ap-cont/output"
        },
        "tenant_id": "808d5032ea0446889097723bfc8e919d",
        "start_time": "2015-09-15T12:49:43",
        "id": "20da9edb-12ce-4b45-a473-41baeefef997",
        "oozie_job_id": "0000001-150915094349962-oozie-hado-W",
        "info": {
            "user": "hadoop",
            "actions": [
                {
                    "name": ":start:",
                    "trackerUri": "-",
                    "externalStatus": "OK",
                    "status": "OK",
                    "externalId": "-",
                    "transition": "job-node",
                    "data": null,
                    "endTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                    "errorCode": null,
                    "id": "0000001-150915094349962-oozie-hado-W@:start:",
                    "consoleUrl": "-",
                    "errorMessage": null,
                    "toString": "Action name[:start:] status[OK]",
                    "stats": null,
                    "type": ":START:",
                    "retries": 0,
                    "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                    "externalChildIDs": null,
                    "cred": "null"
                },
                {
                    "name": "job-node",
                    "trackerUri": "http://172.18.168.119:8032",
                    "externalStatus": "FAILED/KILLED",
                    "status": "ERROR",
                    "externalId": "job_1442310173665_0002",
                    "transition": "fail",
                    "data": null,
                    "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                    "errorCode": "JA018",
                    "id": "0000001-150915094349962-oozie-hado-W@job-node",
                    "consoleUrl": "http://ap-cluster-all-0:8088/proxy/application_1442310173665_0002/",
                    "errorMessage": "Main class [org.apache.oozie.action.hadoop.PigMain], exit code [2]",
                    "toString": "Action name[job-node] status[ERROR]",
                    "stats": null,
                    "type": "pig",
                    "retries": 0,
                    "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                    "externalChildIDs": null,
                    "cred": "null"
                },
                {
                    "name": "fail",
                    "trackerUri": "-",
                    "externalStatus": "OK",
                    "status": "OK",
                    "externalId": "-",
                    "transition": null,
                    "data": null,
                    "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                    "errorCode": "E0729",
                    "id": "0000001-150915094349962-oozie-hado-W@fail",
                    "consoleUrl": "-",
                    "errorMessage": "Workflow failed, error message[Main class [org.apache.oozie.action.hadoop.PigMain], exit code [2]]",
                    "toString": "Action name[fail] status[OK]",
                    "stats": null,
                    "type": ":KILL:",
                    "retries": 0,
                    "startTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                    "externalChildIDs": null,
                    "cred": "null"
                }
            ],
            "createdTime": "Tue, 15 Sep 2015 09:49:58 GMT",
            "status": "KILLED",
            "group": null,
            "externalId": null,
            "acl": null,
            "run": 0,
            "appName": "job-wf",
            "parentId": null,
            "conf": "<configuration>\r\n  <property>\r\n    <name>user.name</name>\r\n    <value>hadoop</value>\r\n  </property>\r\n  <property>\r\n    <name>oozie.use.system.libpath</name>\r\n    <value>true</value>\r\n  </property>\r\n  <property>\r\n    <name>mapreduce.job.user.name</name>\r\n    <value>hadoop</value>\r\n  </property>\r\n  <property>\r\n    <name>nameNode</name>\r\n    <value>hdfs://ap-cluster-all-0:9000</value>\r\n  </property>\r\n  <property>\r\n    <name>jobTracker</name>\r\n    <value>http://172.18.168.119:8032</value>\r\n  </property>\r\n  <property>\r\n    <name>oozie.wf.application.path</name>\r\n    <value>hdfs://ap-cluster-all-0:9000/user/hadoop/pig-job-example/3038025d-9974-4993-a778-26a074cdfb8d/workflow.xml</value>\r\n  </property>\r\n</configuration>",
            "id": "0000001-150915094349962-oozie-hado-W",
            "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
            "appPath": "hdfs://ap-cluster-all-0:9000/user/hadoop/pig-job-example/3038025d-9974-4993-a778-26a074cdfb8d/workflow.xml",
            "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
            "toString": "Workflow id[0000001-150915094349962-oozie-hado-W] status[KILLED]",
            "lastModTime": "Tue, 15 Sep 2015 09:50:17 GMT",
            "consoleUrl": "http://ap-cluster-all-0.novalocal:11000/oozie?job=0000001-150915094349962-oozie-hado-W"
        }
    }
}
DELETE
/v1.1/{project_id}/job-executions/{job_execution_id}

Delete job execution

Deletes a job execution.

Normal response codes:204

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_execution_id

path

string

The UUID of the job execution.

PATCH
/v1.1/{project_id}/job-executions/{job_execution_id}

Update job execution

Updates a job execution.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_execution_id

path

string

The UUID of the job execution.

Request Example

{
    "is_public": true
}

Response Parameters

Name

In

Type

Description

info

body

object

A set of key and value pairs that contain cluster information.

output_id

body

string

The UUID of the output of job execution object.

start_time

body

string

The date and time when the job started.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

job_id

body

string

The UUID of the job object.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

args

body

array

The list of arguments.

data_source_urls

body

object

The data source URLs.

return_code

body

string

The code returned after job has executed.

oozie_job_id

body

string

The UUID of the oozie_job.

is_protected

body

boolean

If set to true, the job execution object is protected.

cluster_id

body

string

The UUID of the cluster.

end_time

body

string

The end date and time of the job execution.

The date and time when the job completed execution.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

params

body

object

The mappings of values to the parameters.

is_public

body

boolean

If set to true, the job execution object is public.

input_id

body

string

The UUID of the input.

configs

body

object

The mappings of the job tasks.

job_execution

body

object

A set of key and value pairs that contain the job object.

id

body

string

The UUID of the job execution object.

GET
/v1.1/{project_id}/job-executions/{job_execution_id}/cancel

Cancel job execution

Cancels a job execution.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_execution_id

path

string

The UUID of the job execution.

Response Parameters

Name

In

Type

Description

info

body

object

A set of key and value pairs that contain cluster information.

output_id

body

string

The UUID of the output of job execution object.

start_time

body

string

The date and time when the job started.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

job_id

body

string

The UUID of the job object.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

args

body

array

The list of arguments.

data_source_urls

body

object

The data source URLs.

return_code

body

string

The code returned after job has executed.

oozie_job_id

body

string

The UUID of the oozie_job.

is_protected

body

boolean

If set to true, the job execution object is protected.

cluster_id

body

string

The UUID of the cluster.

end_time

body

string

The end date and time of the job execution.

The date and time when the job completed execution.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

params

body

object

The mappings of values to the parameters.

is_public

body

boolean

If set to true, the job execution object is public.

input_id

body

string

The UUID of the input.

configs

body

object

The mappings of the job tasks.

job_execution

body

object

A set of key and value pairs that contain the job object.

id

body

string

The UUID of the job execution object.

Response Example

{
    "job_execution": {
        "job_configs": {
            "configs": {
                "mapred.reduce.tasks": "1",
                "mapred.map.tasks": "1"
            },
            "args": [
                "arg1",
                "arg2"
            ],
            "params": {
                "param2": "value2",
                "param1": "value1"
            }
        },
        "is_protected": false,
        "input_id": "3e1bc8e6-8c69-4749-8e52-90d9341d15bc",
        "job_id": "310b0fc6-e1db-408e-8798-312e7500f3ac",
        "cluster_id": "811e1134-666f-4c48-bc92-afb5b10c9d8c",
        "created_at": "2015-09-15T09:49:24",
        "end_time": "2015-09-15T12:50:46",
        "output_id": "52146b52-6540-4aac-a024-fee253cf52a9",
        "is_public": false,
        "updated_at": "2015-09-15T09:50:46",
        "return_code": null,
        "data_source_urls": {
            "3e1bc8e6-8c69-4749-8e52-90d9341d15bc": "swift://ap-cont/input",
            "52146b52-6540-4aac-a024-fee253cf52a9": "swift://ap-cont/output"
        },
        "tenant_id": "808d5032ea0446889097723bfc8e919d",
        "start_time": "2015-09-15T12:49:43",
        "id": "20da9edb-12ce-4b45-a473-41baeefef997",
        "oozie_job_id": "0000001-150915094349962-oozie-hado-W",
        "info": {
            "user": "hadoop",
            "actions": [
                {
                    "name": ":start:",
                    "trackerUri": "-",
                    "externalStatus": "OK",
                    "status": "OK",
                    "externalId": "-",
                    "transition": "job-node",
                    "data": null,
                    "endTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                    "errorCode": null,
                    "id": "0000001-150915094349962-oozie-hado-W@:start:",
                    "consoleUrl": "-",
                    "errorMessage": null,
                    "toString": "Action name[:start:] status[OK]",
                    "stats": null,
                    "type": ":START:",
                    "retries": 0,
                    "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                    "externalChildIDs": null,
                    "cred": "null"
                },
                {
                    "name": "job-node",
                    "trackerUri": "http://172.18.168.119:8032",
                    "externalStatus": "FAILED/KILLED",
                    "status": "ERROR",
                    "externalId": "job_1442310173665_0002",
                    "transition": "fail",
                    "data": null,
                    "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                    "errorCode": "JA018",
                    "id": "0000001-150915094349962-oozie-hado-W@job-node",
                    "consoleUrl": "http://ap-cluster-all-0:8088/proxy/application_1442310173665_0002/",
                    "errorMessage": "Main class [org.apache.oozie.action.hadoop.PigMain], exit code [2]",
                    "toString": "Action name[job-node] status[ERROR]",
                    "stats": null,
                    "type": "pig",
                    "retries": 0,
                    "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
                    "externalChildIDs": null,
                    "cred": "null"
                },
                {
                    "name": "fail",
                    "trackerUri": "-",
                    "externalStatus": "OK",
                    "status": "OK",
                    "externalId": "-",
                    "transition": null,
                    "data": null,
                    "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                    "errorCode": "E0729",
                    "id": "0000001-150915094349962-oozie-hado-W@fail",
                    "consoleUrl": "-",
                    "errorMessage": "Workflow failed, error message[Main class [org.apache.oozie.action.hadoop.PigMain], exit code [2]]",
                    "toString": "Action name[fail] status[OK]",
                    "stats": null,
                    "type": ":KILL:",
                    "retries": 0,
                    "startTime": "Tue, 15 Sep 2015 09:50:17 GMT",
                    "externalChildIDs": null,
                    "cred": "null"
                }
            ],
            "createdTime": "Tue, 15 Sep 2015 09:49:58 GMT",
            "status": "KILLED",
            "group": null,
            "externalId": null,
            "acl": null,
            "run": 0,
            "appName": "job-wf",
            "parentId": null,
            "conf": "<configuration>\r\n  <property>\r\n    <name>user.name</name>\r\n    <value>hadoop</value>\r\n  </property>\r\n  <property>\r\n    <name>oozie.use.system.libpath</name>\r\n    <value>true</value>\r\n  </property>\r\n  <property>\r\n    <name>mapreduce.job.user.name</name>\r\n    <value>hadoop</value>\r\n  </property>\r\n  <property>\r\n    <name>nameNode</name>\r\n    <value>hdfs://ap-cluster-all-0:9000</value>\r\n  </property>\r\n  <property>\r\n    <name>jobTracker</name>\r\n    <value>http://172.18.168.119:8032</value>\r\n  </property>\r\n  <property>\r\n    <name>oozie.wf.application.path</name>\r\n    <value>hdfs://ap-cluster-all-0:9000/user/hadoop/pig-job-example/3038025d-9974-4993-a778-26a074cdfb8d/workflow.xml</value>\r\n  </property>\r\n</configuration>",
            "id": "0000001-150915094349962-oozie-hado-W",
            "startTime": "Tue, 15 Sep 2015 09:49:59 GMT",
            "appPath": "hdfs://ap-cluster-all-0:9000/user/hadoop/pig-job-example/3038025d-9974-4993-a778-26a074cdfb8d/workflow.xml",
            "endTime": "Tue, 15 Sep 2015 09:50:17 GMT",
            "toString": "Workflow id[0000001-150915094349962-oozie-hado-W] status[KILLED]",
            "lastModTime": "Tue, 15 Sep 2015 09:50:17 GMT",
            "consoleUrl": "http://ap-cluster-all-0.novalocal:11000/oozie?job=0000001-150915094349962-oozie-hado-W"
        }
    }
}

Job types

Each plugin that supports EDP also supports specific job types. Different versions of a plugin might actually support different job types. Configuration options vary by plugin, version, and job type.

The job types provide information about which plugins support which job types and how to configure the job types.

GET
/v1.1/{project_id}/job-types

List job types

Lists all job types.

You can use query parameters to filter the response.

Normal response codes: 200 Error response codes:

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

plugin (Optional)

path

string

Filters the response by a plugin name.

version

path

string

Filters the response by a plugin version.

type

body

string

The type of the data source object.

hints (Optional)

path

boolean

Includes configuration hints in the response.

Response Parameters

Name

In

Type

Description

versions

body

array

The list of plugin versions.

title

body

string

The title of the plugin.

description

body

string

The full description of the plugin.

job_types

body

array

The list of plugins and their job types.

name

body

string

The name of the plugin.

Response Example

{
    "job_types": [
        {
            "plugins": [
                {
                    "description": "The Apache Vanilla plugin provides the ability to launch upstream Vanilla Apache Hadoop cluster without any management consoles. It can also deploy the Oozie component.",
                    "versions": {
                        "1.2.1": {},
                        "2.6.0": {}
                    },
                    "title": "Vanilla Apache Hadoop",
                    "name": "vanilla"
                },
                {
                    "description": "The Hortonworks Sahara plugin automates the deployment of the Hortonworks Data Platform (HDP) on OpenStack.",
                    "versions": {
                        "1.3.2": {},
                        "2.0.6": {}
                    },
                    "title": "Hortonworks Data Platform",
                    "name": "hdp"
                },
                {
                    "description": "The Cloudera Sahara plugin provides the ability to launch the Cloudera distribution of Apache Hadoop (CDH) with Cloudera Manager management console.",
                    "versions": {
                        "5": {},
                        "5.3.0": {}
                    },
                    "title": "Cloudera Plugin",
                    "name": "cdh"
                }
            ],
            "name": "Hive"
        },
        {
            "plugins": [
                {
                    "description": "The Apache Vanilla plugin provides the ability to launch upstream Vanilla Apache Hadoop cluster without any management consoles. It can also deploy the Oozie component.",
                    "versions": {
                        "1.2.1": {},
                        "2.6.0": {}
                    },
                    "title": "Vanilla Apache Hadoop",
                    "name": "vanilla"
                },
                {
                    "description": "The Hortonworks Sahara plugin automates the deployment of the Hortonworks Data Platform (HDP) on OpenStack.",
                    "versions": {
                        "1.3.2": {},
                        "2.0.6": {}
                    },
                    "title": "Hortonworks Data Platform",
                    "name": "hdp"
                },
                {
                    "description": "The Cloudera Sahara plugin provides the ability to launch the Cloudera distribution of Apache Hadoop (CDH) with Cloudera Manager management console.",
                    "versions": {
                        "5": {},
                        "5.3.0": {}
                    },
                    "title": "Cloudera Plugin",
                    "name": "cdh"
                }
            ],
            "name": "Java"
        },
        {
            "plugins": [
                {
                    "description": "The Apache Vanilla plugin provides the ability to launch upstream Vanilla Apache Hadoop cluster without any management consoles. It can also deploy the Oozie component.",
                    "versions": {
                        "1.2.1": {},
                        "2.6.0": {}
                    },
                    "title": "Vanilla Apache Hadoop",
                    "name": "vanilla"
                },
                {
                    "description": "The Hortonworks Sahara plugin automates the deployment of the Hortonworks Data Platform (HDP) on OpenStack.",
                    "versions": {
                        "1.3.2": {},
                        "2.0.6": {}
                    },
                    "title": "Hortonworks Data Platform",
                    "name": "hdp"
                },
                {
                    "description": "The Cloudera Sahara plugin provides the ability to launch the Cloudera distribution of Apache Hadoop (CDH) with Cloudera Manager management console.",
                    "versions": {
                        "5": {},
                        "5.3.0": {}
                    },
                    "title": "Cloudera Plugin",
                    "name": "cdh"
                }
            ],
            "name": "MapReduce"
        },
        {
            "plugins": [
                {
                    "description": "The Apache Vanilla plugin provides the ability to launch upstream Vanilla Apache Hadoop cluster without any management consoles. It can also deploy the Oozie component.",
                    "versions": {
                        "1.2.1": {},
                        "2.6.0": {}
                    },
                    "title": "Vanilla Apache Hadoop",
                    "name": "vanilla"
                },
                {
                    "description": "The Hortonworks Sahara plugin automates the deployment of the Hortonworks Data Platform (HDP) on OpenStack.",
                    "versions": {
                        "1.3.2": {},
                        "2.0.6": {}
                    },
                    "title": "Hortonworks Data Platform",
                    "name": "hdp"
                },
                {
                    "description": "The Cloudera Sahara plugin provides the ability to launch the Cloudera distribution of Apache Hadoop (CDH) with Cloudera Manager management console.",
                    "versions": {
                        "5": {},
                        "5.3.0": {}
                    },
                    "title": "Cloudera Plugin",
                    "name": "cdh"
                }
            ],
            "name": "MapReduce.Streaming"
        },
        {
            "plugins": [
                {
                    "description": "The Apache Vanilla plugin provides the ability to launch upstream Vanilla Apache Hadoop cluster without any management consoles. It can also deploy the Oozie component.",
                    "versions": {
                        "1.2.1": {},
                        "2.6.0": {}
                    },
                    "title": "Vanilla Apache Hadoop",
                    "name": "vanilla"
                },
                {
                    "description": "The Hortonworks Sahara plugin automates the deployment of the Hortonworks Data Platform (HDP) on OpenStack.",
                    "versions": {
                        "1.3.2": {},
                        "2.0.6": {}
                    },
                    "title": "Hortonworks Data Platform",
                    "name": "hdp"
                },
                {
                    "description": "The Cloudera Sahara plugin provides the ability to launch the Cloudera distribution of Apache Hadoop (CDH) with Cloudera Manager management console.",
                    "versions": {
                        "5": {},
                        "5.3.0": {}
                    },
                    "title": "Cloudera Plugin",
                    "name": "cdh"
                }
            ],
            "name": "Pig"
        },
        {
            "plugins": [
                {
                    "description": "The Apache Vanilla plugin provides the ability to launch upstream Vanilla Apache Hadoop cluster without any management consoles. It can also deploy the Oozie component.",
                    "versions": {
                        "1.2.1": {},
                        "2.6.0": {}
                    },
                    "title": "Vanilla Apache Hadoop",
                    "name": "vanilla"
                },
                {
                    "description": "The Hortonworks Sahara plugin automates the deployment of the Hortonworks Data Platform (HDP) on OpenStack.",
                    "versions": {
                        "1.3.2": {},
                        "2.0.6": {}
                    },
                    "title": "Hortonworks Data Platform",
                    "name": "hdp"
                },
                {
                    "description": "The Cloudera Sahara plugin provides the ability to launch the Cloudera distribution of Apache Hadoop (CDH) with Cloudera Manager management console.",
                    "versions": {
                        "5": {},
                        "5.3.0": {}
                    },
                    "title": "Cloudera Plugin",
                    "name": "cdh"
                }
            ],
            "name": "Shell"
        },
        {
            "plugins": [
                {
                    "description": "This plugin provides an ability to launch Spark on Hadoop CDH cluster without any management consoles.",
                    "versions": {
                        "1.0.0": {}
                    },
                    "title": "Apache Spark",
                    "name": "spark"
                }
            ],
            "name": "Spark"
        }
    ]
}

Job binary internals

Job binary internal objects represent data processing applications and libraries that are stored in the internal database.

PUT
/v1.1/{project_id}/job-binary-internals/{name}

Create job binary internal

Creates a job binary internal.

Job binary internals are objects that represent data processing applications and libraries that are stored in the internal database.

Specify the file contents (raw data or script text) in the request body. Specify the file name in the URI.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

name

path

string

The name of the job binary internal.

Response Parameters

Name

In

Type

Description

name

body

string

The name of the job binary internal.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

is_protected

body

boolean

If set to true, the object is protected.

is_public

body

boolean

If set to true, the object is public.

datasize

body

integer

The size of the data stored in the internal database.

id

body

string

The UUID of the job binary internal.

GET
/v1.1/{project_id}/job-binary-internals/{job_binary_internals_id}/data

Show job binary internal data

Shows data for a job binary internal.

The response body shows the job binary raw data and the response headers show the data length.

Example response:

HTTP/1.1 200 OK
Connection: keep-alive
Content-Length: 161
Content-Type: text/html; charset=utf-8
Date: Sat, 28 Mar 2016 02:21:13 GMT
A = load '$INPUT' using PigStorage(':') as (fruit: chararray);
B = foreach A generate com.hadoopbook.pig.Trim(fruit);
store B into '$OUTPUT' USING PigStorage();

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_binary_internals_id

path

string

The UUID of the job binary internal.

Response Parameters

Name

In

Type

Description

Content-Length

header

string

The length of the data, in bytes.

Response Example

A = load '$INPUT' using PigStorage(':') as (fruit: chararray);
B = foreach A generate com.hadoopbook.pig.Trim(fruit);
store B into '$OUTPUT' USING PigStorage()
GET
/v1.1/{project_id}/job-binary-internals/{job_binary_internals_id}

Show job binary internal details

Shows details for a job binary internal.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_binary_internals_id

path

string

The UUID of the job binary internal.

Response Parameters

Name

In

Type

Description

name

body

string

The name of the job binary internal.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

is_protected

body

boolean

If set to true, the object is protected.

is_public

body

boolean

If set to true, the object is public.

datasize

body

integer

The size of the data stored in the internal database.

id

body

string

The UUID of the job binary internal.

Response Example

{
    "job_binary_internal": {
        "is_public": false,
        "name": "script.pig",
        "tenant_id": "11587919cc534bcbb1027a161c82cf58",
        "created_at": "2013-10-15 13:17:35.994466",
        "updated_at": null,
        "datasize": 160,
        "id": "4833dc4b-8682-4d5b-8a9f-2036b47a0996",
        "is_protected": false
    }
}
DELETE
/v1.1/{project_id}/job-binary-internals/{job_binary_internals_id}

Delete job binary internal

Deletes a job binary internal.

Normal response codes:204

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_binary_internals_id

path

string

The UUID of the job binary internal.

PATCH
/v1.1/{project_id}/job-binary-internals/{job_binary_internals_id}

Update job binary internal

Updates a job binary internal.

Normal respose codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_binary_internals_id

path

string

The UUID of the job binary internal.

Request Example

{
    "name": "public-jbi",
    "is_public": true
}
GET
/v1.1/{project_id}/job-binary-internals

List job binary internals

Lists the available job binary internals.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

limit (Optional)

path

integer

Maximum number of objects in response data.

marker (Optional)

path

string

ID of the last element on the list which won’t be in response.

sort_by (Optional)

path

string

The field for sorting job binary internals. this parameter accepts the following values: id, name, created_at, updated_at. Also this values can started with - prefix for descending sort. For example: -name.

Response Parameters

Name

In

Type

Description

markers (Optional)

body

object

The markers of previous and following pages of data. This field exists only if limit is passed to request.

prev (Optional)

body

string

The marker of previous page. May be null if previous page is first or if current page is first.

next (Optional)

body

string

The marker of next page of list data.

binaries

body

array

The list of job binary internal objects.

name

body

string

The name of the job binary internal.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

is_protected

body

boolean

If set to true, the object is protected.

is_public

body

boolean

If set to true, the object is public.

datasize

body

integer

The size of the data stored in the internal database.

id

body

string

The UUID of the job binary internal.

GET
/v1.1/{project_id}/job-binary-internals

Response Example

{
    "binaries": [
        {
            "is_public": false,
            "name": "example.pig",
            "tenant_id": "11587919cc534bcbb1027a161c82cf58",
            "created_at": "2013-10-15 12:36:59.329034",
            "updated_at": null,
            "datasize": 161,
            "id": "d2498cbf-4589-484a-a814-81436c18beb3",
            "is_protected": false
        },
        {
            "is_public": false,
            "name": "udf.jar",
            "tenant_id": "11587919cc534bcbb1027a161c82cf58",
            "created_at": "2013-10-15 12:43:52.008620",
            "updated_at": null,
            "datasize": 3745,
            "id": "22f1d87a-23c8-483e-a0dd-cb4a16dde5f9",
            "is_protected": false
        }
    ]
}

Jobs

A job object lists the binaries that a job needs to run. To run a job, you must specify data sources and job parameters.

You can run a job on an existing or new transient cluster.

POST
/v1.1/{project_id}/jobs/{job_id}/execute

Run job

Runs a job.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_id

path

string

The UUID of the job.

Request Example

{
    "cluster_id": "811e1134-666f-4c48-bc92-afb5b10c9d8c",
    "input_id": "3e1bc8e6-8c69-4749-8e52-90d9341d15bc",
    "output_id": "52146b52-6540-4aac-a024-fee253cf52a9",
    "job_configs": {
        "configs": {
            "mapred.map.tasks": "1",
            "mapred.reduce.tasks": "1"
        },
        "args": [
            "arg1",
            "arg2"
        ],
        "params": {
            "param2": "value2",
            "param1": "value1"
        }
    }
}
GET
/v1.1/{project_id}/jobs

List jobs

Lists all jobs.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

limit (Optional)

path

integer

Maximum number of objects in response data.

marker (Optional)

path

string

ID of the last element on the list which won’t be in response.

sort_by (Optional)

path

string

The field for sorting jobs. this parameter accepts the following values: id, name, type, created_at, updated_at. Also this values can started with - prefix for descending sort. For example: -name.

Response Parameters

Name

In

Type

Description

jobs

body

array

The list of the jobs.

description

body

string

The description of the job object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

mains

body

array

The list of the job object and their properties.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

libs

body

array

The list of the job object properties.

is_protected

body

boolean

If set to true, the object is protected.

interface

body

array

The interfaces of the job object.

is_public

body

boolean

If set to true, the object is public.

type

body

string

The type of the data source object.

id

body

string

The UUID of the job object.

name

body

string

The name of the job object.

markers (Optional)

body

object

The markers of previous and following pages of data. This field exists only if limit is passed to request.

prev (Optional)

body

string

The marker of previous page. May be null if previous page is first or if current page is first.

next (Optional)

body

string

The marker of next page of list data.

Response Example

..rest_method:: GET /v1.1/{project_id}/jobs?limit=2

{
    "jobs": [
        {
            "is_public": false,
            "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
            "created_at": "2015-02-10 14:25:48",
            "id": "1a674c31-9aaa-4d07-b844-2bf200a1b836",
            "name": "Edp-test-job-3d60854e",
            "updated_at": null,
            "description": "",
            "interface": [],
            "libs": [
                {
                    "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
                    "created_at": "2015-02-10 14:25:48",
                    "id": "0ff4ac10-94a4-4e25-9ac9-603afe27b100",
                    "name": "binary-job-339c2d1a.jar",
                    "updated_at": null,
                    "description": "",
                    "url": "swift://Edp-test-c71e6bce.sahara/binary-job-339c2d1a.jar"
                }
            ],
            "type": "MapReduce",
            "mains": [],
            "is_protected": false
        },
        {
            "is_public": false,
            "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
            "created_at": "2015-02-10 14:25:44",
            "id": "4d1f3759-3497-4927-8352-910bacf24e62",
            "name": "Edp-test-job-6b6953c8",
            "updated_at": null,
            "description": "",
            "interface": [],
            "libs": [
                {
                    "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
                    "created_at": "2015-02-10 14:25:44",
                    "id": "e0d47800-4ac1-4d63-a2e1-c92d669a44e2",
                    "name": "binary-job-6f21a2f8.jar",
                    "updated_at": null,
                    "description": "",
                    "url": "swift://Edp-test-b409ec68.sahara/binary-job-6f21a2f8.jar"
                }
            ],
            "type": "Pig",
            "mains": [
                {
                    "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
                    "created_at": "2015-02-10 14:25:44",
                    "id": "e073e896-f123-4b76-995f-901d786262df",
                    "name": "binary-job-d4f8bd75.pig",
                    "updated_at": null,
                    "description": "",
                    "url": "swift://Edp-test-b409ec68.sahara/binary-job-d4f8bd75.pig"
                }
            ],
            "is_protected": false
        }
    ],
    "markers": {
        "prev": null,
        "next": "c53832da-6e7b-449e-a166-9f9ce1718d03"
    }
}
POST
/v1.1/{project_id}/jobs

Create job

Creates a job object.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

Request Example

{
    "description": "This is pig job example",
    "mains": [
        "90d9d5ec-11aa-48bd-bc8c-34936ce0db6e"
    ],
    "libs": [
        "320a2ca7-25fd-4b48-9bc3-4fb1b6c4ff27"
    ],
    "type": "Pig",
    "name": "pig-job-example"
}

Response Parameters

Name

In

Type

Description

description

body

string

The description of the job object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

mains

body

array

The list of the job object and their properties.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

libs

body

array

The list of the job object properties.

is_protected

body

boolean

If set to true, the object is protected.

interface

body

array

The interfaces of the job object.

is_public

body

boolean

If set to true, the object is public.

type

body

string

The type of the data source object.

id

body

string

The UUID of the job object.

name

body

string

The name of the job object.

GET
/v1.1/{project_id}/jobs/{job_id}

Show job details

Shows details for a job.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_id

path

string

The UUID of the job.

Response Parameters

Name

In

Type

Description

description

body

string

The description of the job object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

mains

body

array

The list of the job object and their properties.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

libs

body

array

The list of the job object properties.

is_protected

body

boolean

If set to true, the object is protected.

interface

body

array

The interfaces of the job object.

is_public

body

boolean

If set to true, the object is public.

type

body

string

The type of the data source object.

id

body

string

The UUID of the job object.

name

body

string

The name of the job object.

Response Example

{
    "job": {
        "is_public": false,
        "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
        "created_at": "2015-02-10 14:25:48",
        "id": "1a674c31-9aaa-4d07-b844-2bf200a1b836",
        "name": "Edp-test-job",
        "updated_at": null,
        "description": "",
        "interface": [],
        "libs": [
            {
                "tenant_id": "9cd1314a0a31493282b6712b76a8fcda",
                "created_at": "2015-02-10 14:25:48",
                "id": "0ff4ac10-94a4-4e25-9ac9-603afe27b100",
                "name": "binary-job.jar",
                "updated_at": null,
                "description": "",
                "url": "swift://Edp-test-c71e6bce.sahara/binary-job.jar"
            }
        ],
        "type": "MapReduce",
        "mains": [],
        "is_protected": false
    }
}
DELETE
/v1.1/{project_id}/jobs/{job_id}

Remove job

Removes a job.

Normal response codes:204

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_id

path

string

The UUID of the job.

PATCH
/v1.1/{project_id}/jobs/{job_id}

Update job object

Updates a job object.

Normal response codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

job_id

path

string

The UUID of the job.

Request Example

{
    "description": "This is public pig job example",
    "name": "public-pig-job-example"
}

Response Parameters

Name

In

Type

Description

description

body

string

The description of the job object.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

mains

body

array

The list of the job object and their properties.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

libs

body

array

The list of the job object properties.

is_protected

body

boolean

If set to true, the object is protected.

interface

body

array

The interfaces of the job object.

is_public

body

boolean

If set to true, the object is public.

type

body

string

The type of the data source object.

id

body

string

The UUID of the job object.

name

body

string

The name of the job object.

Node group templates

A cluster is a group of nodes with the same configuration. A node group template configures a node in the cluster.

A template configures Hadoop processes and VM characteristics, such as the number of reduced slots for task tracker, the number of CPUs, and the amount of RAM. The template specifies the VM characteristics through an OpenStack flavor.

GET
/v1.1/{project_id}/node-group-templates

List node group templates

Lists available node group templates.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

limit (Optional)

path

integer

Maximum number of objects in response data.

marker (Optional)

path

string

ID of the last element on the list which won’t be in response.

sort_by (Optional)

path

string

The field for sorting node group templates. this parameter accepts the following values: name, plugin_name, hadoop_version, created_at, updated_at, id. Also this values can started with - prefix for descending sort. For example: -name.

Response Parameters

Name

In

Type

Description

markers (Optional)

body

object

The markers of previous and following pages of data. This field exists only if limit is passed to request.

prev (Optional)

body

string

The marker of previous page. May be null if previous page is first or if current page is first.

next (Optional)

body

string

The marker of next page of list data.

volume_local_to_instance

body

boolean

If set to true, the volume is local to the instance.

availability_zone

body

string

The availability of the node in the cluster.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

use_autoconfig

body

boolean

If set to true, the cluster is auto configured.

volumes_per_node

body

integer

The number of volumes for the node.

id

body

string

The UUID of the node group template.

security_groups

body

string

The security groups of the node.

shares

body

string

The sharing of resources in the cluster.

node_configs

body

object

A set of key and value pairs that contain the node configuration in the cluster.

auto_security_group

body

boolean

If set to True, the cluster group is automatically secured.

volumes_availability_zone

body

string

The availability zone of the volumes.

description (Optional)

body

string

Description of the node group template

volume_mount_prefix

body

string

The mount point of the node.

plugin_name

body

string

The name of the plugin.

floating_ip_pool

body

string

The UUID of the pool in the template.

is_default

body

boolean

If set to true, the cluster is the default cluster.

image_id

body

string

The UUID of the image.

volumes_size

body

integer

The size of the volumes in a node.

is_proxy_gateway

body

boolean

If set to true, the node is the proxy gateway.

is_public

body

boolean

If set to true, the object is public.

hadoop_version

body

string

The version of the Hadoop used in the cluster.

name

body

string

The name of the node group template.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

volume_type

body

string

The type of volume in a node.

is_protected

body

boolean

If set to true, the object is protected.

node_processes

body

array

The list of the processes performed by the node.

flavor_id

body

string

The ID of the flavor.

GET
/v1.1/{project_id}/node-group-templates?limit=2&marker=38b4e146-1d39-4822-bad2-fef1bf304a52&sort_by=name

Response Example

{
    "node_group_templates": [
        {
            "is_public": false,
            "image_id": null,
            "tenant_id": "808d5032ea0446889097723bfc8e919d",
            "shares": null,
            "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
            "node_configs": {},
            "auto_security_group": false,
            "is_default": false,
            "availability_zone": null,
            "plugin_name": "vanilla",
            "flavor_id": "2",
            "id": "0bb9f1a4-0c44-4dc5-9452-6741c62ed9ae",
            "description": null,
            "hadoop_version": "2.7.1",
            "use_autoconfig": true,
            "volumes_availability_zone": null,
            "created_at": "2015-09-14T10:20:11",
            "is_protected": false,
            "updated_at": null,
            "volumes_per_node": 0,
            "is_proxy_gateway": false,
            "name": "master",
            "volume_mount_prefix": "/volumes/disk",
            "node_processes": [
                "namenode",
                "resourcemanager",
                "oozie",
                "historyserver"
            ],
            "volumes_size": 0,
            "volume_local_to_instance": false,
            "security_groups": null,
            "volume_type": null
        },
        {
            "is_public": false,
            "image_id": null,
            "tenant_id": "808d5032ea0446889097723bfc8e919d",
            "shares": null,
            "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
            "node_configs": {},
            "auto_security_group": false,
            "is_default": false,
            "availability_zone": null,
            "plugin_name": "vanilla",
            "flavor_id": "2",
            "id": "846edb31-add5-46e6-a4ee-a4c339f99251",
            "description": null,
            "hadoop_version": "2.7.1",
            "use_autoconfig": true,
            "volumes_availability_zone": null,
            "created_at": "2015-09-14T10:27:00",
            "is_protected": false,
            "updated_at": null,
            "volumes_per_node": 0,
            "is_proxy_gateway": false,
            "name": "worker",
            "volume_mount_prefix": "/volumes/disk",
            "node_processes": [
                "datanode",
                "nodemanager"
            ],
            "volumes_size": 0,
            "volume_local_to_instance": false,
            "security_groups": null,
            "volume_type": null
        }
    ],
    "markers": {
        "prev":"39dfc852-8588-4b61-8d2b-eb08a67ab240",
        "next":"eaa0bd97-ab54-43df-83ab-77a9774d7358"
    }
}
POST
/v1.1/{project_id}/node-group-templates

Create node group template

Creates a node group template.

Normal response codes: 202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

Request Example

{
    "plugin_name": "vanilla",
    "hadoop_version": "2.7.1",
    "node_processes": [
        "namenode",
        "resourcemanager",
        "oozie",
        "historyserver"
    ],
    "name": "master",
    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
    "flavor_id": "2"
}

Response Parameters

Name

In

Type

Description

volume_local_to_instance

body

boolean

If set to true, the volume is local to the instance.

availability_zone

body

string

The availability of the node in the cluster.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

use_autoconfig

body

boolean

If set to true, the cluster is auto configured.

volumes_per_node

body

integer

The number of volumes for the node.

id

body

string

The UUID of the node group template.

security_groups

body

string

The security groups of the node.

shares

body

string

The sharing of resources in the cluster.

node_configs

body

object

A set of key and value pairs that contain the node configuration in the cluster.

auto_security_group

body

boolean

If set to True, the cluster group is automatically secured.

volumes_availability_zone

body

string

The availability zone of the volumes.

description (Optional)

body

string

Description of the node group template

volume_mount_prefix

body

string

The mount point of the node.

plugin_name

body

string

The name of the plugin.

floating_ip_pool

body

string

The UUID of the pool in the template.

is_default

body

boolean

If set to true, the cluster is the default cluster.

image_id

body

string

The UUID of the image.

volumes_size

body

integer

The size of the volumes in a node.

is_proxy_gateway

body

boolean

If set to true, the node is the proxy gateway.

is_public

body

boolean

If set to true, the object is public.

hadoop_version

body

string

The version of the Hadoop used in the cluster.

name

body

string

The name of the node group template.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

volume_type

body

string

The type of volume in a node.

is_protected

body

boolean

If set to true, the object is protected.

node_processes

body

array

The list of the processes performed by the node.

flavor_id

body

string

The ID of the flavor.

GET
/v1.1/{project_id}/node-group-templates/{node_group_template_id}

Show node group template details

Shows a node group template, by ID.

Normal response codes: 200

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

node_group_template_id

path

string

The UUID of the node group template.

Response Parameters

Name

In

Type

Description

volume_local_to_instance

body

boolean

If set to true, the volume is local to the instance.

availability_zone

body

string

The availability of the node in the cluster.

updated_at

body

string

The date and time when the cluster was updated.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

use_autoconfig

body

boolean

If set to true, the cluster is auto configured.

volumes_per_node

body

integer

The number of volumes for the node.

id

body

string

The UUID of the node group template.

security_groups

body

string

The security groups of the node.

shares

body

string

The sharing of resources in the cluster.

node_configs

body

object

A set of key and value pairs that contain the node configuration in the cluster.

auto_security_group

body

boolean

If set to True, the cluster group is automatically secured.

volumes_availability_zone

body

string

The availability zone of the volumes.

description (Optional)

body

string

Description of the node group template

volume_mount_prefix

body

string

The mount point of the node.

plugin_name

body

string

The name of the plugin.

floating_ip_pool

body

string

The UUID of the pool in the template.

is_default

body

boolean

If set to true, the cluster is the default cluster.

image_id

body

string

The UUID of the image.

volumes_size

body

integer

The size of the volumes in a node.

is_proxy_gateway

body

boolean

If set to true, the node is the proxy gateway.

is_public

body

boolean

If set to true, the object is public.

hadoop_version

body

string

The version of the Hadoop used in the cluster.

name

body

string

The name of the node group template.

tenant_id

body

string

The UUID of the tenant.

created_at

body

string

The date and time when the cluster was created.

The date and time stamp format is ISO 8601:

CCYY-MM-DDThh:mm:ss±hh:mm

The ±hh:mm value, if included, returns the time zone as an offset from UTC.

For example, 2015-08-27T09:49:58-05:00.

volume_type

body

string

The type of volume in a node.

is_protected

body

boolean

If set to true, the object is protected.

node_processes

body

array

The list of the processes performed by the node.

flavor_id

body

string

The ID of the flavor.

Response Example

{
    "node_group_template": {
        "is_public": false,
        "image_id": null,
        "tenant_id": "808d5032ea0446889097723bfc8e919d",
        "shares": null,
        "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
        "node_configs": {},
        "auto_security_group": false,
        "is_default": false,
        "availability_zone": null,
        "plugin_name": "vanilla",
        "flavor_id": "2",
        "id": "0bb9f1a4-0c44-4dc5-9452-6741c62ed9ae",
        "description": null,
        "hadoop_version": "2.7.1",
        "use_autoconfig": true,
        "volumes_availability_zone": null,
        "created_at": "2015-09-14T10:20:11",
        "is_protected": false,
        "updated_at": null,
        "volumes_per_node": 0,
        "is_proxy_gateway": false,
        "name": "master",
        "volume_mount_prefix": "/volumes/disk",
        "node_processes": [
            "namenode",
            "resourcemanager",
            "oozie",
            "historyserver"
        ],
        "volumes_size": 0,
        "volume_local_to_instance": false,
        "security_groups": null,
        "volume_type": null
    }
}
DELETE
/v1.1/{project_id}/node-group-templates/{node_group_template_id}

Delete node group template

Deletes a node group template.

Normal response codes:204

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

node_group_template_id

path

string

The UUID of the node group template.

PUT
/v1.1/{project_id}/node-group-templates/{node_group_template_id}

Update node group template

Updates a node group template.

Normal respose codes:202

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

node_group_template_id

path

string

The UUID of the node group template.

Request Example

{
    "plugin_name": "vanilla",
    "hadoop_version": "2.7.1",
    "node_processes": [
        "datanode"
    ],
    "name": "new",
    "floating_ip_pool": "033debed-aeb8-488c-b7d0-adb74c61faa5",
    "flavor_id": "2"
}

Plugins

A plugin object defines the Hadoop or Spark version that it can install and which configurations can be set for the cluster.

GET
/v1.1/{project_id}/plugins/{plugin_name}

Show plugin details

Shows details for a plugin.

Normal response codes: 200 Error response codes: 400, 500

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

plugin_name

path

string

Name of the plugin.

Response Parameters

Name

In

Type

Description

versions

body

array

The list of plugin versions.

title

body

string

The title of the plugin.

description

body

string

The full description of the plugin.

name

body

string

The name of the plugin.

Response Example

{
    "plugin": {
        "name": "vanilla",
        "versions": [
            "1.2.1",
            "2.4.1",
            "2.6.0"
        ],
        "title": "Vanilla Apache Hadoop",
        "description": "The Apache Vanilla plugin provides the ability to launch upstream Vanilla Apache Hadoop cluster without any management consoles. It can also deploy the Oozie component."
    }
}
GET
/v1.1/{project_id}/plugins

List plugins

Lists all registered plugins.

Normal response codes: 200 Error response codes: 400, 500

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

Response Parameters

Name

In

Type

Description

title

body

string

The title of the plugin.

versions

body

array

The list of plugin versions.

plugins

body

array

The list of plugins.

description

body

string

The full description of the plugin.

name

body

string

The name of the plugin.

Response Example

{
    "plugins": [
        {
            "name": "vanilla",
            "description": "The Apache Vanilla plugin provides the ability to launch upstream Vanilla Apache Hadoop cluster without any management consoles. It can also deploy the Oozie component.",
            "versions": [
                "1.2.1",
                "2.4.1",
                "2.6.0"
            ],
            "title": "Vanilla Apache Hadoop"
        },
        {
            "name": "hdp",
            "description": "The Hortonworks Sahara plugin automates the deployment of the Hortonworks Data Platform (HDP) on OpenStack.",
            "versions": [
                "1.3.2",
                "2.0.6"
            ],
            "title": "Hortonworks Data Platform"
        },
        {
            "name": "spark",
            "description": "This plugin provides an ability to launch Spark on Hadoop CDH cluster without any management consoles.",
            "versions": [
                "1.0.0",
                "0.9.1"
            ],
            "title": "Apache Spark"
        },
        {
            "name": "cdh",
            "description": "The Cloudera Sahara plugin provides the ability to launch the Cloudera distribution of Apache Hadoop (CDH) with Cloudera Manager management console.",
            "versions": [
                "5",
                "5.3.0"
            ],
            "title": "Cloudera Plugin"
        }
    ]
}
GET
/v1.1/{project_id}/plugins/{plugin_name}/{version}

Show plugin version details

Shows details for a plugin version.

Normal response codes: 200 Error response codes: 400, 500

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

plugin_name

path

string

Name of the plugin.

version

path

string

Filters the response by a plugin version.

Response Parameters

Name

In

Type

Description

versions

body

array

The list of plugin versions.

title

body

string

The title of the plugin.

description

body

string

The full description of the plugin.

name

body

string

The name of the plugin.

Response Example

{
    "plugin": {
        "name": "vanilla",
        "versions": [
            "1.2.1",
            "2.4.1",
            "2.6.0"
        ],
        "description": "The Apache Vanilla plugin provides the ability to launch upstream Vanilla Apache Hadoop cluster without any management consoles. It can also deploy the Oozie component.",
        "required_image_tags": [
            "vanilla",
            "2.6.0"
        ],
        "node_processes": {
            "JobFlow": [
                "oozie"
            ],
            "HDFS": [
                "namenode",
                "datanode",
                "secondarynamenode"
            ],
            "YARN": [
                "resourcemanager",
                "nodemanager"
            ],
            "MapReduce": [
                "historyserver"
            ],
            "Hadoop": [],
            "Hive": [
                "hiveserver"
            ]
        },
        "configs": [
            {
                "default_value": "/tmp/hadoop-${user.name}",
                "name": "hadoop.tmp.dir",
                "priority": 2,
                "config_type": "string",
                "applicable_target": "HDFS",
                "is_optional": true,
                "scope": "node",
                "description": "A base for other temporary directories."
            },
            {
                "default_value": true,
                "name": "hadoop.native.lib",
                "priority": 2,
                "config_type": "bool",
                "applicable_target": "HDFS",
                "is_optional": true,
                "scope": "node",
                "description": "Should native hadoop libraries, if present, be used."
            },
            {
                "default_value": 1024,
                "name": "NodeManager Heap Size",
                "config_values": null,
                "priority": 1,
                "config_type": "int",
                "applicable_target": "YARN",
                "is_optional": false,
                "scope": "node",
                "description": null
            },
            {
                "default_value": true,
                "name": "Enable Swift",
                "config_values": null,
                "priority": 1,
                "config_type": "bool",
                "applicable_target": "general",
                "is_optional": false,
                "scope": "cluster",
                "description": null
            },
            {
                "default_value": true,
                "name": "Enable MySQL",
                "config_values": null,
                "priority": 1,
                "config_type": "bool",
                "applicable_target": "general",
                "is_optional": true,
                "scope": "cluster",
                "description": null
            }
        ],
        "title": "Vanilla Apache Hadoop"
    }
}
PATCH
/v1.1/{project_id}/plugins/{plugin_name}

Update plugin details

Updates details for a plugin.

Normal response codes: 202 Error response codes: 400, 500

Request

Name

In

Type

Description

project_id

path

string

UUID of the project.

plugin_name

path

string

Name of the plugin.

Request Example

{
    "plugin_labels": {
        "enabled": {
            "status": false
        }
    }
}

Response Parameters

Name

In

Type

Description

title

body

string

The title of the plugin.

versions

body

array

The list of plugin versions.

description

body

string

The full description of the plugin.

name

body

string

The name of the plugin.

Response Example

{
  "plugin": {
    "plugin_labels": {
      "hidden": {
        "status": true,
        "mutable": true,
        "description": "Existence of plugin or its version is hidden, but still can be used for cluster creation by CLI and directly by client."
      },
      "enabled": {
        "status": false,
        "mutable": true,
        "description": "Plugin or its version is enabled and can be used by user."
      }
    },
    "description": "It's a fake plugin that aimed to work on the CirrOS images. It doesn't install Hadoop. It's needed to be able to test provisioning part of Sahara codebase itself.",
    "versions": [
      "0.1"
    ],
    "tenant_id": "993f53c1f51845e48e013aeb632358d8",
    "title": "Fake Plugin",
    "version_labels": {
      "0.1": {
        "enabled": {
          "status": true,
          "mutable": true,
          "description": "Plugin or its version is enabled and can be used by user."
        }
      }
    },
    "name": "fake"
  }
}