Claims
- 1. A method of operating a cluster filesystem for a cluster connected by a storage area network, comprising:
repeatedly multicasting a cluster database server address and database generation; and requesting information from the cluster database server address to at least one of update cluster information maintained by an existing client node in the cluster and obtain information required to join the cluster.
- 2. A method as recited in claim 1,
wherein said requesting is performed by a candidate node to obtain an address for at least one switch in the storage area network, and wherein said method further comprises the candidate node:
obtaining from the at least one switch at least one port address of at least one port connected to at least one host bus adapter of the candidate node; sending addresses of the at least one port and at least one host bus adapter to the cluster database server address to update the cluster information maintained by a cluster database server; and requesting membership in the cluster.
- 3. A method as recited in claim 2, further comprising the candidate node
obtaining cluster configuration data in response to said requesting of membership in the cluster; and configuring kernel components to enable access to the storage area network by the candidate node upon acceptance as a member of the cluster.
- 4. A method as recited in claim 3, further comprising in the existing node
comparing the cluster database server address and database generation multicasted by the cluster database server with the cluster configuration data stored at the existing node; updating the cluster configuration data stored at the existing node using data returned in response to receipt of the information from the cluster database server address; and repeating said configuring of the kernel processes based on said updating of the cluster configuration data.
- 5. A method as recited in claim 4, further comprising responding to failure and recovery of the cluster database server by detecting a change in at least one of the cluster database server address and the database generation during said comparing and performing said updating and repeating.
- 6. A method as recited in claim 4, further comprising performing at least one of a mount and an unmount of a filesystem when the information received from the cluster database server address indicates changes affecting the filesystem.
- 7. A method as recited in claim 2, further comprising authenticating the candidate node by a server at the cluster database server address prior to providing the information required to join the cluster.
- 8. At least one computer readable medium storing at least one program embodying a method of transmitting a message over a network of nodes running different operating systems, comprising:
repeatedly multicasting a cluster database server address and database generation; and requesting information from the cluster database server address to at least one of update cluster information maintained by an existing client node in the cluster and obtain information required to join the cluster.
- 9. At least one computer readable medium as recited in claim 8,
wherein said requesting is performed by a candidate node to obtain an address for at least one switch in the storage area network, and wherein said method further comprises the candidate node:
obtaining from the at least one switch at least one port address of at least one port connected to at least one host bus adapter of the candidate node; sending addresses of the at least one port and at least one host bus adapter to the cluster database server address to update the cluster information maintained by a cluster database server; and requesting membership in the cluster.
- 10. At least one computer readable medium as recited in claim 9, wherein said method further comprises the candidate node
obtaining cluster configuration data in response to said requesting of membership in the cluster; and configuring kernel components to enable access to the storage area network by the candidate node upon acceptance as a member of the cluster.
- 11. At least one computer readable medium as recited in claim 10, wherein said method further comprises in the existing node
comparing the cluster database server address and database generation multicasted by the cluster database server with the cluster configuration data stored at the existing node; updating the cluster configuration data stored at the existing node using data returned in response to said requesting of the information from the cluster database server address; and repeating said configuring of the kernel processes based on said updating of the cluster configuration data.
- 12. At least one computer readable medium as recited in claim 11, wherein said method further comprises responding to failure and recovery of the cluster database server by detecting a change in at least one of the cluster database server address and the database generation during said comparing and performing said updating and repeating.
- 13. At least one computer readable medium as recited in claim 11, further comprising performing at least one of a mount and an unmount of a filesystem when the information received from the cluster database server address indicates changes affecting the filesystem.
- 14. At least one computer readable medium as recited in claim 9, further comprising authenticating the candidate node by a server at the cluster database server address prior to providing the information required to join the cluster.
- 15. A cluster of computer systems, comprising:
a cluster database server to repeatedly multicast a cluster database server address and a database generation; and at least one of an existing node and a candidate node to request information from the cluster database server address to respectively update cluster information maintained by the existing client node in the cluster and obtain information required to join the cluster.
- 16. A cluster of computer systems as recited in claim 15, wherein said at least one candidate node is programmed to obtain an address for at least one switch in the storage area network, and then to obtain from the at least one switch at least one port address of at least one port connected to at least one host bus adapter of the candidate node, to send addresses of the at least one port and at least one host bus adapter to the cluster database server address to update the cluster information maintained by a cluster database server, and to request membership in the cluster.
- 17. A cluster of computer systems as recited in claim 16, wherein said at least one candidate node is further programmed to obtain cluster configuration data in response to requesting membership in the cluster, and to configure kernel components to enable access to the storage area network by the candidate node upon acceptance as a member of the cluster.
- 18. A cluster of computer systems as recited in claim 17, wherein said at least one existing node is programmed to compare the cluster database server address and database generation multicasted by the cluster database server with the cluster configuration data stored at the existing node, to update the cluster configuration data stored at the existing node using data returned in response to said requesting of the information from the cluster database server address, and to repeat configuration of the kernel processes based on said updating of the cluster configuration data.
- 19. A cluster of computer systems as recited in claim 18, wherein said at least one existing node is further programmed to respond to failure and recovery of the cluster database server by detecting a change in at least one of the cluster database server address and the database generation during comparison of the cluster database server address and database generation multicasted by the cluster database server with the cluster configuration data stored at the existing node and then updating the cluster configuration data stored at the existing node and repeating configuration of the kernel processes.
- 20. A cluster of computer systems as recited in claim 18, wherein said at least one existing node is further programmed to perform at least one of a mount and an unmount of a filesystem when the information received from the cluster database server address indicates changes affecting the filesystem.
- 21. A cluster of computer systems as recited in claim 16, wherein said cluster database server is programmed to authenticate the candidate node by a server at the cluster database server address prior to providing the information required to join the cluster.
CROSS-REFERENCE TO RELATED APPLICATION(S)
[0001] This application is related to and claims priority to U.S. patent application entitled CLUSTERED FILE SYSTEM having Ser. No. 10/162,258, by Costello et al., filed Jun. 5, 2002 and U.S. provisional patent application entitled CLUSTERED FILE SYSTEM having Ser. No. 60/296,046, by Bannister et al., filed Jun. 5, 2001, both incorporated by reference herein. This application is also related to U.S. patent applications filed concurrently herewith entitled MESSAGING BETWEEN HETEROGENEOUS CLIENTS OF A STORAGE AREA NETWORK, by Cruciani et al. and FAILSAFE OPERATION OF STORAGE AREA NETWORK by Beck et al., both incorporated herein by reference.