Class V1alpha1EvictionRequest
EvictionRequest defines a request that should ideally result in a graceful
eviction of a .spec.target (e.g. termination of a pod).
The evictionrequest-controller observes intents of all EvictionRequests and
transforms them into Evictions.
- .spec.requester is set as a label on the Eviction for easier lookup.
- Each target can have a set of responders assigned to it. Eviction objects are
observed by
these responders, who implement the eviction logic and update the Eviction's
status with
progress.
There is many-to-many relationship between EvictionRequests and Evictions in
general. And many-to-one if the target is a pod.
If all requesters withdraw their eviction intent for a common target, the
eviction will be canceled. Deleting an EvictionRequest also counts as a
withdrawal. Once all EvictionRequest of a target are removed, the corresponding
Evictions are eventually garbage collected.
Inheritance
V1alpha1EvictionRequest
Assembly: KubernetesClient.dll
Syntax
[KubernetesEntity(Group = "lifecycle.k8s.io", Kind = "EvictionRequest", ApiVersion = "v1alpha1", PluralName = "evictionrequests")]
public record V1alpha1EvictionRequest : IKubernetesObject<V1ObjectMeta>, IKubernetesObject, IMetadata<V1ObjectMeta>, ISpec<V1alpha1EvictionRequestSpec>, IEquatable<V1alpha1EvictionRequest>
Constructors
V1alpha1EvictionRequest()
Declaration
public V1alpha1EvictionRequest()
V1alpha1EvictionRequest(V1alpha1EvictionRequest)
Declaration
protected V1alpha1EvictionRequest(V1alpha1EvictionRequest original)
Parameters
Fields
KubeApiVersion
Declaration
public const string KubeApiVersion = "v1alpha1"
Field Value
KubeGroup
Declaration
public const string KubeGroup = "lifecycle.k8s.io"
Field Value
KubeKind
Declaration
public const string KubeKind = "EvictionRequest"
Field Value
KubePluralName
Declaration
public const string KubePluralName = "evictionrequests"
Field Value
Properties
ApiVersion
Declaration
[JsonPropertyName("apiVersion")]
public string ApiVersion { get; set; }
Property Value
EqualityContract
Declaration
protected virtual Type EqualityContract { get; }
Property Value
Kind
Declaration
[JsonPropertyName("kind")]
public string Kind { get; set; }
Property Value
Declaration
[JsonPropertyName("metadata")]
public V1ObjectMeta Metadata { get; set; }
Property Value
Spec
Declaration
[JsonPropertyName("spec")]
public V1alpha1EvictionRequestSpec Spec { get; set; }
Property Value
Status
Declaration
[JsonPropertyName("status")]
public V1alpha1EvictionRequestStatus Status { get; set; }
Property Value
Methods
Equals(object?)
Declaration
public override bool Equals(object? obj)
Parameters
| Type |
Name |
Description |
| object |
obj |
|
Returns
Overrides
Equals(V1alpha1EvictionRequest?)
Declaration
public virtual bool Equals(V1alpha1EvictionRequest? other)
Parameters
Returns
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Overrides
PrintMembers(StringBuilder)
Declaration
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
Returns
ToString()
Declaration
public override string ToString()
Returns
Overrides
Operators
operator ==(V1alpha1EvictionRequest?, V1alpha1EvictionRequest?)
Declaration
public static bool operator ==(V1alpha1EvictionRequest? left, V1alpha1EvictionRequest? right)
Parameters
Returns
operator !=(V1alpha1EvictionRequest?, V1alpha1EvictionRequest?)
Declaration
public static bool operator !=(V1alpha1EvictionRequest? left, V1alpha1EvictionRequest? right)
Parameters
Returns
Implements
Extension Methods