Merge pull request #15879 from Mashimiao/add-support-blkio_throtte_iops
Add support for blkio read/write iops device Upstream-commit: 312c82677bdc86d50b483d642ad8c61f1c840c55 Component: engine
This commit is contained in:
@ -107,6 +107,8 @@ This section lists each version from latest to oldest. Each listing includes a
|
||||
* Pushes initiated with `POST /images/(name)/push` and pulls initiated with `POST /images/create`
|
||||
will be cancelled if the HTTP connection making the API request is closed before
|
||||
the push or pull completes.
|
||||
* `POST /containers/create` now allows you to set a read/write rate limit for a
|
||||
device (in bytes per second or IO per second).
|
||||
|
||||
### v1.21 API changes
|
||||
|
||||
|
||||
@ -248,7 +248,9 @@ Create a container
|
||||
"BlkioWeight": 300,
|
||||
"BlkioWeightDevice": [{}],
|
||||
"BlkioDeviceReadBps": [{}],
|
||||
"BlkioDeviceReadIOps": [{}],
|
||||
"BlkioDeviceWriteBps": [{}],
|
||||
"BlkioDeviceWriteIOps": [{}],
|
||||
"MemorySwappiness": 60,
|
||||
"OomKillDisable": false,
|
||||
"OomScoreAdj": 500,
|
||||
@ -306,10 +308,14 @@ Json Parameters:
|
||||
- **CpusetMems** - Memory nodes (MEMs) in which to allow execution (0-3, 0,1). Only effective on NUMA systems.
|
||||
- **BlkioWeight** - Block IO weight (relative weight) accepts a weight value between 10 and 1000.
|
||||
- **BlkioWeightDevice** - Block IO weight (relative device weight) in the form of: `"BlkioWeightDevice": [{"Path": "device_path", "Weight": weight}]`
|
||||
- **BlkioDeviceReadBps** - Limit read rate from a device in form of: `"BlkioDeviceReadBps": [{"Path": "device_path", "Rate": rate}]`, for example:
|
||||
- **BlkioDeviceReadBps** - Limit read rate (bytes per second) from a device in the form of: `"BlkioDeviceReadBps": [{"Path": "device_path", "Rate": rate}]`, for example:
|
||||
`"BlkioDeviceReadBps": [{"Path": "/dev/sda", "Rate": "1024"}]"`
|
||||
- **BlkioDeviceWriteBps** - Limit write rate to a device in the form of: `"BlkioDeviceWriteBps": [{"Path": "device_path", "Rate": rate}]`, for example:
|
||||
- **BlkioDeviceWriteBps** - Limit write rate (bytes per second) to a device in the form of: `"BlkioDeviceWriteBps": [{"Path": "device_path", "Rate": rate}]`, for example:
|
||||
`"BlkioDeviceWriteBps": [{"Path": "/dev/sda", "Rate": "1024"}]"`
|
||||
- **BlkioDeviceReadIOps** - Limit read rate (IO per second) from a device in the form of: `"BlkioDeviceReadIOps": [{"Path": "device_path", "Rate": rate}]`, for example:
|
||||
`"BlkioDeviceReadIOps": [{"Path": "/dev/sda", "Rate": "1000"}]`
|
||||
- **BlkioDeviceWiiteIOps** - Limit write rate (IO per second) to a device in the form of: `"BlkioDeviceWriteIOps": [{"Path": "device_path", "Rate": rate}]`, for example:
|
||||
`"BlkioDeviceWriteIOps": [{"Path": "/dev/sda", "Rate": "1000"}]`
|
||||
- **MemorySwappiness** - Tune a container's memory swappiness behavior. Accepts an integer between 0 and 100.
|
||||
- **OomKillDisable** - Boolean value, whether to disable OOM Killer for the container or not.
|
||||
- **OomScoreAdj** - An integer value containing the score given to the container in order to tune OOM killer preferences.
|
||||
@ -465,6 +471,8 @@ Return low-level information on the container `id`
|
||||
"BlkioWeightDevice": [{}],
|
||||
"BlkioDeviceReadBps": [{}],
|
||||
"BlkioDeviceWriteBps": [{}],
|
||||
"BlkioDeviceReadIOps": [{}],
|
||||
"BlkioDeviceWriteIOps": [{}],
|
||||
"CapAdd": null,
|
||||
"CapDrop": null,
|
||||
"ContainerIDFile": "",
|
||||
|
||||
@ -31,7 +31,9 @@ Creates a new container.
|
||||
--cpuset-mems="" Memory nodes (MEMs) in which to allow execution (0-3, 0,1)
|
||||
--device=[] Add a host device to the container
|
||||
--device-read-bps=[] Limit read rate (bytes per second) from a device (e.g., --device-read-bps=/dev/sda:1mb)
|
||||
--device-read-iops=[] Limit read rate (IO per second) from a device (e.g., --device-read-iops=/dev/sda:1000)
|
||||
--device-write-bps=[] Limit write rate (bytes per second) to a device (e.g., --device-write-bps=/dev/sda:1mb)
|
||||
--device-write-iops=[] Limit write rate (IO per second) to a device (e.g., --device-write-iops=/dev/sda:1000)
|
||||
--disable-content-trust=true Skip image verification
|
||||
--dns=[] Set custom DNS servers
|
||||
--dns-opt=[] Set custom DNS options
|
||||
|
||||
@ -30,7 +30,9 @@ parent = "smn_cli"
|
||||
-d, --detach=false Run container in background and print container ID
|
||||
--device=[] Add a host device to the container
|
||||
--device-read-bps=[] Limit read rate (bytes per second) from a device (e.g., --device-read-bps=/dev/sda:1mb)
|
||||
--device-read-iops=[] Limit read rate (IO per second) from a device (e.g., --device-read-iops=/dev/sda:1000)
|
||||
--device-write-bps=[] Limit write rate (bytes per second) to a device (e.g., --device-write-bps=/dev/sda:1mb)
|
||||
--device-write-iops=[] Limit write rate (IO per second) to a device (e.g., --device-write-bps=/dev/sda:1000)
|
||||
--disable-content-trust=true Skip image verification
|
||||
--dns=[] Set custom DNS servers
|
||||
--dns-opt=[] Set custom DNS options
|
||||
|
||||
@ -633,6 +633,8 @@ container:
|
||||
| `--blkio-weight-device=""` | Block IO weight (relative device weight, format: `DEVICE_NAME:WEIGHT`) |
|
||||
| `--device-read-bps=""` | Limit read rate from a device (format: `<device-path>:<number>[<unit>]`). Number is a positive integer. Unit can be one of `kb`, `mb`, or `gb`. |
|
||||
| `--device-write-bps=""` | Limit write rate to a device (format: `<device-path>:<number>[<unit>]`). Number is a positive integer. Unit can be one of `kb`, `mb`, or `gb`. |
|
||||
| `--device-read-iops="" ` | Limit read rate (IO per second) from a device (format: `<device-path>:<number>`). Number is a positive integer. |
|
||||
| `--device-write-iops="" ` | Limit write rate (IO per second) to a device (format: `<device-path>:<number>`). Number is a positive integer. |
|
||||
| `--oom-kill-disable=false` | Whether to disable OOM Killer for the container or not. |
|
||||
| `--memory-swappiness=""` | Tune a container's memory swappiness behavior. Accepts an integer between 0 and 100. |
|
||||
| `--shm-size=""` | Size of `/dev/shm`. The format is `<number><unit>`. `number` must be greater than `0`. Unit is optional and can be `b` (bytes), `k` (kilobytes), `m` (megabytes), or `g` (gigabytes). If you omit the unit, the system uses bytes. If you omit the size entirely, the system uses `64m`. |
|
||||
@ -984,15 +986,15 @@ on `/dev/sda` setting that weight to `200`:
|
||||
--blkio-weight-device "/dev/sda:200" \
|
||||
ubuntu
|
||||
|
||||
The `--device-read-bps` flag limits the read rate from a device. For example,
|
||||
this command creates a container and limits the read rate to `1mb` per second
|
||||
from `/dev/sda`:
|
||||
The `--device-read-bps` flag limits the read rate (bytes per second) from a device.
|
||||
For example, this command creates a container and limits the read rate to `1mb`
|
||||
per second from `/dev/sda`:
|
||||
|
||||
$ docker run -it --device-read-bps /dev/sda:1mb ubuntu
|
||||
|
||||
The `--device-write-bps` flag limits the write rate to a device. For example,
|
||||
this command creates a container and limits the write rate to `1mb` per second
|
||||
for `/dev/sda`:
|
||||
The `--device-write-bps` flag limits the write rate (bytes per second)to a device.
|
||||
For example, this command creates a container and limits the write rate to `1mb`
|
||||
per second for `/dev/sda`:
|
||||
|
||||
$ docker run -it --device-write-bps /dev/sda:1mb ubuntu
|
||||
|
||||
@ -1000,6 +1002,21 @@ Both flags take limits in the `<device-path>:<limit>[unit]` format. Both read
|
||||
and write rates must be a positive integer. You can specify the rate in `kb`
|
||||
(kilobytes), `mb` (megabytes), or `gb` (gigabytes).
|
||||
|
||||
The `--device-read-iops` flag limits read rate (IO per second) from a device.
|
||||
For example, this command creates a container and limits the read rate to
|
||||
`1000` IO per second from `/dev/sda`:
|
||||
|
||||
$ docker run -ti --device-read-iops /dev/sda:1000 ubuntu
|
||||
|
||||
The `--device-write-iops` flag limits write rate (IO per second) to a device.
|
||||
For example, this command creates a container and limits the write rate to
|
||||
`1000` IO per second to `/dev/sda`:
|
||||
|
||||
$ docker run -ti --device-write-iops /dev/sda:1000 ubuntu
|
||||
|
||||
Both flags take limits in the `<device-path>:<limit>` format. Both read and
|
||||
write rates must be a positive integer.
|
||||
|
||||
## Additional groups
|
||||
--group-add: Add Linux capabilities
|
||||
|
||||
|
||||
Reference in New Issue
Block a user