[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [PATCH V2 0/4] Introduce Advanced Watch Dog module
From: |
Zhang, Chen |
Subject: |
RE: [PATCH V2 0/4] Introduce Advanced Watch Dog module |
Date: |
Fri, 8 Nov 2019 03:03:11 +0000 |
Hi~ All~
Ping.... Anyone have time to review this series? I need more comments~
Thanks
Zhang Chen
> -----Original Message-----
> From: Zhang, Chen <address@hidden>
> Sent: Friday, November 1, 2019 10:49 AM
> To: Jason Wang <address@hidden>; Paolo Bonzini
> <address@hidden>; Philippe Mathieu-Daudé <address@hidden>;
> qemu-dev <address@hidden>
> Cc: Zhang Chen <address@hidden>; Zhang, Chen
> <address@hidden>
> Subject: [PATCH V2 0/4] Introduce Advanced Watch Dog module
>
> From: Zhang Chen <address@hidden>
>
> Advanced Watch Dog is an universal monitoring module on VMM side, it can
> be used to detect network down(VMM to guest, VMM to VMM, VMM to
> another remote server) and do previously set operation. Current AWD patch
> just accept any input as the signal to refresh the watchdog timer, and we can
> also make a certain interactive protocol here. For the output user can pre-
> write some command or some messages in the AWD opt-script. We noticed
> that there is no way for VMM communicate directly, maybe some people
> think we don't need such things(up layer software like openstack can handle
> it). But we engaged with real customer found that in some cases,they need a
> lightweight and efficient mechanism to solve some practical
> problems(openstack is too heavy).
> for example: When it detects lost connection with the paired node,it will
> send message to admin, notify another VMM, send qmp command to qemu
> do some operation like restart the VM, build VMM heartbeat system, etc.
> It make user have basic VM/Host network monitoring tools and basic false
> tolerance and recovery solution.
>
> Demo usage(for COLO heartbeat service):
>
> In primary node:
>
> -chardev socket,id=h1,host=3.3.3.3,port=9009,server,nowait
> -chardev socket,id=heartbeat0,host=3.3.3.3,port=4445
> -object iothread,id=iothread2
> -object advanced-
> watchdog,id=heart1,server=on,awd_node=h1,notification_node=heartbeat
> 0,opt_script=colo_opt_script_path,iothread=iothread1,pulse_interval=1000,
> timeout=5000
>
> In secondary node:
>
> -monitor tcp::4445,server,nowait
> -chardev socket,id=h1,host=3.3.3.3,port=9009,reconnect=1
> -chardev socket,id=heart1,host=3.3.3.8,port=4445
> -object iothread,id=iothread1
> -object advanced-
> watchdog,id=heart1,server=off,awd_node=h1,notification_node=heart1,op
> t_script=colo_secondary_opt_script,iothread=iothread1,timeout=10000
>
>
> V2:
> - Addressed Philippe comments add configure selector for AWD.
>
> Initial:
> - Initial version.
>
> Zhang Chen (4):
> net/awd.c: Introduce Advanced Watch Dog module framework
> net/awd.c: Initailize input/output chardev
> net/awd.c: Load advanced watch dog worker thread job
> vl.c: Make Advanced Watch Dog delayed initialization
>
> configure | 9 +
> net/Makefile.objs | 1 +
> net/awd.c | 491
> ++++++++++++++++++++++++++++++++++++++++++++++
> qemu-options.hx | 6 +
> vl.c | 7 +
> 5 files changed, 514 insertions(+)
> create mode 100644 net/awd.c
>
> --
> 2.17.1
- RE: [PATCH V2 0/4] Introduce Advanced Watch Dog module,
Zhang, Chen <=