Abstract:
A storage controller receives data from a host. The data is provided to a storage stack on the storage controller. The storage stack can perform deduplication, compression or file layout operations on the data, which is then written to a first storage unit coupled to a first port of the storage controller. The storage controller determines whether a second port of the first storage controller is configured as a remote port. In response to determining that the second port is configured as a remote port, the data is also provided to a pass-thru stack on the first storage controller. The pass-thru stack performs protocol conversion on the data and writes the data to the second port on the storage controller.
Abstract:
A request to change one or more storage characteristics associated with a virtual storage device is received. Communications identifying the virtual storage device are routed, via a network, to a first storage endpoint. One or more operations are performed in accordance with the request. A configuration of the network is updated to route communications identifying the virtual storage device to a second storage endpoint.
Abstract:
A request that indicates a component that can be quiesced is received at a first node. It is determined that quiescence of the component might impact an endpoint. A request for identification of at least one path between a second node and the endpoint is sent to the second node. It is determined, based on a response received from the second node, whether the endpoint will be accessible to the second node if the component is quiesced. In response to a determination that the endpoint will be accessible to the second node if the component is quiesced, a positive analysis outcome is indicated. In response to a determination that the endpoint will not be accessible to the second node if the component is quiesced, a negative analysis outcome is indicated.
Abstract:
A request that indicates a component that can be quiesced is received at a first node. It is determined that quiescence of the component might impact an endpoint. A request for identification of at least one path between a second node and the endpoint is sent to the second node. It is determined, based on a response received from the second node, whether the endpoint will be accessible to the second node if the component is quiesced. In response to a determination that the endpoint will be accessible to the second node if the component is quiesced, a positive analysis outcome is indicated. In response to a determination that the endpoint will not be accessible to the second node if the component is quiesced, a negative analysis outcome is indicated.
Abstract:
A request to change one or more storage characteristics associated with a virtual storage device is received. Communications identifying the virtual storage device are routed, via a network, to a first storage endpoint. One or more operations are performed in accordance with the request. A configuration of the network is updated to route communications identifying the virtual storage device to a second storage endpoint.
Abstract:
A method, non-transitory computer readable medium and host computing device that stores, by a first virtual storage controller, a plurality of received transactions in a transaction log in an in-memory storage device. The first virtual storage controller is monitored and a determination is made when a failure of the first virtual storage controller has occurred based on the monitoring. When the failure of the first virtual storage controller is determined to have occurred, at least one storage volume previously assigned to the first virtual storage controller is remapped to be assigned to a second virtual storage controller. Additionally, the second virtual storage controller retrieves at least one of the transactions from the transaction log in the in-memory storage device and replays at least one of the transactions.
Abstract:
Technology is disclosed for using a cache cluster of a cloud computing service (“cloud”) as a victim cache for a data storage appliance (“appliance”) implemented in the cloud. The cloud includes a cache cluster that acts as a primary cache for caching data of various services implemented in the cloud. By using the cache cluster as a victim cache for the appliance, the read throughput of the appliance is improved. The data blocks evicted from a primary cache of the appliance are stored in the cache cluster. These evicted data blocks are likely to be requested again, so storing them in the cache cluster can increase performance, e.g., input-output (I/O) throughput of the appliance. A read request for data can be serviced by retrieving the data from the cache cluster instead of a persistent storage medium of the appliance, which has higher read latency than the cache cluster.
Abstract:
A storage controller receives data from a host. The data is provided to a storage stack on the storage controller. The storage stack can perform deduplication, compression or file layout operations on the data, which is then written to a first storage unit coupled to a first port of the storage controller. The storage controller determines whether a second port of the first storage controller is configured as a remote port. In response to determining that the second port is configured as a remote port, the data is also provided to a pass-thru stack on the first storage controller. The pass-thru stack performs protocol conversion on the data and writes the data to the second port on the storage controller.