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.



7580
7581
7582
# File 'lib/google/apis/container_v1beta1/classes.rb', line 7580

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)


7566
7567
7568
# File 'lib/google/apis/container_v1beta1/classes.rb', line 7566

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)


7572
7573
7574
# File 'lib/google/apis/container_v1beta1/classes.rb', line 7572

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)


7578
7579
7580
# File 'lib/google/apis/container_v1beta1/classes.rb', line 7578

def node_idle_time_window
  @node_idle_time_window
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



7585
7586
7587
7588
7589
# File 'lib/google/apis/container_v1beta1/classes.rb', line 7585

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