linux диск в облаке
От: irqlevel  
Дата: 16.05.14 10:31
Оценка: 8 (1)
Проект: https://github.com/irqlevel/cloud-disk

Суть проекта — это блочный виртуальный девайс с надежным хранением данных в облаке. Пользователь может разместить и смонтировать на данном диске стандартные файловые системы linuxа(ext4). Данные записанные на диск храняться в кэше хоста и в облаке. Данные будут предварительно шифроваться и сжиматься на клиенте. Разработка ведется на языке C в виде linux kernel модулей и контролирующих их исполнение тулзов.
Сервер так же реализуется ядерным модулем используя кернельные сокеты.

Основные фичи(в будущем):
1) отказоустойчивое (с избыточностью) хранение данных на нескольких машинах-серверах (облако).
2) возможность делать снепшоты и востанавливать диск.
3) шифрование и сжатие данных на клиенте.

Что уже сделано:
1) клиентский ядерный модуль — пока заглушка типа ramdisk — то есть данные пока храняться в памяти. но их надо будет посылать на сервер.
2) серверный ядерный модуль — готов принимать входящие соединения на порт.
3) тулза к клиентскому модулю — создает удаляет диски.
4) диски появляются в /dev и их можно форматировать в файл системы и затем монтировать.
5) в README подробное описание.

Цель:
1) разработка эффективных технологий распределенного, отказоустойчивого, криптографически защищенного хранения данных.
2) создание сообщества — публичного облака таких дисков. когда клиент хостит данные на машинах других клиентов такого сервиса.
3) создание сайта / сервиса с платной услугой создания и хранения таких дисков.

Ищутся:
Ищутся энтузиасты-разработчики с высокими скилами в области linux kernel для развития данного проекта в свое свободное время.
Проект пишу как хобби в свободное от работы и семьи время.

Если интересно, пишите на почту irqlevel@gmail.com или в этот тред.
linux device driver I/O data redundancy
Re: linux диск в облаке
От: Pzz Россия https://github.com/alexpevzner
Дата: 16.05.14 13:20
Оценка:
Здравствуйте, irqlevel, Вы писали:

I>Суть проекта — это блочный виртуальный девайс с надежным хранением данных в облаке. Пользователь может разместить и смонтировать на данном диске стандартные файловые системы linuxа(ext4). Данные записанные на диск храняться в кэше хоста и в облаке. Данные будут предварительно шифроваться и сжиматься на клиенте. Разработка ведется на языке C в виде linux kernel модулей и контролирующих их исполнение тулзов.

I>Сервер так же реализуется ядерным модулем используя кернельные сокеты.

Дарю бесплатный совет: сделать эту хрень не блочным девайсом, а именно файловой системой. Реализовать ее в user space. Монтировать с помощью fuse.
Re[2]: linux диск в облаке
От: irqlevel  
Дата: 16.05.14 14:19
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Здравствуйте, irqlevel, Вы писали:


I>>Суть проекта — это блочный виртуальный девайс с надежным хранением данных в облаке. Пользователь может разместить и смонтировать на данном диске стандартные файловые системы linuxа(ext4). Данные записанные на диск храняться в кэше хоста и в облаке. Данные будут предварительно шифроваться и сжиматься на клиенте. Разработка ведется на языке C в виде linux kernel модулей и контролирующих их исполнение тулзов.

I>>Сервер так же реализуется ядерным модулем используя кернельные сокеты.

Pzz>Дарю бесплатный совет: сделать эту хрень не блочным девайсом, а именно файловой системой. Реализовать ее в user space. Монтировать с помощью fuse.


Спасибо, но блочный девайс написать значительно легче чем с нуля файловую систему с возможностями ext4. kernel space реализация будет экономичней и производительней чем реализация в user space.
Re[3]: linux диск в облаке
От: Pzz Россия https://github.com/alexpevzner
Дата: 16.05.14 14:24
Оценка:
Здравствуйте, irqlevel, Вы писали:

Pzz>>Дарю бесплатный совет: сделать эту хрень не блочным девайсом, а именно файловой системой. Реализовать ее в user space. Монтировать с помощью fuse.


I>Спасибо, но блочный девайс написать значительно легче чем с нуля файловую систему с возможностями ext4.


Какие из возможностей ext4 полезны для распределенной сетевой файловой системы?

I>kernel space реализация будет экономичней и производительней чем реализация в user space.


В основном за счет уменьшения латентности. Что при сетевом соступе к storage совершенно незаметно на фоне латентности сети.
Re[4]: linux диск в облаке
От: irqlevel  
Дата: 16.05.14 14:38
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Какие из возможностей ext4 полезны для распределенной сетевой файловой системы?

понимаю, но начну с блочного девайса, затем подумаю в сторону файл. системы. спасибо.

Pzz>В основном за счет уменьшения латентности. Что при сетевом соступе к storage совершенно незаметно на фоне латентности сети.

ок, выгода не велика, однако еще одна из целей это прокачка скилов и набивание шишек в ядре возможно какие-то части проекта потом в мейнстрим ядра закачаются, если будут востребованы.
Re[5]: linux диск в облаке
От: Pzz Россия https://github.com/alexpevzner
Дата: 16.05.14 14:49
Оценка:
Здравствуйте, irqlevel, Вы писали:

Pzz>>Какие из возможностей ext4 полезны для распределенной сетевой файловой системы?

I>понимаю, но начну с блочного девайса, затем подумаю в сторону файл. системы. спасибо.

Оно, вообще-то, полезнее в виде файловой системы. Например, может обладать таким полезным свойством, что каждый отдельный файл целиком лежит в каком-то одном определенном месте, а не размазан тонким слоем непойми где. Или, например, на пофайловом уровне удобнее работать в ситуации, когда хранилища имеют разный размер. Кроме того, нет необходимости жестко задавать размер файловой системы в момент ее создания.

Но вам виднее, конечно.
Re: linux диск в облаке
От: smeeld  
Дата: 16.05.14 14:57
Оценка:
Здравствуйте, irqlevel, Вы писали:

Это ни в чём не лучше существующих веб сервисов, имитирующих сущность "диск".
Возможность выбора для пользователя разных файловых систем на нет сведёт
передача данных по сети туда-сюда c соответствующими оверхедами.
Re: linux диск в облаке
От: ononim  
Дата: 30.05.14 09:41
Оценка:
iSCSI, не?
Как много веселых ребят, и все делают велосипед...
Re: linux диск в облаке
От: sanyock https://career.habr.com/alexander-prokopyev
Дата: 04.02.15 05:50
Оценка:
Здравствуйте, irqlevel, Вы писали:

I>Проект: https://github.com/irqlevel/cloud-disk


I>Суть проекта — это блочный виртуальный девайс с надежным хранением данных в облаке.

это хорошо, предусмотрите предельно дешевые носители, т.е. чтобы блоки хранились в виде JPG на дешевых shared хостингах с SSH доступом,
например:
https://www.arvixe.com/linux_web_hosting

можно использовать протоколы SFTP или SSHFS для отправки "картинок"

I> Пользователь может разместить и смонтировать на данном диске стандартные файловые системы linuxа(ext4).

не нада extX, надо для ZFS, избыточность любого уровня, сжатие, проверка чексумм всего и вся
если один из хостов падает, ну и ладно ...

I>Основные фичи(в будущем):

I>1) отказоустойчивое (с избыточностью) хранение данных на нескольких машинах-серверах (облако).
I>2) возможность делать снепшоты и востанавливать диск.
I>3) шифрование и сжатие данных на клиенте.
Уже есть в cryptsetup + ZFS, и вам лучше не сделать без финансирования даже лет за 10


I>4) диски появляются в /dev и их можно форматировать в файл системы и затем монтировать.

очень хорошо, и потом можно сразу в ZFS пул добавлять


сосредоточьтесь на том, чего еще нет, будьте уникальными и экспертными и люди к вам потянутся
Re: linux диск в облаке
От: irqlevel  
Дата: 27.12.16 10:00
Оценка:
Прототип готов — https://github.com/irqlevel/vdisk

Фичи:
TLS при передаче данных
Шифрование AES на стороне клиента

Сервер находится в Калифорнии поэтому скорость передачи данных плохая.

Здравствуйте, irqlevel, Вы писали:

I>Проект: https://github.com/irqlevel/cloud-disk


I>Суть проекта — это блочный виртуальный девайс с надежным хранением данных в облаке. Пользователь может разместить и смонтировать на данном диске стандартные файловые системы linuxа(ext4). Данные записанные на диск храняться в кэше хоста и в облаке. Данные будут предварительно шифроваться и сжиматься на клиенте. Разработка ведется на языке C в виде linux kernel модулей и контролирующих их исполнение тулзов.

I>Сервер так же реализуется ядерным модулем используя кернельные сокеты.

I>Основные фичи(в будущем):

I>1) отказоустойчивое (с избыточностью) хранение данных на нескольких машинах-серверах (облако).
I>2) возможность делать снепшоты и востанавливать диск.
I>3) шифрование и сжатие данных на клиенте.

I>Что уже сделано:

I>1) клиентский ядерный модуль — пока заглушка типа ramdisk — то есть данные пока храняться в памяти. но их надо будет посылать на сервер.
I>2) серверный ядерный модуль — готов принимать входящие соединения на порт.
I>3) тулза к клиентскому модулю — создает удаляет диски.
I>4) диски появляются в /dev и их можно форматировать в файл системы и затем монтировать.
I>5) в README подробное описание.

I>Цель:

I>1) разработка эффективных технологий распределенного, отказоустойчивого, криптографически защищенного хранения данных.
I>2) создание сообщества — публичного облака таких дисков. когда клиент хостит данные на машинах других клиентов такого сервиса.
I>3) создание сайта / сервиса с платной услугой создания и хранения таких дисков.

I>Ищутся:

I>Ищутся энтузиасты-разработчики с высокими скилами в области linux kernel для развития данного проекта в свое свободное время.
I>Проект пишу как хобби в свободное от работы и семьи время.

I>Если интересно, пишите на почту irqlevel@gmail.com или в этот тред.
Re: linux диск в облаке
От: kov_serg Россия  
Дата: 27.12.16 10:43
Оценка:
Здравствуйте, irqlevel, Вы писали:

I>Проект: https://github.com/irqlevel/cloud-disk


I>Суть проекта — это блочный виртуальный девайс с надежным хранением данных в облаке.

Чем это плохо https://syncthing.net/
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.