-
Hello,
I'm testing restoring metadata from an old POOL HS to a new hypervisor.
After moving metadata backup from old POOL HS to metadata backup folder of new hypervisor, I get "RESTORE_TARGET_MISSING_DEVICE(eth3)" error.
Indeed the new hypervisor has 1 ethernet port less than the old master POOL HS.
I know I can get around this error by adding an ethernet port on the new hypervisor, but that may be an additional strain.
I don't understand why the Ethernet port difference is a problem? Do you know the reason?
(in addition, once the metadata has been restored, you have to go through the "network reconfiguration" box to properly recover the new hypervisor) -
I'm having this same issue. Were you ever able to find a solution or does anyone have a solution? Thanks.
-
O olivierlambert moved this topic from Feedback and requests on
-
Hi,
I ran into the same problem when testing for disaster recovery.
- One possible solution I found when "ethX" is missing: set up an XCP-NG host as guest (nested virtualization) and assign it enough NICs. Then restore on the virtualized XCP-NG. This will at least allow you to restore.
- This however did not work for: In my testing environment the "dead" host (only host in pool) was a Dell with iDrac-passthrough enabled. The NIC's name was 'idrac' on that host.
- Restore seems to be name-sensitive for the NICs. I did not find a way to create a NIC named 'idrac' for a virtualized XCP-NG.
This behavior is described in this document, section "Physical Machine failure - To restore a pool with all hosts failed" with no solution given.
-
Metadata restore is meant to restore on a similar host. Alternatively, restore the real VM backups via XO.
I also wonder if there's a way to just partially restore metadata, but it might be complex if you have missing NICs, therefore you'll have missing networks.
-
I did restore the VMs from their backups (full backups, delta backups, online snapshots, offline snapshots, XOA, XO self compiled) - it worked flawlessly and it is very much good enough for me.
My post was just meant as a small contribution to a possible future solution to the problem. Larger environments might be interested in disaster-recovering metadata on non-identical hardware.
If there was some way to assign arbitrary names to virtual NICs, the "restore into a virtualized XCP-NG" approach would most likely work. Maybe this is a simple thing for you to implement - and thereby offer an even better DR solution to larger installations.
-
@MTTUPM said in Restore metadata and RESTORE_TARGET_MISSING_DEVICE error:
Larger environments might be interested in disaster-recovering metadata on non-identical hardware.
That's not a best practice and probably very complex to manage. I'm not saying it shouldn't be done, but we probably have more pressing issues right now. If you find a way to do it with
xeCLI, let us know so it's easier to just "expose" in XO
-
OK, it can be done. So your lost host/pool had some fancy named network device (let's say idrac). You don't have identical hardware. Solution:
- set up a virtualized XCP-NG with the same (more might work) number of NICs as your lost host
- access that host's console
- xe pif-list # find a NIC you don't need for metadata restore, let's say eth4
- xe pif-forget uuid=<that pif>
- xe network-list # find the network associated with the forgotten NIC
- xe network-destroy uuid=<that network>
- ip link set dev eth4 down
- ip link set dev eth4 name idrac
- ip link set dev idrac up
- ip link show # find idrac's mac
- xe pif-introduce host-uuid<your virtualized host> mac=<idrac's mac> device=idrac
- I think this automatically added a network named idrac to the pool - don't know if it's needed
Now you can add the virtualized host to XO and restore your metadata. Is this a good idea? I don't know. I did not test it any further.
-
We are also performing recovery tests and documenting procedures in case a single host dies. New host has less NICs and our restore is failing with 'RESTORE_TARGET_MISSING_DEVICE(eth1)'. However, it's not that hard to add a NIC, so I did and now eth0, eth1, eth2 all exist but restore still fails with RESTORE_TARGET_MISSING_DEVICE(eth1). Is it also attempting to match MAC addresses? These are small deployments, less than four VMs, Internal Storage.
Usually one Windows Server VM responsible for 90% of SR use, plus a couple of small VMs: XO and other minor functions.
Not crazy about having to restore full VM backups when the SR is fully intact.
Is there a better way? -
S sshughes referenced this topic on
-
@sshughes When you go to 'Home > Hosts > YourRestoreHost > Tab:Network' in XO, is eth1 shown there? If not, it might need introduction.
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