Patent ID: 8793343

Claim:
A method, comprising: configuring two or more storage gateways as a storage gateway group on a local network and assigning one or more volumes to each storage gateway device in the storage gateway group, wherein each storage gateway provides an interface between one or more client processes on the local network and a storage service on a remote network for accessing client data maintained on a remote data store by the storage service; performing, by each storage gateway in the storage gateway group: exposing a volume assigned to the storage gateway to the one or more client processes on the local network via one or more I/O ports; receiving write requests directed to the volume from the one or more client processes via the I/O ports, appending write data indicated by the write requests to a write log corresponding to the volume on a local data store for the storage gateway, recording location information for the write data in the write log to a metadata store corresponding to the volume, and uploading write data from the write log corresponding to the volume to the remote data store; sending the write data directed to the volume to one or more other storage gateways in the storage gateway group, wherein each of the one or more other storage gateways appends received write data directed to the volume to a write log corresponding to the volume on a local data store for the respective storage gateway; and receiving write data directed to one or more other volumes from the one or more other storage gateways in the storage gateway group, appending the received write data to one or more other write logs corresponding to the one or more other volumes on the local data store for the storage gateway, and recording location information for the write data in the one or more other write logs to one or more other metadata stores corresponding to the one or more other volumes; determining that one of the storage gateways in the storage gateway group is unavailable; selecting another storage gateway in the storage gateway group to take over a different volume that was assigned to the unavailable storage gateway; the selected storage gateway taking over storage gateway operations for the different volume; and exposing the different volume to the one or more client processes on the local network via the one or more I/O ports.