Struct google_api_proto::google::cloud::batch::v1alpha::allocation_policy::Disk
source · pub struct Disk {
pub type: String,
pub size_gb: i64,
pub disk_interface: String,
pub data_source: Option<DataSource>,
}Expand description
A new persistent disk or a local ssd. A VM can only have one local SSD setting but multiple local SSD partitions. See https://cloud.google.com/compute/docs/disks#pdspecs and https://cloud.google.com/compute/docs/disks#localssds.
Fields§
§type: StringDisk type as shown in gcloud compute disk-types list.
For example, local SSD uses type “local-ssd”.
Persistent disks and boot disks use “pd-balanced”, “pd-extreme”, “pd-ssd”
or “pd-standard”. If not specified, “pd-standard” will be used as the
default type for non-boot disks, “pd-balanced” will be used as the
default type for boot disks.
size_gb: i64Disk size in GB.
Non-Boot Disk:
If the type specifies a persistent disk, this field
is ignored if data_source is set as image or snapshot.
If the type specifies a local SSD, this field should be a multiple of
375 GB, otherwise, the final size will be the next greater multiple of
375 GB.
Boot Disk:
Batch will calculate the boot disk size based on source
image and task requirements if you do not speicify the size.
If both this field and the boot_disk_mib field in task spec’s
compute_resource are defined, Batch will only honor this field.
Also, this field should be no smaller than the source disk’s
size when the data_source is set as snapshot or image.
For example, if you set an image as the data_source field and the
image’s default disk size 30 GB, you can only use this field to make the
disk larger or equal to 30 GB.
disk_interface: StringLocal SSDs are available through both “SCSI” and “NVMe” interfaces. If not indicated, “NVMe” will be the default one for local ssds. This field is ignored for persistent disks as the interface is chosen automatically. See https://cloud.google.com/compute/docs/disks/persistent-disks#choose_an_interface.
data_source: Option<DataSource>A data source from which a PD will be created.
Trait Implementations§
source§impl Message for Disk
impl Message for Disk
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.source§impl PartialEq for Disk
impl PartialEq for Disk
impl StructuralPartialEq for Disk
Auto Trait Implementations§
impl Freeze for Disk
impl RefUnwindSafe for Disk
impl Send for Disk
impl Sync for Disk
impl Unpin for Disk
impl UnwindSafe for Disk
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request