This is an old revision of the document!
Table of Contents
Портирование LustreFS
Текущий план действий
- Найти расположение CVS Люстры
- Выкачать от туда голову проекта (в ней поискать конфигурации для сборки ядра 2.6.21)
- Откомпилять ядро, применив патчи которые находятся в kernel_patches/patches проекта lustre. Там же в kernel_patches валяется список патчей, которые необходимо применить для конкретной версии ядра. Патчи применяются при помощи некого squilt (man squilt). возможно саму люстру взять версии релиз, а из CVS вынуть именно патчи и конфигурацию ядра.
- Откомпилять сам проект (возможно там потребуется откомпилять какие-то библиотеки внутри него, пока это темное место. требуется освещение при помощи мануала и вики)
Дальнейшие действия
- Разобраться что к чему в самой люстре (есть куча каких-то утилит для ее управлением)
- Подключить люстру на “тварях”.
Вопросы
Вопросы, требующие уточнения.
- Как в принципе происходит прошивка XO? как заменить родное ядро, на собственное? – как насчет стандартного механизма сборки ядра из SRPM и установки полученного RPM на ХО? в дальнейшем можно будет поместить этот RPM в репозитарий из которого собирается образ прошивки…
Project presentation
Background
Today the increasing progress is received with mobile devices. The general tendencies of IT technologies are reduction of size of devices and increase in time of autonomous work without power supply. However cost of these advantages is presence as serious resource restrictions of the device, especially it concerns capacity of storage devices in use. Reason of decreasing power consumption preclude from using well known high-capacity storage devices such as hard disks. From other hand, the high cost of storage space of alternative storage devices provokes manufacturers to use low-capacity storages for affordable devices. All above told together with continuous increase in amount of used data induces IT experts to address to problems of devices with limited resources.
The OLPC XO laptop is one of such devices. It intended to provide children around the world with new opportunities to explore, experiment and express themselves. According to the purposes of the project, power consumption should make not more than 4 watts. It nominally consumes less than two watts—less than one tenth of what a standard laptop consumes—so little that XO can be recharged by human power. This is a critical advance for the half-billion children who have no access to electricity (see http://laptop.org/). It is reached owing to refusal of moving parts including a hard disk. Flash memory of 1G capacity is used instead. So we faced with problem of lack of user space. It seems like thing out of scope of software development while we don't take into account communication capabilities of such devices. But in assumption that they can be united with network somehow it becomes interesting area to research in.
Idea
Imagine that the group of children with XO laptops comes together for school lesson. They all need to use the same set of data to learn the unit. Any of them have not enough user space to store all needed information locally, but if the data will shared among all of them everyone will be able to use it.
So the idea of the project is to investigate ways to provide ability to use much more data on device with lack of user space (by taken XO laptop as an example) by distributing data among the group of such devices in assumption that they supports networking and the sets of needed data are overlapped among this group.
The objective is to provide software allowing distributed storing and using data among the net for XO laptop, which has special Fedora Core 7 OS installed.
Plans
The most obvious solution is to use distributed file system. It will allow solving issues above: to distribute data, to provide the general access to them, to provide a necessary level of reliability and fault tolerance.
This file system has to:
- run on Fedora Core 7
- support IP networking
- support stripping
- support serverless mode
There are a lot of distributed file systems with different characteristics but there is no one which addresses all of these issues. So the first step is to adopt more appropriate system to our needs. After some investigation the Lustre FS was took as the base. “Lustre is a highly scalable distributed file system that combines open standards, the Linux operating system, an open networking API, and innovative protocols. Together, these elements create the worlds largest “network-neutral” data storage and retrieval system”. © (see http://Lustre.org).
So the following tasks might be planed:
- Investigate the Lustre abilities from project objectives point of view. Define features we need and not need.
- Make Lustre port for XO specific Fedora OS
- Define project specific procedures such as entering and living group, synchronizing meta-data and election of meta-data server etc.
Expected results
Perspectives