cockroach debug ballast command creates a large, unused file that you can place in a node's storage directory. In the case that a node runs out of disk space and shuts down, you can delete the ballast file to free up enough space to be able to restart the node.
- Do not run
cockroach debug ballastwith a unix
rootuser. Doing so brings the risk of mistakenly affecting system directories or files.
- Do not name the target file similar to a block device in
/dev. Doing so brings the risk of mistyping a
/devprefix into the command and thereby corrupting a filesystem.
- In addition to placing a ballast file in each node's storage directory, it is important to actively monitor remaining disk space.
- Ballast files may be created in many ways, including the standard
cockroach debug ballastuses the
fallocatesystem call when available, so it will be faster than
debug subcommands are useful only to CockroachDB's developers and contributors.
Create a ballast file:
$ cockroach debug ballast [path to ballast file] [flags]
$ cockroach debug ballast --help
||The amount of space to fill, or to leave available, in a node's storage directory via a ballast file. Positive values equal the size of the ballast file. Negative values equal the amount of space to leave after creating the ballast file. This can be a percentage (notated as a decimal or with %) or any bytes-based unit, for example:
Create a 1GB ballast file (default)
$ cockroach debug ballast cockroach-data/ballast.txt
Create a ballast file of a different size
$ cockroach debug ballast cockroach-data/ballast.txt --size=2GB