[sheepdog-users] [Sheepdog][Libvirt]Test boot VMs from sheepdog volumes in Libvirt

Gao Yongwei itxx00 at gmail.com
Fri Feb 1 18:33:21 CET 2013


2013/2/1 harryxiyou <harryxiyou at gmail.com>

> On Fri, Feb 1, 2013 at 6:14 PM, Gao Yongwei <itxx00 at gmail.com> wrote:
> [...]
> >> We can get "Boot VMs from sheepdog volumes in Libvirt" way
> >> from https://github.com/collie/sheepdog/wiki/Libvirt like following.
> >>
> >>   a,  prepare a file containing an XML domain description
> >>
> >>     $ cat > sheepdog.xml
> >>     <domain type='qemu'>
> >>       <name>testvm</name>
> >>       <memory>1048576</memory>
> >>       <os>
> >>         <type arch='x86_64'>hvm</type>
> >>       </os>
> >>       <devices>
> >>         <disk type='network'>
> >>           <source protocol="sheepdog" name="testvdi"/>
> >>           <target dev='hda' bus='ide'/>
> >>         </disk>
> >>         <graphics type='vnc' port='-1' autoport='yes'/>
> >>       </devices>
> >>     </domain>
> >>
> >>   b,  boot from testvdi with virsh
> >>
> >>     $ virsh create sheepdog.xml
> >>
> >>   c,  connect to a VNC console of the running VM
> >>
> >>     $ vncviewer localhost
> >>
> >> I have some following questions about up three steps.
> >>
> >> 1, Before a or b(up boot step) step, should we have to install our OS
> >> into 'testvdi'?
> >
> > As I know, you should install an OS in the disk,or cannot boot from a
> 'NULL'
> > disk.you know what i mean.
> >
>
> You just said with a common sense, which has no *real* help for me.
> *Please*
> see the step a then explain how to install os into testvdi. I think boot
> from
> VMs from Sheepdog volumes, which has to install OS into Sheepdog volumes.
> How should we install OS into Sheepdog volumes?

soga,you may not understand my english,^^,if you can speak Chinese I think
I can help you more comfortable.
I will try my best to share my experience.
to get a bootable disk with os installed, you could try this command:
wget http://wiki.qemu.org/download/linux-0.2.img.bz2
bunzip2 linux-0.2.img.bz2
kvm-img convert -t directsync linux-0.2.img sheepdog:test

> >>
> >> That is to say, we have to install OS from os.iso file into 'testvdi',
> >> which should use
> >> 'qemu-system-x86_64' command to install OS, right?
> >
> > To install an OS, you could use 'virt-install' ,or use the virt-manager
> GUI
> > tool.
> >
>
> Are you sure about your words? I think Step a boots VM from testvdi, which
> is a Sheepdog volume. You could use 'virt-install' to install a OS into
> Sheepdog
> volumes, like testvdi?
>
> BTW: Does 'virt-install' belong to Libvirt library source code? After i
> compile
> libvirt source code, i cannot find 'virt-install'.

virt-install does not belong to libvirt,but if you use RHEL or CentOS you
could install this tool from yum:
yum provides */virt-install
or you can get the source from virt-manager.org

> >> 3, This is the storage online management in Libvirt, right?
> >
> > later version of libvirt support managing sheepdog storage,use may have a
> > search at libvirt.org.
> >
>
> Have you ever booted a VM from Sheepdog volume? What steps did you
> do to finish this job?

to boot a vm from sheep vol you can use command like:
kvm -hda sheepdog:test -hdb sheepdog:data

>  >>
> >> 4, This test just test the codes Morita take a patch named "add
> >> network disk support"
> >> for Libvirt, which is located here:
> >>
> >>
> http://libvirt.org/git/?p=libvirt.git;a=commit;h=036ad5052b43fe9f0d197e89fd16715950408e1d
> >> and also test Sheepdog driver for QEMU, right?
> >
> > I think just test libvirt environment..
>
> You may not understand my question.
>
>
> >> 5, If i installed a 32bits OS to testvdi, should i modify
> >>       <os>
> >>         <type arch='x86_64'>hvm</type>
> >>       </os>
> >> to be
> >>       <os>
> >>         <type arch='x86'>hvm</type>
> >>       </os>
> >> , right?
> >
> > If  arch='x86_64', then this configuration support both x86 and x64.
>
> What is *x64*? I am not clear about your words.
>
> >>
> >> 6, The step c (up boot step), which is
> >>  $ vncviewer localhost
> >> Actually, i am not clear about this 'localhost'. Why should we link
> >> localhost but other ip addresses?
> >
> > As localhost allways singed to 127.0.0.1 ,or you can use 127.0.0.1
> instead
> > of a name like 'locallhost'.
> >
>
> I just ask why we should link localhost. *NOT* what is localhost. You may
> not
> understand my question.
>
> Thanks for your suggestions.

because VM's default vnc configuration in libvirt xml just binding the vnc
port to 127.0.0.1,you can change the default ip address of vnc using virsh:
virsh edit testvm

>
> --
> Thanks
> Harry Wei
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.wpkg.org/pipermail/sheepdog-users/attachments/20130202/238081a5/attachment.html>


More information about the sheepdog-users mailing list