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.
2914 2915 2916 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2914 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
2880 2881 2882 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2880 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
2890 2891 2892 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2890 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
2896 2897 2898 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2896 def memory_size_gb @memory_size_gb end |
#plan ⇒ String
Commitment usage plan.
Corresponds to the JSON property plan
2901 2902 2903 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2901 def plan @plan end |
#region ⇒ String
The region where the VM runs. For example: "us-central1"
Corresponds to the JSON property region
2906 2907 2908 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2906 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
2912 2913 2914 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2912 def virtual_cpu_count @virtual_cpu_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2919 2920 2921 2922 2923 2924 2925 2926 |
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2919 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 |