Computer clustering has become very common in
businesses that want to reduce downtime and increase high availability or load
balancing. There are many types of
computer clusters out today, from file server, load balancing, database, web
hosting, and even data processing.
Whether the cluster of servers are replications of one another or
sharing the same task to reduce strain on one another, a cluster can be
extremely useful in either sense.
Server
clustering is the concept of which you combine multiple instances of one
specific type of server called a node for the means of high availability, load
balancing, and even redundancy. Each
specific setup requires hardware communicating with one another at every given
second to provide customers, employees, or clients with either load balancing
or high availability and even a combination of both together.
A database server cluster would consist of
multiple servers with the exact same database installation on all of them. The reason for this is to ensure the metadata
repository is easily shared between the multiple nodes within the cluster. Not only if, but when a fail-over does occur,
there is another node within the cluster that is able to provide database
functionality. As long as the system is
setup within an active-passive configuration which is basically only one server
being active at any point in time and the others in a passive instance.
If the database comes across some sort of issue
or problem and fails only a slight, one of the passive instances can take on
the task. This would in turn provide the
company with high availability and reduce downtime to null. Even though this system would seem to be
redundant, it does not actually provide redundancy but more or less a fail-safe
high availability system. I would
suggest implementing a redundant drive just to be on the safe side.
In a real world example, if a casino's stores
and gift shop wishes to provide twenty-four hour seven days a week service to
its customers a database cluster server would suit their requirements
best. The reason, of which a database
cluster of servers would be the best solution, is it provides high availability
no matter the situation. With this type
of setup, at every point in time throughout the day and night, the database
would be available.
Even when considering high usage, load balancing
would be able to handle anything you could throw at it, no matter how many
people are accessing it at any given second the cluster of servers sharing the
database would be able to produce the expected results. The load balancing in combination with high
availability cluster is especially useful when working at a casino gift shop as
every second counts to produce extremely high profits.
A majority of the benefits available when
working with clustered servers comes down to the ability to provide efficient
services. From providing these services,
such as database access, at every second throughout the day using high
availability, to being able to process a task that would take hours can take
minutes or even seconds, which would be load balancing. Even if the main database server were to fail
the next node or server in the cluster would be able to pick up right where it
left off. When there are hundreds of
customers trying to purchase products at a given point in time the database
would be able to handle the load with the ability to balance the work load.
Challenges may consist of security, cooling, and
housing of the clustered servers.
Security in itself is a bit of a challenge, staying up to date with
every possible threat is nearly impossible.
One small hole in any part of the entire cluster security could bring
the entire system down. A management
system could help keep the servers and its associated hardware updated and a key-card system for the facility of which they are housed. Whether housing the server in house or out
sourcing the cluster of servers, making sure they are in a secure facility is
definitely high on the list of concerns.
One main challenge that most people do not
expect is the heat a cluster of servers could produce, which in turn requires
cooling. This is one of the main reasons
people outsource their server hosting or housing to ensure the correct facility
is in use. As stated by Bob Ehlers,
"Unfortunately for system designers, the relentless push for greater
computing capacity has also resulted in greater heat being concentrated in a
much smaller space (Ehlers, 2005)." This is of course is the reason blade servers
are not normally used in house but can be found in server farms or data-centers. Tower servers allow the
ability to cool the system easier in a facility onsite versus a blade server
being used offsite.
Overall tower servers (COTS) can produce quite
an efficient database cluster with others alongside it. The reason for this is it allows you to
secure, cool, and manage the cluster onsite versus outsourcing which in turn
causes networking nightmares. Even if the
company is larger it would require multiple stronger servers to house onsite,
but it would still get the job done.
Clustering servers may be a daunting task but the end result is far
worth the benefits in the long run.
References
Ehlers, B. (2005, May). Cluster Computing and I/O:
What Blade Servers Miss, CompactPCI Can Hit. Retrieved March 6, 2017, from
RTC Magazine: http://rtcmagazine.com/articles/view/100339
Englander, I. (2014). The Architecture of Computer
Hardware, Systems Software, & Networking An information technology
approach. Don FowleY.
IBM. (n.d.). DB2 database clustering. Retrieved
March 4, 2017, from IBM:
https://www.ibm.com/support/knowledgecenter/en/SSZJPZ_11.3.0/com.ibm.swg.im.iis.productization.iisinfsv.ha.install.doc/topics/wsisinst_pln_ha_xmeta_db2.html
O'Reilly, J. (n.d.). Real pros and cons in the COTS
server decision. Retrieved March 5, 2017, from Search Data Center:
http://searchdatacenter.techtarget.com/opinion/Real-pros-and-cons-in-the-COTS-server-decision