XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    VMware migration tool: we need your feedback!

    Scheduled Pinned Locked Moved Migrate to XCP-ng
    318 Posts 37 Posters 392.2k Views 30 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • brezlordB Offline
      brezlord
      last edited by

      Thank you both for your help.

      1 Reply Last reply Reply Quote 1
      • olivierlambertO Offline
        olivierlambert Vates 🪐 Co-Founder CEO
        last edited by

        You are welcome šŸ™‚ Eager to get your feedback on the outcome, keep us posted!

        brezlordB 1 Reply Last reply Reply Quote 0
        • brezlordB Offline
          brezlord @olivierlambert
          last edited by brezlord

          @olivierlambert I managed to get a CentOS 7 vm imported and running. I'm now trying to import an Ubuntu vm and I get the bellow error.

          root@xoa:~# xo-cli vm.importFomEsxi host=192.168.40.203 user='root' password='password' sslVerify=false vm=12 sr=648548b5-a789-6c72-2518-407a12717fad network=0b3e9312-541d-a036-06b4-2bd63c53d852
          āœ– Cannot create property 'detailed' on string 'ubuntu-64'
          JsonRpcError: Cannot create property 'detailed' on string 'ubuntu-64'
              at Peer._callee$ (/opt/xo/xo-builds/xen-orchestra-202301220427/node_modules/json-rpc-peer/dist/index.js:139:44)
              at tryCatch (/opt/xo/xo-builds/xen-orchestra-202301220427/node_modules/@babel/runtime/helpers/regeneratorRuntime.js:44:17)
              at Generator.<anonymous> (/opt/xo/xo-builds/xen-orchestra-202301220427/node_modules/@babel/runtime/helpers/regeneratorRuntime.js:125:22)
              at Generator.next (/opt/xo/xo-builds/xen-orchestra-202301220427/node_modules/@babel/runtime/helpers/regeneratorRuntime.js:69:21)
              at asyncGeneratorStep (/opt/xo/xo-builds/xen-orchestra-202301220427/node_modules/@babel/runtime/helpers/asyncToGenerator.js:3:24)
              at _next (/opt/xo/xo-builds/xen-orchestra-202301220427/node_modules/@babel/runtime/helpers/asyncToGenerator.js:22:9)
              at /opt/xo/xo-builds/xen-orchestra-202301220427/node_modules/@babel/runtime/helpers/asyncToGenerator.js:27:7
              at new Promise (<anonymous>)
              at Peer.<anonymous> (/opt/xo/xo-builds/xen-orchestra-202301220427/node_modules/@babel/runtime/helpers/asyncToGenerator.js:19:12)
              at Peer.exec (/opt/xo/xo-builds/xen-orchestra-202301220427/node_modules/json-rpc-peer/dist/index.js:182:20)
          
          florentF 1 Reply Last reply Reply Quote 0
          • Y Offline
            ysageev
            last edited by ysageev

            Hi, I am getting the following error:

            $ xo-cli vm.importFomEsxi host=192.XXX.XXX.XXX user=USERNAME password=MYPASS sslVerify=false vm=3 sr=d5a9a2f3-3e94-b73f-f8fd-dcefdc356804 network=557d6a0f-ff4c-7692-b342-0671c0a8385b
            
            Ɨ Cannot read properties of undefined (reading 'current')
            JsonRpcError: Cannot read properties of undefined (reading 'current')
                at Peer._callee$ (C:\Users\asdf\AppData\Roaming\npm\node_modules\xo-cli\node_modules\json-rpc-peer\dist\index.js:139:44)
                at tryCatch (C:\Users\asdf\AppData\Roaming\npm\node_modules\xo-cli\node_modules\@babel\runtime\helpers\regeneratorRuntime.js:44:17)
                at Generator.<anonymous> (C:\Users\asdf\AppData\Roaming\npm\node_modules\xo-cli\node_modules\@babel\runtime\helpers\regeneratorRuntime.js:125:22)
                at Generator.next (C:\Users\asdf\AppData\Roaming\npm\node_modules\xo-cli\node_modules\@babel\runtime\helpers\regeneratorRuntime.js:69:21)
                at asyncGeneratorStep (C:\Users\asdf\AppData\Roaming\npm\node_modules\xo-cli\node_modules\@babel\runtime\helpers\asyncToGenerator.js:3:24)
                at _next (C:\Users\asdf\AppData\Roaming\npm\node_modules\xo-cli\node_modules\@babel\runtime\helpers\asyncToGenerator.js:22:9)
                at C:\Users\asdf\AppData\Roaming\npm\node_modules\xo-cli\node_modules\@babel\runtime\helpers\asyncToGenerator.js:27:7
                at new Promise (<anonymous>)
                at Peer.<anonymous> (C:\Users\asdf\AppData\Roaming\npm\node_modules\xo-cli\node_modules\@babel\runtime\helpers\asyncToGenerator.js:19:12)
                at Peer.exec (C:\Users\asdf\AppData\Roaming\npm\node_modules\xo-cli\node_modules\json-rpc-peer\dist\index.js:182:20)
            
            1 Reply Last reply Reply Quote 0
            • florentF Offline
              florent Vates 🪐 XO Team
              last edited by

              @brezlord The real error messages are hidden, I will try to fix it

              @ysageev does the VM has snapshots ? is it running ?

              Y 1 Reply Last reply Reply Quote 0
              • Y Offline
                ysageev @florent
                last edited by ysageev

                @florent It is off, no snapshots.

                Off:
                4710cc84-7eb3-4d2f-9bbd-9fcf898c3dd5-image.png

                Files:
                e074afac-65b3-42d2-b12e-6919d5380dd8-image.png

                I also disabled Change Block Tracking and deleted the ctk file.

                If it helps, I'm using ESXi-6.7.0-20190802001-standard and the VM is a 10GB old CentOS.

                Update: On the server side, the error looks like this:

                vm.importFomEsxi
                {
                  "host": "192.168.1.107",
                  "user": "XXXXXXX",
                  "password": "* obfuscated *",
                  "sslVerify": false,
                  "vm": "3",
                  "sr": "d5a9a2f3-3e94-b73f-f8fd-dcefdc356804",
                  "network": "557d6a0f-ff4c-7692-b342-0671c0a8385b"
                }
                {
                  "message": "Cannot read properties of undefined (reading 'current')",
                  "name": "TypeError",
                  "stack": "TypeError: Cannot read properties of undefined (reading 'current')
                    at parseVmsd (file:///usr/local/lib/node_modules/xo-server/node_modules/@xen-orchestra/vmware-explorer/parsers/vmsd.mjs:48:30)
                    at Esxi.getTransferableVmMetadata (file:///usr/local/lib/node_modules/xo-server/node_modules/@xen-orchestra/vmware-explorer/esxi.mjs:250:23)
                    at processTicksAndRejections (node:internal/process/task_queues:95:5)
                    at MigrateVm.migrationfromEsxi (file:///usr/local/lib/node_modules/xo-server/src/xo-mixins/migrate-vm.mjs:122:28)
                    at Xo.importFomEsxi (file:///usr/local/lib/node_modules/xo-server/src/api/vm.mjs:1304:10)
                    at Api.#callApiMethod (file:///usr/local/lib/node_modules/xo-server/src/xo-mixins/api.mjs:394:20)"
                }
                

                It looks like the presence/dependency of the VMSD file and the tool's attempt to process it has something to do with the problem.

                Update: The .vmsd file is empty.

                planedropP 1 Reply Last reply Reply Quote 1
                • planedropP Offline
                  planedrop Top contributor @ysageev
                  last edited by

                  @ysageev I'm running across the same error when trying to do some imports, for testing I deleted the vmsd file (didn't think that would do anything at all) and got an error about not being able to find the VM (which is what I thought would happen), re-added the vmsd but still getting this "cannot read properties of undefined" error.

                  I also tried with a different VM, this time a Windows one (was Ubuntu on the first try) and get a slightly different error:

                  Cannot convert undefined or null to object
                  
                  1 Reply Last reply Reply Quote 0
                  • florentF Offline
                    florent Vates 🪐 XO Team @brezlord
                    last edited by

                    @brezlord have you got a more detailed error on the xo logs side ?

                    @planedrop I pushed a little fix to ensure it does not crash when vmsd file is missing or empty

                    brezlordB 1 Reply Last reply Reply Quote 1
                    • brezlordB Offline
                      brezlord @florent
                      last edited by

                      @florent I have rebuilt from source and I get the following errors. The host is running VMware ESXi, 7.0.3, 20328353

                      root@xoa:~# xo-cli vm.importFromEsxi host=192.168.40.203 user='root' password='obfuscated ' sslVerify=false vm=12 sr=648548b5-a789-6c72-2518-407a12717fad network=0b3e9312-541d-a036-06b4-2bd63c53d852
                      āœ– Cannot create property 'detailed' on string 'ubuntu-64'
                      JsonRpcError: Cannot create property 'detailed' on string 'ubuntu-64'
                          at Peer._callee$ (/opt/xo/xo-builds/xen-orchestra-202301240816/node_modules/json-rpc-peer/dist/index.js:139:44)
                          at tryCatch (/opt/xo/xo-builds/xen-orchestra-202301240816/node_modules/@babel/runtime/helpers/regeneratorRuntime.js:44:17)
                          at Generator.<anonymous> (/opt/xo/xo-builds/xen-orchestra-202301240816/node_modules/@babel/runtime/helpers/regeneratorRuntime.js:125:22)
                          at Generator.next (/opt/xo/xo-builds/xen-orchestra-202301240816/node_modules/@babel/runtime/helpers/regeneratorRuntime.js:69:21)
                          at asyncGeneratorStep (/opt/xo/xo-builds/xen-orchestra-202301240816/node_modules/@babel/runtime/helpers/asyncToGenerator.js:3:24)
                          at _next (/opt/xo/xo-builds/xen-orchestra-202301240816/node_modules/@babel/runtime/helpers/asyncToGenerator.js:22:9)
                          at /opt/xo/xo-builds/xen-orchestra-202301240816/node_modules/@babel/runtime/helpers/asyncToGenerator.js:27:7
                          at new Promise (<anonymous>)
                          at Peer.<anonymous> (/opt/xo/xo-builds/xen-orchestra-202301240816/node_modules/@babel/runtime/helpers/asyncToGenerator.js:19:12)
                          at Peer.exec (/opt/xo/xo-builds/xen-orchestra-202301240816/node_modules/json-rpc-peer/dist/index.js:182:20)
                      
                      vm.importFromEsxi
                      {
                        "host": "192.168.40.203",
                        "user": "root",
                        "password": "* obfuscated *",
                        "sslVerify": false,
                        "vm": "12",
                        "sr": "648548b5-a789-6c72-2518-407a12717fad",
                        "network": "0b3e9312-541d-a036-06b4-2bd63c53d852"
                      }
                      {
                        "message": "Cannot create property 'detailed' on string 'ubuntu-64'",
                        "name": "TypeError",
                        "stack": "TypeError: Cannot create property 'detailed' on string 'ubuntu-64'
                          at set (file:///opt/xo/xo-builds/xen-orchestra-202301240816/@xen-orchestra/vmware-explorer/parsers/vmx.mjs:35:18)
                          at set (file:///opt/xo/xo-builds/xen-orchestra-202301240816/@xen-orchestra/vmware-explorer/parsers/vmx.mjs:37:7)
                          at file:///opt/xo/xo-builds/xen-orchestra-202301240816/@xen-orchestra/vmware-explorer/parsers/vmx.mjs:47:5
                          at Array.forEach (<anonymous>)
                          at parseVmx (file:///opt/xo/xo-builds/xen-orchestra-202301240816/@xen-orchestra/vmware-explorer/parsers/vmx.mjs:45:20)
                          at Esxi.getTransferableVmMetadata (file:///opt/xo/xo-builds/xen-orchestra-202301240816/@xen-orchestra/vmware-explorer/esxi.mjs:197:17)
                          at processTicksAndRejections (node:internal/process/task_queues:95:5)
                          at MigrateVm.migrationfromEsxi (file:///opt/xo/xo-builds/xen-orchestra-202301240816/packages/xo-server/src/xo-mixins/migrate-vm.mjs:171:28)
                          at Xo.importFromEsxi (file:///opt/xo/xo-builds/xen-orchestra-202301240816/packages/xo-server/src/api/vm.mjs:1307:10)
                          at Api.#callApiMethod (file:///opt/xo/xo-builds/xen-orchestra-202301240816/packages/xo-server/src/xo-mixins/api.mjs:394:20)"
                      }
                      
                      florentF chrispro-21C 3 Replies Last reply Reply Quote 0
                      • florentF Offline
                        florent Vates 🪐 XO Team @brezlord
                        last edited by

                        This post is deleted!
                        brezlordB 1 Reply Last reply Reply Quote 0
                        • brezlordB Offline
                          brezlord @florent
                          last edited by

                          @florent I'm ready to test when you have something, thanks.

                          1 Reply Last reply Reply Quote 0
                          • florentF Offline
                            florent Vates 🪐 XO Team @brezlord
                            last edited by

                            @brezlord great, that is a usable mesage

                            could you post the ( or send by email ) , the vmx file ?

                            brezlordB 1 Reply Last reply Reply Quote 0
                            • brezlordB Offline
                              brezlord @florent
                              last edited by olivierlambert

                              @florent

                              .encoding = "UTF-8"
                              config.version = "8"
                              virtualHW.version = "19"
                              vmci0.present = "TRUE"
                              floppy0.present = "FALSE"
                              memSize = "2048"
                              tools.upgrade.policy = "manual"
                              sched.cpu.units = "mhz"
                              vm.createDate = "1613734854100000"
                              scsi0.virtualDev = "lsilogic"
                              scsi0.present = "TRUE"
                              sata0.present = "TRUE"
                              sata0:0.startConnected = "FALSE"
                              sata0:0.deviceType = "atapi-cdrom"
                              sata0:0.clientDevice = "TRUE"
                              sata0:0.fileName = "emptyBackingString"
                              sata0:0.present = "TRUE"
                              scsi0:0.deviceType = "scsi-hardDisk"
                              scsi0:0.fileName = "Graylog-000001.vmdk"
                              sched.scsi0:0.shares = "normal"
                              sched.scsi0:0.throughputCap = "off"
                              scsi0:0.present = "TRUE"
                              ethernet0.virtualDev = "vmxnet3"
                              ethernet0.shares = "normal"
                              ethernet0.addressType = "vpx"
                              ethernet0.generatedAddress = "00:50:56:8f:51:24"
                              ethernet0.uptCompatibility = "TRUE"
                              ethernet0.present = "TRUE"
                              displayName = "Graylog"
                              guestOS = "ubuntu-64"
                              toolScripts.afterPowerOn = "TRUE"
                              toolScripts.afterResume = "TRUE"
                              toolScripts.beforeSuspend = "TRUE"
                              toolScripts.beforePowerOff = "TRUE"
                              tools.syncTime = "FALSE"
                              uuid.bios = "42 0f 33 f8 9b 7f 7d 26-a8 bc 61 26 ee 46 16 22"
                              vc.uuid = "50 0f dd 17 4c f8 3c 79-1f 26 ac 99 23 6a 06 d4"
                              sched.cpu.min = "0"
                              sched.cpu.shares = "normal"
                              sched.mem.min = "0"
                              sched.mem.minSize = "0"
                              sched.mem.shares = "normal"
                              migrate.encryptionMode = "opportunistic"
                              ftcpt.ftEncryptionMode = "ftEncryptionOpportunistic"
                              vmci0.id = "-297396701"
                              cleanShutdown = "FALSE"
                              ethernet0.networkName = "vLAN_40"
                              uuid.location = "56 4d 44 f3 60 00 fc b5-f6 4b f4 e7 50 0a 74 f2"
                              sched.cpu.affinity = "all"
                              tools.guest.desktop.autolock = "FALSE"
                              nvram = "Graylog.nvram"
                              pciBridge0.present = "TRUE"
                              svga.present = "TRUE"
                              pciBridge4.present = "TRUE"
                              pciBridge4.virtualDev = "pcieRootPort"
                              pciBridge4.functions = "8"
                              pciBridge5.present = "TRUE"
                              pciBridge5.virtualDev = "pcieRootPort"
                              pciBridge5.functions = "8"
                              pciBridge6.present = "TRUE"
                              pciBridge6.virtualDev = "pcieRootPort"
                              pciBridge6.functions = "8"
                              pciBridge7.present = "TRUE"
                              pciBridge7.virtualDev = "pcieRootPort"
                              pciBridge7.functions = "8"
                              hpet0.present = "TRUE"
                              sched.cpu.latencySensitivity = "normal"
                              numa.autosize.cookie = "10012"
                              numa.autosize.vcpu.maxPerVirtualNode = "1"
                              pciBridge0.pciSlotNumber = "17"
                              pciBridge4.pciSlotNumber = "21"
                              pciBridge5.pciSlotNumber = "22"
                              pciBridge6.pciSlotNumber = "23"
                              pciBridge7.pciSlotNumber = "24"
                              scsi0.pciSlotNumber = "16"
                              ethernet0.pciSlotNumber = "160"
                              vmci0.pciSlotNumber = "32"
                              sata0.pciSlotNumber = "33"
                              monitor.phys_bits_used = "45"
                              vmotion.checkpointFBSize = "4194304"
                              vmotion.checkpointSVGAPrimarySize = "4194304"
                              softPowerOff = "FALSE"
                              svga.guestBackedPrimaryAware = "TRUE"
                              guestOS.detailed.data = "architecture='X86' bitness='64' distroName='Ubuntu' distroVersion='20.04' familyName='Linux' kernelVersion='5.4.0-88-generic' prettyName='Ubuntu 20.04.3 LTS'"
                              toolsInstallManager.updateCounter = "4"
                              viv.moid = "a3752e64-f7d6-4473-8fd5-3b91a194cccc:vm-7093:9iC7plvv3uF5K6K4G++QYV5VZf6Mjp3GrS0FdLa2/1w="
                              guestInfo.detailed.data = "architecture='X86' bitness='64' distroName='Ubuntu' distroVersion='20.04' familyName='Linux' kernelVersion='5.4.0-137-generic' prettyName='Ubuntu 20.04.3 LTS'"
                              checkpoint.vmState.readOnly = "FALSE"
                              SCSI0:0.ctkEnabled = "TRUE"
                              ctkEnabled = "TRUE"
                              sched.swap.derivedName = "/vmfs/volumes/dc0ddd0a-e7e89bd7/Graylog/Graylog-eda98aed.vswp"
                              migrate.hostLog = "Graylog-50f77235.hlog"
                              guestinfo.vmtools.buildNumber = "18090558"
                              guestinfo.vmtools.description = "open-vm-tools 11.3.0 build 18090558"
                              guestinfo.vmtools.versionNumber = "11360"
                              guestinfo.vmtools.versionString = "11.3.0"
                              scsi0:0.redo = ""
                              vmotion.svga.mobMaxSize = "4194304"
                              vmotion.svga.graphicsMemoryKB = "4096"
                              
                              
                              florentF 1 Reply Last reply Reply Quote 1
                              • olivierlambertO Offline
                                olivierlambert Vates 🪐 Co-Founder CEO
                                last edited by olivierlambert

                                I edited your post to get the right "code" display šŸ™‚ (you need to have the three ``` on a new line)

                                brezlordB 1 Reply Last reply Reply Quote 0
                                • brezlordB Offline
                                  brezlord @olivierlambert
                                  last edited by

                                  @olivierlambert thank and dually noted.

                                  1 Reply Last reply Reply Quote 0
                                  • florentF Offline
                                    florent Vates 🪐 XO Team @brezlord
                                    last edited by

                                    @brezlord I found it : guestOS is first used as a string, and then with additionnal properties

                                    can you pull and try again ?

                                    brezlordB 2 Replies Last reply Reply Quote 0
                                    • brezlordB Offline
                                      brezlord @florent
                                      last edited by

                                      @florent ok give me 10 to rebuild and report back.

                                      1 Reply Last reply Reply Quote 0
                                      • brezlordB Offline
                                        brezlord @florent
                                        last edited by

                                        @florent you've fixed it. The task has started. I'll report back when the import has finished. XO is saying 1 hour.

                                        florentF 1 Reply Last reply Reply Quote 2
                                        • olivierlambertO Offline
                                          olivierlambert Vates 🪐 Co-Founder CEO
                                          last edited by

                                          \o/

                                          Now: šŸ¤ž

                                          1 Reply Last reply Reply Quote 0
                                          • florentF Offline
                                            florent Vates 🪐 XO Team @brezlord
                                            last edited by

                                            @brezlord you may also try the "thin=true" option, that will take longer, but will build a thin disk, without the unallocated sectors ( the progress is , for now, only visible in the xo logs side )

                                            brezlordB 2 Replies Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better šŸ’—

                                            Register Login
                                            • First post
                                              Last post