Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support standard NBD URL syntax #174

Open
ahadas opened this issue May 11, 2022 · 0 comments
Open

Support standard NBD URL syntax #174

ahadas opened this issue May 11, 2022 · 0 comments
Labels
enhancement Enhancing the system by adding new feature or improving performance or reliability storage

Comments

@ahadas
Copy link
Member

ahadas commented May 11, 2022

Description

NBD protocol introduced new URL syntax recenlty:
https://github.com/NetworkBlockDevice/nbd/blob/master/doc/uri.md

NBD URI Export name
nbd+unix:///disk?socket=sock disk
nbd+unix:///?socket=sock (empty string)
nbd://example.com/disk disk
nbd://example.com/ (empty string)

Vdsm generates qemu non-standard syntax:

QEMU NBD URI Export name
nbd:unix:/socket:exportname=disk disk
nbd:example.com/disk disk

We want to switch to the standard NBD URL syntax for better compatibility with
virt-v2v, and possibly allowing backup using NBD socket.

Vdsm generates NBD URL in:

  • NBD.start_server
  • VM.start_backup

In both cases we need to switch to the new syntax.

This change depends on oVirt/ovirt-imageio#68
we cannot generate URLs that imageio does not support, since imageio is
consuming these URLs when downloading disks and backups.

We also need to check that qemu-nbd and qemu support the new syntax, we never
tested the new syntax.

How this can work with mixed environment?

Old hosts will generate the old non-standard NBD URL, and new hosts the standard NBD URL.
Upload on new host uses imageio supporting new NBD URL. Upload on old hosts use imageio
that may not support new standard NBD URL.

Plan

  • Require imageio version supporting standard NBD URL
  • Generate standard NBD URL

More info

Original bug: https://bugzilla.redhat.com/1849097

@nirs nirs added enhancement Enhancing the system by adding new feature or improving performance or reliability storage labels May 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancing the system by adding new feature or improving performance or reliability storage
Projects
None yet
Development

No branches or pull requests

2 participants