A system, comprising: a plurality of compute nodes that implement a block-based storage service (220, 370, 400) that maintains one or more respective storage volumes (130, 372, 426) for a plurality of storage clients (140, 240, 300, 450, 510); a plurality of storage nodes (224a, 224b, 224c,... 224n, 420, 530) that provide storage to maintain the plurality of storage volumes; at least some of the plurality of compute nodes that implement a control plane (120, 222, 374, 410, 520) for the block-based storage service, the control plane configured to: monitor the plurality of storage volumes; based, at least in part, on the monitorship of the plurality of storage volumes, detect a scaling event for a storage volume of the plurality of storage volumes according to a specified scaling policy for the storage volume, wherein the scaling event according to the scaling policy is to shrink the storage volume and wherein the storage volume is mounted at a storage client of the plurality of storage clients and is configured as storage for a file system; in response to the detection of the scaling event: indicate the scaling event for the storage volume to the storage client such that the file system at the storage client is updated to utilize the storage volume after shrinking; and based at least in part on a response to the scaling event from the storage client: modify the storage allocated to the storage volume to dynamically scale the storage volume for the storage client according to the scaling policy; and a compute node that implements the storage client, configured to: receive the indication of the scaling event for the storage volume; update the file system to generate storage space to be reclaimed in the storage volume according to the scaling event; and send the response to the control plane, wherein the response identifies the storage space to be reclaimed in the storage volume. a plurality of compute nodes that implement a block-based storage service (220, 370, 400) that maintains one or more respective storage volumes (130, 372, 426) for a plurality of storage clients (140, 240, 300, 450, 510); a plurality of storage nodes (224a, 224b, 224c,... 224n, 420, 530) that provide storage to maintain the plurality of storage volumes; at least some of the plurality of compute nodes that implement a control plane (120, 222, 374, 410, 520) for the block-based storage service, the control plane configured to: monitor the plurality of storage volumes; based, at least in part, on the monitorship of the plurality of storage volumes, detect a scaling event for a storage volume of the plurality of storage volumes according to a specified scaling policy for the storage volume, wherein the scaling event according to the scaling policy is to shrink the storage volume and wherein the storage volume is mounted at a storage client of the plurality of storage clients and is configured as storage for a file system; in response to the detection of the scaling event: indicate the scaling event for the storage volume to the storage client such that the file system at the storage client is updated to utilize the storage volume after shrinking; and based at least in part on a response to the scaling event from the storage client: modify the storage allocated to the storage volume to dynamically scale the storage volume for the storage client according to the scaling policy; and monitor the plurality of storage volumes; based, at least in part, on the monitorship of the plurality of storage volumes, detect a scaling event for a storage volume of the plurality of storage volumes according to a specified scaling policy for the storage volume, wherein the scaling event according to the scaling policy is to shrink the storage volume and wherein the storage volume is mounted at a storage client of the plurality of storage clients and is configured as storage for a file system; in response to the detection of the scaling event: indicate the scaling event for the storage volume to the storage client such that the file system at the storage client is updated to utilize the storage volume after shrinking; and based at least in part on a response to the scaling event from the storage client: modify the storage allocated to the storage volume to dynamically scale the storage volume for the storage client according to the scaling policy; and a compute node that implements the storage client, configured to: receive the indication of the scaling event for the storage volume; update the file system to generate storage space to be reclaimed in the storage volume according to the scaling event; and send the response to the control plane, wherein the response identifies the storage space to be reclaimed in the storage volume. receive the indication of the scaling event for the storage volume; update the file system to generate storage space to be reclaimed in the storage volume according to the scaling event; and send the response to the control plane, wherein the response identifies the storage space to be reclaimed in the storage volume.