Figure 1 presents an overview of the components that compose the architecture of CSGrid. The CSGrid Server (Central Server) is accessible to users through a browser. In order to execute the programs (refered to as Algorithms), another type of service is needed, which is called SGA. The SGA is responsible for monitoring execution hosts and for the execution of algorithms on such resources. The CSGrid Server is a Java application running on background (i.e. a daemon), which communicates with SGAs, through CORBA. Each user can execute a CSGrid Client through a browser. The client is also implemented in Java and communicates with the server through RMI.
The Data Repository shall provide enough space for the storage of:
- user projects areas
- executables of the algorithms
- control structures (user idenfications, permissions, etc)
Concerning CSGrid server, some of the relevant factors for dimensioning of computing resources are:
- number of users (current and projected).
- average number of simultaneous accesses (current and projected)
- average usage of disk space
- availability requirements (e.g. 24x7 availabilidy implies the redundance of some nodes, configuration of RAID for storage, etc).
Table 1 show the profile of each component regarding the usage o memory, CPU, disk space and network. The definition of the terms, high, average and low, are dependent of the context,so Table 2 can be used as reference.
- An Intel processor with hyper-threading technology is counted as 2 CPUs.
- Availability and fail tolerance requirements demand multiple disks for redundance (RAID).
Repositório de Dados
Servidores de Execução (SGA)
Table 1: Tipical usage of hardware resources
servers (Intel, Sun, IBM etc.) with 4 CPUs or more
≥ 120GB (SCSI)
1 Gigabit dedicated dedicated fiber channel
CPU Dual Core
Pentium4 (1 CPU)
Table 2: Reference for hardware requirements
All the components can be installed in a single machine, however, the tipical usage consists of:
- a node for the CSGrid server
- a node for the Data Repository
- one or more SGAs
Since the CSGrid server is developed in Java, it is portable to be executed in any operating system, such as Linux, Solaris, AIX and MS Windows. Table 3 exemplifies the recommended setup.
UNIX (Linux / Solaris / AIX)
UNIX (Linux / Solaris / AIX),
Table 3: Operating Systems
The execution servers (SGAs) can and normally are hosted in multiple servers (which can use different operating systems and hardware configurations). In order to make the system aware of new servers it is only necessary to update configuration files. In the case of the Data Repository, normally the changes are completely seamless to the system.