Class DeviceConstraint
- java.lang.Object
-
- io.fabric8.kubernetes.api.model.resource.v1beta2.DeviceConstraint
-
- All Implemented Interfaces:
io.fabric8.kubernetes.api.builder.Editable<DeviceConstraintBuilder>,io.fabric8.kubernetes.api.model.KubernetesResource,Serializable
@Generated("io.fabric8.kubernetes.schema.generator.model.ModelGenerator") public class DeviceConstraint extends Object implements io.fabric8.kubernetes.api.builder.Editable<DeviceConstraintBuilder>, io.fabric8.kubernetes.api.model.KubernetesResource
DeviceConstraint must have exactly one field set besides Requests.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description DeviceConstraint()No args constructor for use in serializationDeviceConstraint(String distinctAttribute, String matchAttribute, List<String> requests)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DeviceConstraintBuilderedit()Map<String,Object>getAdditionalProperties()StringgetDistinctAttribute()DistinctAttribute requires that all devices in question have this attribute and that its type and value are unique across those devices.StringgetMatchAttribute()MatchAttribute requires that all devices in question have this attribute and that its type and value are the same across those devices.List<String>getRequests()Requests is a list of the one or more requests in this claim which must co-satisfy this constraint.voidsetAdditionalProperties(Map<String,Object> additionalProperties)voidsetAdditionalProperty(String name, Object value)voidsetDistinctAttribute(String distinctAttribute)DistinctAttribute requires that all devices in question have this attribute and that its type and value are unique across those devices.voidsetMatchAttribute(String matchAttribute)MatchAttribute requires that all devices in question have this attribute and that its type and value are the same across those devices.voidsetRequests(List<String> requests)Requests is a list of the one or more requests in this claim which must co-satisfy this constraint.DeviceConstraintBuildertoBuilder()
-
-
-
Method Detail
-
getDistinctAttribute
public String getDistinctAttribute()
DistinctAttribute requires that all devices in question have this attribute and that its type and value are unique across those devices.This acts as the inverse of MatchAttribute.
This constraint is used to avoid allocating multiple requests to the same device by ensuring attribute-level differentiation.
This is useful for scenarios where resource requests must be fulfilled by separate physical devices. For example, a container requests two network interfaces that must be allocated from two different physical NICs.
-
setDistinctAttribute
public void setDistinctAttribute(String distinctAttribute)
DistinctAttribute requires that all devices in question have this attribute and that its type and value are unique across those devices.This acts as the inverse of MatchAttribute.
This constraint is used to avoid allocating multiple requests to the same device by ensuring attribute-level differentiation.
This is useful for scenarios where resource requests must be fulfilled by separate physical devices. For example, a container requests two network interfaces that must be allocated from two different physical NICs.
-
getMatchAttribute
public String getMatchAttribute()
MatchAttribute requires that all devices in question have this attribute and that its type and value are the same across those devices.For example, if you specified "dra.example.com/numa" (a hypothetical example!), then only devices in the same NUMA node will be chosen. A device which does not have that attribute will not be chosen. All devices should use a value of the same type for this attribute because that is part of its specification, but if one device doesn't, then it also will not be chosen.
Must include the domain qualifier.
-
setMatchAttribute
public void setMatchAttribute(String matchAttribute)
MatchAttribute requires that all devices in question have this attribute and that its type and value are the same across those devices.For example, if you specified "dra.example.com/numa" (a hypothetical example!), then only devices in the same NUMA node will be chosen. A device which does not have that attribute will not be chosen. All devices should use a value of the same type for this attribute because that is part of its specification, but if one device doesn't, then it also will not be chosen.
Must include the domain qualifier.
-
getRequests
public List<String> getRequests()
Requests is a list of the one or more requests in this claim which must co-satisfy this constraint. If a request is fulfilled by multiple devices, then all of the devices must satisfy the constraint. If this is not specified, this constraint applies to all requests in this claim.References to subrequests must include the name of the main request and may include the subrequest using the format <main request>[/<subrequest>]. If just the main request is given, the constraint applies to all subrequests.
-
setRequests
public void setRequests(List<String> requests)
Requests is a list of the one or more requests in this claim which must co-satisfy this constraint. If a request is fulfilled by multiple devices, then all of the devices must satisfy the constraint. If this is not specified, this constraint applies to all requests in this claim.References to subrequests must include the name of the main request and may include the subrequest using the format <main request>[/<subrequest>]. If just the main request is given, the constraint applies to all subrequests.
-
edit
public DeviceConstraintBuilder edit()
- Specified by:
editin interfaceio.fabric8.kubernetes.api.builder.Editable<DeviceConstraintBuilder>
-
toBuilder
public DeviceConstraintBuilder toBuilder()
-
-