extreme cloud storage on freebsd, Андрей Пантюхин
DESCRIPTION
TRANSCRIPT
![Page 1: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/1.jpg)
![Page 2: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/2.jpg)
(пара скриптов на shell и SQL)
![Page 3: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/3.jpg)
медиа-сервис с типичным размером файла от 1 до
50 MB
мастер данные от 100 TB до 1 PB
стриминг данные от 50 до 200 TB
стриминг полоса от 10 Gbit/s до 1 Tbit/s
![Page 4: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/4.jpg)
сохранность мастер данных
безотказность и качество стриминга
разумная TCO
![Page 5: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/5.jpg)
много дисковых полок
эффективное кластерное хранилище
CDN от вендора
серверы доступа — отдельно
![Page 6: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/6.jpg)
Isilon, NetApp, Panasas
Exadata, EMC, HDS
GPFS, PolyServe
![Page 7: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/7.jpg)
инфраструктура требует 3–4 решения
негарантируемая скорость при экстремальных
нагрузках
крайняя сложность дебага и тюнинга
стоимость raw TB в 10–30 раза выше consumer
storage
![Page 8: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/8.jpg)
server-integrated storage!
(cloud storage)
![Page 9: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/9.jpg)
Google, Yandex, и почти все крупные интернет-
компании
гибкость, доступность дебага и тюнинга
consumer hardware, стоимость raw TB в 1,5–3 раза
выше consumer storage
![Page 10: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/10.jpg)
HDFS, GFS, S3, (Lustre, …)
сложности с большими расстояниями
медленный стриминг, сложность кэширования
сложность эксплуатации
![Page 11: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/11.jpg)
FreeBSD
UFS2
HTTP
![Page 12: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/12.jpg)
![Page 13: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/13.jpg)
продвинутый, надежный storage: geom, UFS2, ZFS
проверенный extreme streaming на nginx
доступная коммерческая поддержка на уровне ядра
промышленный опыт NetApp, Isilon, Panasas
![Page 14: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/14.jpg)
самая быстрая FS в мире
7 лет успешной эксплуатации
ZFS сложна и пока медленна
![Page 15: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/15.jpg)
основной протокол внешнего доступа
достаточно быстрый и простой для внутреннего
обмена
![Page 16: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/16.jpg)
серверы и хранилище
мастер и стриминг данные
внешний и внутренний доступ
кластерный и облачный (CDN) обмен
![Page 17: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/17.jpg)
одна файловая система на диск
никаких RAID, только JBOD
распределённость на базе случайных чисел
![Page 18: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/18.jpg)
шасси SuperMicro 4U 24 x 3.5"
2–6 x Intel Gigabit
24 x 2TB потребительские диски
контроллеры LSI 1068 в режиме JBOD
![Page 19: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/19.jpg)
имя файла — sha256 от его содержимого
равномерно разнесены по 4096 (16^x) папкам
диспетчер данных
![Page 20: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/20.jpg)
минимум на трёх шасси
чуть позже — минимум в трёх ДЦ
![Page 21: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/21.jpg)
минимум на трёх шасси
во всех точках CDN
![Page 22: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/22.jpg)
PostgreSQL, sh, Python
sha, hdd, chassis, rack, dc
вид sha—http://chassis/hdd/ доступен
приложению
![Page 23: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/23.jpg)
знает текущий статус всех объектов
формирует из ручных и автоматических задач
сценарии и запускает их
единая точка автоматизации
частичная multi-master архитектура
self-healing
![Page 24: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/24.jpg)
nginx + fetch/wget/curl
гибкая аутентификация
быстрый fetcher в разработке
![Page 25: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/25.jpg)
унифицирован между локальным и
распределённым уровнями
подстраивается под ширину каналов
![Page 26: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/26.jpg)
nginx, secure link
100k+ потоков на шасси
![Page 27: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/27.jpg)
linear local read/write: 100MB/s на диск, 2.4GB/s на
шасси
random local read: 20–40MB/s на диск, 480–960MB/s
на шасси
random HTTP get: 4–5Gbit/s на шасси без
оптимизаций
![Page 28: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/28.jpg)
app-level next path retry
актуальная информация о доступности в
приложении
![Page 29: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/29.jpg)
carp в пределах dc
proxy store при выходе диска из строя
![Page 30: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/30.jpg)
hardware balancers плохо подходят для тяжёлых
данных
app-level, geo-aware, status-aware balancing
![Page 31: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/31.jpg)
на новое шасси уходит несколько минут
это можно автоматизировать
plug-and-pray
![Page 32: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/32.jpg)
примерно в 2,5 раза дороже жёсткого диска
можно оптимизировать: пример backblaze
![Page 33: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/33.jpg)
рабочий прототип примерно за неделю
совершенствование в режиме production благодаря
high availability
![Page 34: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/34.jpg)
случайная распределённость — равномерно
распределённое восстановление избытычности
жёсткий диск 2TB: 6 часов 4 минуты
шасси 48TB: 55 часов 6 часов
ЦОД 1PB: 10 дней 5 дней :'-(
Земля 10PB: 3 месяца CLASSIFIED секунд
![Page 35: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/35.jpg)
секунды при потере диска
миллисекунды при потере шасси (carp)
секунды при потере dc (app-level next-path)
![Page 36: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/36.jpg)
недостатки
преимущества
![Page 37: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/37.jpg)
кастомность
велосипедность
маленький bus factor
![Page 38: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/38.jpg)
сырость
отсутствие сертификаций
![Page 39: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/39.jpg)
гибкость
производительность
job security
![Page 40: Extreme Cloud Storage on FreeBSD, Андрей Пантюхин](https://reader031.vdocuments.pub/reader031/viewer/2022020105/54922e57b47959763e8b554a/html5/thumbnails/40.jpg)
единственное унифицированное решение под
задачи