From: Zhang Chen <chen.zhang@intel.com >
To: "Jason Wang" <jasowang@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
qemu-dev <qemu-devel@nongnu.org>
Cc: Zhang Chen <chen.zhang@intel.com>, Zhang Chen <zhangckid@gmail.com>
Subject: [PATCH V2 0/4] Introduce Advanced Watch Dog module
Date: Fri, 1 Nov 2019 10:48:46 +0800 [thread overview]
Message-ID: <20191101024850.20808-1-chen.zhang@intel.com> (raw)
From: Zhang Chen <chen.zhang@intel.com>
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=heartbeat0,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,opt_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
next reply other threads:[~2019-11-01 2:58 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-01 2:48 Zhang Chen [this message]
2019-11-01 2:48 ` [PATCH V2 1/4] net/awd.c: Introduce Advanced Watch Dog module framework Zhang Chen
2019-11-01 2:48 ` [PATCH V2 2/4] net/awd.c: Initailize input/output chardev Zhang Chen
2019-11-01 2:48 ` [PATCH V2 3/4] net/awd.c: Load advanced watch dog worker thread job Zhang Chen
2019-11-01 2:48 ` [PATCH V2 4/4] vl.c: Make Advanced Watch Dog delayed initialization Zhang Chen
2019-11-08 3:03 ` [PATCH V2 0/4] Introduce Advanced Watch Dog module Zhang, Chen
2019-11-27 15:48 ` Markus Armbruster
2019-11-28 3:15 ` Zhang, Chen
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=20191101024850.20808-1-chen.zhang@intel.com \
--to=chen.zhang@intel.com \
--cc=jasowang@redhat.com \
--cc=pbonzini@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=zhangckid@gmail.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).