Skip to main content

VsanSpaceUsage

Struct VsanSpaceUsage 

Source
pub struct VsanSpaceUsage {
    pub total_capacity_b: i64,
    pub free_capacity_b: Option<i64>,
    pub space_overview: Option<VsanObjectSpaceSummary>,
    pub space_detail: Option<VsanSpaceUsageDetailResult>,
    pub efficient_capacity: Option<VimVsanDataEfficiencyCapacityState>,
    pub whatif_capacities: Option<Vec<VsanWhatifCapacity>>,
    pub uncommitted_b: Option<i64>,
    pub capacity_health_threshold: Option<VsanHealthThreshold>,
    pub space_efficiency_ratio: Option<VsanSpaceEfficiencyRatio>,
}
Expand description

Describes the vSAN space usage.

There are multiple ways to present the space usage. One way is presenting the overall vSAN cluster system space usage like total used space in which how much data is physically written into disk and how much is the over-reserved space size. A second is listing the space usage breakdown per vSAN object type defined in below enumerations: VsanObjectTypeEnum_enum, VsanObjectTypeEnum90_enum

§How to access

  • VsanSpaceReportSystem::vsan_query_space_usage()
  • VsanSpaceReportSystem::query_vsan_managed_storage_space_usage().space_usage?

Fields§

§total_capacity_b: i64

The total vSAN capacity in byte, which is the total used and free capacity combined.

It’s the total of physical space which can be use for writing data including any of user data, metadata and the overhead data.

§free_capacity_b: Option<i64>

The free vSAN capacity in byte.

It’s the total of free vSAN physical space which can be used for writing data including any of user data, metadata and the overhead data.

§space_overview: Option<VsanObjectSpaceSummary>

The vSAN space usage overview including the vSAN physically written capacity, the reserved and over-reserved capacity and the total used capacity.

It shares the same data structure as the per vSAN object type space usage summary VsanObjectSpaceSummary without setting the object type.

§space_detail: Option<VsanSpaceUsageDetailResult>

The vSAN space usage detail by breakdown the usage into different vSAN object type.

§efficient_capacity: Option<VimVsanDataEfficiencyCapacityState>

The vSAN efficient capacity breakdown details when the vSAN cluster enables data efficiency.

§whatif_capacities: Option<Vec<VsanWhatifCapacity>>

The vSAN capacity details if all objects are stored with the specified storage policy.

§uncommitted_b: Option<i64>

Total additional storage space, in bytes, potentially used by all vSAN objects except for the virtual machine swap objects and namespace objects on this vSAN datastore.

It can be retrieved through VsanSpaceReportSystem.VsanQuerySpaceUsage by specifying whatifCapacityOnly as False.

§capacity_health_threshold: Option<VsanHealthThreshold>

Indicates the yellow or red threshold, in bytes, for capacity usage based on current cluster capacityReservationInfo.

§space_efficiency_ratio: Option<VsanSpaceEfficiencyRatio>

Indicates the vSAN space efficiency ratio, it exists only when vSAN efficiency feature is enabled, including dedup and compression.

Since: 8.0.0.4

Trait Implementations§

Source§

impl Debug for VsanSpaceUsage

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deserialize for VsanSpaceUsage

Source§

fn begin(out: &mut Option<Self>) -> &mut dyn Visitor

The only correct implementation of this method is: Read more
Source§

impl Serialize for VsanSpaceUsage

Source§

fn begin(&self) -> Fragment<'_>

Source§

impl VimObjectTrait for VsanSpaceUsage

Source§

impl DataObjectTrait for VsanSpaceUsage

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> AsAny for T
where T: 'static,

Source§

fn as_any_ref<'a>(&'a self) -> &'a (dyn Any + 'static)

Cast a reference to Any trait.

Source§

fn as_any_box(self: Box<T>) -> Box<dyn Any>

Cast to a boxed reference to Any trait.

Source§

fn type_id(&self) -> TypeId

Get the underlying type identifier.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<To, T> CastInto<To> for T
where To: CastFrom<T> + ?Sized, T: 'static + ?Sized,

Source§

fn into_ref<'a>(&'a self) -> Option<&'a To>

Casts a reference to a trait object. If the cast fails, std::option::Option::None is returned.
Source§

fn into_box(self: Box<T>) -> Result<Box<To>, Box<dyn Any>>

Casts a boxed trait object to another trait object. If the cast fails, the original boxed trait object is returned in std::result::Result::Err.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,