Les Easter Eggs de vpxd

MAJ 14.04.2013 : 2 ans après ce post, Andreas Peetz nous rapporte qu’avec la bonne combinaison de settings, il est meme possible de faire un vmotion en Intel et AMD !

Dans la lignée des posts de William Lam sur l’utilisation de l’utilitaire “strings”, nous avons par hasard découvert que ProcessExplorer (du célèbre Mark Russinovich) avait une fonction similaire. Et c’est évidement par vpxd.exe que nous avons commencé :

Et vous vous en doutez, si nous vous en parlons c’est que nous y avons trouvé quelques pépites comme une liste de paramètres pour overrider un maximum de limitations pour vmotion (et svmotion pour ceux qui ont l’oeil) :

migrate.test.AffinityNotConfigured
migrate.test.AlwaysPasses
migrate.test.AutoDetectDeviceNotAttached
migrate.test.CanAccessConfigAtDestination
migrate.test.CanAccessDeviceAtDestination
migrate.test.CanAccessDiskAtDestination
migrate.test.CheckpointFormatCompatible
migrate.test.CompatibleDefaultDevices
migrate.test.CpuCompatibleWithHost
migrate.test.DatastoreSupported
migrate.test.DeltaDiskNotAttached
migrate.test.DestHostHasConfig
migrate.test.DestHostIsActive
migrate.test.DevicesSupportedByGuest
migrate.test.DevicesSupportedByHost
migrate.test.DMotionSupported
migrate.test.EightHostLimitNotViolated
migrate.test.EnoughFreeResources
migrate.test.EnoughFreeSpace
migrate.test.FaultToleranceAntiAffinity
migrate.test.FaultToleranceCPUModelFamily
migrate.test.FaultToleranceCPUStepping
migrate.test.FaultToleranceDisk
migrate.test.FaultToleranceHost
migrate.test.FaultToleranceNumOfVms
migrate.test.FaultToleranceSameCluster
migrate.test.FaultToleranceStorageRelocate
migrate.test.FaultToleranceSVMSupported
migrate.test.FaultToleranceVersion
migrate.test.GuestHeartbeat
migrate.test.GuestSupported
migrate.test.HostSupportsSharedDeltaDisks
migrate.test.LiveCloneSupported
migrate.test.MatchedVMotionNetworkNames
migrate.test.MemorySizeSupportedByHost
migrate.test.NetworksAccessible
migrate.test.NetworksCompatible
migrate.test.NoComponentFailureAtDest
migrate.test.NoDASErrorsDest
migrate.test.NoFileBackedPort
migrate.test.NoFileMoveInMaintenanceMode
migrate.test.NoIndependentDisks
migrate.test.NumCpusSupportedByGuest
migrate.test.NumCpusSupportedByHost
migrate.test.NumCpusSupportedByHostCapability
migrate.test.NumCpusSupportedByHostHardware
migrate.test.PassesDasAdmission
migrate.test.PassthroughDeviceNotAttached
migrate.test.PersistentDisksOnly
migrate.test.RawDiskNotAttached
migrate.test.RDMDiskConversionNotAllowed
migrate.test.RemoteDeviceNotAttached
migrate.test.SatisfiesVmHostAffinityRules
migrate.test.ServicesAvailable
migrate.test.SharedBusControllerNotAttached
migrate.test.SnapshotsAccessible
migrate.test.SnapshotTest
migrate.test.SourceHostHasConfig
migrate.test.StorageVMotionSupported
migrate.test.SuspendedRelocateSupported
migrate.test.SwapDatastoreWritableIfSet
migrate.test.SwapPlacementOverrideSupported
migrate.test.SwapReadableByDest
migrate.test.test
migrate.test.ToolsInstallationNotInProgress
migrate.test.UnreferencedDisk
migrate.test.UnsharedSwapVMotionSupported
migrate.test.VirtualHardwareVersionSupported
migrate.test.VmIsValid
migrate.test.VMotionConfiguredOnDest
migrate.test.VMotionConfiguredOnSource
migrate.test.VMotionEncryptionPolicySupportedOnDest
migrate.test.VMotionEncryptionPolicySupportedOnSource
migrate.test.VMotionLinkCapacityOkAtDest
migrate.test.VMotionLinkCapacityOkAtSource
migrate.test.VMotionSupportedByDest
migrate.test.VMotionSupportedBySource

Voici un petit exemple d’un vmotion qui n’a aucune chance d’aboutir en l’état (même avec le paramètre migrate.test.CpuCompatible à false) :

En ajoutant (à chaud !) ces paramètres dans le vcenter, le vmotion ne fait même plus de warning :

On arrive ainsi à déplacer une vm d’un Xeon E5420 à un Xeon MP nocona :

Evidemment ces paramètres ne sont pas tous supportés par VMware mais nous vous recommandons vivement de jouer avec sur votre environnement de test :)

PS : Pour éviter les éventuels problèmes avec l’éditeur, nous ne publions pas l’extractions complète du process mais sachez qu’on y trouve beaucoup d’autres paramètres ”cachés” sur HA, DRS, etc…

Tags: ,

2 Responses to “Les Easter Eggs de vpxd”

  1. WOW ca c’est du lourd!

    J’avais aussi trouver les ’string’ du vpxa sous ESX mais j’avais prefere ne rien poster la dessus car cela me semb lait ‘trop’ sensible ;)

  2. William ne s’est pas retenu lui :)

Leave a Reply