pub struct Shape {Show 29 fields
pub shape: String,
pub baseline_ocpu_utilizations: Option<Vec<ShapeBaselineOcpuUtilizations>>,
pub min_total_baseline_ocpus_required: Option<i64>,
pub processor_description: Option<String>,
pub ocpus: Option<i64>,
pub memory_in_gbs: Option<i64>,
pub network_ports: Option<i64>,
pub networking_bandwidth_in_gbps: Option<i64>,
pub max_vnic_attachments: Option<i64>,
pub gpus: Option<i64>,
pub gpu_description: Option<String>,
pub local_disks: Option<i64>,
pub local_disks_total_size_in_gbs: Option<i64>,
pub local_disk_description: Option<String>,
pub rdma_ports: Option<i64>,
pub rdma_bandwidth_in_gbps: Option<i64>,
pub is_live_migration_supported: Option<bool>,
pub ocpu_options: Option<ShapeOcpuOptions>,
pub memory_options: Option<ShapeMemoryOptions>,
pub networking_bandwidth_options: Option<ShapeNetworkingBandwidthOptions>,
pub max_vnic_attachment_options: Option<ShapeMaxVnicAttachmentOptions>,
pub platform_config_options: Option<ShapePlatformConfigOptions>,
pub is_billed_for_stopped_instance: Option<bool>,
pub billing_type: Option<ShapeBillingType>,
pub quota_names: Option<Vec<String>>,
pub is_subcore: Option<bool>,
pub is_flexible: Option<bool>,
pub resize_compatible_shapes: Option<Vec<String>>,
pub recommended_alternatives: Option<Vec<ShapeAlternativeObject>>,
}Expand description
A compute instance shape that can be used in {@link #launchInstance(LaunchInstanceRequest) launchInstance}. For more information, see Overview of the Compute Service and Compute Shapes.
Fields§
§shape: StringThe name of the shape. You can enumerate all available shapes by calling {@link #listShapes(ListShapesRequest) listShapes}.
baseline_ocpu_utilizations: Option<Vec<ShapeBaselineOcpuUtilizations>>For a subcore burstable VM, the supported baseline OCPU utilization for instances that use this shape.
min_total_baseline_ocpus_required: Option<i64>For a subcore burstable VM, the minimum total baseline OCPUs required. The total baseline OCPUs is equal to baselineOcpuUtilization chosen multiplied by the number of OCPUs chosen. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
processor_description: Option<String>A short description of the shape’s processor (CPU).
ocpus: Option<i64>The default number of OCPUs available for this shape. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
memory_in_gbs: Option<i64>The default amount of memory available for this shape, in gigabytes. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
network_ports: Option<i64>The number of physical network interface card (NIC) ports available for this shape. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
networking_bandwidth_in_gbps: Option<i64>The networking bandwidth available for this shape, in gigabits per second. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
max_vnic_attachments: Option<i64>The maximum number of VNIC attachments available for this shape. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
gpus: Option<i64>The number of GPUs available for this shape. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
gpu_description: Option<String>A short description of the graphics processing unit (GPU) available for this shape.
If the shape does not have any GPUs, this field is {@code null}.
local_disks: Option<i64>The number of local disks available for this shape. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
local_disks_total_size_in_gbs: Option<i64>The aggregate size of the local disks available for this shape, in gigabytes.
If the shape does not have any local disks, this field is {@code null}. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
local_disk_description: Option<String>A short description of the local disks available for this shape.
If the shape does not have any local disks, this field is {@code null}.
rdma_ports: Option<i64>The number of networking ports available for the remote direct memory access (RDMA) network between nodes in a high performance computing (HPC) cluster network. If the shape does not support cluster networks, this value is {@code 0}. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
rdma_bandwidth_in_gbps: Option<i64>The networking bandwidth available for the remote direct memory access (RDMA) network for this shape, in gigabits per second. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
is_live_migration_supported: Option<bool>Whether live migration is supported for this shape.
ocpu_options: Option<ShapeOcpuOptions>§memory_options: Option<ShapeMemoryOptions>§networking_bandwidth_options: Option<ShapeNetworkingBandwidthOptions>§max_vnic_attachment_options: Option<ShapeMaxVnicAttachmentOptions>§platform_config_options: Option<ShapePlatformConfigOptions>§is_billed_for_stopped_instance: Option<bool>Whether billing continues when the instances that use this shape are in the stopped state.
billing_type: Option<ShapeBillingType>How instances that use this shape are charged.
quota_names: Option<Vec<String>>The list of of compartment quotas for the shape.
is_subcore: Option<bool>Whether the shape supports creating subcore or burstable instances. A burstable instance is a virtual machine (VM) instance that provides a baseline level of CPU performance with the ability to burst to a higher level to support occasional spikes in usage.
is_flexible: Option<bool>Whether the shape supports creating flexible instances. A flexible shape is a shape that lets you customize the number of OCPUs and the amount of memory when launching or resizing your instance.
resize_compatible_shapes: Option<Vec<String>>The list of compatible shapes that this shape can be changed to. For more information, see Changing the Shape of an Instance.
recommended_alternatives: Option<Vec<ShapeAlternativeObject>>The list of shapes and shape details (if applicable) that Oracle recommends that you use as an alternative to the current shape.
Implementations§
Source§impl Shape
impl Shape
Sourcepub fn new(required: ShapeRequired) -> Self
pub fn new(required: ShapeRequired) -> Self
Create a new Shape with required fields
Sourcepub fn set_baseline_ocpu_utilizations(
self,
value: Option<Vec<ShapeBaselineOcpuUtilizations>>,
) -> Self
pub fn set_baseline_ocpu_utilizations( self, value: Option<Vec<ShapeBaselineOcpuUtilizations>>, ) -> Self
Set baseline_ocpu_utilizations
Sourcepub fn set_min_total_baseline_ocpus_required(self, value: Option<i64>) -> Self
pub fn set_min_total_baseline_ocpus_required(self, value: Option<i64>) -> Self
Set min_total_baseline_ocpus_required
Sourcepub fn set_processor_description(self, value: Option<String>) -> Self
pub fn set_processor_description(self, value: Option<String>) -> Self
Set processor_description
Sourcepub fn set_memory_in_gbs(self, value: Option<i64>) -> Self
pub fn set_memory_in_gbs(self, value: Option<i64>) -> Self
Set memory_in_gbs
Sourcepub fn set_network_ports(self, value: Option<i64>) -> Self
pub fn set_network_ports(self, value: Option<i64>) -> Self
Set network_ports
Sourcepub fn set_networking_bandwidth_in_gbps(self, value: Option<i64>) -> Self
pub fn set_networking_bandwidth_in_gbps(self, value: Option<i64>) -> Self
Set networking_bandwidth_in_gbps
Sourcepub fn set_max_vnic_attachments(self, value: Option<i64>) -> Self
pub fn set_max_vnic_attachments(self, value: Option<i64>) -> Self
Set max_vnic_attachments
Sourcepub fn set_gpu_description(self, value: Option<String>) -> Self
pub fn set_gpu_description(self, value: Option<String>) -> Self
Set gpu_description
Sourcepub fn set_local_disks(self, value: Option<i64>) -> Self
pub fn set_local_disks(self, value: Option<i64>) -> Self
Set local_disks
Sourcepub fn set_local_disks_total_size_in_gbs(self, value: Option<i64>) -> Self
pub fn set_local_disks_total_size_in_gbs(self, value: Option<i64>) -> Self
Set local_disks_total_size_in_gbs
Sourcepub fn set_local_disk_description(self, value: Option<String>) -> Self
pub fn set_local_disk_description(self, value: Option<String>) -> Self
Set local_disk_description
Sourcepub fn set_rdma_ports(self, value: Option<i64>) -> Self
pub fn set_rdma_ports(self, value: Option<i64>) -> Self
Set rdma_ports
Sourcepub fn set_rdma_bandwidth_in_gbps(self, value: Option<i64>) -> Self
pub fn set_rdma_bandwidth_in_gbps(self, value: Option<i64>) -> Self
Set rdma_bandwidth_in_gbps
Sourcepub fn set_is_live_migration_supported(self, value: Option<bool>) -> Self
pub fn set_is_live_migration_supported(self, value: Option<bool>) -> Self
Set is_live_migration_supported
Sourcepub fn set_ocpu_options(self, value: Option<ShapeOcpuOptions>) -> Self
pub fn set_ocpu_options(self, value: Option<ShapeOcpuOptions>) -> Self
Set ocpu_options
Sourcepub fn set_memory_options(self, value: Option<ShapeMemoryOptions>) -> Self
pub fn set_memory_options(self, value: Option<ShapeMemoryOptions>) -> Self
Set memory_options
Sourcepub fn set_networking_bandwidth_options(
self,
value: Option<ShapeNetworkingBandwidthOptions>,
) -> Self
pub fn set_networking_bandwidth_options( self, value: Option<ShapeNetworkingBandwidthOptions>, ) -> Self
Set networking_bandwidth_options
Sourcepub fn set_max_vnic_attachment_options(
self,
value: Option<ShapeMaxVnicAttachmentOptions>,
) -> Self
pub fn set_max_vnic_attachment_options( self, value: Option<ShapeMaxVnicAttachmentOptions>, ) -> Self
Set max_vnic_attachment_options
Sourcepub fn set_platform_config_options(
self,
value: Option<ShapePlatformConfigOptions>,
) -> Self
pub fn set_platform_config_options( self, value: Option<ShapePlatformConfigOptions>, ) -> Self
Set platform_config_options
Sourcepub fn set_is_billed_for_stopped_instance(self, value: Option<bool>) -> Self
pub fn set_is_billed_for_stopped_instance(self, value: Option<bool>) -> Self
Set is_billed_for_stopped_instance
Sourcepub fn set_billing_type(self, value: Option<ShapeBillingType>) -> Self
pub fn set_billing_type(self, value: Option<ShapeBillingType>) -> Self
Set billing_type
Sourcepub fn set_quota_names(self, value: Option<Vec<String>>) -> Self
pub fn set_quota_names(self, value: Option<Vec<String>>) -> Self
Set quota_names
Sourcepub fn set_is_subcore(self, value: Option<bool>) -> Self
pub fn set_is_subcore(self, value: Option<bool>) -> Self
Set is_subcore
Sourcepub fn set_is_flexible(self, value: Option<bool>) -> Self
pub fn set_is_flexible(self, value: Option<bool>) -> Self
Set is_flexible
Sourcepub fn set_resize_compatible_shapes(self, value: Option<Vec<String>>) -> Self
pub fn set_resize_compatible_shapes(self, value: Option<Vec<String>>) -> Self
Set resize_compatible_shapes
Sourcepub fn set_recommended_alternatives(
self,
value: Option<Vec<ShapeAlternativeObject>>,
) -> Self
pub fn set_recommended_alternatives( self, value: Option<Vec<ShapeAlternativeObject>>, ) -> Self
Set recommended_alternatives
Sourcepub fn with_baseline_ocpu_utilizations(
self,
value: Vec<ShapeBaselineOcpuUtilizations>,
) -> Self
pub fn with_baseline_ocpu_utilizations( self, value: Vec<ShapeBaselineOcpuUtilizations>, ) -> Self
Set baseline_ocpu_utilizations (unwraps Option)
Sourcepub fn with_min_total_baseline_ocpus_required(self, value: i64) -> Self
pub fn with_min_total_baseline_ocpus_required(self, value: i64) -> Self
Set min_total_baseline_ocpus_required (unwraps Option)
Sourcepub fn with_processor_description(self, value: impl Into<String>) -> Self
pub fn with_processor_description(self, value: impl Into<String>) -> Self
Set processor_description (unwraps Option)
Sourcepub fn with_ocpus(self, value: i64) -> Self
pub fn with_ocpus(self, value: i64) -> Self
Set ocpus (unwraps Option)
Sourcepub fn with_memory_in_gbs(self, value: i64) -> Self
pub fn with_memory_in_gbs(self, value: i64) -> Self
Set memory_in_gbs (unwraps Option)
Sourcepub fn with_network_ports(self, value: i64) -> Self
pub fn with_network_ports(self, value: i64) -> Self
Set network_ports (unwraps Option)
Sourcepub fn with_networking_bandwidth_in_gbps(self, value: i64) -> Self
pub fn with_networking_bandwidth_in_gbps(self, value: i64) -> Self
Set networking_bandwidth_in_gbps (unwraps Option)
Sourcepub fn with_max_vnic_attachments(self, value: i64) -> Self
pub fn with_max_vnic_attachments(self, value: i64) -> Self
Set max_vnic_attachments (unwraps Option)
Sourcepub fn with_gpu_description(self, value: impl Into<String>) -> Self
pub fn with_gpu_description(self, value: impl Into<String>) -> Self
Set gpu_description (unwraps Option)
Sourcepub fn with_local_disks(self, value: i64) -> Self
pub fn with_local_disks(self, value: i64) -> Self
Set local_disks (unwraps Option)
Sourcepub fn with_local_disks_total_size_in_gbs(self, value: i64) -> Self
pub fn with_local_disks_total_size_in_gbs(self, value: i64) -> Self
Set local_disks_total_size_in_gbs (unwraps Option)
Sourcepub fn with_local_disk_description(self, value: impl Into<String>) -> Self
pub fn with_local_disk_description(self, value: impl Into<String>) -> Self
Set local_disk_description (unwraps Option)
Sourcepub fn with_rdma_ports(self, value: i64) -> Self
pub fn with_rdma_ports(self, value: i64) -> Self
Set rdma_ports (unwraps Option)
Sourcepub fn with_rdma_bandwidth_in_gbps(self, value: i64) -> Self
pub fn with_rdma_bandwidth_in_gbps(self, value: i64) -> Self
Set rdma_bandwidth_in_gbps (unwraps Option)
Sourcepub fn with_is_live_migration_supported(self, value: bool) -> Self
pub fn with_is_live_migration_supported(self, value: bool) -> Self
Set is_live_migration_supported (unwraps Option)
Sourcepub fn with_ocpu_options(self, value: ShapeOcpuOptions) -> Self
pub fn with_ocpu_options(self, value: ShapeOcpuOptions) -> Self
Set ocpu_options (unwraps Option)
Sourcepub fn with_memory_options(self, value: ShapeMemoryOptions) -> Self
pub fn with_memory_options(self, value: ShapeMemoryOptions) -> Self
Set memory_options (unwraps Option)
Sourcepub fn with_networking_bandwidth_options(
self,
value: ShapeNetworkingBandwidthOptions,
) -> Self
pub fn with_networking_bandwidth_options( self, value: ShapeNetworkingBandwidthOptions, ) -> Self
Set networking_bandwidth_options (unwraps Option)
Sourcepub fn with_max_vnic_attachment_options(
self,
value: ShapeMaxVnicAttachmentOptions,
) -> Self
pub fn with_max_vnic_attachment_options( self, value: ShapeMaxVnicAttachmentOptions, ) -> Self
Set max_vnic_attachment_options (unwraps Option)
Sourcepub fn with_platform_config_options(
self,
value: ShapePlatformConfigOptions,
) -> Self
pub fn with_platform_config_options( self, value: ShapePlatformConfigOptions, ) -> Self
Set platform_config_options (unwraps Option)
Sourcepub fn with_is_billed_for_stopped_instance(self, value: bool) -> Self
pub fn with_is_billed_for_stopped_instance(self, value: bool) -> Self
Set is_billed_for_stopped_instance (unwraps Option)
Sourcepub fn with_billing_type(self, value: ShapeBillingType) -> Self
pub fn with_billing_type(self, value: ShapeBillingType) -> Self
Set billing_type (unwraps Option)
Sourcepub fn with_quota_names(self, value: Vec<String>) -> Self
pub fn with_quota_names(self, value: Vec<String>) -> Self
Set quota_names (unwraps Option)
Sourcepub fn with_is_subcore(self, value: bool) -> Self
pub fn with_is_subcore(self, value: bool) -> Self
Set is_subcore (unwraps Option)
Sourcepub fn with_is_flexible(self, value: bool) -> Self
pub fn with_is_flexible(self, value: bool) -> Self
Set is_flexible (unwraps Option)
Sourcepub fn with_resize_compatible_shapes(self, value: Vec<String>) -> Self
pub fn with_resize_compatible_shapes(self, value: Vec<String>) -> Self
Set resize_compatible_shapes (unwraps Option)
Sourcepub fn with_recommended_alternatives(
self,
value: Vec<ShapeAlternativeObject>,
) -> Self
pub fn with_recommended_alternatives( self, value: Vec<ShapeAlternativeObject>, ) -> Self
Set recommended_alternatives (unwraps Option)