Skip to content

[Workload]: chaos-network workload (tc/netem-based latency, packet loss, bandwidth limiting) #17

Description

@mrhillsman

Workload Name

chaos-network

Workload Description

This workload uses tc qdisc and netem to inject configurable network chaos into a VM. It simulates degraded network conditions including:

  • Configurable latency injection (default 100ms)
  • Packet loss (default 5%)
  • Bandwidth limits
  • Advanced network emulation: jitter, reordering, duplication

The workload runs as a systemd service with configurable duration and interval.

Tooling and Packages

VM Count Model

Single VM (like cpu, memory, disk)

Required Resources

  • Persistent storage (DataVolume)
  • Kubernetes Service (for inter-VM communication)
  • Kubernetes Secret (for credentials or config)
  • Additional CPU/memory beyond defaults
  • GPU or special device passthrough

Cloud-Init Details

Packages: pre-installed via golden image (#16)
Systemd unit: tc netem configuration with Restart=always
Write files: optional /etc/virtwork/chaos-network.conf for parameters

Use Case

Network chaos injection for validating application resilience under degraded network conditions. Useful for testing Prometheus alerting rules for network latency, validating service mesh timeout configurations, and verifying application retry logic under packet loss.

Additional Context

Depends on golden container disk image (#16) for pre-installed tc and iproute-tc.

Related Issues: #16 (golden image dependency)

Split from #15

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/featureCategorizes issue or PR as related to a new feature.size/MDenotes a PR that changes 30-99 lines, ignoring generated files.workload-requestRequest for a new workload type

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions