qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Wen Congyang <wency@cn.fujitsu.com>
Cc: Kevin Wolf <kwolf@redhat.com>, Fam Zheng <famz@redhat.com>,
	Wen Congyang <ghostwcy@gmail.com>,
	qemu block <qemu-block@nongnu.org>,
	Jiang Yunhong <yunhong.jiang@intel.com>,
	Dong Eddie <eddie.dong@intel.com>,
	qemu devel <qemu-devel@nongnu.org>,
	"Michael R. Hines" <mrhines@linux.vnet.ibm.com>,
	Max Reitz <mreitz@redhat.com>,
	"Michael R. Hines" <mrhines@us.ibm.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Yang Hongyang <yanghy@cn.fujitsu.com>,
	Lai Jiangshan <laijs@cn.fujitsu.com>
Subject: Re: [Qemu-devel] [PATCH COLO-BLOCK v7 00/17] Block replication for continuous checkpoints
Date: Thu, 9 Jul 2015 14:40:00 +0100	[thread overview]
Message-ID: <20150709134000.GA5534@work-vm> (raw)
In-Reply-To: <559E53A5.2010105@cn.fujitsu.com>

* Wen Congyang (wency@cn.fujitsu.com) wrote:
> On 07/09/2015 06:37 PM, Dr. David Alan Gilbert wrote:
> > * Wen Congyang (wency@cn.fujitsu.com) wrote:
> >> On 07/09/2015 05:16 PM, Dr. David Alan Gilbert wrote:
> >>> * Wen Congyang (wency@cn.fujitsu.com) wrote:
> >>>
> >>>>>> I have sent the v8. But the usage is not changed. You can setup the environment according to the wiki.
> >>>>>> When we open nbd client, we need to connect to the nbd server. So I introduce a new command child_add to add NBD client
> >>>>>> as a quorum child when the nbd server is ready.
> >>>>>>
> >>>>>> The nbd server is ready after you run the following command:
> >>>>>> nbd_server_start 0:6262 # the secondary qemu will listen to host:port
> >>>>>> nbd_server_add -w mc1   # the NBD server will know this disk is used as NBD server. The export name is its id wc1.
> >>>>>>                         # -w means we allow to write to this disk.
> >>>>>>
> >>>>>> Then you can run the following command in the primary qemu:
> >>>>>> child_add disk1 child.driver=replication,child.mode=primary,child.file.host=127.0.0.1,child.file.port=6262,child.file.export=mc1,child.file.driver=nbd,child.ignore-errors=on
> >>>>>>
> >>>>>> After this monitor command, nbd client has connected to the nbd server.
> >>>>>
> >>>>> Ah! The 'child.file.export=mc1' wasn't there previously; I see Yang added that to the wiki yesterday;
> >>>>> that probably explains the problem that we've been having.
> >>>>
> >>>> Sorry for this mistake.
> >>>
> >>> OK, so this is working for me (with the 7.2 world).   What isn't working in this setup is migrate -b, I get:
> >>>
> >>> (qemu) Receiving block device images
> >>> Error unknown block device disk1
> >>> qemu-system-x86_64: error while loading state section id 1(block)
> >>> qemu-system-x86_64: load of migration failed: Invalid argument
> >>>
> >>> Can you explain the id=disk1 on the master side?
> >>
> >> Can you give me the command line? I think the id in primary and secondary qemu is not same.
> > 
> > Sure, primary:
> > 
> > ./try/bin/qemu-system-x86_64 -enable-kvm -nographic \
> >      -boot c -m 4096 -smp 4 -S \
> >      -name debug-threads=on -trace events=trace-file \
> >      -netdev tap,id=hn0,script=$PWD/ifup-prim,\
> > downscript=no,colo_script=$PWD/qemu/scripts/colo-proxy-script.sh,colo_nicname=em4 \
> >      -device e1000,mac=9c:da:4d:1c:b5:89,id=net-pci0,netdev=hn0 \
> >      -device virtio-rng-pci \
> >      -drive if=virtio,id=disk1,driver=quorum,read-pattern=fifo,\
> 
> If you want to use block migration, set the id to colo1

OK, does it make sense to always make it colo1 rather than having the 'disk1' and 'colo1' names?

> > cache=none,aio=native,\
> > children.0.file.filename=./bugzilla.raw,\
> > children.0.driver=raw
> > 
> > Sure, secondary:
> > 
> > TMPDISKS=/run
> > qemu-img create -f qcow2 $TMPDISKS/colo-hidden-disk.qcow2 40G
> > qemu-img create -f qcow2 $TMPDISKS/colo-active-disk.qcow2 40G
> > 
> > ./try/bin/qemu-system-x86_64 -enable-kvm -nographic \
> >      -boot c -m 4096 -smp 4 -S \
> >      -name debug-threads=on -trace events=trace-file \
> >      -netdev tap,id=hn0,script=$PWD/ifup-slave,\
> > downscript=no,colo_script=$PWD/qemu/scripts/colo-proxy-script.sh,colo_nicname=em4 \
> >      -device e1000,mac=9c:da:4d:1c:b5:89,id=net-pci0,netdev=hn0 \
> >      -device virtio-rng-pci \
> >      -drive if=none,driver=raw,file=/home/localvms/bugzilla.raw,id=colo1,cache=none,aio=native \
> >      -drive if=virtio,driver=replication,mode=secondary,export=colo1,throttling.bps-total-max=70000000,\
> > file.file.filename=$TMPDISKS/colo-active-disk.qcow2,\
> > file.driver=qcow2,\
> > file.backing.file.filename=$TMPDISKS/colo-hidden-disk.qcow2,\
> > file.backing.driver=qcow2,\
> > file.backing.backing.backing_reference=colo1,\
> > file.backing.allow-write-backing-file=on \
> >      -incoming tcp:0:8888
> > 
> > 
> > Secondary:
> >    nbd_server_start :8889
> >    nbd_server_add -w colo1
> > 
> > primary:
> > 
> > child_add disk1 child.driver=replication,child.mode=primary,child.file.host=ibpair,child.file.port=8889,child.file.export=colo1,child.file.driver=nbd,child.ignore-errors=on
> 
> here, it is child_add colo1 ....
> 
> > (qemu) migrate_set_capability colo on
> > (qemu) migrate -d -b tcp:ibpair:8888
> > 
> > 
> > note the 'id=disk1' in the primary is shown in your wiki.
> 
> IIRC, the default id is diskx, x is 1, 2, 3...

OK, using the colo1 in both those places that works (this is in the 7.2 world)
and the RAM disk size now doesn't grow in the -b block migrate.

Dave

> 
> Thanks
> Wen Congyang
> 
> > 
> > Dave
> > 
> >  Thanks
> >> Wen Congyang
> >>
> >>>
> >>> Dave
> >>>
> >>>>
> >>>> Thanks
> >>>> Wen Congyang
> >>>>
> >>>>>
> >>>>> Dave
> >>>>>
> >>>>>>
> >>>>>> Thanks
> >>>>>> Wen Congyang
> >>>>>>
> >>>>>>>
> >>>>>>> - Michael
> >>>>>>>
> >>>>>>> .
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>> --
> >>>>> Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
> >>>>> .
> >>>>>
> >>>>
> >>> --
> >>> Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
> >>> .
> >>>
> >>
> >>
> > --
> > Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
> > .
> > 
> 
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK

  reply	other threads:[~2015-07-09 13:40 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-30  3:34 [Qemu-devel] [PATCH COLO-BLOCK v7 00/17] Block replication for continuous checkpoints Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 01/17] Add new block driver interface to add/delete a BDS's child Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 02/17] quorum: implement block driver interfaces " Wen Congyang
2015-07-02 14:02   ` Alberto Garcia
2015-07-02 14:30     ` Wen Congyang
2015-07-02 15:21       ` Alberto Garcia
2015-07-03  1:10         ` Wen Congyang
2015-07-27 14:45         ` Eric Blake
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 03/17] hmp: add monitor command to add/remove a child Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 04/17] introduce a new API qemu_opts_absorb_qdict_by_index() Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 05/17] quorum: allow ignoring child errors Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 06/17] introduce a new API to enable/disable attach device model Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 07/17] introduce a new API to check if blk is attached Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 08/17] block: make bdrv_put_ref_bh_schedule() as a public API Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 09/17] Backup: clear all bitmap when doing block checkpoint Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 10/17] allow writing to the backing file Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 11/17] Allow creating backup jobs when opening BDS Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 12/17] block: Allow references for backing files Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 13/17] docs: block replication's description Wen Congyang
2015-07-02 14:50   ` Michael R. Hines
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 14/17] Add new block driver interfaces to control block replication Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 15/17] skip nbd_target when starting " Wen Congyang
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 16/17] quorum: implement block driver interfaces for " Wen Congyang
2015-07-03 12:21   ` Alberto Garcia
2015-06-30  3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 17/17] Implement new driver " Wen Congyang
2015-07-02 14:47 ` [Qemu-devel] [PATCH COLO-BLOCK v7 00/17] Block replication for continuous checkpoints Michael R. Hines
2015-07-03  1:13   ` Wen Congyang
2015-07-02 14:59 ` Michael R. Hines
2015-07-03  1:12   ` Wen Congyang
2015-07-03 15:30 ` Dr. David Alan Gilbert
2015-07-04 12:46   ` Wen Congyang
2015-07-06  9:42     ` Dr. David Alan Gilbert
2015-07-06 10:11       ` Wen Congyang
2015-07-07  0:25     ` Michael R. Hines
2015-07-07  1:07       ` Wen Congyang
2015-07-07  9:13         ` Dr. David Alan Gilbert
2015-07-07  9:23           ` Paolo Bonzini
2015-07-07 16:56             ` Michael R. Hines
2015-07-08  1:38               ` Wen Congyang
2015-07-08 15:49                 ` Michael R. Hines
2015-07-09  0:59                   ` Wen Congyang
2015-07-09  1:55                     ` Dr. David Alan Gilbert
2015-07-09  2:09                       ` Wen Congyang
2015-07-09  9:16                         ` Dr. David Alan Gilbert
2015-07-09  9:33                           ` Wen Congyang
2015-07-09 10:37                             ` Dr. David Alan Gilbert
2015-07-09 10:57                               ` Wen Congyang
2015-07-09 13:40                                 ` Dr. David Alan Gilbert [this message]
2015-07-09 13:48                                   ` Wen Congyang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150709134000.GA5534@work-vm \
    --to=dgilbert@redhat.com \
    --cc=eddie.dong@intel.com \
    --cc=famz@redhat.com \
    --cc=ghostwcy@gmail.com \
    --cc=kwolf@redhat.com \
    --cc=laijs@cn.fujitsu.com \
    --cc=mreitz@redhat.com \
    --cc=mrhines@linux.vnet.ibm.com \
    --cc=mrhines@us.ibm.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=wency@cn.fujitsu.com \
    --cc=yanghy@cn.fujitsu.com \
    --cc=yunhong.jiang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).