pub struct EvictionRequest {
pub metadata: ObjectMeta,
pub spec: EvictionRequestSpec,
pub status: Option<EvictionRequestStatus>,
}Expand description
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.
Fields§
§metadata: ObjectMetametadata is the standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.
spec: EvictionRequestSpecspec defines the eviction request specification. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
status: Option<EvictionRequestStatus>status represents the most recently observed status of the eviction request. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
Trait Implementations§
Source§impl Clone for EvictionRequest
impl Clone for EvictionRequest
Source§impl Debug for EvictionRequest
impl Debug for EvictionRequest
Source§impl DeepMerge for EvictionRequest
impl DeepMerge for EvictionRequest
Source§fn merge_from(&mut self, other: Self)
fn merge_from(&mut self, other: Self)
other into self.Source§impl Default for EvictionRequest
impl Default for EvictionRequest
Source§impl<'de> Deserialize<'de> for EvictionRequest
impl<'de> Deserialize<'de> for EvictionRequest
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Source§impl ListableResource for EvictionRequest
impl ListableResource for EvictionRequest
Source§impl Metadata for EvictionRequest
impl Metadata for EvictionRequest
Source§impl PartialEq for EvictionRequest
impl PartialEq for EvictionRequest
Source§impl Resource for EvictionRequest
impl Resource for EvictionRequest
Source§const API_VERSION: &'static str = "lifecycle.k8s.io/v1alpha1"
const API_VERSION: &'static str = "lifecycle.k8s.io/v1alpha1"
Resource::GROUP and Resource::VERSION (eg "apiextensions.k8s.io/v1beta1")
or just the version for resources without a group (eg "v1"). Read more