[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFC v3 14/27] COLO failover: Introduce a new com
From: |
Wen Congyang |
Subject: |
Re: [Qemu-devel] [PATCH RFC v3 14/27] COLO failover: Introduce a new command to trigger a failover |
Date: |
Wed, 25 Feb 2015 15:40:35 +0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 |
On 02/25/2015 03:04 PM, zhanghailiang wrote:
> On 2015/2/17 7:47, Eric Blake wrote:
>> On 02/11/2015 08:17 PM, zhanghailiang wrote:
>>> We leave users to use whatever heartbeat solution they want, if the
>>> heartbeat
>>> is lost, or other errors they detect, they can use command
>>> 'colo_lost_heartbeat' to tell COLO to do failover, COLO will do operations
>>> accordingly.
>>>
>>> For example,
>>> If send the command to PVM, Primary will exit COLO mode, and takeover,
>>> if to Secondary, Secondary will do failover work and at last takeover
>>> server.
>>>
>>> Signed-off-by: zhanghailiang <address@hidden>
>>> Signed-off-by: Li Zhijian <address@hidden>
>>> Signed-off-by: Lai Jiangshan <address@hidden>
>>> Signed-off-by: Yang Hongyang <address@hidden>
>>> ---
>>> hmp-commands.hx | 15 ++++++++++++++
>>> hmp.c | 7 +++++++
>>> hmp.h | 1 +
>>> include/migration/migration-colo.h | 1 +
>>> include/migration/migration-failover.h | 20 ++++++++++++++++++
>>> migration/Makefile.objs | 2 +-
>>> migration/colo-failover.c | 38
>>> ++++++++++++++++++++++++++++++++++
>>> migration/colo.c | 1 +
>>> qapi-schema.json | 9 ++++++++
>>> qmp-commands.hx | 19 +++++++++++++++++
>>> stubs/migration-colo.c | 8 +++++++
>>> 11 files changed, 120 insertions(+), 1 deletion(-)
>>> create mode 100644 include/migration/migration-failover.h
>>> create mode 100644 migration/colo-failover.c
>>>
>>> diff --git a/hmp-commands.hx b/hmp-commands.hx
>>
>>> +++ b/qapi-schema.json
>>> @@ -543,6 +543,15 @@
>>> { 'command': 'query-migrate-capabilities', 'returns':
>>> ['MigrationCapabilityStatus']}
>>>
>>> ##
>>> +# @colo-lost-heartbeat
>>> +#
>>> +# Tell COLO that heartbeat is lost
>>> +#
>>> +# Since: 2.3
>>> +##
>>> +{ 'command': 'colo-lost-heartbeat' }
>>
>> Okay...
>>
>>> +
>>> +##
>>> # @MouseInfo:
>>> #
>>> # Information about a mouse device.
>>> diff --git a/qmp-commands.hx b/qmp-commands.hx
>>> index a85d847..1b4a5ca 100644
>>> --- a/qmp-commands.hx
>>> +++ b/qmp-commands.hx
>>> @@ -753,6 +753,25 @@ Example:
>>> EQMP
>>>
>>> {
>>> + .name = "colo_lost_heartbeat",
>>
>> ...but documented incorrectly (this should use '-' to match the command
>> name in the .json file, not '_')
>>
>
> Er, yes, you are right, here it should be 'colo-lost-heartbeat' in
> qmp-commands.hx,
> but 'colo_lost_heartbeat' in hmp-commands.hx, it is a little confused for me,
> why it should be like this?
>
> i will fix it.
>
>>> + .args_type = "",
>>> + .mhandler.cmd_new = qmp_marshal_input_colo_lost_heartbeat,
>>> + },
>>> +
>>> +SQMP
>>> +colo_lost_heartbeat
same here
>>> +--------------------
>>> +
>>> +Tell COLO that heartbeat is lost, a failover or takeover is needed.
>>> +
>>> +Example:
>>> +
>>> +-> { "execute": "colo_lost_heartbeat" }
>>> +<- { "return": {} }
>>
>> This example won't work unless you fix the spelling.
>>
>
> Should here also be changed to 'colo-lost-heartbeat' ?
Yes.
Thanks
Wen Congyang
>
> Thanks,
> zhanghailiang
>
>
>
> .
>
- [Qemu-devel] [PATCH RFC v3 26/27] COLO: Implement shutdown checkpoint, (continued)
- [Qemu-devel] [PATCH RFC v3 26/27] COLO: Implement shutdown checkpoint, zhanghailiang, 2015/02/11
- [Qemu-devel] [PATCH RFC v3 25/27] COLO: Disable qdev hotplug when VM is in COLO mode, zhanghailiang, 2015/02/11
- [Qemu-devel] [PATCH RFC v3 24/27] COLO NIC: Implement NIC checkpoint and failover, zhanghailiang, 2015/02/11
- [Qemu-devel] [PATCH RFC v3 27/27] COLO: Add block replication into colo process, zhanghailiang, 2015/02/11
- [Qemu-devel] [PATCH RFC v3 05/27] migration: Integrate COLO checkpoint process into loadvm, zhanghailiang, 2015/02/11
- [Qemu-devel] [PATCH RFC v3 11/27] COLO RAM: Load PVM's dirty page into SVM's RAM cache temporarily, zhanghailiang, 2015/02/11
- [Qemu-devel] [PATCH RFC v3 14/27] COLO failover: Introduce a new command to trigger a failover, zhanghailiang, 2015/02/11
- [Qemu-devel] [PATCH RFC v3 06/27] migration: Don't send vm description in COLO mode, zhanghailiang, 2015/02/11
- [Qemu-devel] [PATCH RFC v3 23/27] COLO: Improve checkpoint efficiency by do additional periodic checkpoint, zhanghailiang, 2015/02/11
- [Qemu-devel] [PATCH RFC v3 03/27] COLO: migrate colo related info to slave, zhanghailiang, 2015/02/11
- Re: [Qemu-devel] [PATCH RFC v3 00/27] COarse-grain LOck-stepping(COLO) Virtual Machines for Non-stop Service, Dr. David Alan Gilbert, 2015/02/16
- Re: [Qemu-devel] [PATCH RFC v3 00/27] COarse-grain LOck-stepping(COLO) Virtual Machines for Non-stop Service, Dr. David Alan Gilbert, 2015/02/24
- Re: [Qemu-devel] [PATCH RFC v3 00/27] COarse-grain LOck-stepping(COLO) Virtual Machines for Non-stop Service, Dr. David Alan Gilbert, 2015/02/24