Class: Google::Cloud::OsConfig::V1::PatchRollout
- Inherits:
-
Object
- Object
- Google::Cloud::OsConfig::V1::PatchRollout
- Extended by:
- Protobuf::MessageExts::ClassMethods
- Includes:
- Protobuf::MessageExts
- Defined in:
- proto_docs/google/cloud/osconfig/v1/patch_jobs.rb
Overview
Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs.
Defined Under Namespace
Modules: Mode
Instance Attribute Summary collapse
-
#disruption_budget ⇒ ::Google::Cloud::OsConfig::V1::FixedOrPercent
The maximum number (or percentage) of VMs per zone to disrupt at any given moment.
-
#mode ⇒ ::Google::Cloud::OsConfig::V1::PatchRollout::Mode
Mode of the patch rollout.
Instance Attribute Details
#disruption_budget ⇒ ::Google::Cloud::OsConfig::V1::FixedOrPercent
Returns The maximum number (or percentage) of VMs per zone to disrupt at any given moment. The number of VMs calculated from multiplying the percentage by the total number of VMs in a zone is rounded up.
During patching, a VM is considered disrupted from the time the agent is notified to begin until patching has completed. This disruption time includes the time to complete reboot and any post-patch steps.
A VM contributes to the disruption budget if its patching operation fails either when applying the patches, running pre or post patch steps, or if it fails to respond with a success notification before timing out. VMs that are not running or do not have an active agent do not count toward this disruption budget.
For zone-by-zone rollouts, if the disruption budget in a zone is exceeded, the patch job stops, because continuing to the next zone requires completion of the patch process in the previous zone.
For example, if the disruption budget has a fixed value of 10
, and 8 VMs
fail to patch in the current zone, the patch job continues to patch 2 VMs
at a time until the zone is completed. When that zone is completed
successfully, patching begins with 10 VMs at a time in the next zone. If 10
VMs in the next zone fail to patch, the patch job stops.
751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 |
# File 'proto_docs/google/cloud/osconfig/v1/patch_jobs.rb', line 751 class PatchRollout include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Type of the rollout. module Mode # Mode must be specified. MODE_UNSPECIFIED = 0 # Patches are applied one zone at a time. The patch job begins in the # region with the lowest number of targeted VMs. Within the region, # patching begins in the zone with the lowest number of targeted VMs. If # multiple regions (or zones within a region) have the same number of # targeted VMs, a tie-breaker is achieved by sorting the regions or zones # in alphabetical order. ZONE_BY_ZONE = 1 # Patches are applied to VMs in all zones at the same time. CONCURRENT_ZONES = 2 end end |
#mode ⇒ ::Google::Cloud::OsConfig::V1::PatchRollout::Mode
Returns Mode of the patch rollout.
751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 |
# File 'proto_docs/google/cloud/osconfig/v1/patch_jobs.rb', line 751 class PatchRollout include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Type of the rollout. module Mode # Mode must be specified. MODE_UNSPECIFIED = 0 # Patches are applied one zone at a time. The patch job begins in the # region with the lowest number of targeted VMs. Within the region, # patching begins in the zone with the lowest number of targeted VMs. If # multiple regions (or zones within a region) have the same number of # targeted VMs, a tie-breaker is achieved by sorting the regions or zones # in alphabetical order. ZONE_BY_ZONE = 1 # Patches are applied to VMs in all zones at the same time. CONCURRENT_ZONES = 2 end end |