public static enum Protos.FrameworkInfo.Capability.Type extends java.lang.Enum<Protos.FrameworkInfo.Capability.Type>
mesos.FrameworkInfo.Capability.Type
Enum Constant and Description |
---|
GPU_RESOURCES
Indicates whether the framework is aware of GPU resources.
|
MULTI_ROLE
This expresses the ability for the framework to be
"multi-tenant" via using the newly introduced `roles`
field, and examining `Offer.allocation_info` to determine
which role the offers are being made to.
|
PARTITION_AWARE
Indicates that (1) the framework is prepared to handle the
following TaskStates: TASK_UNREACHABLE, TASK_DROPPED,
TASK_GONE, TASK_GONE_BY_OPERATOR, and TASK_UNKNOWN, and (2)
the framework will assume responsibility for managing
partitioned tasks that reregister with the master.
|
REGION_AWARE
Indicates that the framework is prepared to receive offers
for agents whose region is different from the master's
region.
|
RESERVATION_REFINEMENT
This capability has two effects for a framework.
|
REVOCABLE_RESOURCES
Receive offers with revocable resources.
|
SHARED_RESOURCES
Receive offers with resources that are shared.
|
TASK_KILLING_STATE
Receive the TASK_KILLING TaskState when a task is being
killed by an executor.
|
UNKNOWN
This must be the first enum value in this list, to
ensure that if 'type' is not set, the default value
is UNKNOWN.
|
Modifier and Type | Field and Description |
---|---|
static int |
GPU_RESOURCES_VALUE
Indicates whether the framework is aware of GPU resources.
|
static int |
MULTI_ROLE_VALUE
This expresses the ability for the framework to be
"multi-tenant" via using the newly introduced `roles`
field, and examining `Offer.allocation_info` to determine
which role the offers are being made to.
|
static int |
PARTITION_AWARE_VALUE
Indicates that (1) the framework is prepared to handle the
following TaskStates: TASK_UNREACHABLE, TASK_DROPPED,
TASK_GONE, TASK_GONE_BY_OPERATOR, and TASK_UNKNOWN, and (2)
the framework will assume responsibility for managing
partitioned tasks that reregister with the master.
|
static int |
REGION_AWARE_VALUE
Indicates that the framework is prepared to receive offers
for agents whose region is different from the master's
region.
|
static int |
RESERVATION_REFINEMENT_VALUE
This capability has two effects for a framework.
|
static int |
REVOCABLE_RESOURCES_VALUE
Receive offers with revocable resources.
|
static int |
SHARED_RESOURCES_VALUE
Receive offers with resources that are shared.
|
static int |
TASK_KILLING_STATE_VALUE
Receive the TASK_KILLING TaskState when a task is being
killed by an executor.
|
static int |
UNKNOWN_VALUE
This must be the first enum value in this list, to
ensure that if 'type' is not set, the default value
is UNKNOWN.
|
Modifier and Type | Method and Description |
---|---|
static Protos.FrameworkInfo.Capability.Type |
forNumber(int value) |
static com.google.protobuf.Descriptors.EnumDescriptor |
getDescriptor() |
com.google.protobuf.Descriptors.EnumDescriptor |
getDescriptorForType() |
int |
getNumber() |
com.google.protobuf.Descriptors.EnumValueDescriptor |
getValueDescriptor() |
static <any> |
internalGetValueMap() |
static Protos.FrameworkInfo.Capability.Type |
valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) |
static Protos.FrameworkInfo.Capability.Type |
valueOf(int value)
Deprecated.
Use
forNumber(int) instead. |
static Protos.FrameworkInfo.Capability.Type |
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.
|
static Protos.FrameworkInfo.Capability.Type[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final Protos.FrameworkInfo.Capability.Type UNKNOWN
This must be the first enum value in this list, to ensure that if 'type' is not set, the default value is UNKNOWN. This enables enum values to be added in a backwards-compatible way. See: MESOS-4997.
UNKNOWN = 0;
public static final Protos.FrameworkInfo.Capability.Type REVOCABLE_RESOURCES
Receive offers with revocable resources. See 'Resource' message for details.
REVOCABLE_RESOURCES = 1;
public static final Protos.FrameworkInfo.Capability.Type TASK_KILLING_STATE
Receive the TASK_KILLING TaskState when a task is being killed by an executor. The executor will examine this capability to determine whether it can send TASK_KILLING.
TASK_KILLING_STATE = 2;
public static final Protos.FrameworkInfo.Capability.Type GPU_RESOURCES
Indicates whether the framework is aware of GPU resources. Frameworks that are aware of GPU resources are expected to avoid placing non-GPU workloads on GPU agents, in order to avoid occupying a GPU agent and preventing GPU workloads from running! Currently, if a framework is unaware of GPU resources, it will not be offered *any* of the resources on an agent with GPUs. This restriction is in place because we do not have a revocation mechanism that ensures GPU workloads can evict GPU agent occupants if necessary. TODO(bmahler): As we add revocation we can relax the restriction here. See MESOS-5634 for more information.
GPU_RESOURCES = 3;
public static final Protos.FrameworkInfo.Capability.Type SHARED_RESOURCES
Receive offers with resources that are shared.
SHARED_RESOURCES = 4;
public static final Protos.FrameworkInfo.Capability.Type PARTITION_AWARE
Indicates that (1) the framework is prepared to handle the following TaskStates: TASK_UNREACHABLE, TASK_DROPPED, TASK_GONE, TASK_GONE_BY_OPERATOR, and TASK_UNKNOWN, and (2) the framework will assume responsibility for managing partitioned tasks that reregister with the master. Frameworks that enable this capability can define how they would like to handle partitioned tasks. Frameworks will receive TASK_UNREACHABLE for tasks on agents that are partitioned from the master. Without this capability, frameworks will receive TASK_LOST for tasks on partitioned agents. NOTE: Prior to Mesos 1.5, such tasks will be killed by Mesos when the agent reregisters (unless the master has failed over). However due to the lack of benefit in maintaining different behaviors depending on whether the master has failed over (see MESOS-7215), as of 1.5, Mesos will not kill these tasks in either case.
PARTITION_AWARE = 5;
public static final Protos.FrameworkInfo.Capability.Type MULTI_ROLE
This expresses the ability for the framework to be "multi-tenant" via using the newly introduced `roles` field, and examining `Offer.allocation_info` to determine which role the offers are being made to. We also expect that "single-tenant" schedulers eventually provide this and move away from the deprecated `role` field.
MULTI_ROLE = 6;
public static final Protos.FrameworkInfo.Capability.Type RESERVATION_REFINEMENT
This capability has two effects for a framework. (1) The framework is offered resources in a new format. The offered resources have the `Resource.reservations` field set rather than `Resource.role` and `Resource.reservation`. In short, an empty `reservations` field denotes unreserved resources, and each `ReservationInfo` in the `reservations` field denotes a reservation that refines the previous one. See the 'Resource Format' section for more details. (2) The framework can create refined reservations. A framework can refine an existing reservation via the `Resource.reservations` field. For example, a reservation for role `eng` can be refined to `eng/front_end`. See `ReservationInfo.reservations` for more details. NOTE: Without this capability, a framework is not offered resources that have refined reservations. A resource is said to have refined reservations if it uses the `Resource.reservations` field, and `Resource.reservations_size() > 1`.
RESERVATION_REFINEMENT = 7;
public static final Protos.FrameworkInfo.Capability.Type REGION_AWARE
Indicates that the framework is prepared to receive offers for agents whose region is different from the master's region. Network links between hosts in different regions typically have higher latency and lower bandwidth than network links within a region, so frameworks should be careful to only place suitable workloads in remote regions. Frameworks that are not region-aware will never receive offers for remote agents; region-aware frameworks are assumed to implement their own logic to decide which workloads (if any) are suitable for placement on remote agents.
REGION_AWARE = 8;
public static final int UNKNOWN_VALUE
This must be the first enum value in this list, to ensure that if 'type' is not set, the default value is UNKNOWN. This enables enum values to be added in a backwards-compatible way. See: MESOS-4997.
UNKNOWN = 0;
public static final int REVOCABLE_RESOURCES_VALUE
Receive offers with revocable resources. See 'Resource' message for details.
REVOCABLE_RESOURCES = 1;
public static final int TASK_KILLING_STATE_VALUE
Receive the TASK_KILLING TaskState when a task is being killed by an executor. The executor will examine this capability to determine whether it can send TASK_KILLING.
TASK_KILLING_STATE = 2;
public static final int GPU_RESOURCES_VALUE
Indicates whether the framework is aware of GPU resources. Frameworks that are aware of GPU resources are expected to avoid placing non-GPU workloads on GPU agents, in order to avoid occupying a GPU agent and preventing GPU workloads from running! Currently, if a framework is unaware of GPU resources, it will not be offered *any* of the resources on an agent with GPUs. This restriction is in place because we do not have a revocation mechanism that ensures GPU workloads can evict GPU agent occupants if necessary. TODO(bmahler): As we add revocation we can relax the restriction here. See MESOS-5634 for more information.
GPU_RESOURCES = 3;
public static final int SHARED_RESOURCES_VALUE
Receive offers with resources that are shared.
SHARED_RESOURCES = 4;
public static final int PARTITION_AWARE_VALUE
Indicates that (1) the framework is prepared to handle the following TaskStates: TASK_UNREACHABLE, TASK_DROPPED, TASK_GONE, TASK_GONE_BY_OPERATOR, and TASK_UNKNOWN, and (2) the framework will assume responsibility for managing partitioned tasks that reregister with the master. Frameworks that enable this capability can define how they would like to handle partitioned tasks. Frameworks will receive TASK_UNREACHABLE for tasks on agents that are partitioned from the master. Without this capability, frameworks will receive TASK_LOST for tasks on partitioned agents. NOTE: Prior to Mesos 1.5, such tasks will be killed by Mesos when the agent reregisters (unless the master has failed over). However due to the lack of benefit in maintaining different behaviors depending on whether the master has failed over (see MESOS-7215), as of 1.5, Mesos will not kill these tasks in either case.
PARTITION_AWARE = 5;
public static final int MULTI_ROLE_VALUE
This expresses the ability for the framework to be "multi-tenant" via using the newly introduced `roles` field, and examining `Offer.allocation_info` to determine which role the offers are being made to. We also expect that "single-tenant" schedulers eventually provide this and move away from the deprecated `role` field.
MULTI_ROLE = 6;
public static final int RESERVATION_REFINEMENT_VALUE
This capability has two effects for a framework. (1) The framework is offered resources in a new format. The offered resources have the `Resource.reservations` field set rather than `Resource.role` and `Resource.reservation`. In short, an empty `reservations` field denotes unreserved resources, and each `ReservationInfo` in the `reservations` field denotes a reservation that refines the previous one. See the 'Resource Format' section for more details. (2) The framework can create refined reservations. A framework can refine an existing reservation via the `Resource.reservations` field. For example, a reservation for role `eng` can be refined to `eng/front_end`. See `ReservationInfo.reservations` for more details. NOTE: Without this capability, a framework is not offered resources that have refined reservations. A resource is said to have refined reservations if it uses the `Resource.reservations` field, and `Resource.reservations_size() > 1`.
RESERVATION_REFINEMENT = 7;
public static final int REGION_AWARE_VALUE
Indicates that the framework is prepared to receive offers for agents whose region is different from the master's region. Network links between hosts in different regions typically have higher latency and lower bandwidth than network links within a region, so frameworks should be careful to only place suitable workloads in remote regions. Frameworks that are not region-aware will never receive offers for remote agents; region-aware frameworks are assumed to implement their own logic to decide which workloads (if any) are suitable for placement on remote agents.
REGION_AWARE = 8;
public static Protos.FrameworkInfo.Capability.Type[] values()
for (Protos.FrameworkInfo.Capability.Type c : Protos.FrameworkInfo.Capability.Type.values()) System.out.println(c);
public static Protos.FrameworkInfo.Capability.Type valueOf(java.lang.String name)
name
- the name of the enum constant to be returned.java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is nullpublic final int getNumber()
@Deprecated public static Protos.FrameworkInfo.Capability.Type valueOf(int value)
forNumber(int)
instead.public static Protos.FrameworkInfo.Capability.Type forNumber(int value)
public static <any> internalGetValueMap()
public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor()
public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType()
public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor()
public static Protos.FrameworkInfo.Capability.Type valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)