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.
Mode
Type of the rollout.
Enums
MODE_UNSPECIFIED
Mode must be specified.
ZONE_BY_ZONE
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.
CONCURRENT_ZONES
Patches are applied to VMs in all zones at the same time.
FixedOrPercent
Message encapsulating a value that can be either absolute ("fixed") or relative ("percent") to a value.
JSON representation
{// Union field mode can be only one of the following:"fixed": integer,"percent": integer// End of list of possible types for union field mode.}
Fields
Union field mode. Type of the value. mode can be only one of the following:
fixed
integer
Specifies a fixed value.
percent
integer
Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-07-28 UTC."],[[["\u003cp\u003ePatch rollout configurations control how patches are applied to virtual machines (VMs), including the concurrency of the patch process.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003emode\u003c/code\u003e field defines the rollout approach, which can be either \u003ccode\u003eZONE_BY_ZONE\u003c/code\u003e (applying patches one zone at a time) or \u003ccode\u003eCONCURRENT_ZONES\u003c/code\u003e (applying patches across all zones simultaneously).\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003edisruptionBudget\u003c/code\u003e specifies the maximum number or percentage of VMs that can be disrupted within a zone at any given time during patching.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eFixedOrPercent\u003c/code\u003e allows defining values in \u003ccode\u003edisruptionBudget\u003c/code\u003e as either a fixed number (\u003ccode\u003efixed\u003c/code\u003e) or a percentage (\u003ccode\u003epercent\u003c/code\u003e) of VMs.\u003c/p\u003e\n"],["\u003cp\u003eThe patch process will halt if it surpasses the designated \u003ccode\u003edisruptionBudget\u003c/code\u003e in a zone when following the \u003ccode\u003eZONE_BY_ZONE\u003c/code\u003e mode.\u003c/p\u003e\n"]]],[],null,["# PatchRollout\n\n- [JSON representation](#SCHEMA_REPRESENTATION)\n- [Mode](#Mode)\n- [FixedOrPercent](#FixedOrPercent)\n - [JSON representation](#FixedOrPercent.SCHEMA_REPRESENTATION)\n\nPatch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs.\n\nMode\n----\n\nType of the rollout.\n\nFixedOrPercent\n--------------\n\nMessage encapsulating a value that can be either absolute (\"fixed\") or relative (\"percent\") to a value."]]