SlideShare a Scribd company logo
1 of 21
Download to read offline
Puppet!
как отправная точка в компании
Антон Турецкий

Системный инженер, Badoo8
@tyrchenok
Что в проекте главное?
2
Содержание
• При чём тут Puppet?8
• Модель применения Puppet в Badoo8
• Автоматизация выдачи доступов8
• #bdsm: карта сервисов8
• Бекапы: “смешать, но не взбалтывать”8
• Почему мы можем спать спокойно?8
• Заключение
3
При чём тут Puppet?
1. Ввод в production новых серверов8
2. Вывод из production / Диагностика / etc8
3. Выполнение автоматических действий
4
Модель применения
5
От простого к сложному…
6
И создал Puppet #user
7
#user – наше всё
8
#SystemUser
9
Что получили от такого подхода?
• Просто: все в одной системе!
• Быстро: до 2 минут на выдачу/отзыв
10
Что получили от такого подхода?
• Просто: все в одной системе8
• Быстро: до 2 минут на выдачу/отзыв8
• История выдачи доступов!
• Гибкая настройка sudoers и не только
11
Что получили от такого подхода?
• Просто: все в одной системе8
• Быстро: до 2 минут на выдачу/отзыв8
• История выдачи доступов8
• Гибкая настройка sudoers и не только8
• Автоматическое создание ACL для VPN!
• Добавление функций по мере необходимости
12
Немного внутренностей…
• Отдельный environment – users

- нет лишних модулей

- нет лишних Fact’ов8
• Запуск только одной копии “UsersUpload”8
• Проверка на “актуальное состояние”8
• Как не “убить” Puppet Master?
13
Сервисы
Как всё удержать в голове?
• Память8
• Блокнотик8
• “Из уст в уста”8
• Корпоративная Wiki
#Puppet
14
#bdsm: Badoo Services Map
15
#bdsm: кто у нас где?
16
Бекап – это отдельная тема?
17
Почему мы можем спать спокойно?
• Вся конфигурация Puppet в git8
• Разворачивание puppetmaster на местности? Легко!

- демон в rpm-пакете

- репозиторий конфигурации в git (+ N-копий, + backup)

- (балансировщик – nginx)8
• Скрипты обслуживания – git8
• Данные – MySQL
18
Заключение
• Keep It Simple: 2 основные системы8
• Puppet: актуальная сопроводительная документация8
• Puppet может больше, чем мы думаем8
• Бекапы – они не такие и страшные
19
на сегодня всё
Спасибо
Вопросы?Антон Турецкий

a.turetsky@corp.badoo.com8
@tyrchenok8
@BadooDev 8
http://habrahabr.ru/company/badoo/
Useful Links

#Yac2013 #xCAT : http://goo.gl/kvXBvq8
#hl2012 #Puppet : http://goo.gl/5FNwuD

More Related Content

What's hot

буктрейлер
буктрейлербуктрейлер
буктрейлер
cbs_iskitim
 
CodeFest 2012. Шергин Д. — Разработка мульти-платформенных 3D-игр
CodeFest 2012. Шергин Д. — Разработка мульти-платформенных 3D-игрCodeFest 2012. Шергин Д. — Разработка мульти-платформенных 3D-игр
CodeFest 2012. Шергин Д. — Разработка мульти-платформенных 3D-игр
CodeFest
 
Git для новичков
Git для новичковGit для новичков
Git для новичков
Softline
 

What's hot (8)

буктрейлер
буктрейлербуктрейлер
буктрейлер
 
Java/Scala Lab: Юрий Литвиненко - Living in Heroku
Java/Scala Lab: Юрий Литвиненко - Living in Heroku Java/Scala Lab: Юрий Литвиненко - Living in Heroku
Java/Scala Lab: Юрий Литвиненко - Living in Heroku
 
CodeFest 2012. Шергин Д. — Разработка мульти-платформенных 3D-игр
CodeFest 2012. Шергин Д. — Разработка мульти-платформенных 3D-игрCodeFest 2012. Шергин Д. — Разработка мульти-платформенных 3D-игр
CodeFest 2012. Шергин Д. — Разработка мульти-платформенных 3D-игр
 
Golang
GolangGolang
Golang
 
Chef Server не нужен? для DevOps-40
Chef Server не нужен? для DevOps-40Chef Server не нужен? для DevOps-40
Chef Server не нужен? для DevOps-40
 
Ля-Минор - Muzis Hackathon
Ля-Минор - Muzis HackathonЛя-Минор - Muzis Hackathon
Ля-Минор - Muzis Hackathon
 
Git для новичков
Git для новичковGit для новичков
Git для новичков
 
"Sphinx 3.0 в реальной жизни" Андрей Смирнов (Avito)
"Sphinx 3.0 в реальной жизни" Андрей Смирнов (Avito)"Sphinx 3.0 в реальной жизни" Андрей Смирнов (Avito)
"Sphinx 3.0 в реальной жизни" Андрей Смирнов (Avito)
 

Similar to CodeFest 2014. Турецкий А. — Puppet как отправная точка в компании

Как легко и быстро создать видео для своего
Как легко и быстро создать видео для своегоКак легко и быстро создать видео для своего
Как легко и быстро создать видео для своего
RadonetsAleksei
 
Автоматизированное тестирование
Автоматизированное тестированиеАвтоматизированное тестирование
Автоматизированное тестирование
alexey_detr
 
История проекта, который никогда не падает / Андрей Шетухин
История проекта, который никогда не падает / Андрей ШетухинИстория проекта, который никогда не падает / Андрей Шетухин
История проекта, который никогда не падает / Андрей Шетухин
Ontico
 
Интернет в помощь команде разработчиков культурно массового мероприятия
Интернет в помощь команде разработчиков культурно массового мероприятияИнтернет в помощь команде разработчиков культурно массового мероприятия
Интернет в помощь команде разработчиков культурно массового мероприятия
nomoretears
 

Similar to CodeFest 2014. Турецкий А. — Puppet как отправная точка в компании (20)

Быстрый старт iOS приложения на примере iOS Почты Mail.Ru / Николай Морев (Ma...
Быстрый старт iOS приложения на примере iOS Почты Mail.Ru / Николай Морев (Ma...Быстрый старт iOS приложения на примере iOS Почты Mail.Ru / Николай Морев (Ma...
Быстрый старт iOS приложения на примере iOS Почты Mail.Ru / Николай Морев (Ma...
 
Как легко и быстро создать видео для своего
Как легко и быстро создать видео для своегоКак легко и быстро создать видео для своего
Как легко и быстро создать видео для своего
 
Natural Language Processing (NLP) with .NET for #dotnetby meetup-29
Natural Language Processing (NLP) with .NET for #dotnetby meetup-29Natural Language Processing (NLP) with .NET for #dotnetby meetup-29
Natural Language Processing (NLP) with .NET for #dotnetby meetup-29
 
Автоматизированное тестирование
Автоматизированное тестированиеАвтоматизированное тестирование
Автоматизированное тестирование
 
История проекта, который никогда не падает / Андрей Шетухин
История проекта, который никогда не падает / Андрей ШетухинИстория проекта, который никогда не падает / Андрей Шетухин
История проекта, который никогда не падает / Андрей Шетухин
 
«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс
 
Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...
Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...
Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...
 
Rozum robotics release cycle
Rozum robotics release cycleRozum robotics release cycle
Rozum robotics release cycle
 
Nival: Почему ваш Unity проект должен работать в консоли?
Nival: Почему ваш Unity проект должен работать в консоли?Nival: Почему ваш Unity проект должен работать в консоли?
Nival: Почему ваш Unity проект должен работать в консоли?
 
Инструменты разные нужны, инструменты разные важны
Инструменты разные нужны, инструменты разные важныИнструменты разные нужны, инструменты разные важны
Инструменты разные нужны, инструменты разные важны
 
"Хероковая жизнь" Юрий Литвиненко
"Хероковая жизнь" Юрий Литвиненко"Хероковая жизнь" Юрий Литвиненко
"Хероковая жизнь" Юрий Литвиненко
 
Тестування міграції: свіжий досвід від першої особи, Катя Шепелева
Тестування міграції: свіжий досвід від першої особи, Катя ШепелеваТестування міграції: свіжий досвід від першої особи, Катя Шепелева
Тестування міграції: свіжий досвід від першої особи, Катя Шепелева
 
Как мы делаем Banki.ru
Как мы делаем Banki.ruКак мы делаем Banki.ru
Как мы делаем Banki.ru
 
Jpoint 2017 - как это было (обзор конференции)
Jpoint 2017 - как это было (обзор конференции)Jpoint 2017 - как это было (обзор конференции)
Jpoint 2017 - как это было (обзор конференции)
 
Инструменты разные нужны, инструменты разные важны
Инструменты разные нужны, инструменты разные важныИнструменты разные нужны, инструменты разные важны
Инструменты разные нужны, инструменты разные важны
 
Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»
 
Интернет в помощь команде разработчиков культурно массового мероприятия
Интернет в помощь команде разработчиков культурно массового мероприятияИнтернет в помощь команде разработчиков культурно массового мероприятия
Интернет в помощь команде разработчиков культурно массового мероприятия
 
Яндекс.АккаунтМенеджер - Mobius 2015
Яндекс.АккаунтМенеджер - Mobius 2015Яндекс.АккаунтМенеджер - Mobius 2015
Яндекс.АккаунтМенеджер - Mobius 2015
 
Фишки и грабли геймификации в IT. Любко (Шатилова) Евгения.
Фишки и грабли геймификации в IT. Любко (Шатилова) Евгения.Фишки и грабли геймификации в IT. Любко (Шатилова) Евгения.
Фишки и грабли геймификации в IT. Любко (Шатилова) Евгения.
 
Микросервисы: первая кровь
Микросервисы: первая кровьМикросервисы: первая кровь
Микросервисы: первая кровь
 

More from CodeFest

More from CodeFest (20)

Alexander Graebe
Alexander GraebeAlexander Graebe
Alexander Graebe
 
Никита Прокопов
Никита ПрокоповНикита Прокопов
Никита Прокопов
 
Денис Баталов
Денис БаталовДенис Баталов
Денис Баталов
 
Елена Гальцина
Елена ГальцинаЕлена Гальцина
Елена Гальцина
 
Александр Калашников
Александр КалашниковАлександр Калашников
Александр Калашников
 
Ирина Иванова
Ирина ИвановаИрина Иванова
Ирина Иванова
 
Marko Berković
Marko BerkovićMarko Berković
Marko Berković
 
Денис Кортунов
Денис КортуновДенис Кортунов
Денис Кортунов
 
Александр Зимин
Александр ЗиминАлександр Зимин
Александр Зимин
 
Сергей Крапивенский
Сергей КрапивенскийСергей Крапивенский
Сергей Крапивенский
 
Сергей Игнатов
Сергей ИгнатовСергей Игнатов
Сергей Игнатов
 
Николай Крапивный
Николай КрапивныйНиколай Крапивный
Николай Крапивный
 
Alexander Graebe
Alexander GraebeAlexander Graebe
Alexander Graebe
 
Вадим Смирнов
Вадим СмирновВадим Смирнов
Вадим Смирнов
 
Константин Осипов
Константин ОсиповКонстантин Осипов
Константин Осипов
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele Rialdi
 
Максим Пугачев
Максим ПугачевМаксим Пугачев
Максим Пугачев
 
Rene Groeschke
Rene GroeschkeRene Groeschke
Rene Groeschke
 
Иван Бондаренко
Иван БондаренкоИван Бондаренко
Иван Бондаренко
 
Mete Atamel
Mete AtamelMete Atamel
Mete Atamel
 

CodeFest 2014. Турецкий А. — Puppet как отправная точка в компании