From: Luis Chamberlain <mcgrof@kernel.org>
To: Chuck Lever <cel@kernel.org>, Daniel Gomez <da.gomez@kruces.com>,
kdevops@lists.linux.dev
Cc: Luis Chamberlain <mcgrof@kernel.org>
Subject: [PATCH 5/5] minio: add monitoring support
Date: Thu, 4 Sep 2025 02:13:21 -0700 [thread overview]
Message-ID: <20250904091322.2499058-6-mcgrof@kernel.org> (raw)
In-Reply-To: <20250904091322.2499058-1-mcgrof@kernel.org>
Add monitoring framework integration to the MinIO Warp workflow to
track performance during S3 benchmarking tests.
Generated-by: Claude AI
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
---
playbooks/minio.yml | 15 ++++++++++++
playbooks/roles/minio_install/tasks/main.yml | 24 ++++++++++++++++++-
.../monitoring/tasks/monitor_collect.yml | 4 ++++
workflows/minio/Makefile | 9 ++++++-
4 files changed, 50 insertions(+), 2 deletions(-)
diff --git a/playbooks/minio.yml b/playbooks/minio.yml
index bf80bbf4eaa0..a3b2be26ed91 100644
--- a/playbooks/minio.yml
+++ b/playbooks/minio.yml
@@ -25,9 +25,24 @@
become: true
become_user: root
tags: ['minio_warp']
+
+ pre_tasks:
+ # Start monitoring services before running benchmarks
+ - ansible.builtin.import_tasks: roles/monitoring/tasks/monitor_run.yml
+ when:
+ - enable_monitoring|default(false)|bool
+ tags: ["monitoring", "monitor_run"]
+
roles:
- role: minio_warp_run
+ post_tasks:
+ # Collect monitoring data after benchmarks complete
+ - ansible.builtin.import_tasks: roles/monitoring/tasks/monitor_collect.yml
+ when:
+ - enable_monitoring|default(false)|bool
+ tags: ["monitoring", "monitor_collect"]
+
- name: Uninstall MinIO
hosts: minio
become: true
diff --git a/playbooks/roles/minio_install/tasks/main.yml b/playbooks/roles/minio_install/tasks/main.yml
index 9ea3d758adcb..e8ec3067b8b3 100644
--- a/playbooks/roles/minio_install/tasks/main.yml
+++ b/playbooks/roles/minio_install/tasks/main.yml
@@ -6,13 +6,35 @@
- "../extra_vars.yaml"
tags: vars
-- name: Install Docker
+- name: Install Docker and monitoring dependencies
package:
name:
- docker.io
- python3-docker
+ - python3-bpfcc
state: present
become: yes
+ when: ansible_os_family == "Debian"
+
+- name: Install Docker and monitoring dependencies (RedHat)
+ package:
+ name:
+ - docker
+ - python3-docker
+ - python3-bcc
+ state: present
+ become: yes
+ when: ansible_os_family == "RedHat"
+
+- name: Install Docker and monitoring dependencies (SUSE)
+ package:
+ name:
+ - docker
+ - python3-docker
+ - python3-bcc
+ state: present
+ become: yes
+ when: ansible_os_family == "SUSE"
- name: Ensure Docker service is running
systemd:
diff --git a/playbooks/roles/monitoring/tasks/monitor_collect.yml b/playbooks/roles/monitoring/tasks/monitor_collect.yml
index 83193ed459b6..e59e4ce7a386 100644
--- a/playbooks/roles/monitoring/tasks/monitor_collect.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_collect.yml
@@ -121,6 +121,10 @@
{{ topdir_path }}/workflows/sysbench/results/monitoring
{%- elif kdevops_workflow_enable_ai|default(false)|bool -%}
{{ topdir_path }}/workflows/ai/results/monitoring
+ {%- elif kdevops_workflow_enable_minio|default(false)|bool -%}
+ {{ topdir_path }}/workflows/minio/results/monitoring
+ {%- elif kdevops_workflow_enable_build_linux|default(false)|bool -%}
+ {{ topdir_path }}/workflows/build-linux/results/monitoring
{%- else -%}
{{ topdir_path }}/results/monitoring
{%- endif -%}
diff --git a/workflows/minio/Makefile b/workflows/minio/Makefile
index c543ed3b26ea..ef2ecb973429 100644
--- a/workflows/minio/Makefile
+++ b/workflows/minio/Makefile
@@ -4,6 +4,7 @@ MINIO_DATA_TARGET_UNINSTALL := minio-uninstall
MINIO_DATA_TARGET_DESTROY := minio-destroy
MINIO_DATA_TARGET_RUN := minio-warp
MINIO_DATA_TARGET_RESULTS := minio-results
+MINIO_DATA_TARGET_MONITOR := monitor-results
MINIO_PLAYBOOK := playbooks/minio.yml
@@ -49,6 +50,11 @@ $(MINIO_DATA_TARGET_RESULTS):
echo "No results directory found. Run 'make minio-warp' first."; \
fi
+$(MINIO_DATA_TARGET_MONITOR): $(KDEVOPS_EXTRA_VARS)
+ $(Q)ansible-playbook $(ANSIBLE_VERBOSE) \
+ playbooks/monitor-results.yml \
+ --extra-vars=@./extra_vars.yaml
+
minio-help:
@echo "MinIO Warp S3 benchmarking targets:"
@echo ""
@@ -58,6 +64,7 @@ minio-help:
@echo "minio-destroy - Remove MinIO containers and clean up data"
@echo "minio-warp - Run MinIO Warp benchmarks"
@echo "minio-results - Collect and analyze benchmark results"
+ @echo "monitor-results - Collect monitoring data"
@echo ""
@echo "Example usage:"
@echo " make defconfig-minio-warp # Configure for Warp benchmarking"
@@ -73,4 +80,4 @@ minio-help:
.PHONY: $(MINIO_DATA_TARGET) $(MINIO_DATA_TARGET_INSTALL) $(MINIO_DATA_TARGET_UNINSTALL)
.PHONY: $(MINIO_DATA_TARGET_DESTROY) $(MINIO_DATA_TARGET_RUN) $(MINIO_DATA_TARGET_RESULTS)
-.PHONY: minio-help
+.PHONY: $(MINIO_DATA_TARGET_MONITOR) minio-help
--
2.45.2
next prev parent reply other threads:[~2025-09-04 9:13 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-04 9:13 [PATCH 0/5] add memory fragmentation automation testing Luis Chamberlain
2025-09-04 9:13 ` [PATCH 1/5] monitoring: add memory fragmentation eBPF monitoring support Luis Chamberlain
2025-09-04 9:13 ` [PATCH 2/5] mmtests: add monitoring framework integration Luis Chamberlain
2025-09-04 9:13 ` [PATCH 3/5] sysbench: " Luis Chamberlain
2025-09-04 9:13 ` [PATCH 4/5] ai milvus: add monitoring support Luis Chamberlain
2025-09-04 9:13 ` Luis Chamberlain [this message]
2025-09-19 3:49 ` [PATCH 0/5] add memory fragmentation automation testing Luis Chamberlain
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=20250904091322.2499058-6-mcgrof@kernel.org \
--to=mcgrof@kernel.org \
--cc=cel@kernel.org \
--cc=da.gomez@kruces.com \
--cc=kdevops@lists.linux.dev \
/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