#[non_exhaustive]pub struct StoragePool {Show 32 fields
pub name: String,
pub service_level: ServiceLevel,
pub capacity_gib: i64,
pub volume_capacity_gib: i64,
pub volume_count: i32,
pub state: State,
pub state_details: String,
pub create_time: Option<Timestamp>,
pub description: String,
pub labels: HashMap<String, String>,
pub network: String,
pub active_directory: String,
pub kms_config: String,
pub ldap_enabled: bool,
pub psa_range: String,
pub encryption_type: EncryptionType,
pub global_access_allowed: Option<bool>,
pub allow_auto_tiering: bool,
pub replica_zone: String,
pub zone: String,
pub satisfies_pzs: bool,
pub satisfies_pzi: bool,
pub custom_performance_enabled: bool,
pub total_throughput_mibps: i64,
pub total_iops: i64,
pub hot_tier_size_gib: i64,
pub enable_hot_tier_auto_resize: Option<bool>,
pub qos_type: QosType,
pub available_throughput_mibps: f64,
pub cold_tier_size_used_gib: i64,
pub hot_tier_size_used_gib: i64,
pub type: Option<StoragePoolType>,
/* private fields */
}Expand description
StoragePool is a container for volumes with a service level and capacity. Volumes can be created in a pool of sufficient available capacity. StoragePool capacity is what you are billed for.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: StringIdentifier. Name of the storage pool
service_level: ServiceLevelRequired. Service level of the storage pool
capacity_gib: i64Required. Capacity in GIB of the pool
volume_capacity_gib: i64Output only. Allocated size of all volumes in GIB in the storage pool
volume_count: i32Output only. Volume count of the storage pool
state: StateOutput only. State of the storage pool
state_details: StringOutput only. State details of the storage pool
create_time: Option<Timestamp>Output only. Create time of the storage pool
description: StringOptional. Description of the storage pool
labels: HashMap<String, String>Optional. Labels as key value pairs
network: StringRequired. VPC Network name. Format: projects/{project}/global/networks/{network}
active_directory: StringOptional. Specifies the Active Directory to be used for creating a SMB volume.
kms_config: StringOptional. Specifies the KMS config to be used for volume encryption.
ldap_enabled: boolOptional. Flag indicating if the pool is NFS LDAP enabled or not.
psa_range: StringOptional. This field is not implemented. The values provided in this field are ignored.
encryption_type: EncryptionTypeOutput only. Specifies the current pool encryption key source.
global_access_allowed: Option<bool>Deprecated. Used to allow SO pool to access AD or DNS server from other regions.
allow_auto_tiering: boolOptional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can’t be disabled once enabled.
replica_zone: StringOptional. Specifies the replica zone for regional storagePool.
zone: StringOptional. Specifies the active zone for regional storagePool.
satisfies_pzs: boolOutput only. Reserved for future use
satisfies_pzi: boolOutput only. Reserved for future use
custom_performance_enabled: boolOptional. True if using Independent Scaling of capacity and performance (Hyperdisk) By default set to false
total_throughput_mibps: i64Optional. Custom Performance Total Throughput of the pool (in MiBps)
total_iops: i64Optional. Custom Performance Total IOPS of the pool if not provided, it will be calculated based on the total_throughput_mibps
hot_tier_size_gib: i64Optional. Total hot tier capacity for the Storage Pool. It is applicable only to Flex service level. It should be less than the minimum storage pool size and cannot be more than the current storage pool size. It cannot be decreased once set.
enable_hot_tier_auto_resize: Option<bool>Optional. Flag indicating that the hot-tier threshold will be auto-increased by 10% of the hot-tier when it hits 100%. Default is true. The increment will kick in only if the new size after increment is still less than or equal to storage pool size.
qos_type: QosTypeOptional. QoS (Quality of Service) Type of the storage pool
available_throughput_mibps: f64Output only. Available throughput of the storage pool (in MiB/s).
cold_tier_size_used_gib: i64Output only. Total cold tier data rounded down to the nearest GiB used by the storage pool.
hot_tier_size_used_gib: i64Output only. Total hot tier data rounded down to the nearest GiB used by the storage pool.
type: Option<StoragePoolType>Optional. Type of the storage pool. This field is used to control whether
the pool supports FILE based volumes only or UNIFIED (both FILE and
BLOCK) volumes or UNIFIED_LARGE_CAPACITY (both FILE and BLOCK)
volumes with large capacity. If not specified during creation, it defaults
to FILE.
Implementations§
Source§impl StoragePool
impl StoragePool
pub fn new() -> Self
Sourcepub fn set_service_level<T: Into<ServiceLevel>>(self, v: T) -> Self
pub fn set_service_level<T: Into<ServiceLevel>>(self, v: T) -> Self
Sets the value of service_level.
§Example
use google_cloud_netapp_v1::model::ServiceLevel;
let x0 = StoragePool::new().set_service_level(ServiceLevel::Premium);
let x1 = StoragePool::new().set_service_level(ServiceLevel::Extreme);
let x2 = StoragePool::new().set_service_level(ServiceLevel::Standard);Sourcepub fn set_capacity_gib<T: Into<i64>>(self, v: T) -> Self
pub fn set_capacity_gib<T: Into<i64>>(self, v: T) -> Self
Sourcepub fn set_volume_capacity_gib<T: Into<i64>>(self, v: T) -> Self
pub fn set_volume_capacity_gib<T: Into<i64>>(self, v: T) -> Self
Sets the value of volume_capacity_gib.
§Example
let x = StoragePool::new().set_volume_capacity_gib(42);Sourcepub fn set_volume_count<T: Into<i32>>(self, v: T) -> Self
pub fn set_volume_count<T: Into<i32>>(self, v: T) -> Self
Sourcepub fn set_state_details<T: Into<String>>(self, v: T) -> Self
pub fn set_state_details<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_create_time<T>(self, v: T) -> Self
pub fn set_create_time<T>(self, v: T) -> Self
Sets the value of create_time.
§Example
use wkt::Timestamp;
let x = StoragePool::new().set_create_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of create_time.
§Example
use wkt::Timestamp;
let x = StoragePool::new().set_or_clear_create_time(Some(Timestamp::default()/* use setters */));
let x = StoragePool::new().set_or_clear_create_time(None::<Timestamp>);Sourcepub fn set_description<T: Into<String>>(self, v: T) -> Self
pub fn set_description<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_labels<T, K, V>(self, v: T) -> Self
pub fn set_labels<T, K, V>(self, v: T) -> Self
Sourcepub fn set_network<T: Into<String>>(self, v: T) -> Self
pub fn set_network<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_active_directory<T: Into<String>>(self, v: T) -> Self
pub fn set_active_directory<T: Into<String>>(self, v: T) -> Self
Sets the value of active_directory.
§Example
let x = StoragePool::new().set_active_directory("example");Sourcepub fn set_kms_config<T: Into<String>>(self, v: T) -> Self
pub fn set_kms_config<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_ldap_enabled<T: Into<bool>>(self, v: T) -> Self
pub fn set_ldap_enabled<T: Into<bool>>(self, v: T) -> Self
Sourcepub fn set_psa_range<T: Into<String>>(self, v: T) -> Self
pub fn set_psa_range<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_encryption_type<T: Into<EncryptionType>>(self, v: T) -> Self
pub fn set_encryption_type<T: Into<EncryptionType>>(self, v: T) -> Self
Sets the value of encryption_type.
§Example
use google_cloud_netapp_v1::model::EncryptionType;
let x0 = StoragePool::new().set_encryption_type(EncryptionType::ServiceManaged);
let x1 = StoragePool::new().set_encryption_type(EncryptionType::CloudKms);Sourcepub fn set_global_access_allowed<T>(self, v: T) -> Self
👎Deprecated
pub fn set_global_access_allowed<T>(self, v: T) -> Self
Sets the value of global_access_allowed.
§Example
let x = StoragePool::new().set_global_access_allowed(true);Sourcepub fn set_or_clear_global_access_allowed<T>(self, v: Option<T>) -> Self
👎Deprecated
pub fn set_or_clear_global_access_allowed<T>(self, v: Option<T>) -> Self
Sets or clears the value of global_access_allowed.
§Example
let x = StoragePool::new().set_or_clear_global_access_allowed(Some(false));
let x = StoragePool::new().set_or_clear_global_access_allowed(None::<bool>);Sourcepub fn set_allow_auto_tiering<T: Into<bool>>(self, v: T) -> Self
pub fn set_allow_auto_tiering<T: Into<bool>>(self, v: T) -> Self
Sets the value of allow_auto_tiering.
§Example
let x = StoragePool::new().set_allow_auto_tiering(true);Sourcepub fn set_replica_zone<T: Into<String>>(self, v: T) -> Self
pub fn set_replica_zone<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_satisfies_pzs<T: Into<bool>>(self, v: T) -> Self
pub fn set_satisfies_pzs<T: Into<bool>>(self, v: T) -> Self
Sourcepub fn set_satisfies_pzi<T: Into<bool>>(self, v: T) -> Self
pub fn set_satisfies_pzi<T: Into<bool>>(self, v: T) -> Self
Sourcepub fn set_custom_performance_enabled<T: Into<bool>>(self, v: T) -> Self
pub fn set_custom_performance_enabled<T: Into<bool>>(self, v: T) -> Self
Sets the value of custom_performance_enabled.
§Example
let x = StoragePool::new().set_custom_performance_enabled(true);Sourcepub fn set_total_throughput_mibps<T: Into<i64>>(self, v: T) -> Self
pub fn set_total_throughput_mibps<T: Into<i64>>(self, v: T) -> Self
Sets the value of total_throughput_mibps.
§Example
let x = StoragePool::new().set_total_throughput_mibps(42);Sourcepub fn set_total_iops<T: Into<i64>>(self, v: T) -> Self
pub fn set_total_iops<T: Into<i64>>(self, v: T) -> Self
Sourcepub fn set_hot_tier_size_gib<T: Into<i64>>(self, v: T) -> Self
pub fn set_hot_tier_size_gib<T: Into<i64>>(self, v: T) -> Self
Sets the value of hot_tier_size_gib.
§Example
let x = StoragePool::new().set_hot_tier_size_gib(42);Sourcepub fn set_enable_hot_tier_auto_resize<T>(self, v: T) -> Self
pub fn set_enable_hot_tier_auto_resize<T>(self, v: T) -> Self
Sets the value of enable_hot_tier_auto_resize.
§Example
let x = StoragePool::new().set_enable_hot_tier_auto_resize(true);Sourcepub fn set_or_clear_enable_hot_tier_auto_resize<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_enable_hot_tier_auto_resize<T>(self, v: Option<T>) -> Self
Sets or clears the value of enable_hot_tier_auto_resize.
§Example
let x = StoragePool::new().set_or_clear_enable_hot_tier_auto_resize(Some(false));
let x = StoragePool::new().set_or_clear_enable_hot_tier_auto_resize(None::<bool>);Sourcepub fn set_qos_type<T: Into<QosType>>(self, v: T) -> Self
pub fn set_qos_type<T: Into<QosType>>(self, v: T) -> Self
Sourcepub fn set_available_throughput_mibps<T: Into<f64>>(self, v: T) -> Self
pub fn set_available_throughput_mibps<T: Into<f64>>(self, v: T) -> Self
Sets the value of available_throughput_mibps.
§Example
let x = StoragePool::new().set_available_throughput_mibps(42.0);Sourcepub fn set_cold_tier_size_used_gib<T: Into<i64>>(self, v: T) -> Self
pub fn set_cold_tier_size_used_gib<T: Into<i64>>(self, v: T) -> Self
Sets the value of cold_tier_size_used_gib.
§Example
let x = StoragePool::new().set_cold_tier_size_used_gib(42);Sourcepub fn set_hot_tier_size_used_gib<T: Into<i64>>(self, v: T) -> Self
pub fn set_hot_tier_size_used_gib<T: Into<i64>>(self, v: T) -> Self
Sets the value of hot_tier_size_used_gib.
§Example
let x = StoragePool::new().set_hot_tier_size_used_gib(42);Sourcepub fn set_type<T>(self, v: T) -> Selfwhere
T: Into<StoragePoolType>,
pub fn set_type<T>(self, v: T) -> Selfwhere
T: Into<StoragePoolType>,
Sourcepub fn set_or_clear_type<T>(self, v: Option<T>) -> Selfwhere
T: Into<StoragePoolType>,
pub fn set_or_clear_type<T>(self, v: Option<T>) -> Selfwhere
T: Into<StoragePoolType>,
Sets or clears the value of r#type.
§Example
use google_cloud_netapp_v1::model::StoragePoolType;
let x0 = StoragePool::new().set_or_clear_type(Some(StoragePoolType::File));
let x1 = StoragePool::new().set_or_clear_type(Some(StoragePoolType::Unified));
let x2 = StoragePool::new().set_or_clear_type(Some(StoragePoolType::UnifiedLargeCapacity));
let x_none = StoragePool::new().set_or_clear_type(None::<StoragePoolType>);Trait Implementations§
Source§impl Clone for StoragePool
impl Clone for StoragePool
Source§fn clone(&self) -> StoragePool
fn clone(&self) -> StoragePool
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more