PowerFlex: Belirli ESXi ana bilgisayarlarına vMotion "Taşıma alınamadı" hatasıyla başarısız oluyor
Summary: VHV ayarının yapılandırma uyuşmazlığı nedeniyle ESXi ana bilgisayarları arasında vMotion başarısız oluyor.
Symptoms
İki ESXi ana bilgisayarı arasındaki yapılandırma farkı örneği:
[root@esxi01:/etc] cat /etc/vmware/config libdir = "/usr/lib/vmware" authd.proxy.nfc = "vmware-hostd:ha-nfc" authd.proxy.nfcssl = "vmware-hostd:ha-nfcssl" authd.proxy.vpxa-nfcssl = "vmware-vpxa:vpxa-nfcssl" authd.proxy.vpxa-nfc = "vmware-vpxa:vpxa-nfc" authd.fullpath = "/sbin/authd" vhv.enable = "TRUE" [root@esxi02:/etc] cat /etc/vmware/config libdir = "/usr/lib/vmware" authd.proxy.nfc = "vmware-hostd:ha-nfc" authd.proxy.nfcssl = "vmware-hostd:ha-nfcssl" authd.proxy.vpxa-nfcssl = "vmware-vpxa:vpxa-nfcssl" authd.proxy.vpxa-nfc = "vmware-vpxa:vpxa-nfc" authd.fullpath = "/sbin/authd"
Sanal makineleri vMotion kullanarak belirli bir ESXi ana bilgisayarına taşımaya çalışırken geçiş başarısız olur ve "Failed to get migration" hatası oluşturulur.
Cause
Ortamdaki ESXi ana bilgisayarları arasındaki yapılandırma uyumsuzluğu nedeniyle vMotion başarısız oluyor. Sanal Donanım Destekli Sanallaştırma (VHV) bazı ana bilgisayarlarda etkinken diğerlerinde devre dışı bırakılabilir. Bu uyumsuzluk, vMotion'ın iki ana bilgisayar grubu arasında başarısız olmasına neden olur. Bu sorun, çalışan VM ile ilişkili "vmware.log" dosyası ve kaynak/hedef ESXi ana bilgisayarlarındaki "/var/log/hostd.log" dosyası incelenerek doğrulanabilir.
HOSTD.LOG: YYYY-MM-DDTHH:MM:SS.707Z warning hostd[3E9C2B70] [Originator@6876 sub=Vmsvc.vm:/vmfs/volumes/vsan:52564a82ba326e84-801d1a338d7d6fbc/7cb5cb5a-3b00-46cf-40eb-3cfdfe0f1d40/VIRTUAL_MACHINE.vmx] Failed to find activation record, event user unknown. YYYY-MM-DDTHH:MM:SS.708Z info hostd[3E9C2B70] [Originator@6876 sub=Vimsvc.ha-eventmgr] Event 131 : Error message on VIRTUAL_MACHINE on target_esxi.fqdn.com in ha-datacenter: Configuration mismatch: The virtual machine cannot be restored because the snapshot was taken with VHV enabled. To restore, set vhv.enable to true. YYYY-MM-DDTHH:MM:SS.709Z info hostd[40040B70] [Originator@6876 sub=Vimsvc.ha-eventmgr] Event 132 : Deleted ports in the vSphere Distributed Switch in ha-datacenter. YYYY-MM-DDTHH:MM:SS.710Z info hostd[2BDE2B70] [Originator@6876 sub=Vmsvc.vm:/vmfs/volumes/vsan:52564a82ba326e84-801d1a338d7d6fbc/7cb5cb5a-3b00-46cf-40eb-3cfdfe0f1d40/VIRTUAL_MACHINE.vmx] Answered question 1938160 YYYY-MM-DDTHH:MM:SS.710Z warning hostd[2BDE2B70] [Originator@6876 sub=Vmsvc.vm:/vmfs/volumes/vsan:52564a82ba326e84-801d1a338d7d6fbc/7cb5cb5a-3b00-46cf-40eb-3cfdfe0f1d40/VIRTUAL_MACHINE.vmx] Failed to find activation record, event user unknown. YYYY-MM-DDTHH:MM:SS.710Z info hostd[2BDE2B70] [Originator@6876 sub=Vimsvc.ha-eventmgr] Event 133 : Error message on VIRTUAL_MACHINE on target_esxi.fqdn.com in ha-datacenter: Failed to receive migration. --> VMWARE.LOG: YYYY-MM-DDTHH:MM:SS.407Z| vmx| I125: Msg_Post: Error YYYY-MM-DDTHH:MM:SS.407Z| vmx| I125: [msg.cpuid.vhv.enablemismatch] Configuration mismatch: The virtual machine cannot be restored because the snapshot was taken with VHV enabled. To restore, set vhv.enable to true. YYYY-MM-DDTHH:MM:SS.407Z| vmx| I125: ---------------------------------------- YYYY-MM-DDTHH:MM:SS.409Z| vmx| I125: Vigor_MessageRevoke: message 'msg.cpuid.vhv.enablemismatch' (seq 1946687) is revoked YYYY-MM-DDTHH:MM:SS.409Z| vmx| I125: MigrateSetStateFinished: type=2 new state=12 YYYY-MM-DDTHH:MM:SS.409Z| vmx| I125: MigrateSetState: Transitioning from state 11 to 12. YYYY-MM-DDTHH:MM:SS.409Z| vmx| I125: Migrate: Caching migration error message list: YYYY-MM-DDTHH:MM:SS.409Z| vmx| I125: [msg.checkpoint.migration.failedReceive] Failed to receive migration. YYYY-MM-DDTHH:MM:SS.410Z| vmx| I125: Msg_Post: Error YYYY-MM-DDTHH:MM:SS.410Z| vmx| I125: [msg.checkpoint.migration.failedReceive] Failed to receive migration. YYYY-MM-DDTHH:MM:SS.410Z| vmx| I125: ----------------------------------------
Resolution
Aşağıdaki VMware KB makalesine dayanarak, VHV'nin tüm ESXi ana bilgisayarlarında devre dışı bırakılması önerilir. Ortamda herhangi bir iç içe sanallaştırma türü oluşuyorsa (ESXi'yi sanal makine olarak çalıştırıyorsa) bu yapılandırma değişikliği iç içe geçmiş sanal makineleri etkiler.
ESXi'yi iç içe sanallaştırma çözümü olarak çalıştırma desteği
VHV yi devre dışı bırakmak için aşağıdaki adımları uygulayın:
- ESXi ana bilgisayarını Bakım Moduna geçirme
- ESXi ana bilgisayarına SSH aracılığıyla bağlanın
- /etc/vmware/ yoluna gidin
- cp configuration config.bak" komutunu çalıştırarak mevcut yapılandırma dosyasını yedekleyin
- Mevcut yapılandırma dosyası "configuration"ı düzenleyin ve vhv.enable = TRUE satırını kaldırın
- ESXi ana bilgisayarını yeniden başlatın
NOT: Bir ESXi ortamında VHV'yi devre dışı bırakırken vMotion, VM'leri yalnızca aynı VHV yapılandırma ayarına sahip ana bilgisayarlar arasında taşır. VHV'nin etkin olduğu ESXi ana bilgisayarlarında çalışan VM'ler için kapalı kalma süresi büyük olasılıkla gerekecektir.
Örnek:
- ESXi 1/2/3'te VHV etkin, ESXi 4/5/6'da VHV devre dışı. ESXi 1/2/3'ün her biri üzerinde çalışan VM'lere sahiptir.
- ESXi 3, Bakım Moduna girer ve VM'leri ESXi 2'ye geçirir. VHV, ESXi 3 te devre dışıdır.
- ESXi 2, Bakım Moduna girer ve VM'leri ESXi 1'e geçirir. VHV, ESXi 2'de devre dışıdır.
- VHV yapılandırma farkından dolayı çalışan hiçbir VM kalan ana bilgisayarlara vMotion yapamadığından ESXi 1 Bakım Moduna giremez. Bu noktada VM'lerin geçici olarak kapatılması gerekir.