From: Lukas Straub <lukasstraub2@web.de>
To: qemu-devel <qemu-devel@nongnu.org>
Cc: "Kevin Wolf" <kwolf@redhat.com>,
"Alberto Garcia" <berto@igalia.com>,
"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Max Reitz" <mreitz@redhat.com>,
"Zhang Chen" <chen.zhang@intel.com>,
"Cleber Rosa" <crosa@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>
Subject: [PATCH v3 0/7] colo: Introduce resource agent and test suite/CI
Date: Tue, 4 Aug 2020 12:46:29 +0200 [thread overview]
Message-ID: <cover.1596536719.git.lukasstraub2@web.de> (raw)
[-- Attachment #1: Type: text/plain, Size: 3079 bytes --]
Hello Everyone,
So here is v3. Patch 1 can already be merged independently of the others.
Please review.
Regards,
Lukas Straub
Based-on: <cover.1596528468.git.lukasstraub2@web.de>
"Introduce 'yank' oob qmp command to recover from hanging qemu"
Changes:
v3:
-resource-agent: Don't determine local qemu state by remote master-score, query
directly via qmp instead
-resource-agent: Add max_queue_size parameter for colo-compare
-resource-agent: Fix monitor action on secondary returning error during
clean shutdown
-resource-agent: Fix stop action setting master-score to 0 on primary on
clean shutdown
v2:
-use new yank api
-drop disk_size parameter
-introduce pick_qemu_util function and use it
Overview:
Hello Everyone,
These patches introduce a resource agent for fully automatic management of colo
and a test suite building upon the resource agent to extensively test colo.
Test suite features:
-Tests failover with peer crashing and hanging and failover during checkpoint
-Tests network using ssh and iperf3
-Quick test requires no special configuration
-Network test for testing colo-compare
-Stress test: failover all the time with network load
Resource agent features:
-Fully automatic management of colo
-Handles many failures: hanging/crashing qemu, replication error, disk error, ...
-Recovers from hanging qemu by using the "yank" oob command
-Tracks which node has up-to-date data
-Works well in clusters with more than 2 nodes
Run times on my laptop:
Quick test: 200s
Network test: 800s (tagged as slow)
Stress test: 1300s (tagged as slow)
For the last two tests, the test suite needs access to a network bridge to
properly test the network, so some parameters need to be given to the test
run. See tests/acceptance/colo.py for more information.
Regards,
Lukas Straub
Lukas Straub (7):
block/quorum.c: stable children names
avocado_qemu: Introduce pick_qemu_util to pick qemu utility binaries
boot_linux.py: Use pick_qemu_util
colo: Introduce resource agent
colo: Introduce high-level test suite
configure,Makefile: Install colo resource-agent
MAINTAINERS: Add myself as maintainer for COLO resource agent
MAINTAINERS | 6 +
Makefile | 5 +
block/quorum.c | 20 +-
configure | 10 +
scripts/colo-resource-agent/colo | 1501 +++++++++++++++++++++
scripts/colo-resource-agent/crm_master | 44 +
scripts/colo-resource-agent/crm_resource | 12 +
tests/acceptance/avocado_qemu/__init__.py | 15 +
tests/acceptance/boot_linux.py | 11 +-
tests/acceptance/colo.py | 677 ++++++++++
10 files changed, 2286 insertions(+), 15 deletions(-)
create mode 100755 scripts/colo-resource-agent/colo
create mode 100755 scripts/colo-resource-agent/crm_master
create mode 100755 scripts/colo-resource-agent/crm_resource
create mode 100644 tests/acceptance/colo.py
--
2.20.1
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next reply other threads:[~2020-08-04 10:50 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-04 10:46 Lukas Straub [this message]
2020-08-04 10:46 ` [PATCH v3 1/7] block/quorum.c: stable children names Lukas Straub
2020-09-02 12:22 ` Max Reitz
2020-08-04 10:46 ` [PATCH v3 2/7] avocado_qemu: Introduce pick_qemu_util to pick qemu utility binaries Lukas Straub
2020-08-04 10:46 ` [PATCH v3 3/7] boot_linux.py: Use pick_qemu_util Lukas Straub
2020-08-04 10:46 ` [PATCH v3 4/7] colo: Introduce resource agent Lukas Straub
2020-08-04 10:47 ` [PATCH v3 5/7] colo: Introduce high-level test suite Lukas Straub
2020-08-04 10:47 ` [PATCH v3 6/7] configure,Makefile: Install colo resource-agent Lukas Straub
2020-09-04 10:45 ` Philippe Mathieu-Daudé
2020-08-04 10:47 ` [PATCH v3 7/7] MAINTAINERS: Add myself as maintainer for COLO resource agent Lukas Straub
2020-08-18 12:27 ` [PATCH v3 0/7] colo: Introduce resource agent and test suite/CI Lukas Straub
2020-08-18 12:31 ` Philippe Mathieu-Daudé
2020-08-27 8:40 ` Lukas Straub
2020-09-04 10:42 ` Philippe Mathieu-Daudé
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=cover.1596536719.git.lukasstraub2@web.de \
--to=lukasstraub2@web.de \
--cc=berto@igalia.com \
--cc=chen.zhang@intel.com \
--cc=crosa@redhat.com \
--cc=dgilbert@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=wainersm@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.