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

    Migrate VM with a private network to another host.

    Scheduled Pinned Locked Moved Xen Orchestra
    7 Posts 2 Posters 2.4k Views 1 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.
    • P Offline
      pnunn
      last edited by

      I have what is currently a two machine setup. One machine has all the VM's on it currently and I have recently added another host to the pool. I now want to move the VM's to this host so that I can restart the first host to patch it.

      Now, the host seems to have all of the private networks on it (no pif involved with these netorks) when I look at it in XE however, when I try and move a machine (in this case a simple one with only one private network on it) I get an error.

      vm.migrate
      {
        "vm": "7884cb7b-da2f-2614-e3d6-13e81509154b",
        "targetHost": "0eb70464-d6c1-452a-947a-97d79f5678f8"
      }
      {
        "code": "VM_REQUIRES_NETWORK",
        "params": [
          "OpaqueRef:41f9b169-4fe4-4754-b6c6-cf36ad7e25c0",
          "OpaqueRef:f0f2b013-9eb9-4f20-ad10-58edcbf2a5cc"
        ],
        "task": {
          "uuid": "289a29cf-43eb-3123-d91e-74c809e247aa",
          "name_label": "Async.VM.migrate_send",
          "name_description": "",
          "allowed_operations": [],
          "current_operations": {},
          "created": "20190613T11:09:26Z",
          "finished": "20190613T11:09:26Z",
          "status": "failure",
          "resident_on": "OpaqueRef:a80d8f14-f277-4a04-94df-166b7775824f",
          "progress": 1,
          "type": "<none/>",
          "result": "",
          "error_info": [
            "VM_REQUIRES_NETWORK",
            "OpaqueRef:41f9b169-4fe4-4754-b6c6-cf36ad7e25c0",
            "OpaqueRef:f0f2b013-9eb9-4f20-ad10-58edcbf2a5cc"
          ],
          "other_config": {},
          "subtask_of": "OpaqueRef:NULL",
          "subtasks": [],
          "backtrace": "(((process\"xapi @ xcp-oldyella\")(filename lib/debug.ml)(line 240))((process\"xapi @ xcp-oldyella\")(filename lib/xapi-stdext-pervasives/pervasiveext.ml)(line 24))((process\"xapi @ xcp-oldyella\")(filename lib/xapi-stdext-pervasives/pervasiveext.ml)(line 35))((process\"xapi @ xcp-oldyella\")(filename ocaml/xapi/message_forwarding.ml)(line 1715))((process\"xapi @ xcp-oldyella\")(filename lib/xapi-stdext-pervasives/pervasiveext.ml)(line 24))((process\"xapi @ xcp-oldyella\")(filename ocaml/xapi/rbac.ml)(line 236))((process\"xapi @ xcp-oldyella\")(filename ocaml/xapi/server_helpers.ml)(line 83)))"
        },
        "message": "VM_REQUIRES_NETWORK(OpaqueRef:41f9b169-4fe4-4754-b6c6-cf36ad7e25c0, OpaqueRef:f0f2b013-9eb9-4f20-ad10-58edcbf2a5cc)",
        "name": "XapiError",
        "stack": "XapiError: VM_REQUIRES_NETWORK(OpaqueRef:41f9b169-4fe4-4754-b6c6-cf36ad7e25c0, OpaqueRef:f0f2b013-9eb9-4f20-ad10-58edcbf2a5cc)
          at Function.wrap (/root/xen-orchestra/packages/xen-api/src/_XapiError.js:16:11)
          at _default (/root/xen-orchestra/packages/xen-api/src/_getTaskResult.js:11:28)
          at Xapi._addRecordToCache (/root/xen-orchestra/packages/xen-api/src/index.js:795:37)
          at events.forEach.event (/root/xen-orchestra/packages/xen-api/src/index.js:816:13)
          at Array.forEach (<anonymous>)
          at Xapi._processEvents (/root/xen-orchestra/packages/xen-api/src/index.js:806:11)
          at /root/xen-orchestra/packages/xen-api/src/index.js:960:13
          at Generator.next (<anonymous>)
          at asyncGeneratorStep (/root/xen-orchestra/packages/xen-api/dist/index.js:58:103)
          at _next (/root/xen-orchestra/packages/xen-api/dist/index.js:60:194)
          at tryCatcher (/root/xen-orchestra/node_modules/bluebird/js/release/util.js:16:23)
          at Promise._settlePromiseFromHandler (/root/xen-orchestra/node_modules/bluebird/js/release/promise.js:512:31)
          at Promise._settlePromise (/root/xen-orchestra/node_modules/bluebird/js/release/promise.js:569:18)
          at Promise._settlePromise0 (/root/xen-orchestra/node_modules/bluebird/js/release/promise.js:614:10)
          at Promise._settlePromises (/root/xen-orchestra/node_modules/bluebird/js/release/promise.js:694:18)
          at _drainQueueStep (/root/xen-orchestra/node_modules/bluebird/js/release/async.js:138:12)
          at _drainQueue (/root/xen-orchestra/node_modules/bluebird/js/release/async.js:131:9)
          at Async._drainQueues (/root/xen-orchestra/node_modules/bluebird/js/release/async.js:147:5)
          at Immediate.Async.drainQueues (/root/xen-orchestra/node_modules/bluebird/js/release/async.js:17:14)
          at runCallback (timers.js:810:20)
          at tryOnImmediate (timers.js:768:5)
          at processImmediate [as _immediateCallback] (timers.js:745:5)"
      } 
      
      I'm guessing this is because the private networks are not infact pool wide (had a similar problem with VMWare) but I'm not sure how I add this network to the new host.
      
      Any clues?
      Ta
      Peter.
      
      
      1 Reply Last reply Reply Quote 0
      • olivierlambertO Offline
        olivierlambert Vates πŸͺ Co-Founder CEO
        last edited by olivierlambert

        You can't have a shared private network by default (in other words: private network are "per host" only).

        Good news: we'll have this feature implemented via a Xen Orchestra plugin (in beta) at the end of the month!

        This will rely on Open vSwtich and GRE tunnels.

        1 Reply Last reply Reply Quote 0
        • olivierlambertO Offline
          olivierlambert Vates πŸͺ Co-Founder CEO
          last edited by

          Until then: remove the VIF, migrate and recreate it when the VM is on the other host

          P 1 Reply Last reply Reply Quote 0
          • P Offline
            pnunn @olivierlambert
            last edited by

            @olivierlambert Thanks Oliver,

            Problem is, can't migrate a machine that is off, and can't run without the network.. hmmm.. Guess I can clone and delete, but that's a bit ugly.

            On VMWare you can atleast install the network on multiple hosts even though its only seeing machines on that host..

            I eagerly await the fix in the mean time.

            P.

            1 Reply Last reply Reply Quote 0
            • olivierlambertO Offline
              olivierlambert Vates πŸͺ Co-Founder CEO
              last edited by olivierlambert

              It's more than a fix, it's a new feature, requiring to talk to Open vSwitch to create a star topology with GRE tunnels. Months of developments. Not just a fix πŸ˜‰

              1 Reply Last reply Reply Quote 0
              • P Offline
                pnunn
                last edited by

                Does sound interesting. Were supposed to be going live any day now.. so our timing is off by the looks.

                Seems I managed to mangle one of the test vm's trying to move hosts (deleted the network, tried to migrate it, re-create the network and now I can't even stop the machine).

                The other ones in the set I just stopped and re-started and they popped across to the other host with the network intact by the looks.

                Thing is, how do I force it to start on the second host? Seems to have done it by magic (guess because it had more resources) but I can't seem to find any way to say "start here".

                What's going to be involved in upgrading to the new version? Is that going to be an easy process πŸ™‚

                P.

                1 Reply Last reply Reply Quote 0
                • olivierlambertO Offline
                  olivierlambert Vates πŸͺ Co-Founder CEO
                  last edited by olivierlambert

                  Advanced tab of the VM view, "Start on…" button.

                  Cross server private network will be a Xen Orchestra plugin for our next release.

                  1 Reply 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