a5c9ede143
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1175403 13f79535-47bb-0310-9956-ffa450edef68
280 lines
7.6 KiB
Protocol Buffer
280 lines
7.6 KiB
Protocol Buffer
/**
|
|
* Licensed to the Apache Software Foundation (ASF) under one
|
|
* or more contributor license agreements. See the NOTICE file
|
|
* distributed with this work for additional information
|
|
* regarding copyright ownership. The ASF licenses this file
|
|
* to you under the Apache License, Version 2.0 (the
|
|
* "License"); you may not use this file except in compliance
|
|
* with the License. You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
option java_package = "org.apache.hadoop.yarn.proto";
|
|
option java_outer_classname = "YarnProtos";
|
|
option java_generic_services = true;
|
|
option java_generate_equals_and_hash = true;
|
|
|
|
message YarnRemoteExceptionProto {
|
|
optional string message = 1;
|
|
optional string trace = 2;
|
|
optional string class_name = 3;
|
|
optional YarnRemoteExceptionProto cause = 4;
|
|
}
|
|
|
|
message ApplicationIdProto {
|
|
optional int32 id = 1;
|
|
optional int64 cluster_timestamp = 2;
|
|
}
|
|
|
|
message ApplicationAttemptIdProto {
|
|
optional ApplicationIdProto application_id = 1;
|
|
optional int32 attemptId = 2;
|
|
}
|
|
|
|
message ContainerIdProto {
|
|
optional ApplicationIdProto app_id = 1;
|
|
optional ApplicationAttemptIdProto app_attempt_id = 2;
|
|
optional int32 id = 3;
|
|
}
|
|
|
|
message ResourceProto {
|
|
optional int32 memory = 1;
|
|
}
|
|
|
|
enum ContainerStateProto {
|
|
C_NEW = 1;
|
|
C_RUNNING = 2;
|
|
C_COMPLETE = 3;
|
|
}
|
|
|
|
message ContainerTokenProto {
|
|
optional bytes identifier = 1;
|
|
optional bytes password = 2;
|
|
optional string kind = 3;
|
|
optional string service = 4;
|
|
}
|
|
|
|
message ContainerProto {
|
|
optional ContainerIdProto id = 1;
|
|
optional NodeIdProto nodeId = 2;
|
|
optional string node_http_address = 3;
|
|
optional ResourceProto resource = 4;
|
|
optional ContainerStateProto state = 5;
|
|
optional ContainerTokenProto container_token = 6;
|
|
optional ContainerStatusProto container_status = 7;
|
|
}
|
|
|
|
enum ApplicationStateProto {
|
|
NEW = 1;
|
|
SUBMITTED = 2;
|
|
RUNNING = 3;
|
|
RESTARTING = 4;
|
|
SUCCEEDED = 5;
|
|
FAILED = 6;
|
|
KILLED = 7;
|
|
}
|
|
|
|
message ApplicationStatusProto {
|
|
optional int32 response_id = 1;
|
|
optional ApplicationAttemptIdProto application_attempt_id = 2;
|
|
optional float progress = 3;
|
|
}
|
|
|
|
message ApplicationMasterProto {
|
|
optional ApplicationIdProto application_id = 1;
|
|
optional string host = 2;
|
|
optional int32 rpc_port = 3;
|
|
optional string trackingUrl = 4;
|
|
optional ApplicationStatusProto status = 5;
|
|
optional ApplicationStateProto state = 6;
|
|
optional string client_token = 7;
|
|
optional int32 containerCount = 8;
|
|
optional int32 amFailCount = 9;
|
|
optional string diagnostics = 10 [default = ""];
|
|
}
|
|
|
|
message URLProto {
|
|
optional string scheme = 1;
|
|
optional string host = 2;
|
|
optional int32 port = 3;
|
|
optional string file = 4;
|
|
}
|
|
|
|
enum LocalResourceVisibilityProto {
|
|
PUBLIC = 1;
|
|
PRIVATE = 2;
|
|
APPLICATION = 3;
|
|
}
|
|
|
|
enum LocalResourceTypeProto {
|
|
ARCHIVE = 1;
|
|
FILE = 2;
|
|
}
|
|
|
|
message LocalResourceProto {
|
|
optional URLProto resource = 1;
|
|
optional int64 size = 2;
|
|
optional int64 timestamp = 3;
|
|
optional LocalResourceTypeProto type = 4;
|
|
optional LocalResourceVisibilityProto visibility= 5;
|
|
}
|
|
|
|
message ApplicationReportProto {
|
|
optional ApplicationIdProto applicationId = 1;
|
|
optional string user = 2;
|
|
optional string queue = 3;
|
|
optional string name = 4;
|
|
optional string host = 5;
|
|
optional int32 rpc_port = 6;
|
|
optional string client_token = 7;
|
|
optional ApplicationStatusProto status = 8;
|
|
optional ApplicationStateProto state = 9;
|
|
optional ContainerProto masterContainer = 10;
|
|
optional string trackingUrl = 11;
|
|
optional string diagnostics = 12 [default = "N/A"];
|
|
optional int64 startTime = 13;
|
|
optional int64 finishTime = 14;
|
|
}
|
|
|
|
message NodeIdProto {
|
|
optional string host = 1;
|
|
optional int32 port = 2;
|
|
}
|
|
|
|
message NodeHealthStatusProto {
|
|
optional bool is_node_healthy = 1;
|
|
optional string health_report = 2;
|
|
optional int64 last_health_report_time = 3;
|
|
}
|
|
|
|
message NodeReportProto {
|
|
optional NodeIdProto nodeId = 1;
|
|
optional string httpAddress = 2;
|
|
optional string rackName = 3;
|
|
optional ResourceProto used = 4;
|
|
optional ResourceProto capability = 5;
|
|
optional int32 numContainers = 6;
|
|
optional NodeHealthStatusProto node_health_status = 8;
|
|
}
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
////// From AM_RM_Protocol /////////////////////////////////////////////
|
|
////////////////////////////////////////////////////////////////////////
|
|
message ResourceRequestProto {
|
|
optional PriorityProto priority = 1;
|
|
optional string host_name = 2;
|
|
optional ResourceProto capability = 3;
|
|
optional int32 num_containers = 4;
|
|
}
|
|
|
|
message AMResponseProto {
|
|
optional bool reboot = 1;
|
|
optional int32 response_id = 2;
|
|
repeated ContainerProto allocated_containers = 3;
|
|
repeated ContainerStatusProto completed_container_statuses = 4;
|
|
optional ResourceProto limit = 5;
|
|
}
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
////// From client_RM_Protocol /////////////////////////////////////////
|
|
////////////////////////////////////////////////////////////////////////
|
|
message ApplicationSubmissionContextProto {
|
|
optional ApplicationIdProto application_id = 1;
|
|
optional string application_name = 2 [default = "N/A"];
|
|
optional string user = 3;
|
|
optional string queue = 4 [default = "default"];
|
|
optional PriorityProto priority = 5;
|
|
optional ContainerLaunchContextProto am_container_spec = 6;
|
|
}
|
|
|
|
message YarnClusterMetricsProto {
|
|
optional int32 num_node_managers = 1;
|
|
}
|
|
|
|
enum QueueStateProto {
|
|
Q_STOPPED = 1;
|
|
Q_RUNNING = 2;
|
|
}
|
|
|
|
message QueueInfoProto {
|
|
optional string queueName = 1;
|
|
optional float capacity = 2;
|
|
optional float maximumCapacity = 3;
|
|
optional float currentCapacity = 4;
|
|
optional QueueStateProto state = 5;
|
|
repeated QueueInfoProto childQueues = 6;
|
|
repeated ApplicationReportProto applications = 7;
|
|
}
|
|
|
|
enum QueueACLProto {
|
|
Q_SUBMIT_JOB = 1;
|
|
Q_ADMINISTER_QUEUE = 2;
|
|
Q_ADMINISTER_JOBS = 3;
|
|
}
|
|
|
|
message QueueUserACLInfoProto {
|
|
optional string queueName = 1;
|
|
repeated QueueACLProto userAcls = 2;
|
|
}
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
////// From container_manager //////////////////////////////////////////
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
|
message ContainerLaunchContextProto {
|
|
optional ContainerIdProto container_id = 1;
|
|
optional string user = 2;
|
|
optional ResourceProto resource = 3;
|
|
repeated StringLocalResourceMapProto localResources = 4;
|
|
optional bytes container_tokens = 5;
|
|
repeated StringBytesMapProto service_data = 6;
|
|
repeated StringStringMapProto environment = 7;
|
|
repeated string command = 8;
|
|
}
|
|
|
|
message ContainerStatusProto {
|
|
optional ContainerIdProto container_id = 1;
|
|
optional ContainerStateProto state = 2;
|
|
optional string diagnostics = 3 [default = "N/A"];
|
|
optional int32 exit_status = 4 [default = -1000];
|
|
}
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
////// From common//////////////////////////////////////////////////////
|
|
////////////////////////////////////////////////////////////////////////
|
|
message PriorityProto {
|
|
optional int32 priority = 1;
|
|
}
|
|
|
|
message StringURLMapProto {
|
|
optional string key = 1;
|
|
optional URLProto value = 2;
|
|
}
|
|
|
|
message StringLocalResourceMapProto {
|
|
optional string key = 1;
|
|
optional LocalResourceProto value = 2;
|
|
}
|
|
|
|
message StringStringMapProto {
|
|
optional string key = 1;
|
|
optional string value = 2;
|
|
}
|
|
|
|
message StringBytesMapProto {
|
|
optional string key = 1;
|
|
optional bytes value = 2;
|
|
}
|
|
|