Version 19 (modified by 16 years ago) (diff) | ,
---|
An organizational grid management system for BOINC
OGM (TODO: pick a better name) is a system for grid computing on organizational resources, using BOINC.
OGM is focused in harnessing a set of BOINC enabled PCs resources from one institution (see the above image). The basic working model will be that a committee will decide which BOINC projects are interesting for the institution. Based on this decision, the institution will donate its BOINC enabled PCs to the chosen projects.
For OGM, from the point of view of hardware components, an institution is composed with the following items:
- PC. This is the basic item of OGM. A PC here is named as a "BOINC working node". The institution must have at least one PC.
- Pool. A Pool is a set of zero or more PCs that share something in common. For example, all the PCs are located in the same laboratory. The institution must have at least one pool of computers.
- Department. A Department is a set of one or more Pools of computers that share something in common. For example, all the pools belongs to the math research group of the institution. An institution must have at least one Department.
For OGM, from the point of view of managers, an institution is composed with the following persons:
- IT Manager. An IT Manager always belongs to one Department. For this reason, the IT Manager can only administer the computer pools which belongs to his department.
- Project Manager. A Project Manager is in charge of choosing the BOINC projects that will run on the institution BOINC PCs.
The OGM assumes also different roles for the OGM users:
- OGM Administrator. This is the root user. He can do the following tasks:
- Administer (create, delete, edit) OGM users.
- Administer (create, delete, edit) BOINC projects.
- Administer (edit) BOINC sharing resource between pools.
- OGM IT Manager. This person is in charge of maintaining the PC pools, for this reason he can do the following tasks:
- Change the BOINC preferences for the pools of his institution:
- Time policy: Between which hours BOINC can use the PC resources. For example, the pool of computers A (which represents all the computers of laboratory 1) can work with BOINC from 9:00 am to 21:00 pm.
- CPU use. The percentage of allowed CPU that BOINC can use.
- RAM use. The percentage of allowed RAM that BOINC can use.
- HD use. The percentage of allowed HD that BOINC can use.
- ??? what else?
- See the statistics of his pools of computers: CPU, RAM, HD, etc.
- Change the BOINC preferences for the pools of his institution:
- OGM Project Manager. This person is in charge:
- Creating, Editing, Deleting BOINC projects.
- Defining the Resource Share parameter for each BOINC project.
OGM assumes the following organizational structure:
- There is a set of "resource pools" (groups of computers). Each resource pool is owned by an organizational unit (e.g. a research group, a university department, a division of a company, etc.).
- There is a set of BOINC projects that are allowed to use these resources. These projects are operated by organizations (some of which may also manage resource pools). The projects may get resources from sources other than the OGM (e.g., from the public).
- The set of organizations has agreed to cooperate in the sharing of computer resources. They all trust an organization (the OGM) to manage this sharing.
Based on requests and constraints from resource providers and consumers, the OGM decides which projects to attach to which computers, and what resource share should be assigned.
OGM is implemented using BOINC's Account Manager mechanism. The computers in a particular resource pool are attached to a single OGM account. The BOINC client on the computer periodically communicates with the OGM, which instructs it which projects to attach to, and the resource share for each attachment.
OGM provides different interfaces to different people. All the interfaces are web-based.
For the OGM manager, the interfaces include:
- Create and delete accounts for resource managers and project managers.
- Decide what fraction of total resources is assigned to each project.
- ??? what else?
For resource managers, the interfaces include:
- View list of computers in the pool.
- Edit BOINC preferences for computers in the pool.
- View set of projects currently using the pool.
- ??? what else?
For project managers, the interfaces include:
- ??? what else?
Implementation
The tool has the following tables:
users
- id INTEGER, KEY
- password STRING
- rolid INTEGER, FKINDEX
- departmenid INTEGER, FKINDEX
roles
- id INTEGER, KEY
- name VARCHAR
pools
- id INTEGER, KEY
- name VARCHAR
- organization ID
- prefs This field copes with all the BOINC preferences for one computer
organization
- id INTEGER, KEY
- name VARCHAR
- location STRING
host
- id INTEGER, KEY
- poolid INTEGER, INDEX
- features This field copes with all the PC features (RAM, CPU, HD, etc.)
projects
- id INTEGER, KEY
- name VARCHAR
- url STRING
- signature string
- share FLOAT (between 0.0 and 1.0)
Attachments (4)
- ogm.png (9.9 KB) - added by 17 years ago.
- institution.png (109.0 KB) - added by 16 years ago.
- projects.png (195.0 KB) - added by 16 years ago.
-
ogm.sql (5.1 KB) - added by 16 years ago.
Data Base
Download all attachments as: .zip