SlideShare a Scribd company logo
SmartOS — откуда, зачем, как?

Git in Sky, 2013
Кто я?
Энергетический вампир
● Бэтмэн
● Занимаюсь эксплуатацией веб-сайтов
● Если у вас
всё сломалось —
это ко мне
●

Git in Sky, 2013
Кто вы?
Живете в Gotham City?
● Вы пользуетесь Linux?
● Вы пользуетесь LAMP?
● Разрабатываете веб-сайты?
● Используете веб-сайты?
● Возможно, даже эксплуатируете веб-сайты?
● Хотите узнать больше о супергероях?
●

Git in Sky, 2013
Краткий курс истории
Давным-давно в нашей Галактике
●
Инженеры компании Sun создали Solaris
●
И открыли исходный код — OpenSolaris
●
Но Sun была уничтожена Корпорацией Зла
●
Проект OpenSolaris был закрыт
● В наше время
●
Силы добра объединились, чтобы
продолжить начатое компанией Sun
●

Git in Sky, 2013
Расстановка сил
Illumos — ядро
● Дистрибутивы:
●
OpenIndiana — прямой форк OpenSolaris
●
^ развивается очень неторопливо
●
http://goo.gl/vRhoFv — 13 других вариантов
на базе Illumos
●
Все разной степени живости и свежести, за
некоторыми — компании, за некоторыми —
энтузиасты, есть из чего выбирать
●

Git in Sky, 2013
Почему SmartOS?
SmartOS бесплатна
● SmartOS делается компанией Joyent
● Применяется в Joyent как гипервизор
● Работает с флешки
● Позволяет организовать облачную
инфраструктуру
●
^ а что такое «облачная инфраструктура»?
● Joyent портировали KVM из Linux в Illumos
●

Git in Sky, 2013
Обещал про супергероев
А рассказывает какую-то фигню
● Не расходитесь, вот вам котик:
●

●

Сейчас все будет!
Git in Sky, 2013
ZFS
ZFS это файловая система
●
которая заменяет собой машину времени,
менеджер томов, аппаратный RAIDконтроллер, файл /etc/fstab, менеджер
разделов/слайсов (fdisk?) и еще умеет
немножечко сжимать
●

Git in Sky, 2013
Словарик ZFS
«физический том» — «vdev»
● «группа томов» — «pool»
● «раздел» — «dataset»
● «логический том» — «ZVOL»
● «RAID1» — «mirror»
● «RAID5» ~ «raidz», «raidz1»
● «RAID6» ~ «raidz2»
● «RAID7(?)» ~ «raidz3»
●

Git in Sky, 2013
Особенности ZFS
Умное двухуровневое кэширование:
●
ARC — кэш в памяти
●
L2ARC — кэш на SSD
● Запись (record) от 512 байт до 128 Кбайт
●
^ каждая запись имеет контрольную сумму
● Размер записи свой для каждого dataset
● Возможность сжатия записей (больше размер
записи — эффективнее сжатие)
● Снэпшоты!
● CoW — данные никогда не перезаписываются
●

Git in Sky, 2013
Особенности ZFS
Дедупликация
●
Требует память под таблицы дедупликации
● zfs send/receive — чтение данных из
снэпшота в stdout и наоборот
● zfs send/receive можно делать
инкрементально, что позволяет
организовывать подобие репликации на
read-only раздел в другой локации
●

Git in Sky, 2013
Снэпшоты
Создание — практически бесплатно
● Удаление может вызывать нагрузку на диск
● Снэпшоты read-only, клоны снэпшотов — r/w
● Сценарий 1:
●
Частые бэкапы для защиты от логических
сбоев
● Сценарий 2:
●
Создание однотипных окружений путем
клонирования эталонного снэпшота
●
^ так можно делать девелоперские среды
●

Git in Sky, 2013
DTrace
Неинтрузивный сэмплирующий профайлер
●
^ чо?
● Кроме того, сборщик/анализатор статистики
● Кроме того, фреймворк/библиотека
● Язык D — скрипты описания сессии
профилирования
●

Git in Sky, 2013
Zones
Контейнерная виртуализация
● Аналоги — OpenVZ, FreeBSD jails
● Минимальный оверхед
● Ограничение потребления ресурсов
●
^ можно менять динамически
●

Git in Sky, 2013
А почему
Всего этого, кроме контейнеров, нет в Linux?
● В Linux свои супергерои
●

●

Кроме того, CDDL несовместима с GPL
Git in Sky, 2013
Версии софта в SmartOS
Вопрос: а новый ли софт?
● Пакетный менеджер - pkgin
● GCC — 4.7.0, 4.8.1
● Python — 2.6.8, 2.7.5, 3.2.3, 3.3.2
● Perl — 5.18
● MySQL — 5.6.12
● Node.JS — 0.10.7
● MongoDB — 2.4.6
● PostgreSQL — 9.1.9
● Ruby — 1.9.3 p488
●

Git in Sky, 2013
Выводы
Linux — это хорошо, но мало
● За пределами экосистемы Linux тоже есть
печеньки
● Переходите на сторону добра (или будете
уничтожены)!
● Мы можем помочь с переходом
●

Git in Sky, 2013
Вопросы?
Спасибо! С вами был
● Александр Чистяков, инженер
● Компания Git in Sky
● alex@gitinsky.com
●

Git in Sky, 2013

More Related Content

What's hot

CodeFest 2012. Евтухович И. — Как мы делали Групон
CodeFest 2012. Евтухович И. — Как мы делали ГрупонCodeFest 2012. Евтухович И. — Как мы делали Групон
CodeFest 2012. Евтухович И. — Как мы делали ГрупонCodeFest
 
Разработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервисаРазработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервиса
endeveit
 
ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)
ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)
ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)
Hassan Islamov
 
"nw.js: введение в кросс-платформенные декстопные приложения на JavaScript", ...
"nw.js: введение в кросс-платформенные декстопные приложения на JavaScript", ..."nw.js: введение в кросс-платформенные декстопные приложения на JavaScript", ...
"nw.js: введение в кросс-платформенные декстопные приложения на JavaScript", ...
MoscowJS
 
Колёса: Раньше и сейчас. Как поменять архитектуру высоконагруженного проекта
Колёса: Раньше и сейчас. Как поменять архитектуру высоконагруженного проектаКолёса: Раньше и сейчас. Как поменять архитектуру высоконагруженного проекта
Колёса: Раньше и сейчас. Как поменять архитектуру высоконагруженного проекта
ITCrowd Almaty
 
Systemd. Структура и применение
Systemd. Структура и применениеSystemd. Структура и применение
Systemd. Структура и применениеudmlug
 
Разработка декстопных приложений для linux (Владимир Яковлев)
Разработка декстопных приложений для linux (Владимир Яковлев)Разработка декстопных приложений для linux (Владимир Яковлев)
Разработка декстопных приложений для linux (Владимир Яковлев)
IT-Доминанта
 
pgconf 2017 Moscow. Make PostgreSQL from source
pgconf 2017 Moscow. Make PostgreSQL from sourcepgconf 2017 Moscow. Make PostgreSQL from source
pgconf 2017 Moscow. Make PostgreSQL from source
Dmitry Kremer
 
nw.js введение в кросс-платформенные десктопные приложения на javascript (mo...
nw.js  введение в кросс-платформенные десктопные приложения на javascript (mo...nw.js  введение в кросс-платформенные десктопные приложения на javascript (mo...
nw.js введение в кросс-платформенные десктопные приложения на javascript (mo...
Kirill Danilov
 
Realization of active gameplay in “Peklo”
Realization of active gameplay in “Peklo”Realization of active gameplay in “Peklo”
Realization of active gameplay in “Peklo”
DevGAMM Conference
 
Python для системного администратора
Python для системного администратораPython для системного администратора
Python для системного администратораYandex
 
Lime.JS
Lime.JSLime.JS
Виртуальная память
Виртуальная памятьВиртуальная память
Виртуальная память
Evgeniy Mironov
 
Олег Мохов "Драматическая история одной маленькой промостранички"
Олег Мохов "Драматическая история одной маленькой промостранички"Олег Мохов "Драматическая история одной маленькой промостранички"
Олег Мохов "Драматическая история одной маленькой промостранички"
Yandex
 
Как ВКонтакте использует Go
Как ВКонтакте использует GoКак ВКонтакте использует Go
Как ВКонтакте использует Go
Artem Kovardin
 
Chef, Puppet, Salt, Ansible on SECON 2014
Chef, Puppet, Salt, Ansible on SECON 2014Chef, Puppet, Salt, Ansible on SECON 2014
Chef, Puppet, Salt, Ansible on SECON 2014
Alex Chistyakov
 
Javascript frameworks
Javascript frameworksJavascript frameworks
Javascript frameworkssigmaray
 
Перевод новостного приложения на БД PostgreSQL
Перевод новостного приложения на БД PostgreSQLПеревод новостного приложения на БД PostgreSQL
Перевод новостного приложения на БД PostgreSQL
Dmitry Kremer
 

What's hot (19)

CodeFest 2012. Евтухович И. — Как мы делали Групон
CodeFest 2012. Евтухович И. — Как мы делали ГрупонCodeFest 2012. Евтухович И. — Как мы делали Групон
CodeFest 2012. Евтухович И. — Как мы делали Групон
 
Разработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервисаРазработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервиса
 
ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)
ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)
ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)
 
"nw.js: введение в кросс-платформенные декстопные приложения на JavaScript", ...
"nw.js: введение в кросс-платформенные декстопные приложения на JavaScript", ..."nw.js: введение в кросс-платформенные декстопные приложения на JavaScript", ...
"nw.js: введение в кросс-платформенные декстопные приложения на JavaScript", ...
 
Колёса: Раньше и сейчас. Как поменять архитектуру высоконагруженного проекта
Колёса: Раньше и сейчас. Как поменять архитектуру высоконагруженного проектаКолёса: Раньше и сейчас. Как поменять архитектуру высоконагруженного проекта
Колёса: Раньше и сейчас. Как поменять архитектуру высоконагруженного проекта
 
Systemd. Структура и применение
Systemd. Структура и применениеSystemd. Структура и применение
Systemd. Структура и применение
 
Разработка декстопных приложений для linux (Владимир Яковлев)
Разработка декстопных приложений для linux (Владимир Яковлев)Разработка декстопных приложений для linux (Владимир Яковлев)
Разработка декстопных приложений для linux (Владимир Яковлев)
 
pgconf 2017 Moscow. Make PostgreSQL from source
pgconf 2017 Moscow. Make PostgreSQL from sourcepgconf 2017 Moscow. Make PostgreSQL from source
pgconf 2017 Moscow. Make PostgreSQL from source
 
nw.js введение в кросс-платформенные десктопные приложения на javascript (mo...
nw.js  введение в кросс-платформенные десктопные приложения на javascript (mo...nw.js  введение в кросс-платформенные десктопные приложения на javascript (mo...
nw.js введение в кросс-платформенные десктопные приложения на javascript (mo...
 
FizzBuzzで学ぶRuby
FizzBuzzで学ぶRubyFizzBuzzで学ぶRuby
FizzBuzzで学ぶRuby
 
Realization of active gameplay in “Peklo”
Realization of active gameplay in “Peklo”Realization of active gameplay in “Peklo”
Realization of active gameplay in “Peklo”
 
Python для системного администратора
Python для системного администратораPython для системного администратора
Python для системного администратора
 
Lime.JS
Lime.JSLime.JS
Lime.JS
 
Виртуальная память
Виртуальная памятьВиртуальная память
Виртуальная память
 
Олег Мохов "Драматическая история одной маленькой промостранички"
Олег Мохов "Драматическая история одной маленькой промостранички"Олег Мохов "Драматическая история одной маленькой промостранички"
Олег Мохов "Драматическая история одной маленькой промостранички"
 
Как ВКонтакте использует Go
Как ВКонтакте использует GoКак ВКонтакте использует Go
Как ВКонтакте использует Go
 
Chef, Puppet, Salt, Ansible on SECON 2014
Chef, Puppet, Salt, Ansible on SECON 2014Chef, Puppet, Salt, Ansible on SECON 2014
Chef, Puppet, Salt, Ansible on SECON 2014
 
Javascript frameworks
Javascript frameworksJavascript frameworks
Javascript frameworks
 
Перевод новостного приложения на БД PostgreSQL
Перевод новостного приложения на БД PostgreSQLПеревод новостного приложения на БД PostgreSQL
Перевод новостного приложения на БД PostgreSQL
 

Similar to SmartOS on SPb.LinuxFest 2013Q4

ZFS - файловая система будущего
ZFS - файловая система будущегоZFS - файловая система будущего
ZFS - файловая система будущего
Alex Chistyakov
 
Применение DTrace для оптимизации производительности на примере двух больших ...
Применение DTrace для оптимизации производительности на примере двух больших ...Применение DTrace для оптимизации производительности на примере двух больших ...
Применение DTrace для оптимизации производительности на примере двух больших ...
SQALab
 
Презентация про DTrace на ADDconf в Минске
Презентация про DTrace на ADDconf в МинскеПрезентация про DTrace на ADDconf в Минске
Презентация про DTrace на ADDconf в Минске
Alex Chistyakov
 
Сергей Житинский, Александр Чистяков (Git in Sky)
Сергей Житинский, Александр Чистяков (Git in Sky)Сергей Житинский, Александр Чистяков (Git in Sky)
Сергей Житинский, Александр Чистяков (Git in Sky)
Ontico
 
SaltStack vs Chef, HappyDev 2013
SaltStack vs Chef, HappyDev 2013SaltStack vs Chef, HappyDev 2013
SaltStack vs Chef, HappyDev 2013
Alex Chistyakov
 
High Load 2009 Imdg Presentation
High Load 2009   Imdg PresentationHigh Load 2009   Imdg Presentation
High Load 2009 Imdg PresentationHighLoad2009
 
Git in Sky presentation @ HighLoad++ 2013
Git in Sky presentation @ HighLoad++ 2013Git in Sky presentation @ HighLoad++ 2013
Git in Sky presentation @ HighLoad++ 2013Serguei Gitinsky
 
SmartOS/Solaris app tuning tools/technologies on HL++ 2013
SmartOS/Solaris app tuning tools/technologies on HL++ 2013SmartOS/Solaris app tuning tools/technologies on HL++ 2013
SmartOS/Solaris app tuning tools/technologies on HL++ 2013
Alex Chistyakov
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Ontico
 
My talk on Salt and Ansible from DevConf 2014
My talk on Salt and Ansible from DevConf 2014My talk on Salt and Ansible from DevConf 2014
My talk on Salt and Ansible from DevConf 2014
Alex Chistyakov
 
Benchmarking PostgreSQL in Linux and FreeBSD
Benchmarking PostgreSQL in Linux and FreeBSDBenchmarking PostgreSQL in Linux and FreeBSD
Benchmarking PostgreSQL in Linux and FreeBSD
Alex Chistyakov
 
Построение мультисервисного стартапа в реалиях full-stack javascript
Построение мультисервисного стартапа в реалиях full-stack javascriptПостроение мультисервисного стартапа в реалиях full-stack javascript
Построение мультисервисного стартапа в реалиях full-stack javascript
FDConf
 
Build your own multistack JS startup
Build your own multistack JS startupBuild your own multistack JS startup
Build your own multistack JS startup
Артем Захарченко
 
HBase on Dev{Highload}
HBase on Dev{Highload}HBase on Dev{Highload}
HBase on Dev{Highload}
Alex Chistyakov
 
16 декабря, DEV {highload} - конференция о Highload веб-разработке, "Эксплуат...
16 декабря, DEV {highload} - конференция о Highload веб-разработке, "Эксплуат...16 декабря, DEV {highload} - конференция о Highload веб-разработке, "Эксплуат...
16 декабря, DEV {highload} - конференция о Highload веб-разработке, "Эксплуат...
IT-Portfolio
 
My talk on Docker, Youcon 2015
My talk on Docker, Youcon 2015My talk on Docker, Youcon 2015
My talk on Docker, Youcon 2015Alex Chistyakov
 
Akka: как я перестал бояться и полюбил асинхронный код
Akka: как я перестал бояться и полюбил асинхронный кодAkka: как я перестал бояться и полюбил асинхронный код
Akka: как я перестал бояться и полюбил асинхронный код
Roman Grebennikov
 
специализированные http-демона (Сергей Боченков, Александр Панков)
специализированные http-демона (Сергей Боченков, Александр Панков)специализированные http-демона (Сергей Боченков, Александр Панков)
специализированные http-демона (Сергей Боченков, Александр Панков)Ontico
 
Разработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервисаРазработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервиса
ITCrowd Almaty
 

Similar to SmartOS on SPb.LinuxFest 2013Q4 (20)

ZFS - файловая система будущего
ZFS - файловая система будущегоZFS - файловая система будущего
ZFS - файловая система будущего
 
Применение DTrace для оптимизации производительности на примере двух больших ...
Применение DTrace для оптимизации производительности на примере двух больших ...Применение DTrace для оптимизации производительности на примере двух больших ...
Применение DTrace для оптимизации производительности на примере двух больших ...
 
Презентация про DTrace на ADDconf в Минске
Презентация про DTrace на ADDconf в МинскеПрезентация про DTrace на ADDconf в Минске
Презентация про DTrace на ADDconf в Минске
 
Сергей Житинский, Александр Чистяков (Git in Sky)
Сергей Житинский, Александр Чистяков (Git in Sky)Сергей Житинский, Александр Чистяков (Git in Sky)
Сергей Житинский, Александр Чистяков (Git in Sky)
 
SaltStack vs Chef, HappyDev 2013
SaltStack vs Chef, HappyDev 2013SaltStack vs Chef, HappyDev 2013
SaltStack vs Chef, HappyDev 2013
 
High Load 2009 Imdg Presentation
High Load 2009   Imdg PresentationHigh Load 2009   Imdg Presentation
High Load 2009 Imdg Presentation
 
Git in Sky presentation @ HighLoad++ 2013
Git in Sky presentation @ HighLoad++ 2013Git in Sky presentation @ HighLoad++ 2013
Git in Sky presentation @ HighLoad++ 2013
 
SmartOS/Solaris app tuning tools/technologies on HL++ 2013
SmartOS/Solaris app tuning tools/technologies on HL++ 2013SmartOS/Solaris app tuning tools/technologies on HL++ 2013
SmartOS/Solaris app tuning tools/technologies on HL++ 2013
 
Kranonit s16 (python). sergey burma
Kranonit s16 (python). sergey burmaKranonit s16 (python). sergey burma
Kranonit s16 (python). sergey burma
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
My talk on Salt and Ansible from DevConf 2014
My talk on Salt and Ansible from DevConf 2014My talk on Salt and Ansible from DevConf 2014
My talk on Salt and Ansible from DevConf 2014
 
Benchmarking PostgreSQL in Linux and FreeBSD
Benchmarking PostgreSQL in Linux and FreeBSDBenchmarking PostgreSQL in Linux and FreeBSD
Benchmarking PostgreSQL in Linux and FreeBSD
 
Построение мультисервисного стартапа в реалиях full-stack javascript
Построение мультисервисного стартапа в реалиях full-stack javascriptПостроение мультисервисного стартапа в реалиях full-stack javascript
Построение мультисервисного стартапа в реалиях full-stack javascript
 
Build your own multistack JS startup
Build your own multistack JS startupBuild your own multistack JS startup
Build your own multistack JS startup
 
HBase on Dev{Highload}
HBase on Dev{Highload}HBase on Dev{Highload}
HBase on Dev{Highload}
 
16 декабря, DEV {highload} - конференция о Highload веб-разработке, "Эксплуат...
16 декабря, DEV {highload} - конференция о Highload веб-разработке, "Эксплуат...16 декабря, DEV {highload} - конференция о Highload веб-разработке, "Эксплуат...
16 декабря, DEV {highload} - конференция о Highload веб-разработке, "Эксплуат...
 
My talk on Docker, Youcon 2015
My talk on Docker, Youcon 2015My talk on Docker, Youcon 2015
My talk on Docker, Youcon 2015
 
Akka: как я перестал бояться и полюбил асинхронный код
Akka: как я перестал бояться и полюбил асинхронный кодAkka: как я перестал бояться и полюбил асинхронный код
Akka: как я перестал бояться и полюбил асинхронный код
 
специализированные http-демона (Сергей Боченков, Александр Панков)
специализированные http-демона (Сергей Боченков, Александр Панков)специализированные http-демона (Сергей Боченков, Александр Панков)
специализированные http-демона (Сергей Боченков, Александр Панков)
 
Разработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервисаРазработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервиса
 

More from Alex Chistyakov

My slides from DevOpsDays 2019
My slides from DevOpsDays 2019My slides from DevOpsDays 2019
My slides from DevOpsDays 2019
Alex Chistyakov
 
My slides from BMM №3 May 2019
My slides from BMM №3 May 2019My slides from BMM №3 May 2019
My slides from BMM №3 May 2019
Alex Chistyakov
 
My slides from DevOps-40 meetup Jun 2019
My slides from DevOps-40 meetup Jun 2019 My slides from DevOps-40 meetup Jun 2019
My slides from DevOps-40 meetup Jun 2019
Alex Chistyakov
 
My slides from SECR'2018
My slides from SECR'2018My slides from SECR'2018
My slides from SECR'2018
Alex Chistyakov
 
My slides from the first SPb SRE community meetup at DataArt
My slides from the first SPb SRE community meetup at DataArtMy slides from the first SPb SRE community meetup at DataArt
My slides from the first SPb SRE community meetup at DataArt
Alex Chistyakov
 
My slides from CC'2019
My slides from CC'2019My slides from CC'2019
My slides from CC'2019
Alex Chistyakov
 
My slides from BMM №4 Nov 2019
My slides from BMM №4 Nov 2019My slides from BMM №4 Nov 2019
My slides from BMM №4 Nov 2019
Alex Chistyakov
 
My slides from DevOps-40 meetup Oct 2019
My slides from DevOps-40 meetup Oct 2019My slides from DevOps-40 meetup Oct 2019
My slides from DevOps-40 meetup Oct 2019
Alex Chistyakov
 
My slides from DevOps-40 meetup Dec 2019
My slides from DevOps-40 meetup Dec 2019My slides from DevOps-40 meetup Dec 2019
My slides from DevOps-40 meetup Dec 2019
Alex Chistyakov
 
Configuration management and Kubernetes
Configuration management and KubernetesConfiguration management and Kubernetes
Configuration management and Kubernetes
Alex Chistyakov
 
Ansible and other stuff
Ansible and other stuffAnsible and other stuff
Ansible and other stuff
Alex Chistyakov
 
Python performance engineering in 2017
Python performance engineering in 2017Python performance engineering in 2017
Python performance engineering in 2017
Alex Chistyakov
 
My talk at SPb SQA sub-meetup of ITGM
My talk at SPb SQA sub-meetup of ITGMMy talk at SPb SQA sub-meetup of ITGM
My talk at SPb SQA sub-meetup of ITGM
Alex Chistyakov
 
My talk at SECR 2017
My talk at SECR 2017My talk at SECR 2017
My talk at SECR 2017
Alex Chistyakov
 
On scaling teams
On scaling teamsOn scaling teams
On scaling teams
Alex Chistyakov
 
MariaDB workshop
MariaDB workshopMariaDB workshop
MariaDB workshop
Alex Chistyakov
 
Docker for JS people
Docker for JS peopleDocker for JS people
Docker for JS people
Alex Chistyakov
 
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
Alex Chistyakov
 
My talk on GitHub open data at ITGM #10
 My talk on GitHub open data at ITGM #10 My talk on GitHub open data at ITGM #10
My talk on GitHub open data at ITGM #10
Alex Chistyakov
 
My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017
Alex Chistyakov
 

More from Alex Chistyakov (20)

My slides from DevOpsDays 2019
My slides from DevOpsDays 2019My slides from DevOpsDays 2019
My slides from DevOpsDays 2019
 
My slides from BMM №3 May 2019
My slides from BMM №3 May 2019My slides from BMM №3 May 2019
My slides from BMM №3 May 2019
 
My slides from DevOps-40 meetup Jun 2019
My slides from DevOps-40 meetup Jun 2019 My slides from DevOps-40 meetup Jun 2019
My slides from DevOps-40 meetup Jun 2019
 
My slides from SECR'2018
My slides from SECR'2018My slides from SECR'2018
My slides from SECR'2018
 
My slides from the first SPb SRE community meetup at DataArt
My slides from the first SPb SRE community meetup at DataArtMy slides from the first SPb SRE community meetup at DataArt
My slides from the first SPb SRE community meetup at DataArt
 
My slides from CC'2019
My slides from CC'2019My slides from CC'2019
My slides from CC'2019
 
My slides from BMM №4 Nov 2019
My slides from BMM №4 Nov 2019My slides from BMM №4 Nov 2019
My slides from BMM №4 Nov 2019
 
My slides from DevOps-40 meetup Oct 2019
My slides from DevOps-40 meetup Oct 2019My slides from DevOps-40 meetup Oct 2019
My slides from DevOps-40 meetup Oct 2019
 
My slides from DevOps-40 meetup Dec 2019
My slides from DevOps-40 meetup Dec 2019My slides from DevOps-40 meetup Dec 2019
My slides from DevOps-40 meetup Dec 2019
 
Configuration management and Kubernetes
Configuration management and KubernetesConfiguration management and Kubernetes
Configuration management and Kubernetes
 
Ansible and other stuff
Ansible and other stuffAnsible and other stuff
Ansible and other stuff
 
Python performance engineering in 2017
Python performance engineering in 2017Python performance engineering in 2017
Python performance engineering in 2017
 
My talk at SPb SQA sub-meetup of ITGM
My talk at SPb SQA sub-meetup of ITGMMy talk at SPb SQA sub-meetup of ITGM
My talk at SPb SQA sub-meetup of ITGM
 
My talk at SECR 2017
My talk at SECR 2017My talk at SECR 2017
My talk at SECR 2017
 
On scaling teams
On scaling teamsOn scaling teams
On scaling teams
 
MariaDB workshop
MariaDB workshopMariaDB workshop
MariaDB workshop
 
Docker for JS people
Docker for JS peopleDocker for JS people
Docker for JS people
 
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
 
My talk on GitHub open data at ITGM #10
 My talk on GitHub open data at ITGM #10 My talk on GitHub open data at ITGM #10
My talk on GitHub open data at ITGM #10
 
My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017
 

SmartOS on SPb.LinuxFest 2013Q4

  • 1. SmartOS — откуда, зачем, как? Git in Sky, 2013
  • 2. Кто я? Энергетический вампир ● Бэтмэн ● Занимаюсь эксплуатацией веб-сайтов ● Если у вас всё сломалось — это ко мне ● Git in Sky, 2013
  • 3. Кто вы? Живете в Gotham City? ● Вы пользуетесь Linux? ● Вы пользуетесь LAMP? ● Разрабатываете веб-сайты? ● Используете веб-сайты? ● Возможно, даже эксплуатируете веб-сайты? ● Хотите узнать больше о супергероях? ● Git in Sky, 2013
  • 4. Краткий курс истории Давным-давно в нашей Галактике ● Инженеры компании Sun создали Solaris ● И открыли исходный код — OpenSolaris ● Но Sun была уничтожена Корпорацией Зла ● Проект OpenSolaris был закрыт ● В наше время ● Силы добра объединились, чтобы продолжить начатое компанией Sun ● Git in Sky, 2013
  • 5. Расстановка сил Illumos — ядро ● Дистрибутивы: ● OpenIndiana — прямой форк OpenSolaris ● ^ развивается очень неторопливо ● http://goo.gl/vRhoFv — 13 других вариантов на базе Illumos ● Все разной степени живости и свежести, за некоторыми — компании, за некоторыми — энтузиасты, есть из чего выбирать ● Git in Sky, 2013
  • 6. Почему SmartOS? SmartOS бесплатна ● SmartOS делается компанией Joyent ● Применяется в Joyent как гипервизор ● Работает с флешки ● Позволяет организовать облачную инфраструктуру ● ^ а что такое «облачная инфраструктура»? ● Joyent портировали KVM из Linux в Illumos ● Git in Sky, 2013
  • 7. Обещал про супергероев А рассказывает какую-то фигню ● Не расходитесь, вот вам котик: ● ● Сейчас все будет! Git in Sky, 2013
  • 8. ZFS ZFS это файловая система ● которая заменяет собой машину времени, менеджер томов, аппаратный RAIDконтроллер, файл /etc/fstab, менеджер разделов/слайсов (fdisk?) и еще умеет немножечко сжимать ● Git in Sky, 2013
  • 9. Словарик ZFS «физический том» — «vdev» ● «группа томов» — «pool» ● «раздел» — «dataset» ● «логический том» — «ZVOL» ● «RAID1» — «mirror» ● «RAID5» ~ «raidz», «raidz1» ● «RAID6» ~ «raidz2» ● «RAID7(?)» ~ «raidz3» ● Git in Sky, 2013
  • 10. Особенности ZFS Умное двухуровневое кэширование: ● ARC — кэш в памяти ● L2ARC — кэш на SSD ● Запись (record) от 512 байт до 128 Кбайт ● ^ каждая запись имеет контрольную сумму ● Размер записи свой для каждого dataset ● Возможность сжатия записей (больше размер записи — эффективнее сжатие) ● Снэпшоты! ● CoW — данные никогда не перезаписываются ● Git in Sky, 2013
  • 11. Особенности ZFS Дедупликация ● Требует память под таблицы дедупликации ● zfs send/receive — чтение данных из снэпшота в stdout и наоборот ● zfs send/receive можно делать инкрементально, что позволяет организовывать подобие репликации на read-only раздел в другой локации ● Git in Sky, 2013
  • 12. Снэпшоты Создание — практически бесплатно ● Удаление может вызывать нагрузку на диск ● Снэпшоты read-only, клоны снэпшотов — r/w ● Сценарий 1: ● Частые бэкапы для защиты от логических сбоев ● Сценарий 2: ● Создание однотипных окружений путем клонирования эталонного снэпшота ● ^ так можно делать девелоперские среды ● Git in Sky, 2013
  • 13. DTrace Неинтрузивный сэмплирующий профайлер ● ^ чо? ● Кроме того, сборщик/анализатор статистики ● Кроме того, фреймворк/библиотека ● Язык D — скрипты описания сессии профилирования ● Git in Sky, 2013
  • 14. Zones Контейнерная виртуализация ● Аналоги — OpenVZ, FreeBSD jails ● Минимальный оверхед ● Ограничение потребления ресурсов ● ^ можно менять динамически ● Git in Sky, 2013
  • 15. А почему Всего этого, кроме контейнеров, нет в Linux? ● В Linux свои супергерои ● ● Кроме того, CDDL несовместима с GPL Git in Sky, 2013
  • 16. Версии софта в SmartOS Вопрос: а новый ли софт? ● Пакетный менеджер - pkgin ● GCC — 4.7.0, 4.8.1 ● Python — 2.6.8, 2.7.5, 3.2.3, 3.3.2 ● Perl — 5.18 ● MySQL — 5.6.12 ● Node.JS — 0.10.7 ● MongoDB — 2.4.6 ● PostgreSQL — 9.1.9 ● Ruby — 1.9.3 p488 ● Git in Sky, 2013
  • 17. Выводы Linux — это хорошо, но мало ● За пределами экосистемы Linux тоже есть печеньки ● Переходите на сторону добра (или будете уничтожены)! ● Мы можем помочь с переходом ● Git in Sky, 2013
  • 18. Вопросы? Спасибо! С вами был ● Александр Чистяков, инженер ● Компания Git in Sky ● alex@gitinsky.com ● Git in Sky, 2013