Class: Google::Apis::ComputeAlpha::NodeGroup
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::NodeGroup
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Overview
Represents a sole-tenant Node Group resource. A sole-tenant node is a physical server that is dedicated to hosting VM instances only for your specific project. Use sole-tenant nodes to keep your instances physically separated from instances in other projects, or to group your instances together on the same host hardware. For more information, readSole-tenant nodes.
Instance Attribute Summary collapse
-
#autoscaling_policy ⇒ Google::Apis::ComputeAlpha::NodeGroupAutoscalingPolicy
Specifies how autoscaling should behave.
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
An optional description of this resource.
-
#fingerprint ⇒ String
Corresponds to the JSON property
fingerprintNOTE: Values are automatically base64 encoded/decoded in the client library. -
#id ⇒ Fixnum
Output only.
-
#kind ⇒ String
Output only.
-
#location_hint ⇒ String
An opaque location hint used to place the Node close to other resources.
-
#maintenance_interval ⇒ String
Specifies the frequency of planned maintenance events.
-
#maintenance_policy ⇒ String
Specifies how to handle instances when a node in the group undergoes maintenance.
-
#maintenance_window ⇒ Google::Apis::ComputeAlpha::NodeGroupMaintenanceWindow
Time window specified for daily maintenance operations.
-
#name ⇒ String
The name of the resource, provided by the client when initially creating the resource.
-
#node_template ⇒ String
URL of the node template to create the node group from.
-
#self_link ⇒ String
Output only.
-
#self_link_with_id ⇒ String
Output only.
-
#share_settings ⇒ Google::Apis::ComputeAlpha::ShareSettings
The share setting for reservations and sole tenancy node groups.
-
#size ⇒ Fixnum
Output only.
-
#status ⇒ String
Corresponds to the JSON property
status. -
#zone ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ NodeGroup
constructor
A new instance of NodeGroup.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ NodeGroup
Returns a new instance of NodeGroup.
47276 47277 47278 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47276 def initialize(**args) update!(**args) end |
Instance Attribute Details
#autoscaling_policy ⇒ Google::Apis::ComputeAlpha::NodeGroupAutoscalingPolicy
Specifies how autoscaling should behave.
Corresponds to the JSON property autoscalingPolicy
47164 47165 47166 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47164 def autoscaling_policy @autoscaling_policy end |
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
47170 47171 47172 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47170 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
47176 47177 47178 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47176 def description @description end |
#fingerprint ⇒ String
Corresponds to the JSON property fingerprint
NOTE: Values are automatically base64 encoded/decoded in the client library.
47182 47183 47184 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47182 def fingerprint @fingerprint end |
#id ⇒ Fixnum
Output only. [Output Only] The unique identifier for the resource. This
identifier is
defined by the server.
Corresponds to the JSON property id
47189 47190 47191 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47189 def id @id end |
#kind ⇒ String
Output only. [Output Only] The type of the resource. Alwayscompute#nodeGroup
for node group.
Corresponds to the JSON property kind
47195 47196 47197 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47195 def kind @kind end |
#location_hint ⇒ String
An opaque location hint used to place the Node close to other
resources.
This field is for use by internal tools that use the public API.
The location hint here on the NodeGroup overrides any location_hint
present in the NodeTemplate.
Corresponds to the JSON property locationHint
47204 47205 47206 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47204 def location_hint @location_hint end |
#maintenance_interval ⇒ String
Specifies the frequency of planned maintenance events. The accepted values
are: AS_NEEDED and RECURRENT.
Corresponds to the JSON property maintenanceInterval
47210 47211 47212 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47210 def maintenance_interval @maintenance_interval end |
#maintenance_policy ⇒ String
Specifies how to handle instances when a node in the group undergoes
maintenance. Set to one of: DEFAULT,RESTART_IN_PLACE, or
MIGRATE_WITHIN_NODE_GROUP.
The default value is DEFAULT. For more information, see
Maintenance policies.
Corresponds to the JSON property maintenancePolicy
47219 47220 47221 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47219 def maintenance_policy @maintenance_policy end |
#maintenance_window ⇒ Google::Apis::ComputeAlpha::NodeGroupMaintenanceWindow
Time window specified for daily maintenance operations. GCE's internal
maintenance will be performed within this window.
Corresponds to the JSON property maintenanceWindow
47225 47226 47227 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47225 def maintenance_window @maintenance_window end |
#name ⇒ String
The name of the resource, provided by the client when initially creating
the resource. The resource name must be 1-63 characters long, and comply
withRFC1035.
Specifically, the name must be 1-63 characters long and match the regular
expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first
character must be a lowercase letter, and all following characters must be
a dash, lowercase letter, or digit, except the last character, which cannot
be a dash.
Corresponds to the JSON property name
47237 47238 47239 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47237 def name @name end |
#node_template ⇒ String
URL of the node template to create the node group from.
Corresponds to the JSON property nodeTemplate
47242 47243 47244 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47242 def node_template @node_template end |
#self_link ⇒ String
Output only. [Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
47247 47248 47249 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47247 def self_link @self_link end |
#self_link_with_id ⇒ String
Output only. [Output Only] Server-defined URL for this resource with the
resource id.
Corresponds to the JSON property selfLinkWithId
47253 47254 47255 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47253 def self_link_with_id @self_link_with_id end |
#share_settings ⇒ Google::Apis::ComputeAlpha::ShareSettings
The share setting for reservations and sole tenancy node groups.
Corresponds to the JSON property shareSettings
47258 47259 47260 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47258 def share_settings @share_settings end |
#size ⇒ Fixnum
Output only. [Output Only] The total number of nodes in the node group.
Corresponds to the JSON property size
47263 47264 47265 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47263 def size @size end |
#status ⇒ String
Corresponds to the JSON property status
47268 47269 47270 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47268 def status @status end |
#zone ⇒ String
Output only. [Output Only] The name of the zone where the node group resides,
such as us-central1-a.
Corresponds to the JSON property zone
47274 47275 47276 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47274 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
47281 47282 47283 47284 47285 47286 47287 47288 47289 47290 47291 47292 47293 47294 47295 47296 47297 47298 47299 47300 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 47281 def update!(**args) @autoscaling_policy = args[:autoscaling_policy] if args.key?(:autoscaling_policy) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @fingerprint = args[:fingerprint] if args.key?(:fingerprint) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @location_hint = args[:location_hint] if args.key?(:location_hint) @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval) @maintenance_policy = args[:maintenance_policy] if args.key?(:maintenance_policy) @maintenance_window = args[:maintenance_window] if args.key?(:maintenance_window) @name = args[:name] if args.key?(:name) @node_template = args[:node_template] if args.key?(:node_template) @self_link = args[:self_link] if args.key?(:self_link) @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id) @share_settings = args[:share_settings] if args.key?(:share_settings) @size = args[:size] if args.key?(:size) @status = args[:status] if args.key?(:status) @zone = args[:zone] if args.key?(:zone) end |