There are many enterprises and websites use Linux operation system. Because of the advantage of Linux, they stopped using Microsoft. We will talk about the Linux cluster technology, it will make you know more about Linux and the powerful functions of its cluster technology. You can take it as a reference for selecting system.
One of the reasons why Linux is so competitive is that it can be run in all-pervading PC machines, you don’t need to purchase any expensive professional hardware devices. You just need to add relevant cluster software on several PC machines with Linux, it will make up super reliability, loading capacity and calculating ability of Linux cluster. Every server of cluster called one panel point.
With different emphasis, Linux cluster can be categorized into three kinds. The first one is high usability cluster. It is run in two or more panel points. It aims to offer service while system is broken-down. The design philosophy of high usability cluster is to reduce service interruption interval in maximum. There are several famous high usability clusters , such as Turbolinux TurboHA、Heartbeat、Kimberlite and etc. The second one is load balancing cluster, it aims to offer loading capacity in proportion to panel points. This cluster is good for offering large amounts accesses of web service. And load balancing cluster also has the feature of high usability. Turbolinux Cluster Server、Linux Virtual Server all belong to load balancing cluster. The third one is supercomputing cluster, it can be categorized into two kinds according to the difference of calculating correlation degree. One is task blocks method, it needs divide calculation task into several task blocks, and then assigning the task blocks to those panel points, calculating on these panel points and then summarized, then result in final calculations. Another one is parallel calculation method, numerous data exchanged between panel points while calculating. It can also run strong coupling calculation. These two kinds of supercomputing cluster are applicable to different data processing. With supercomputing cluster software, enterprises just need use PC machines to accomplish the calculation task which it just can be done by supercomputer before. The software includes Turbolinux EnFusion、Score and etc..
High usability cluster and load balancing cluster have different working principles, and they are applicable to different services. Generally speaking, load balancing cluster is applied in offering static data service, such as HTTP service. High usability cluster is applicable to offer static data service, such as HTTP service, and it can also offer dynamic data service, such as data base. The reason why high usability cluster can offer dynamic data service is that panel points share the same storage medium, such as RAIDBox. In other words, there is only one copy of user data in each service and stored at common memory device. There is only one panel point can read the data in any time.
Taking Turbolinux TurboHA for example, there are two panel points A and B in the cluster, supposing the cluster just offer Oracle service, user data stored at /dev/sdb3 which is the subarea of common storage device. In normal condition, panel point A offers Oracle data base service, subarea of /dev/sdb3 is loaded on /mnt/oracle by panel point A. When system is broken-down and detected by software of TurboHA, TurboHA will stop Oracle service and uninstall the subarea of /dev/sdb3. Later, software TurboHA in panel point B will load the subarea in panel point B and start to run Oracle service. There is a suppositional IP address of Oracle service, when Oracle service shifts panel point A to panel point B, the suppositional IP address will also be binded with panel point B, thus, users still can access to the service.
We can see that high usability cluster doesn’t have the function of load balancing from above analysis. It can improve the reliability of whole system, but it can not strengthen the ability of load balancing. Of course, high reliability cluster can be run in various services and assigned in different panel points. For example, panel point A offers Oracle service and panel point B offers Sybase service at the same time, it can be regarded as load balancing in a sense, but it is only for the assignment of various services.
Load balancing cluster is applicable to offer relative static data service, such as HTTP service. Because of there is no common storage medium among load balancing panel points, users’ datas are duplicated into more pieces, stored at every panel point which offers the service. I will take Turbolinux Cluster Server for example to introduce the work mechanism of load balancing cluster. There is a main control panel point in the cluster, it called advanced traffic manager(ATM). If this cluster is just be used for a HTTP service, and other panel points are set to be HTTP service’s panel points. Users’ page requests will be sent to ATM, because ATM binded the IP address in this service. ATM averagely sends the requests which it received to every service’s panel points, service’s panel points will send relative web pages to users after received the requests. Thus, if there are 1000 HTTP page requests in 1 second, and there are 10 service panel points in this cluster, every panel point will process 100 requests. Therefore, it seems that there is a 10 times speed of high speed computer to process users’ requests. It is a real load balancing.
If ATM needs to process 1000 pages’ requests, will it become the bottleneck while cluster is processing speed? As relatively less data size of page requests comparing with relatively more data size of pages’ contents returning, it is effective of this method. Although ATM breaks down, it will make the whole system crashes. Turbolinux Cluster Server may set one or more computers to be reserving ATM panel point, when main ATM panel point breaks down, there will be a new main ATM from reserving panel point takes over its work. We can see that the load balancing cluster has some extent of high usability.
·HTTP page is relatively static, it sometimes needs to be amended. Turbolinux Cluster Server offers data synchronization tool, it is convenient to take the pages’ changes synchronized up to all panel points which offer the service.
Let’s talk something about the common use between high usability cluster and load balancing cluster. If users have a smallest cluster which is composed of two panel points, does it have both high usability cluster effect and load balancing effect? The answer is definitely “YES”. As high usability cluster is good for offering dynamic data service, but load balancing cluster is applicable to offer static data service, if we suppose to offer Oracle service and HTTP service at the same time, users must install TurbolinuxTurboHA and TurbolinuxClusterServer softwares in panel point A and panel point B. Taking panel point A as Oracle normally work panel point, panel point B as Oracle service reserving panel point, it is for TurboHA software. But for ClusterServer software, it needs to set panel point B to be main ATM panel point, setting panel point A to be reserving ATM panel point, an panel A and panel B are both the panel points of HTTP service.
Thus, panel point A and panel point B both have two careers, users will get a high usability of Oracle service and HTTP service with load balancing capacity at the same time. If there is a panel point breaks down, Oracle service and HTTP service won’t be interrupted by this reason.
But it is impossible to have both high usability and load balancing capability for the same service. For one service, there is only one data which stored at common storage device. It is accessed by one panel point in one time to get high usability. You can also duplicate the data to more pieces and stored at local hard disk of every panel point, users will request for sending them to more panel points at the same time to get the capability of load balancing.
For high usability cluster, it is designed for reducing the break time in maximum, therefore, the service shifting is importantly focused. Where breakdown happens in one panel point, it will be detected quickly and shifted to another panel point. Data integrity can not be ignored while shifting.
Under what circumstances data integrity will be broken? As there are two panel points in high usability at least which connected in the common storage device. For non-naked area, if it is read by two panel points at the same time, the file system will be broken. Thus,
we need to use I/O fencing to prevent it from happening.
I/O fencing is used for stopping the broken-down panel point to read the common subarea of any service. There are lots of ways to realize it. Kimberlite can use hardware switch to realize it. When there is a panel point breaks down, if there is another panel can detect this, it will give the order through serial port, then controlling he hardware switch of broken-down panel point power source, and rebooting the broken-down panel point from powering on after temporary power failure at last..
There are several forms of I/O fencing. For the memory device of supporting SCSI Reserve/Release, we can use SG order to realize I/O fencing. The healthy panel point should use SCSI Reserve order to “lock-in” the common memory device for ensuring it won’t be read by broken-down panel point. If the cluster software is still running in broken-down panel point and the common storage device is locked in, the healthy panel point should reboot itself to recover the operative mode.
We have introduced the fundamentals of Linux cluster technology from above introduction and introduced several kinds of famous software as well. Anyhow, Linux cluster technology brings the advantage of PC machine and internet in maximum. It realized the considerable function and it is a kind of promising technology. I hope you will get a better understanding of Linux cluster technology through this article.
Leave a message or email us:Trade@qiyangtech.com