Appendix B: VM Failover Properties
This is a list of VM properties that are supported/propagated during failover:
VM Property |
VM Instance Property Name |
Comment |
||
|
Name |
|
name |
Copied from Primary VM. |
Labels |
|
labels |
Copied from Primary VM. |
|
Tags |
|
tags |
Not copied. Same behavior when creating a VM with GMI. Tag can be at project or organization level. |
|
Region and Zone |
|
|
User input. |
|
Machine Configuration |
Machine Type |
|
machineType |
Region/Zone dependent. Warning will be displayed when starting VM protection if the secondary region does not support VM’s machine type. |
GPU type and Number of GPUs |
|
guestAccelerators[ ].acceleratorType guestAccelerators[ ].acceleratorCount |
Not copied. |
|
CPU Platform |
|
cpuPlatform |
Not copied. |
|
vCPUs to core ratio |
|
advancedMachineFeatures.threadsPerCore |
Copied from Primary VM. |
|
Visible core count |
|
advancedMachineFeatures.visibleCoreCount |
Copied from Primary VM. |
|
Availability policies |
VM provisioning model |
scheduling.provisioningModel |
Copied from Primary VM. |
|
Set a time limit for the VM |
scheduling.maxRunDuration |
Copied from Primary VM. |
||
On VM termination |
scheduling.instanceTerminationAction |
Copied from Primary VM. |
||
On host maintenance |
scheduling.onHostMaintenance |
Copied from Primary VM. |
||
Automatic restart |
scheduling.onHostMaintenance |
Copied from Primary VM. |
||
Display device |
Enable display device |
displayDevice |
Copied from Primary VM. |
|
Metadata |
|
metadata |
Copied from Primary VM. |
|
Confidential VM service |
|
|
|
Start VM protection will not be allowed if enabled. |
Container |
|
|
|
Not copied. |
Disk |
Snapshot schedule |
|
|
Not copied. |
Type |
|
|
Copied from Primary VM. |
|
Mode |
|
|
Copied from Primary VM. |
|
Index |
|
|
Copied from Primary VM. |
|
Device Name |
|
|
Copied from Primary VM. |
|
Boot |
|
|
Copied from Primary VM. |
|
Auto Delete |
|
|
Copied from Primary VM. |
|
Source |
|
|
Copied from Primary VM. |
|
Disk Size |
|
|
Copied from Primary VM. |
|
License |
|
|
Copied from Primary VM. |
|
License Code |
|
|
Copied from Primary VM. |
|
Guest OS Features |
|
|
Copied from Primary VM. |
|
Encryption |
|
diskEncryptionKey |
User input. |
|
Identity and API access |
Service account |
|
serviceAccounts |
Copied from Primary VM. |
Access scopes |
|
serviceAccounts[ ].scopes[ ] |
Copied from Primary VM. |
|
Firewall |
Allow HTTP traffic |
|
tags: http-server |
Copied from Primary VM. |
Allow HTTPS traffic |
|
tags: https-server |
Copied from Primary VM. |
|
Allow Load Balancer Health Checks |
|
tags: lb-health-check |
Copied from Primary VM. |
|
Observability - Ops Agent |
Install Ops Agent for Monitoring and Logging |
|
|
Copied from Primary VM. |
Network |
Network tags |
|
|
Copied from Primary VM. |
Hostname |
|
hostname |
Copied from Primary VM. |
|
IP forwarding |
|
canIpForward |
Copied from Primary VM. |
|
Network performance configuration |
Network interface card |
networkInterfaces[ ].nicType |
VirtioNet works. gVNIC does not work. |
|
Network bandwidth |
|
Copied from Primary VM. |
||
Network interfaces |
Network |
|
Expect same network to be present on Secondary region. |
|
Subnetwork |
|
Expect same subnetwork to be present on Secondary region. |
||
IP stack type |
networkInterfaces[ ].stackType |
Copied from Primary VM. |
||
Primary internal IPv4 address (Ephemeral Automatic) |
networkInterfaces[ ].networkIP |
Cannot be copied. |
||
Primary internal IPv4 address (Ephemeral Custom) |
networkInterfaces[ ].networkIP |
Cannot be copied. |
||
Primary internal IPv4 address (Static IP) |
networkInterfaces[ ].networkIP |
Cannot be copied. |
||
Alias IP ranges |
networkInterfaces[ ].aliasIpRanges |
Cannot be copied. |
||
External IPv4 address (Ephemeral) |
networkInterfaces[ ].accessConfigs[ ].natIP |
Cannot be copied. |
||
External IPv4 address (Static IP) |
networkInterfaces[ ].accessConfigs[ ].natIP |
Cannot be copied. |
||
Network Service Tier |
networkInterfaces[ ].accessConfigs[ ].networkTier |
Copied from Primary VM. |
||
Public DNS PTR Record |
networkInterfaces[ ].accessConfigs[ ].publicPtrDomainName |
Copied from Primary VM. |
||
Security |
Shielded VM |
Turn on Secure Boot |
shieldedInstanceConfig.enableSecureBoot |
Copied from Primary VM. |
vTPM |
shieldedInstanceConfig.enableVtpm |
Not supported. |
||
Turn on Integrity Monitoring |
shieldedInstanceConfig.enableIntegrityMonitoring |
Copied from Primary VM. |
||
VM access |
Control VM access through IAM permissions |
|
Copied from Primary VM. |
|
Block project-wide SSH keys |
|
Copied from Primary VM. |
||
Add manually generated SSH keys |
|
|
Copied from Primary VM. |
|
Management |
Description |
|
description |
Copied from Primary VM. |
Deletion protection |
|
deletionProtection |
Copied from Primary VM. |
|
Reservations |
Application policy |
reservationAffinity |
During failover, recovered VM will be assigned to existing reservation. |
|
Automation |
Startup script |
metadata |
Copied from Primary VM. |
|
Metadata |
|
metadata |
Copied from Primary VM. |
|
Data encryption |
Data encryption Type |
instanceEncryptionKey |
Copied from Primary VM. |
|
User Managed Encryption Key (CMEK) revocation policy |
instanceEncryptionKey |
Depends on the availability of the same key on the secondary region. If the key is a global key or Multi-region key(available on both regions) then it will work fine. If it is a regional key which is not available on the secondary region then Failover of VM will not be successful. However, user can edit the VM's instanceEncryptionKey properties using AROVA UI, point to a valid key in the secondary region and then perform a Faillover. |
||
Sole-tenancy |
|
|
|
During failover, user will have to modify VM properties to specify appropriate node group available on Secondary region. |
Table: VM failover properties.
Also see:
View: VM Properties Compatibility on Failover