Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ansible
Search
Sysadminka
March 21, 2019
Technology
73
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ansible
Ansible - Инструмент для IaaC - Алексей Лапухов
Sysadminka
March 21, 2019
More Decks by Sysadminka
See All by Sysadminka
Ярин Андрей, Интерсвязь - Теледомофоны, или как мы дошли до жизни такой.
sysadminkadesk
0
75
Устройство 1С с точки зрения администратора — Александр Волокитин
sysadminkadesk
0
180
#Связь на километры и сотни мегабит - Игорь Лабер, General Telecom
sysadminkadesk
0
140
Artemy-Kapitula-Cinder-Insides.pdf
sysadminkadesk
0
36
Практика использования Helm
sysadminkadesk
0
82
Sysadminka и UWDC
sysadminkadesk
0
34
Миграция из Docker Swam в Kubernetes
sysadminkadesk
0
51
GitOps CD для Kubernetes
sysadminkadesk
0
150
Анонсируем Service IP из Kubernetes по BGP
sysadminkadesk
0
300
Other Decks in Technology
See All in Technology
美しいコードを書くためにF#を学んでみた話
yud0uhu
1
320
知見・人・API・DB・予算 ─ ナイナイ尽くしだった人事データ整備 with dbt、5年間の学び
ken6377
1
170
ループエンジニアリングでE2Eテストを実践
noriyukitakei
0
310
プロダクトだけじゃない、社内プロセスにおける自動化・省力化ノススメ
kakehashi
PRO
1
2.6k
ZOZOTOWNの進化と信頼性を両立する負荷試験
zozotech
PRO
0
140
金融の未来を考える / Thinking About the Future of Finance
ks91
PRO
0
180
ローカルLLMとLINE Botの組み合わせ その3 / LINE DC Generative AI Meetup #8
you
PRO
0
120
CIで使うClaude
iwatatomoya
0
160
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
1
2.4k
クラウド上のデータ復旧で見落としがちな制約: 医療系 SaaS の BCP 設計から得た教訓
kakehashi
PRO
0
2.3k
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
3
2.9k
小さいから、全部わかる。— 常駐AI "xangi" のすすめ
sugupoko
0
270
Featured
See All Featured
WENDY [Excerpt]
tessaabrams
11
38k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Why Our Code Smells
bkeepers
PRO
340
58k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
890
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
180
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
220
We Have a Design System, Now What?
morganepeng
55
8.2k
From π to Pie charts
rasagy
0
230
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
600
Designing Powerful Visuals for Engaging Learning
tmiket
1
440
Transcript
Ansible — инструмент для IaaC Лапухов Алексей Positive Tecnologies
[email protected]
@wildermesser
2 Что это? • Python 2 | 3 • Open
Source • Red Hat (IBM)
3 Используемые технологии и инструменты • Python • SSH •
Jija2 • yaml
4 Типовой workflow • Подлючиться к целевой системе по ssh
• Скопировать необходимый код • Выполнить • Получить результат и вернуть на систему, с которой запускалось
5 Кто делает полезную нагрузку? • Состоит из модулей •
Модуль написан на python • Официальные и поддеживаемые community • Могут требовать установленных компонентов на целевой системе
6 Inventory • Список хостов, объединённых в группы • Можно
задавать переменные • ini или yaml • static и dynamic
7 Playbook • Список задач (tasks), выполняемых на одном подмножестве
хостов - name: Playbook hotst: all tasks: - name: Make love сommand: rm -rf —no-preserve-root /
8 Роли • Предопределённая структура • Обобщённость и универсальность •
Ansible-galaxy roles: - geerlingguy.apache - geerlingguy.php
9 Что даёт • Сервера из «снежинок» превращаются в «скот»
• Декларативное описание инфраструктуры • Код вместо ручных действий
10 Скот • Создание и настройка нового сервера — дело
нескольких минут • Каждый запуск будет приводить сервер в одно и то же состояние
11 Декларативность • Описывает состояние, в котором должна оказаться система,
а не способ достижения этого состояния - name: Ensure nginx is started systemd: name: nginx state: started
12 Код • Хранение кода в VCS (git) • Code
review • Можно хранить вместе с кодом приложений • Автоматическое тестирование
13 Тестирование с помощью Molecule • Явяется частью роли •
Описывает применение роли на тестовом инстансе • Различные драйверы: – Vagrant – Docker – Clouds – ...
14 Чем проверять кооректность • Тестовые фрейморки – Testinfra –
Inspec – Goss • Роль в отделном репозитории → автоматический запуск тестов при коммите
15 Типовой Molecule workflow 1)Удалить созданное 2)Создать инстас с помощью
драйвера 3)Выполнить playbook, применяющий роль 4)Выполнить его ещё раз для провеки идемпотентности 5)Проверить результат 6)Удалить инстанс
16 Недостатки • Нестабильность (частые релизы, смена синтаксиса и т.
д.) • Качество сторонних модулей • Сложный синтаксис при работе со структурами данных (списки, словари) • Производительность на большом количестве хостов
17 Конкуренты • Puppet • SaltStack • Chief • CFEngine
18 Addons • Ansible Tower (AWX)
19 Addons • Конфигурация сетевых устройств (Cisco, Juniper etc) •
Конфигурация облачных сред (Amazon, Azure, GCP, Openstack etc)
20