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.



5788
5789
5790
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5788

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)


5774
5775
5776
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5774

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)


5780
5781
5782
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5780

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)


5786
5787
5788
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5786

def node_idle_time_window
  @node_idle_time_window
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5793
5794
5795
5796
5797
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5793

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