Class: Google::Apis::ContainerV1beta1::OpportunisticMaintenanceStrategy

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/container_v1beta1/classes.rb,
lib/google/apis/container_v1beta1/representations.rb,
lib/google/apis/container_v1beta1/representations.rb

Overview

Strategy that will trigger maintenance on behalf of the customer.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ OpportunisticMaintenanceStrategy

Returns a new instance of OpportunisticMaintenanceStrategy.



8290
8291
8292
# File 'lib/google/apis/container_v1beta1/classes.rb', line 8290

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#maintenance_availability_windowString

The window of time that opportunistic maintenance can run. Example: A setting of 14 days implies that opportunistic maintenance can only be ran in the 2 weeks leading up to the scheduled maintenance date. Setting 28 days allows opportunistic maintenance to run at any time in the scheduled maintenance window (all PERIODIC maintenance is set 28 days in advance). Corresponds to the JSON property maintenanceAvailabilityWindow

Returns:

  • (String)


8276
8277
8278
# File 'lib/google/apis/container_v1beta1/classes.rb', line 8276

def maintenance_availability_window
  @maintenance_availability_window
end

#min_nodes_per_poolFixnum

The minimum nodes required to be available in a pool. Blocks maintenance if it would cause the number of running nodes to dip below this value. Corresponds to the JSON property minNodesPerPool

Returns:

  • (Fixnum)


8282
8283
8284
# File 'lib/google/apis/container_v1beta1/classes.rb', line 8282

def min_nodes_per_pool
  @min_nodes_per_pool
end

#node_idle_time_windowString

The amount of time that a node can remain idle (no customer owned workloads running), before triggering maintenance. Corresponds to the JSON property nodeIdleTimeWindow

Returns:

  • (String)


8288
8289
8290
# File 'lib/google/apis/container_v1beta1/classes.rb', line 8288

def node_idle_time_window
  @node_idle_time_window
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8295
8296
8297
8298
8299
# File 'lib/google/apis/container_v1beta1/classes.rb', line 8295

def update!(**args)
  @maintenance_availability_window = args[:maintenance_availability_window] if args.key?(:maintenance_availability_window)
  @min_nodes_per_pool = args[:min_nodes_per_pool] if args.key?(:min_nodes_per_pool)
  @node_idle_time_window = args[:node_idle_time_window] if args.key?(:node_idle_time_window)
end