Method and apparatus for file system disaster recovery
First Claim
1. A geographical data replication system comprising:
- a local primary server configured to run a first high availability file system (FHAFS) and a local file system;
a local secondary server coupled to the local primary server configured to run the local file system and respond to FHAFS mini-transactions initiated by the local primary;
first dual-ported file storage coupled to the local servers with which the local servers interact via the local file system;
at least one client configured to issue local file system requests to the local primary;
the local primary being configured in accordance with the FHAFS to checkpoint to the local secondary mini-transactions conveying application state, enabling the local secondary, when the local primary fails, to take over operations of the local primary consistent with the checkpointed application state, the local secondary only being active when the local primary is inactive;
a local server that is whichever of the local primary and secondary is active configured to intercept the local file requests and to determine which of the local file requests is one of a first set of file requests that will alter file state of the local file system; and
a log file stored on the first dual-ported file storage in which the local server writes operations and data required to serve the first set of file requests, the local server being configured to periodically flush the log file to a remote site, enabling the remote site, when the local site fails, to serve the local file requests with little or no loss of the file state;
such that, when it is active, the local primary is configured to pass file checkpoints to the local secondary server in conjunction with the mini-transaction checkpoints issued by the FHAFS, enabling the local secondary, when the local primary fails, to complete uncompleted local file requests and to handle subsequent local file requests consistent with the file and application state.
3 Assignments
0 Petitions
Accused Products
Abstract
A file disaster recovery system that employs geographical replication of data from a local site to remote site in a such a manner that file requests from clients of the local site can be handled by a file server on the remote site following a failover from the local site to the remote site. Geographical data replication software running on a local server checkpoints to a log in local stable storage all information on file operations that change the file state of the local file system. According to a selected mode, the local geographical data replication software flushes information in the log pertaining to the file operations since the last flush to the remote site. At the remote site, compatible remote geographical data replication software running on a remote file server receives the flushed log and replicates in sequence order the file operations represented in the flushed log. The results of the operations are stored on remote stable storage. The local and remote servers can be clusters or single servers. There is no need for commonality, except for operating and file systems, between the local and remote sites. Because operations are replicated and not low level, formatted data, the local and remote stable file storage can be completely different.
270 Citations
56 Claims
-
1. A geographical data replication system comprising:
-
a local primary server configured to run a first high availability file system (FHAFS) and a local file system; a local secondary server coupled to the local primary server configured to run the local file system and respond to FHAFS mini-transactions initiated by the local primary; first dual-ported file storage coupled to the local servers with which the local servers interact via the local file system; at least one client configured to issue local file system requests to the local primary; the local primary being configured in accordance with the FHAFS to checkpoint to the local secondary mini-transactions conveying application state, enabling the local secondary, when the local primary fails, to take over operations of the local primary consistent with the checkpointed application state, the local secondary only being active when the local primary is inactive; a local server that is whichever of the local primary and secondary is active configured to intercept the local file requests and to determine which of the local file requests is one of a first set of file requests that will alter file state of the local file system; and a log file stored on the first dual-ported file storage in which the local server writes operations and data required to serve the first set of file requests, the local server being configured to periodically flush the log file to a remote site, enabling the remote site, when the local site fails, to serve the local file requests with little or no loss of the file state; such that, when it is active, the local primary is configured to pass file checkpoints to the local secondary server in conjunction with the mini-transaction checkpoints issued by the FHAFS, enabling the local secondary, when the local primary fails, to complete uncompleted local file requests and to handle subsequent local file requests consistent with the file and application state. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A geographical data replication method for use in a network including:
- a local primary server configured to run a first high availability file system (FHAFS) and a local file system, a local secondary server coupled to the local primary server configured to run the local file system and respond to FHAFS mini-transactions initiated by the local primary, first dual-ported file storage coupled to the local servers with which the local servers interact via the local file system, and at least one client configured to issue local file system requests to the local primary, the local primary being configured in accordance with the FHAFS to checkpoint to the local secondary mini-transactions conveying application state, enabling the local secondary, when the local primary fails, to take over operations of the local primary consistent with the checkpointed application state, the local secondary only being active when the local primary is inactive, the method comprising;
on whichever of the local primary and secondary is active; intercepting the local file requests; determining which of the local file requests is one of a first set of file requests that will alter file state of the local file system; writing to a log file stored on the first dual-ported file storage operations and data required to serve the first set of file requests; and periodically flushing the log file to a remote site; on the remote site; using the information in the log file, serving the local file requests with little or no loss of the file state when the local site fails; and on the local primary, when it is active; passing file checkpoints to the local secondary in conjunction with the mini-transaction checkpoints issued by the FHAFS, enabling the local secondary, when the local primary fails, to complete uncompleted local file requests and to handle subsequent local file requests consistent with the file and application state. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42)
- a local primary server configured to run a first high availability file system (FHAFS) and a local file system, a local secondary server coupled to the local primary server configured to run the local file system and respond to FHAFS mini-transactions initiated by the local primary, first dual-ported file storage coupled to the local servers with which the local servers interact via the local file system, and at least one client configured to issue local file system requests to the local primary, the local primary being configured in accordance with the FHAFS to checkpoint to the local secondary mini-transactions conveying application state, enabling the local secondary, when the local primary fails, to take over operations of the local primary consistent with the checkpointed application state, the local secondary only being active when the local primary is inactive, the method comprising;
-
43. A computer program product for providing geographical data replication in a computer network including:
- a local primary server configured to run a first high availability file system (FHAFS) and a local file system, a local secondary server coupled to the local primary server configured to run the local file system and respond to FHAFS mini-transactions initiated by the local primary, first dual-ported file storage coupled to the local servers with which the local servers interact via the local file system, and at least one client configured to issue local file system requests to the local primary, the local primary being configured in accordance with the FHAFS to checkpoint to the local secondary mini-transactions conveying application state, enabling the local secondary, when the local primary fails, to take over operations of the local primary consistent with the checkpointed application state, the local secondary only being active when the local primary is inactive, the computer program product including a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising;
local geographical data replication software that configures a local server that is whichever of the local primary and secondary is active to; intercept the local file requests; determine which of the local file requests is one of a first set of file requests that will alter file state of the local file system; write to a log file stored on the first dual-ported file storage operations and data required to serve the first set of file requests; and periodically flush the log file to a remote server, enabling the remote server, when the local site fails, to serve the local file requests with little or no loss of the file state; and when it is active, the local primary being configured to pass file checkpoints to the local secondary server in conjunction with the mini-transaction checkpoints issued by the FHAFS, enabling the local secondary, when the local primary fails, to complete uncompleted local file requests and to handle subsequent local file requests consistent with the file and application state. - View Dependent Claims (44, 45, 46, 47, 48, 49, 50, 51, 52, 53)
- a local primary server configured to run a first high availability file system (FHAFS) and a local file system, a local secondary server coupled to the local primary server configured to run the local file system and respond to FHAFS mini-transactions initiated by the local primary, first dual-ported file storage coupled to the local servers with which the local servers interact via the local file system, and at least one client configured to issue local file system requests to the local primary, the local primary being configured in accordance with the FHAFS to checkpoint to the local secondary mini-transactions conveying application state, enabling the local secondary, when the local primary fails, to take over operations of the local primary consistent with the checkpointed application state, the local secondary only being active when the local primary is inactive, the computer program product including a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising;
-
54. A geographical data replication system comprising:
-
a local server that is whichever of a local primary server and secondary server is active configured to intercept local file requests directed to a local file system and to determine which of the local file requests is one of a first set of file requests that will alter file state of the local file system; and a persistent log file accessible to the local primary and local secondary in which the local server writes operations and data required to serve the first set of file requests, the local server being configured to periodically flush the log file to a remote server, enabling the remote server, when the local server fails, to serve the local file requests with little or no loss of the file state; such that, when the local primary is active, the local primary is configured to pass file checkpoints to the local secondary server in conjunction with mini-transaction checkpoints issued by a first high availability file system (FHAFS) running on the local primary, enabling the local secondary, when the local primary fails, to complete uncompleted local file requests and to handle subsequent local file requests consistent with the file and application state.
-
-
55. A geographical data replication method, comprising:
-
on a local server that is whichever of a local primary server and secondary server is active; intercepting local file requests directed to a local file system; determining which of the local file requests is one of a first set of file requests that will alter file state of the local file system; writing to a persistent log file accessible to the local primary and local secondary operations and data required to serve the first set of file requests; and periodically flushing the log file to a remote server; on the remote server; using information in the log file, serving the local file requests with little or no loss of the file state when the local server fails; and on the local primary, when it is active; passing file checkpoints to the local secondary in conjunction with the mini-transaction checkpoints issued by a first high availability file system (FHAFS) running on the local primary, enabling the local secondary, when the local primary fails, to complete uncompleted local file requests and to handle subsequent local file requests consistent with the file and application state.
-
-
56. A computer program product for providing geographical data replication, the computer program product including a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising:
local geographical data replication software that configures a local server that is whichever of a local primary and secondary is active to; intercept local file requests directed to a local file system running on the local server; determine which of the local file requests is one of a first set of file requests that will alter file state of the local file system; write to a persistent log file accessible to the local primary and local secondary operations and data required to serve the first set of file requests; and periodically flush the log file to a remote server, enabling the remote server, when the local server fails, to serve the local file requests with little or no loss of the file state; and when it is active;
the local primary being configured to pass file checkpoints to the local secondary server in conjunction with the mini-transaction checkpoints issued by a first high availability file system (FHAFS) running on the local primary, enabling the local secondary, when the local primary fails, to complete uncompleted local file requests and to handle subsequent local file requests consistent with the file and application state.
Specification