Распределенная отказоустойчивая система хранения статичных данных Глеб Воронич gleb@ihc.ru.

Презентация:



Advertisements
Похожие презентации
Приложение 1 к решению Совета депутатов города Новосибирска от _____________ ______ Масштаб 1 : 5000.
Advertisements

Приложение 1 к решению Совета депутатов города Новосибирска от Масштаб 1 : 5000.
В 2014 году «Колокольчику» исполняется 50 лет!!! 208 чёрно-белых фотографий из детсадовского архива Как молоды мы были …
Масштаб 1 : Приложение 1 к решению Совета депутатов города Новосибирска от _____________ ______.
Масштаб 1 : Приложение 1 к решению Совета депутатов города Новосибирска от

PAGE 1 | Gradient colors RGBRGB Diagrams RGBRGB RGBRGB 166.
Итоги Интернет – тестирования учащихся 9 и 11 классов школ города Казани (1 – 3 марта 2011 г.) Саркисова И. И., методист ГМЦ.
PAGE 1 | Gradient colors RGBRGB Diagrams RGBRGB RGBRGB 166.
© Alexey N. Kostikov Платформа Moodle
Каратанова Марина Николаевна МОУ СОШ 256 г.Фокино.
Маршрутный лист «Числа до 100» ? ? ?
Платформа разработки высоконагруженного веб-сервиса: инструменты отладки и возможности масштабирования Александр Демидов руководитель направления арендных.
Эта презентация использует макрос Drag and Drop, созданный Составитель: Максимова Марина Александровна, МОУ прогимназия 18 «Родничок» городского.
Число зарегистрированных преступлений. Уровень преступности.
© 2006 Cisco Systems, Inc. All rights reserved. BSCI v Implementing BGP Using Route Maps to Manipulate Basic BGP Paths.
Масштаб 1 : 5000 Приложение 1 к решению Совета депутатов города Новосибирска от
Типовые расчёты Растворы
Рейтинг территорий с преимущественно городским населением по уровню преступности в 2008 году 1ЗАТО «Звездный»33,10 2Гремячинский230,00 3г. Кунгур242,00.
Поисковые движки. Sphinx Search Engine. Докладчик: Роман Кудлай
Транксрипт:

Распределенная отказоустойчивая система хранения статичных данных Глеб Воронич

Требования к системе хранения Надежность Простота эксплуатации для админов Простота для разработчиков Прозрачность для пользователей Возможность вносить изменения в схему отдачи

Распределенные ФС Плюсы: Репликация происходит сама по себе Минусы: Недостаточная производительность Зависимость от Fiber/10GE/InfiniBand Сложность настройки и сопровождения Сложность восстановления ФС Lock Managers, blah-blah-blah

А что еще есть? Плюсы: Отказоустойчивость Поддержка сторонними специалистами Backup не нужен (если верить на слово) Минусы: Географическая удаленность Цена! Хранение 100Tb $7168/мес

MogileFS

What did u say?

MogileFS Brad Fitzpatrick Создатель LiveJournal Основатель Danga Interactive Сейчас работает в Google Danga Interactive memcached OpenID What did u say?

MogileFS Brad Fitzpatrick Создатель LiveJournal Основатель Danga Interactive Сейчас работает в Google Danga Interactive memcached OpenID

Преимущества Уровень приложения Отсутствие SPOF Автоматическая репликация на основе классов RAID больше не нужен Свобода выбора ФС

API Java Perl PHP Python Ruby

Архитектура Tracker (mogilefsd) Database (MySQL/PostgreSQL) Storage Node (mogstored)

Термины и определения Домен namespace Класс политика Хост Storage Node Девайс виртуальное устройство

Flat Namespaces (домены) namespace1:/path/to/file namespace2:/path/to/file namespaceN:/path/to/file

Storage Node изнутри Любой дистрибутив Linux Не требуется делать все с нуля WebDAV Server (e.g. Nginx) /var/mogdata VS /home/ivan/WTF Девайс = директория /dev132/0/178/804/ fid

Можно даже...

Но лучше так

Command Line Interface mogadm host add node1.project.com --ip= status=alive mogadm device add node1.project.com dev10 mogadm domain add project.com mogadm domain add happycontent.net mogadm class add project.com images --mindevcount=4 -- replpolicy="MultipleHosts"

Command Line Interface mogadm settings set network_zones near,far mogadm settings set zone_near /16 mogadm settings set zone_far /16 mogadm class add happycontent.net images --mindevcount=1 --replpolicy="HostsPerNetwork(near=2,far=1)"

Как это выглядит в коде? ##

Как это отдается? Nginx + mogilefs_module Простота настройки location /mogile {mogilefs_domain test.mogile;mogilefs_class class2;mogilefs_tracker :7001;mogilefs_pass {proxy_pass $mogilefs_path;}} Минимальные ресурсы Высокая скорость Собственный backend Гибкость и безграничные возможности

Где отказоустойчивость?

Master - Master Active - Standby Состояние storage проверяет сам tracker

Где отказоустойчивость?

host device size(G) used(G) free(G) use% ob state I/O% [ 1] dev % writeable 0.0 [ 1] dev % writeable 0.0 [ 1] dev % writeable 0.0 [ 1] dev % writeable 0.0 [ 1] dev % writeable 0.0 [ 1] dev % down 0.0 [ 1] dev % writeable 0.0 [ 1] dev % writeable 0.0 [ 1] dev % writeable 0.0 [ 1] dev % writeable 0.0 [ 1] dev % writeable 0.0 Автоматическое определение недоступности девайсов и хостов

Девайсы alive down dead readonly drain Device Weight dev10 weight=100 dev15 weight=200 dev20 weight=400

Плюшки FSCK Rebalancing Поддержка memcached mogadm rebalance settingsrebal_policy = from_percent_used=95 to_percent_free=50

Rebalancing Source:from_hostsfro m_devicesfrom_perce nt_usedfrom_percent_ freefrom_space_usedf rom_space_freefid_ag elimit_typelimit_bylimit Target:to_hoststo_devi cesto_percent_usedto _percent_freeto_spac e_usedto_space_free not_to_hostsnot_to_d evicesuse_dest_devsl eave_in_drain_mode # host ids# device ids# 0.nn * 100 # old | new # global | device # size | count | percent | none # 100g | 10% | 5000 # all | N (list up to N devices to rep pol) $ mogadm rebalance status Rebalance is running Rebalance status: bytes_queued = completed_devs = 102,125,151,148 fids_queued = sdev_current = 119 sdev_lastfid = sdev_limit = source_devs = 108,115,103,113,152,142,107 $ mogadm rebalance test Tested rebalance policy... Policy: etc Source devices: Destination devices:

Быстро, масштабно, надежно. 23 млн файлов 180 Tb данных mysql> select count(fid) as files, sum(length)/ as size from file\G******************files: size:

Быстро, масштабно, надежно. Ни единого разрыва Ни одного утраченного файла

Быстро, масштабно, надежно. Ежедневно: 2.5 млн просмотров 350 тыс пользователей Ежемесячно: 3.5 Tb данных 30 тыс файлов

Быстро, масштабно, надежно. Min 4 Gbps Max 13 Gbps

Спасибо! Глеб Воронич