test: add woodpecker chaos test yamls for all chaos categories (#50391)

Fixes #50365

## What changed
- Add Woodpecker Chaos Mesh YAMLs for pod_failure, pod_kill,
network_partition, network_latency, mem_stress, and io_latency.
- Add Woodpecker entries to the corresponding chaos testcases.yaml
files.

## Verification
- git diff --check upstream/master...HEAD
- Woodpecker chaos flow verified working before PR submission.

Signed-off-by: Eric Hou <eric.hou@zilliz.com>
Co-authored-by: Eric Hou <eric.hou@zilliz.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Feilong Hou
2026-06-09 16:46:19 +08:00
committed by GitHub
co-authored by Eric Hou Claude Opus 4.6
parent bc95b2ded6
commit fb652661b4
12 changed files with 208 additions and 0 deletions
@@ -0,0 +1,22 @@
kind: IOChaos
apiVersion: chaos-mesh.org/v1alpha1
metadata:
name: test-woodpecker-io-latency
namespace: chaos-testing
spec:
selector:
namespaces:
- chaos-testing
labelSelectors:
app.kubernetes.io/instance: milvus-chaos
app.kubernetes.io/name: milvus
component: woodpecker
mode: all
action: latency
delay: 10ms
methods:
- read
- write
- flush
percent: 100
volumePath: /milvus/data
@@ -29,6 +29,18 @@ Collections:
testcase:
name: test_pulsar_io_latency
chaos: chaos_pulsar_io_latency.yaml
expectation:
cluster_1_node:
create: fail
insert: fail
flush: fail
index: fail
search: fail
query: fail
-
testcase:
name: test_woodpecker_io_latency
chaos: chaos_woodpecker_io_latency.yaml
expectation:
cluster_1_node:
create: fail
@@ -0,0 +1,22 @@
kind: StressChaos
apiVersion: chaos-mesh.org/v1alpha1
metadata:
name: test-woodpecker-memory-stress
namespace: chaos-testing
spec:
selector:
namespaces:
- chaos-testing
labelSelectors:
app.kubernetes.io/instance: milvus-chaos
app.kubernetes.io/name: milvus
component: woodpecker
mode: one
stressors:
cpu:
workers: 4
load: 80
memory:
workers: 4
size: 2048Mi
duration: 5m
@@ -78,6 +78,15 @@ Collections:
testcase:
name: test_standalone_mem_stress
chaos: chaos_standalone_mem_stress.yaml
expectation:
cluster_1_node:
flush: fail
cluster_n_nodes:
flush: degrade
-
testcase:
name: test_woodpecker_mem_stress
chaos: chaos_woodpecker_mem_stress.yaml
expectation:
cluster_1_node:
flush: fail
@@ -0,0 +1,27 @@
kind: NetworkChaos
apiVersion: chaos-mesh.org/v1alpha1
metadata:
name: test-woodpecker-network-latency
namespace: chaos-testing
spec:
selector:
namespaces:
- chaos-testing
labelSelectors:
app.kubernetes.io/instance: milvus-chaos
app.kubernetes.io/name: milvus
component: woodpecker
mode: all
action: delay
delay:
latency: 200ms
correlation: '100'
jitter: 0ms
direction: both
target:
selector:
namespaces:
- chaos-testing
labelSelectors:
app.kubernetes.io/instance: milvus-chaos
mode: all
@@ -116,6 +116,18 @@ Collections:
testcase:
name: test_pulsar_network_latency
chaos: chaos_pulsar_network_latency.yaml
expectation:
cluster_1_node:
create: fail
insert: fail
flush: fail
index: fail
search: fail
query: fail
-
testcase:
name: test_woodpecker_network_latency
chaos: chaos_woodpecker_network_latency.yaml
expectation:
cluster_1_node:
create: fail
@@ -0,0 +1,25 @@
apiVersion: chaos-mesh.org/v1alpha1
kind: NetworkChaos
metadata:
name: test-woodpecker-network-partition
namespace: chaos-testing
spec:
action: partition
mode: all
selector:
namespaces:
- chaos-testing
labelSelectors:
app.kubernetes.io/instance: chaos-testing
app.kubernetes.io/name: milvus
duration: 5m
direction: both
target:
selector:
namespaces:
- chaos-testing
labelSelectors:
app.kubernetes.io/instance: milvus-chaos
app.kubernetes.io/name: milvus
component: woodpecker
mode: one
@@ -136,6 +136,18 @@ Collections:
testcase:
name: test_minio_network_partition
chaos: chaos_minio_network_partition.yaml
expectation:
cluster_1_node:
create: fail
insert: fail
flush: fail
index: fail
search: fail
query: fail
-
testcase:
name: test_woodpecker_network_partition
chaos: chaos_woodpecker_network_partition.yaml
expectation:
cluster_1_node:
create: fail
@@ -0,0 +1,18 @@
apiVersion: chaos-mesh.org/v1alpha1
kind: PodChaos
metadata:
name: test-woodpecker-pod-failure
namespace: chaos-testing
spec:
selector:
namespaces:
- chaos-testing
labelSelectors:
app.kubernetes.io/instance: milvus-chaos
app.kubernetes.io/name: milvus
component: woodpecker
mode: fixed
value: "1"
action: pod-failure
duration: 2m
gracePeriod: 0
@@ -174,6 +174,18 @@ Collections:
testcase:
name: test_kafka_pod_failure
chaos: chaos_kafka_pod_failure.yaml
expectation:
cluster_1_node:
create: fail
insert: fail
flush: fail
index: fail
search: fail
query: fail
-
testcase:
name: test_woodpecker_pod_failure
chaos: chaos_woodpecker_pod_failure.yaml
expectation:
cluster_1_node:
create: fail
@@ -0,0 +1,25 @@
kind: Schedule
apiVersion: chaos-mesh.org/v1alpha1
metadata:
name: test-woodpecker-pod-kill
namespace: chaos-testing
annotations:
experiment.chaos-mesh.org/pause: 'false'
spec:
schedule: '*/5 * * * * *'
startingDeadlineSeconds: 60
concurrencyPolicy: Forbid
historyLimit: 1
type: PodChaos
podChaos:
selector:
namespaces:
- chaos-testing
labelSelectors:
app.kubernetes.io/instance: milvus-chaos
app.kubernetes.io/name: milvus
component: woodpecker
mode: fixed
value: "1"
action: pod-kill
gracePeriod: 0
@@ -174,6 +174,18 @@ Collections:
testcase:
name: test_kafka_pod_kill
chaos: chaos_kafka_pod_kill.yaml
expectation:
cluster_1_node:
create: fail
insert: fail
flush: fail
index: fail
search: fail
query: fail
-
testcase:
name: test_woodpecker_pod_kill
chaos: chaos_woodpecker_pod_kill.yaml
expectation:
cluster_1_node:
create: fail