Kenichi Hayashi, Kazuaki Yamagata and Hisao Shibuya
Sun Microsystems K.K.
Grid Computing is becoming popular, making headway from research labs to production use at enterprises. The cost of grid middleware installation is high, however, conflicting with a grid computing goal of boosting productivity. In this paper, we show a way of implementing a grid environment easily and quickly using Sun ONE Grid Engine and KNOPPIX.
We read news about Grid Computing almost everyday on newspapers, magazines, and on the Internet. But when we actually try to use it, for instance by installing Globus Toolkit, we get stuck in the process. The manual does not always help, and we end up spending inordinate amounts of time just to install the software. While one of the main purposes of Grid Computing is to boost productivity through efficient use of distributed computing resources, setting up a Grid environment currently takes so much time that it can actually decrease productivity. What we need is a means to launch a Grid environment quickly and with ease. This paper shows how to deploy a Grid environment easily using Sun Microsystems' Sun ONE Grid Engine (in japanese Sun ONE Grid Engine) middleware and KNOPPIX , a Linux distribution bootable from CD-ROM.
2. Sun ONE Grid Engine
Sun ONE Grid Engine was placed on the market by Sun Microsystems in 2000 as middleware for building cluster grids and enterprise grids (campus grids). Today, the middleware is used at more than 7,000 sites worldwide. Grid Engine supports both Solaris and Linux.
Cluster grid is the simplest grid configuration, typically used by enterprises to combine all computing resources within a department as a large virtual computer. A cluster grid normally uses computing resources residing within the firewall, and its users are known members of the enterprise. Therefore the cluster grid requires no additional security and authentication functions. That is why Grid Engine does not come with those functions. There is no need to obtain authentication from a Certificate Authority (CA) when using a grid through Grid Engine. Users can deploy the grid environment simply by installing Grid Engine on Master node (for resource management), Submit node (for job submission), and Execution node (for job execution). Most grid environments in use today are cluster grids consisting of a small number of workstations and servers. Grid Engine can offer a quick solution for this type of grid.
The source code of Grid Engine has been published as part of an open source project . Thanks to this effort, the code has been ported to AIX, HP-UX, IRIX and other UNIX versions, meaning a grid can be deployed under a cross-platform environment. With Grid Engine, users can easily take advantage of Grid Computing starting with a cluster grid environment, without any initial hardware investment. Users can also cost-effectively upgrade to an enterprise grid environment that connects several departments, and even to an Internet-based global grid in conjunction with Globus .
KNOPPIX, a Linux environment bootable from CD, was developed by Mr. Klaus Knopper of Germany based on Debian GNU/Linux. A localized version for Japan has been released by the National Institute of Advanced Industrial Science and Technology (AIST). The KNOPPIX distribution does not have to be installed on the hard drive. Any PC can become Linux-enabled when booted up from a KNOPPIX CD, which only takes a few minutes. KNOPPIX has highly developed device recognition and auto configuration capabilities. When loaded on a PC equipped with a network device, KNOPPIX automatically configures the DHCP settings, and the machine can access the network as soon as the boot sequence is over. The default setting for the hard disk is read-only, ensuring that Windows files can be accessed from KNOPPIX but not modified or deleted.
KNOPPIX comes with a variety of applications, including MS Office-compatible OpenOffice suite. The bundled applications can be changed depending on the purpose of use. For example, KNOPPIX has an iso image called KNOPPIX/Math , which comes with LaTeX, Maxima, surf, and Geomview applications. When downloaded and burned on a CD, these math applications can be used on a PC booted with this disc.
4. Preparing a KNOPPIX CD image for Grid Engine environment
As explained in the preceding paragraph, applications bundled with KNOPPIX can be flexibly changed by rearranging the iso image. To use a KNOPPIX-enabled PC as an Execution node for Grid Engine jobs, users only need to set the Master node and KNOPPIX as follows:
On Master node:
Register the hosts likely to be accessed by the DHCP server as Execution nodes.
The sgeadmin account is required to use Grid Engine. Any port can be used as Grid Engine communication port and the default setting is 536. When the number of nodes is large, it is better to use copies of Grid Engine files to avoid nfs conflict. Here, however, we have used nfs mount to generalize the CD image. Since KNOPPIX uses the default host name of knoppix, we have added a script to /etc/init.d/rcsge to convert the host name into one corresponding to the IP address given by the DHCP server.
After these settings have been modified, create a new iso image and burn a CD. When a PC is booted using this CD, the PC automatically becomes a Grid Engine Execution node and can receive job allocation from the Master node. Since the CD image is general-purpose, copies can be loaded onto other PCs to increase the number of machines on a grid without limitation. Figure 1 shows an example of KNOPPIX integration into Grid Engine environment.
A Grid Computing environment can be easily deployed using Sun ONE Grid Engine and KNOPPIX. With copies of the properly prepared CD, the number of machines on a grid can be easily increased without limitation. With this CD, Windows PCs that are unused at night can be rebooted and turned into nightly grid nodes, and laptops of students in class may be temporarily borrowed for a demonstration of portable grid resources. There are many other potential applications. In the future, we plan to enhance the generality of settings and examine practical deployment issues.