Skip to content

Commit a2f56a4

Browse files
committed
fix bookmarks and add disk pressure fixes
1 parent 0190712 commit a2f56a4

File tree

3 files changed

+13
-14
lines changed

3 files changed

+13
-14
lines changed

articles/chaos-studio/chaos-studio-fault-library.md

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ Agent-based faults are injected into **Azure Virtual Machines** or **Virtual Mac
128128
|-----------------|------------|
129129
| Load | [Start load test (Azure Load Testing)](#start-load-test-azure-load-testing) |
130130
| Load | [Stop load test (Azure Load Testing)](#stop-load-test-azure-load-testing) |
131-
| Time delay | [Delay](#time-delay) |
131+
| Time delay | [Delay](#delay) |
132132

133133
## Details: Agent-based faults
134134

@@ -606,14 +606,16 @@ Currently, the Windows agent doesn't reduce memory pressure when other applicati
606606
| Prerequisites | **Linux**: The **stress-ng** utility needs to be installed. Installation happens automatically as part of agent installation, using the default package manager, on several operating systems including Debian-based (like Ubuntu), Red Hat Enterprise Linux, and OpenSUSE. For other distributions, including Azure Linux, you must install **stress-ng** manually. For more information, see the [upstream project repository](https://github.com/ColinIanKing/stress-ng). |
607607
| Urn | urn:csci:microsoft:agent:linuxDiskIOPressure/1.1 |
608608
| Parameters (key, value) | |
609-
| workerCount | Number of worker processes to run. Setting `workerCount` to 0 generated as many worker processes as there are number of processors. |
610-
| fileSizePerWorker | Size of the temporary file that a worker performs I/O operations against. Integer plus a unit in bytes (b), kilobytes (k), megabytes (m), or gigabytes (g) (for example, 4 m for 4 megabytes and 256 g for 256 gigabytes). |
611-
| blockSize | Block size to be used for disk I/O operations, capped at 4 megabytes. Integer plus a unit in bytes, kilobytes, or megabytes (for example, 512 k for 512 kilobytes). |
612-
| targetTempDirectory | (Optional) The directory to use for applying disk pressure. For example, "/tmp/". If the parameter is not included, pressure is added to the primary disk. |
609+
| workerCount | Number of worker processes to run. Setting `workerCount` to 0 generates as many worker processes as there are number of processors. |
610+
| fileSizePerWorker | Size of the temporary file that a worker performs I/O operations against. Integer plus a unit in bytes (b), kilobytes (k), megabytes (m), or gigabytes (g) (for example, `4m` for 4 megabytes and `256g` for 256 gigabytes). |
611+
| blockSize | Block size to be used for disk I/O operations, greater than 1 byte and less than 4 megabytes (maximum value is `4095k`). Integer plus a unit in bytes, kilobytes, or megabytes (for example, `512k` for 512 kilobytes). |
612+
| targetTempDirectory | (Optional) The directory to use for applying disk pressure. For example, `/tmp/`. If the parameter is not included, pressure is added to the primary disk. |
613613
| virtualMachineScaleSetInstances | An array of instance IDs when you apply this fault to a virtual machine scale set. Required for virtual machine scale sets in uniform orchestration mode. [Learn more about instance IDs](../virtual-machine-scale-sets/virtual-machine-scale-sets-instance-ids.md#scale-set-instance-id-for-uniform-orchestration-mode). |
614614

615615
#### Sample JSON
616616

617+
These sample values produced ~100% disk pressure when tested on a `Standard_D2s_v3` virtual machine with Premium SSD LRS. A large fileSizePerWorker and smaller blockSize help stress the disk fully.
618+
617619
```json
618620
{
619621
"name": "branchOne",
@@ -624,23 +626,19 @@ Currently, the Windows agent doesn't reduce memory pressure when other applicati
624626
"parameters": [
625627
{
626628
"key": "workerCount",
627-
"value": "0"
629+
"value": "4"
628630
},
629631
{
630632
"key": "fileSizePerWorker",
631-
"value": "512m"
633+
"value": "2g"
632634
},
633635
{
634636
"key": "blockSize",
635-
"value": "256k"
637+
"value": "64k"
636638
},
637639
{
638640
"key": "targetTempDirectory",
639641
"value": "/tmp/"
640-
},
641-
{
642-
"key": "virtualMachineScaleSetInstances",
643-
"value": "[0,1,2]"
644642
}
645643
],
646644
"duration": "PT10M",
@@ -650,6 +648,7 @@ Currently, the Windows agent doesn't reduce memory pressure when other applicati
650648
}
651649
```
652650

651+
653652
### Stop Service
654653

655654
| Property | Value |

articles/chaos-studio/chaos-studio-tutorial-dynamic-target-cli.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ You've now successfully added your virtual machine scale set to Chaos Studio.
5757
5858
Now you can create your experiment. A chaos experiment defines the actions you want to take against target resources. The actions are organized and run in sequential steps. The chaos experiment also defines the actions you want to take against branches, which run in parallel.
5959
60-
1. Formulate your experiment JSON starting with the following [Virtual Machine Scale Sets Shutdown 2.0](chaos-studio-fault-library.md#version-20) JSON sample. Modify the JSON to correspond to the experiment you want to run by using the [Create Experiment API](/rest/api/chaosstudio/experiments/create-or-update) and the [fault library](chaos-studio-fault-library.md). At this time, dynamic targeting is only available with the Virtual Machine Scale Sets Shutdown 2.0 fault and can only filter on availability zones.
60+
1. Formulate your experiment JSON starting with the following [Virtual Machine Scale Sets Shutdown 2.0](chaos-studio-fault-library.md#vmss-shutdown-version-20) JSON sample. Modify the JSON to correspond to the experiment you want to run by using the [Create Experiment API](/rest/api/chaosstudio/experiments/create-or-update) and the [fault library](chaos-studio-fault-library.md). At this time, dynamic targeting is only available with the Virtual Machine Scale Sets Shutdown 2.0 fault and can only filter on availability zones.
6161
6262
- Use the `filter` element to configure the list of Azure availability zones to filter targets by. If you don't provide a `filter`, the fault shuts down all instances in the virtual machine scale set.
6363
- The experiment targets all Virtual Machine Scale Sets instances in the specified zones.

articles/chaos-studio/troubleshooting.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ Some problems are caused by missing prerequisites.
5353

5454
### Agent-based faults fail on a virtual machine
5555
Agent-based faults might fail for various reasons related to missing prerequisites:
56-
* On Linux VMs, the [CPU Pressure](chaos-studio-fault-library.md#cpu-pressure), [Physical Memory Pressure](chaos-studio-fault-library.md#physical-memory-pressure), [Disk I/O pressure](chaos-studio-fault-library.md#disk-io-pressure-linux), and [Arbitrary Stress-ng Stress](chaos-studio-fault-library.md#arbitrary-stress-ng-stress) faults all require that the [stress-ng utility](https://wiki.ubuntu.com/Kernel/Reference/stress-ng) is installed on your VM. For more information on how to install stress-ng, see the fault prerequisite sections.
56+
* On Linux VMs, the [CPU Pressure](chaos-studio-fault-library.md#cpu-pressure), [Physical Memory Pressure](chaos-studio-fault-library.md#physical-memory-pressure), [Disk I/O pressure](chaos-studio-fault-library.md#linux-disk-io-pressure), and [Arbitrary Stress-ng Stress](chaos-studio-fault-library.md#arbitrary-stress-ng-stressor) faults all require that the [stress-ng utility](https://wiki.ubuntu.com/Kernel/Reference/stress-ng) is installed on your VM. For more information on how to install stress-ng, see the fault prerequisite sections.
5757
* On either Linux or Windows VMs, the user-assigned managed identity provided during agent-based target enablement must also be added to the VM.
5858
* On either Linux or Windows VMs, the system-assigned managed identity for the experiment must be granted the Reader role on the VM. (Seemingly elevated roles like Virtual Machine Contributor don't include the \*/Read operation that's necessary for the Chaos Studio agent to read the microsoft-agent target proxy resource on the VM.)
5959

0 commit comments

Comments
 (0)