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

Export Nydus images as block devices by using NBD #1139

Merged
merged 7 commits into from
Mar 7, 2023

Commits on Mar 4, 2023

  1. rafs: refine v6 related code

    Refine v6 related code and add two fields to meta info.
    
    Signed-off-by: Jiang Liu <gerry@linux.alibaba.com>
    jiangliu committed Mar 4, 2023
    Configuration menu
    Copy the full SHA
    748c12e View commit details
    Browse the repository at this point in the history
  2. rafs: load mapped-blkaddr for each data blob

    Load the mapped_blkaddr field for each data blob, later it will
    be used compose a RAFS v6 image into a block device.
    
    Signed-off-by: Jiang Liu <gerry@linux.alibaba.com>
    jiangliu committed Mar 4, 2023
    Configuration menu
    Copy the full SHA
    c8b13eb View commit details
    Browse the repository at this point in the history
  3. service: add common code to compose a block device from a RAFSv6 image

    Add common code to compose a block device from a RAFS image,
    which then can used exposed through nbd/ublk/virtio-blk/vhost-user-blk
    etc.
    
    Signed-off-by: Jiang Liu <gerry@linux.alibaba.com>
    jiangliu committed Mar 4, 2023
    Configuration menu
    Copy the full SHA
    e4dc7f8 View commit details
    Browse the repository at this point in the history
  4. service: compose a block device from a RAFSv6 image

    Compose a block device from a RAFSv6 image, so all metadata/data
    content can be accessed by block address. The EROFS fs driver can be
    used to directly mount the block device.
    
    It depends on the blob_cache subsystem and can be used to implement
    nbd/ublk/virtio-blk/vhost-user-blk servers.
    
    Signed-off-by: Jiang Liu <gerry@linux.alibaba.com>
    jiangliu committed Mar 4, 2023
    Configuration menu
    Copy the full SHA
    10a2fef View commit details
    Browse the repository at this point in the history
  5. service: add nbd service to export RAFSv6 images as block devices

    Implement NbdService which cooperates with the Linux nbd driver to
    expose RAFSv6 images as block devices. To simplify the implementation,
    the NbdService will directly talk with the nbd driver, instead of
    following a typical nbd-server and nbd-client architecture.
    
    Signed-off-by: Jiang Liu <gerry@linux.alibaba.com>
    jiangliu committed Mar 4, 2023
    Configuration menu
    Copy the full SHA
    1e9b2f3 View commit details
    Browse the repository at this point in the history
  6. nydusd: add subcommand nbd to export nydus images as block devices

    Add subcommand nbd to export nydus images as block devices through
    NBD.
    
    Signed-off-by: Jiang Liu <gerry@linux.alibaba.com>
    jiangliu committed Mar 4, 2023
    Configuration menu
    Copy the full SHA
    eceeefd View commit details
    Browse the repository at this point in the history
  7. api: add method to load BlobCacheConfigV2 from file

    Add method to load BlobCacheConfigV2 from configuration file.
    
    Signed-off-by: Jiang Liu <gerry@linux.alibaba.com>
    jiangliu committed Mar 4, 2023
    Configuration menu
    Copy the full SHA
    f9b051e View commit details
    Browse the repository at this point in the history