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.
1381 1382 1383 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1381 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
1347 1348 1349 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1347 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
1357 1358 1359 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1357 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
1363 1364 1365 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1363 def memory_size_gb @memory_size_gb end |
#plan ⇒ String
Commitment usage plan.
Corresponds to the JSON property plan
1368 1369 1370 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1368 def plan @plan end |
#region ⇒ String
The region where the VM runs. For example: "us-central1"
Corresponds to the JSON property region
1373 1374 1375 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1373 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
1379 1380 1381 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1379 def virtual_cpu_count @virtual_cpu_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1386 1387 1388 1389 1390 1391 1392 1393 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 1386 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 |