Class: Google::Apis::CloudbillingV1beta::VmResourceBasedCud
- Inherits:
-
Object
- Object
- Google::Apis::CloudbillingV1beta::VmResourceBasedCud
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudbilling_v1beta/classes.rb,
lib/google/apis/cloudbilling_v1beta/representations.rb,
lib/google/apis/cloudbilling_v1beta/representations.rb
Overview
Specifies a resource-based committed use discount (CUD).
Instance Attribute Summary collapse
-
#guest_accelerator ⇒ Google::Apis::CloudbillingV1beta::GuestAccelerator
Specification of a set of guest accelerators attached to a machine.
-
#machine_series ⇒ String
The machine series for CUD.
-
#memory_size_gb ⇒ Float
Memory size of the VM in GB (2^30 bytes).
-
#plan ⇒ String
Commitment usage plan.
-
#region ⇒ String
The region where the VM runs.
-
#virtual_cpu_count ⇒ Fixnum
The number of vCPUs.
Instance Method Summary collapse
-
#initialize(**args) ⇒ VmResourceBasedCud
constructor
A new instance of VmResourceBasedCud.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ VmResourceBasedCud
Returns a new instance of VmResourceBasedCud.
1052 1053 1054 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1052 def initialize(**args) update!(**args) end |
Instance Attribute Details
#guest_accelerator ⇒ Google::Apis::CloudbillingV1beta::GuestAccelerator
Specification of a set of guest accelerators attached to a machine.
Corresponds to the JSON property guestAccelerator
1018 1019 1020 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1018 def guest_accelerator @guest_accelerator end |
#machine_series ⇒ String
The machine series for CUD. For example: "n1" for general purpose N1 machine
type commitments. "n2" for general purpose N2 machine type commitments. "e2"
for general purpose E2 machine type commitments. "n2d" for general purpose N2D
machine type commitments. "t2d" for general purpose T2D machine type
commitments. "c2"/"c2d" for compute-optimized commitments. "m1"/"m2" for the
memory-optimized commitments. "a2' for the accelerator-optimized commitments.
Corresponds to the JSON property machineSeries
1028 1029 1030 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1028 def machine_series @machine_series end |
#memory_size_gb ⇒ Float
Memory size of the VM in GB (2^30 bytes). Must be an increment of 0.25 (256 MB)
.
Corresponds to the JSON property memorySizeGb
1034 1035 1036 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1034 def memory_size_gb @memory_size_gb end |
#plan ⇒ String
Commitment usage plan.
Corresponds to the JSON property plan
1039 1040 1041 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1039 def plan @plan end |
#region ⇒ String
The region where the VM runs. For example: "us-central1"
Corresponds to the JSON property region
1044 1045 1046 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1044 def region @region end |
#virtual_cpu_count ⇒ Fixnum
The number of vCPUs. The number of vCPUs must be an integer of 0 or more and
can be even or odd.
Corresponds to the JSON property virtualCpuCount
1050 1051 1052 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1050 def virtual_cpu_count @virtual_cpu_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1057 1058 1059 1060 1061 1062 1063 1064 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1057 def update!(**args) @guest_accelerator = args[:guest_accelerator] if args.key?(:guest_accelerator) @machine_series = args[:machine_series] if args.key?(:machine_series) @memory_size_gb = args[:memory_size_gb] if args.key?(:memory_size_gb) @plan = args[:plan] if args.key?(:plan) @region = args[:region] if args.key?(:region) @virtual_cpu_count = args[:virtual_cpu_count] if args.key?(:virtual_cpu_count) end |