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.



5431
5432
5433
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5431

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)


5417
5418
5419
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5417

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)


5423
5424
5425
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5423

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)


5429
5430
5431
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5429

def node_idle_time_window
  @node_idle_time_window
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5436
5437
5438
5439
5440
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5436

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