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 175.3k 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.
    • florentF Offline
      florent Vates 🪐 XO Team @olivierlambert
      last edited by

      @olivierlambert yes
      and the multi import will runVM two by two

      1 Reply Last reply Reply Quote 1
      • S Offline
        stmboyd
        last edited by

        Hello,

        I am not even able to connect. When I enter the credentials for my host and hit connect, I get an error when XO tries to iterate over the data:

        esxi.listVms
        {
          "host": "10.64.54.4",
          "user": "root",
          "password": "* obfuscated *",
          "sslVerify": false
        }
        {
          "message": "Cannot read properties of undefined (reading 'perDatastoreUsage')",
          "name": "TypeError",
          "stack": "TypeError: Cannot read properties of undefined (reading 'perDatastoreUsage')
            at file:///opt/xo/xo-builds/xen-orchestra-202303302257/@xen-orchestra/vmware-explorer/esxi.mjs:211:55
            at Array.map (<anonymous>)
            at Esxi.getAllVmMetadata (file:///opt/xo/xo-builds/xen-orchestra-202303302257/@xen-orchestra/vmware-explorer/esxi.mjs:209:31)
            at Api.#callApiMethod (file:///opt/xo/xo-builds/xen-orchestra-202303302257/packages/xo-server/src/xo-mixins/api.mjs:401:20)"
        }
        

        Using XO from sources a41037833c960078d8509fd95e01aa0bb5a3670e
        ESXi 6.5.0

        Regardless of what the issue ends up being, is there maybe a better way of handling the flow? As in, when I click connect, can there be a landing page that says "connected", and allows for partial loading of info? Might be helpful, and will certainly be a better user experience.

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

          1. Either try on latest commit on master or XOA with latest to see if it's better
          2. I don't understand the other part of your comment, if the error is during the connection, there's little more we can do
          S 1 Reply Last reply Reply Quote 0
          • S Offline
            stmboyd @olivierlambert
            last edited by

            @olivierlambert

            1. Did you even look at the commit I posted? When I ran this, it was 2 commits behind latest master. Was the commit of you updating a document supposed to make things better? How about the commit to Lite, was that really going to fix anything?

            2. Please at least make some effort here, I posted a trace for a reason.

            The failing line is this: https://github.com/vatesfr/xen-orchestra/blob/master/%40xen-orchestra/vmware-explorer/esxi.mjs#L211
            For some reason, this property is not available on storage.
            That code is called from here: https://github.com/vatesfr/xen-orchestra/blob/1942e55f763bd3d74c7cbc3dc1fc4c0ec070414c/packages/xo-server/src/xo-mixins/migrate-vm.mjs#L164

            Look at that function for a second, and then re-read what I said in the earlier comment. Why does this function try and do two things? I'm saying it may be a good idea to split this into 2 parts. First, only connect, and then display a page in XO that shows the connection is live, and then after that query the data. This would make things a bit nicer.

            More importantly, there needs to be some way for me to help figure out why the data that comes in is not in the format XO is expecting. That way we could solve a problem.

            In the future, please don't make several blog posts and a huge thread asking for "feedback" and then tell me "there's little more we can do" when you have done nothing, it doesn't really feel encouraging.

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

              1. As per the documentation, it's asked to be sure you are on the latest commit on master. It solved countless of reports because people (in general) aren't following this simple rule. Since you are not more special than anyone else (there's dozen of new messages per day, I can't check each situation in details as we all offer assistance on our free time here), you should follow it. This is how it works here, and it's not personal, believe me 🙂
              2. "Make some effort": this is a community forum and not a paid assistance here. You should adapt your attitude if you want help, because this is really not helping to be rude or ask for help while nobody owe you anything. Being polite is a far more rewarding strategy to have help from others!

              Finally, we are fully open source, so you have also the opportunity to bring your knowledge and modify the code, even providing it via a pull request we'll be happy to read/comment and merge. https://xen-orchestra.com/docs/contributing.html for details.

              We'll be happy to assist as soon you understand what this place is: a community forum where people assist on their free time and because they want to assist people. Not because they have to. We (I think I can talk for a large part of the community) do not accept people coming and asking for results. You can criticize and report bugs, as long it's constructive and following our doc. If you want a guarantee of efforts or results, you can have pro support with a service you pay for 🙂

              I hope it's more clear, happy to assist you when it's understood 🙂

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

                @stmboyd Hi

                I wrote most of the code for v2v migration. Please note that

                • there is a huge number of things happening in this error, and this error is probably caused earlier during the api call to the ESXI, which is probably linked to a configuration on your part that we should try to handle, or at least identify. And we'll try, but it will take times, to identify it
                  The real question, is why the storage is missing the soap api call should return it and the code should format it correctly . And that is why we ask for constructive feedback, making different productes talk together reliably is hard.

                • If the call to the api fail , the connect won't return anything usefull. If it succeed, we won't have much more to show ( maybe a "password/login seems ok ?) That will add one step for everybody , with , in my advice, little additionnal value, but I am not ready to die on this hill if there are other people advocating for it

                As @olivierlambert said, as soon as we are working in the same direction to solves this, we'll do our possible.

                1 Reply Last reply Reply Quote 0
                • pedroalvesbatistaP Offline
                  pedroalvesbatista
                  last edited by

                  No tested yet, as soon some hosts are fine after our PXE enrollments, will test this out.
                  Any scripts in the house to accelerate a little bit the process ?

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

                    @pedroalvesbatista For now we're working on reliability and ease of use, performance won't be easy to improve. The main clue I have, would be to mount the dtastore of the esxi in XO, it may be faster than the HTTP API ( which does a surprising good job given the number of query we make )

                    But if there are ideas, I would be happy to discuss them.

                    1 Reply Last reply Reply Quote 1
                    • D Offline
                      DangerKlaus
                      last edited by

                      Hi all,
                      I've hit an issue testing import and not seen the answer anywhere else so here goes.
                      Setup:
                      ESX 6.0
                      XO build from sources

                      Issue, when importing from vmware I get the following error

                      vm.importMultipleFromEsxi
                      {
                        "concurrency": 2,
                        "host": "x.x.x.x",
                        "network": "7286bb98-7207-610c-0519-44bb366d7b46",
                        "password": "* obfuscated *",
                        "sr": "22c0b692-4837-d527-ec8f-3e258baabbf2",
                        "sslVerify": false,
                        "stopOnError": true,
                        "stopSource": false,
                        "thin": true,
                        "user": "administrator@vsphere.local",
                        "vms": [
                          "vm-13048",
                          "vm-784"
                        ]
                      }
                      {
                        "succeeded": {},
                        "message": "Property description must be an object: undefined",
                        "name": "TypeError",
                        "stack": "TypeError: Property description must be an object: undefined
                          at Function.defineProperty (<anonymous>)
                          at Task.onProgress (/opt/xen-orchestra/@vates/task/combineEvents.js:51:16)
                          at Task.#emit (/opt/xen-orchestra/@vates/task/index.js:126:21)
                          at Task.#maybeStart (/opt/xen-orchestra/@vates/task/index.js:133:17)
                          at Task.runInside (/opt/xen-orchestra/@vates/task/index.js:152:21)
                          at Task.run (/opt/xen-orchestra/@vates/task/index.js:138:31)
                          at asyncEach.concurrency.concurrency (file:///opt/xen-orchestra/packages/xo-server/src/api/vm.mjs:1372:58)
                          at next (/opt/xen-orchestra/@vates/async-each/index.js:90:37)"
                      }
                      

                      I've tried via host and vCenter ip, via thin and thick, snapshot and no snapshot. Also tried via command line.

                      Any ideas?

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

                        Hello!

                        Do you have the same issue with XOA on latest? Is your XO from sources is fully up to date on latest master commit?

                        D 1 Reply Last reply Reply Quote 0
                        • D Offline
                          DangerKlaus @olivierlambert
                          last edited by DangerKlaus

                          Hey @olivierlambert

                          I'm using Jarli's install/update script and I ran an update and test before I posted so believe the answer is yes.

                          This stack (XCP) was only built in the last 24hr so everything is pretty much up to date.

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

                            Okay I would also try with a fully updated XOA on latest channel to compare with your source install. If the result is the same, then @florent will take a look 🙂

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

                              @DangerKlaus can you try importing only one VM , to see if we have another error message ?

                              D 1 Reply Last reply Reply Quote 0
                              • D Offline
                                DangerKlaus @florent
                                last edited by

                                @florent It's the same error regardless. Currently testing official XO and will report back asap.

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

                                  Don't forget to register/update and select "latest" on the release channel. Thanks for your feedback!

                                  D 1 Reply Last reply Reply Quote 1
                                  • D Offline
                                    DangerKlaus @olivierlambert
                                    last edited by DangerKlaus

                                    @olivierlambert Okay, there is definitely a difference. I've kicked off a migration and I'm getting a spinning wheel on the import button rather than a flat out error.

                                    So I guess is the issue is with source??

                                    d4c50771-d8f6-488c-b6b2-8d61d35f7b9a-image.png

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

                                      Well, that's a possibility yes. And that's the point of XOA: we test it and we control the environment, so it's a LOT easier to provide pro support for it. Many things can be different on the sources (node version, libs or deps version breaking stuff and such).

                                      At least, that's an interesting feedback that either something new since latest XOA broke on master, or the installation is broken.

                                      Please let the migration happens and let us know 🙂

                                      D 1 Reply Last reply Reply Quote 1
                                      • D Offline
                                        DangerKlaus @olivierlambert
                                        last edited by

                                        @olivierlambert
                                        Quick update. Import via XOA finished overnight with no error.

                                        I can keep both XOA and source running in parallel for now if you need me to do any more testing

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

                                          Great news then! The tool will stay free in XOA Free anyway, but as soon as we can, we'll see if we can reproduce the issue on master on our side. If not, maybe you need to wipe/re-clone/rebuild the XO source folder in case. Double check your node version too.

                                          1 Reply Last reply Reply Quote 0
                                          • F Offline
                                            Flying9167
                                            last edited by

                                            I'm getting the same error from sources and from a fresh XOA fully updated on Latest channel even started a trial of premium. Any ideas?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post