I don't know about old (I'm 33), but I am a bitter VMS system manager. As I've repeated on this forum many times before (just about any time a story about Beowulf or AppleSeed is posted), that bitterness stems from usage of the word "cluster" in contexts which fall far afield from the original usage of the term by the inventors of clustering, DIGITAL's VMS Engineering team, thus diluting the meaning of the term. The casual application of the term to distributed parallel computation arrays, web server farms, or other RAICs (Redundant Arrays of Inexpensive Computers) incorectly leads many computing neophytes to believe that simply setting up a Beowulf array (much better term for this than cluster) or something similar gives them the same level of technological functionality as that provided by a state-of-the-art OpenVMS cluster. Nothing could be further from the truth!
"What's missing?", one might ask. Here is what I feel constitutes a cluster. (Note -- none of this is meant as flame-bait - just trying to rectify some misinformation which has become pervasive over the last few years. I regard Beowulf and AppleSeed as useful tools. I simply feel that it is inappropriate to refer to them as clusters.)
A Distributed Lock Manager, critical for much clustering functionality. All file operations, regardless of whether using standard C I/O routines or OS-specific I/O APIs, should automatically and transparently be mediated by the DLM. Without this functionality, one is left with a so-called "share-nothing" cluster, such as that available from Microsoft, thus limiting one to simple failover operation.
Cluster-wide File System. No file server such as NFS, SMB, or AppleShare involved here. All nodes in the cluster should be able to directly access any disk or tape drive in the cluster. The DLM is critical here for mediating simultaneous accesses.
Cluster-wide process control, either directly spawing processes on other nodes or through a batch queue system.
A Connection Manager to ensure that nodes correctly enter or leave the cluster. The CM manages the Quorum mechanism and keeps cluster transition times to a minimum.
Shared System Disk. Multiple nodes should be able to boot from a common system disk. This greatly simplifies management.
Single security and management domain. NT almost got that right, except for the dependance upon domain controllers and that domain database replication nonsense. Many flavors of *nix can be configured to get into the ballpark on this with add-on tools. If one can't transparently manage any node in the cluster from any other node, you don't have a cluster (and I'm not talking about something as trivial as spawning a new Telnet session).
Cluster-wide Process Control API. At least Beowulf and AppleSeed provide this much, which is a step in the right direction, although the API used is a bit primative.
Mixed Architecture Support. Shouldn't matter what hardware a given node is running on, as long as it is supported by the OS and the applications. All cluster communications protocols should be platform-neutral. Just out of curiosity, can one mix ix86, Alpha, and PPC nodes in a Beowulf array, thereby giving one the ability to divy up processing chores based upon which processor is best suited to a given task (Floating Point vs. Integer speeds for instance) or for gradual migration of the array to a different platform? (This isn't flambait -- I'm honestly curious.)
Rolling Upgrade Support. It should be possible to configure a cluster such that one can perform OS or application upgrades some number of nodes at a time, thus negating the need to bring down the entire cluster.
Parallel I/O support. All nodes can issue I/O requests to storage devices at the same time. This ties back in with the DLM and Cluster-wide file system.
Interconnect failover. All cluster communications traffic should route itself through whatever interconnect pathway has the lowest latency. (Hmmm, FiberChannel is a bit congested right now. Time to route through the 100baseT connection.)
High-end scaling. This is where I snicker at NT's so-called clustering solution. Two nodes only? Hah? (That is finally improving, but they still have a long way to go.) Beowulf and AppleSeed do okay in this department, although they have nothing that compares to the Galaxy Software Architecture.
Load Balancing. Generically available to most server operating systems these days, although usually through a separate hardware based unit.
Cluster Alias. Can be faked for any OS with DNS tricks or by sticking the cluster or array behind a NAT router.
Re:Finally, something resembling clustering for Li
on
Mosix 1.0 Released
·
· Score: 4
My comments were not rooted in ignorance, but rather an intimate familiarity with the technology developed by the DIGITAL engineers who INVENTED clustering, back in the days before the term was diluted by use in situations that have no relationship to the original application of the term.
Veritas Cluster Server is actually a clustering technology (only marginally, since, like Microsoft clustering, it employs a shared-nothing model). I have no problem with the application of the term here.
Arrowpoint? No. Load balancing is useful in a cluster (and even more useful when applied to all networking protocols, not just HTTP), but load balancing alone does not a cluster make.
Mosix (homogeneous process environment) is borderline. It just needs the addition of a few key technologies to qualify. (DLM, device sharing)
Beowulf (distributed parallel computing environment), while an interesting and useful technology, has nothing whatsoever to do with clustering! The term is misused here, and that is what annoys me. If you were to classify Beowulf as a clustering technology, you would also have to call every computer participating in SETI@home a single cluster, which it clearly is not...
And no, that list is far from complete. No mention of HP's clustering technology, Compaq's OpenVMS Clusters, True64 Unix TruClusters, or Tandem NonStop Fault-Tolerant clusters, or Microsoft Clustering (although, again, that is a VERY weak form of clustering, and lacking in several respects).
Essentially, this is an arguement over semantics, over the definition of the term "cluster". I merely oppose dilution of the meaning by applying it to lesser technologies which have no relationship with the original meaning of the term.
Re:Finally, something resembling clustering for Li
on
Mosix 1.0 Released
·
· Score: 1
Thanks for the link. I had not seen this, and found it very interesting.
This is a very primative form of clustering (share-nothing due to the lack of distributed lock manager, simple failover only, two node limit) similar to Microsoft's so-called clustering solution. A step up, but still very limited...
I guess I'm just spoiled by OpenVMS clustering. When I set up our Exchange 2000 clustered back-end servers, I constantly found myself astonished by the primative capabilities of Microsoft's clustering technologies. "What do you mean more than one node can't control this disk at the same time? That's a breeze with MSCP disk sharing, and has been for a decade and a half. Can't have hundreds of nodes separated by hundreds of miles for disaster-tolerance? Give me a break..."
Finally, something resembling clustering for Linux
on
Mosix 1.0 Released
·
· Score: 2
No, Beowulf is not a clustering technology. Abuse of the word "clustering" in the context Beowulf is one of my biggest pet peeves. Beowulf is distributed parallelized computing. Mosix at least vaguely resembles true clustering, but still no distributed lock manager, and no true hardware-level device sharing (as opposed to file sharing via NFS)...
I am said "cluck" (odd term).
I don't know about old (I'm 33), but I am a bitter VMS system manager. As I've repeated on this forum many times before (just about any time a story about Beowulf or AppleSeed is posted), that bitterness stems from usage of the word "cluster" in contexts which fall far afield from the original usage of the term by the inventors of clustering, DIGITAL's VMS Engineering team, thus diluting the meaning of the term. The casual application of the term to distributed parallel computation arrays, web server farms, or other RAICs (Redundant Arrays of Inexpensive Computers) incorectly leads many computing neophytes to believe that simply setting up a Beowulf array (much better term for this than cluster) or something similar gives them the same level of technological functionality as that provided by a state-of-the-art OpenVMS cluster. Nothing could be further from the truth!
"What's missing?", one might ask. Here is what I feel constitutes a cluster. (Note -- none of this is meant as flame-bait - just trying to rectify some misinformation which has become pervasive over the last few years. I regard Beowulf and AppleSeed as useful tools. I simply feel that it is inappropriate to refer to them as clusters.)
My comments were not rooted in ignorance, but rather an intimate familiarity with the technology developed by the DIGITAL engineers who INVENTED clustering, back in the days before the term was diluted by use in situations that have no relationship to the original application of the term.
And no, that list is far from complete. No mention of HP's clustering technology, Compaq's OpenVMS Clusters, True64 Unix TruClusters, or Tandem NonStop Fault-Tolerant clusters, or Microsoft Clustering (although, again, that is a VERY weak form of clustering, and lacking in several respects).
Essentially, this is an arguement over semantics, over the definition of the term "cluster". I merely oppose dilution of the meaning by applying it to lesser technologies which have no relationship with the original meaning of the term.
Thanks for the link. I had not seen this, and found it very interesting.
This is a very primative form of clustering (share-nothing due to the lack of distributed lock manager, simple failover only, two node limit) similar to Microsoft's so-called clustering solution. A step up, but still very limited...
I guess I'm just spoiled by OpenVMS clustering. When I set up our Exchange 2000 clustered back-end servers, I constantly found myself astonished by the primative capabilities of Microsoft's clustering technologies. "What do you mean more than one node can't control this disk at the same time? That's a breeze with MSCP disk sharing, and has been for a decade and a half. Can't have hundreds of nodes separated by hundreds of miles for disaster-tolerance? Give me a break..."
No, Beowulf is not a clustering technology. Abuse of the word "clustering" in the context Beowulf is one of my biggest pet peeves. Beowulf is distributed parallelized computing. Mosix at least vaguely resembles true clustering, but still no distributed lock manager, and no true hardware-level device sharing (as opposed to file sharing via NFS)...