Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Ansible
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Sysadminka
March 21, 2019
Technology
76
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
78
Устройство 1С с точки зрения администратора — Александр Волокитин
sysadminkadesk
0
190
#Связь на километры и сотни мегабит - Игорь Лабер, General Telecom
sysadminkadesk
0
140
Artemy-Kapitula-Cinder-Insides.pdf
sysadminkadesk
0
41
Практика использования Helm
sysadminkadesk
0
91
Sysadminka и UWDC
sysadminkadesk
0
38
Миграция из Docker Swam в Kubernetes
sysadminkadesk
0
57
GitOps CD для Kubernetes
sysadminkadesk
0
150
Анонсируем Service IP из Kubernetes по BGP
sysadminkadesk
0
310
Other Decks in Technology
See All in Technology
[2026-09-30]ロックンロールは鳴り止まないっ - 信頼性かまってちゃん - 「データ駆動を投げ捨ててまで。」追いかける信頼性改善に向けた取り組みの話
tosite
0
200
Google Cloud Next Tokyo 26登壇時のスクリプト
recruitengineers
PRO
0
180
The seven pitfalls of AI (revised version)
ufried
0
250
個別開発で終わらせない。 現場の課題をプロダクトの強さに変える StockmarkのFDE
ktkrhr
0
580
DAMOS - The Smart Cruise Control for RAM
ennael
PRO
1
120
営業オントロジーの作り方と、エージェントからの辿り方 ── ナレッジワークの現場から
kworkdev
PRO
1
250
Lambda MicroVMsが分からなすぎたので使い所を1から考えてみた
tsukuboshi
2
350
LLM機能を自作して分かるSnowflake Cortex AIの強み
nayuts
0
270
形式手法を使って仕様をコーディングしよう
mikanichinose
0
170
AI 時代の Azure エンジニアリング ~ 私たちは何を磨き、何を任せるのか ~
chack411
1
420
BedrockとLambdaで作る リアルタイム進行型推理ゲーム
kawametho
0
180
ビジネスを止めない技術的負債の返済のための戦略とその手法 - 技術的負債と向き合う / Complexity and Simplicity
soudai
PRO
3
540
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
3.2k
Building Adaptive Systems
keathley
44
3.2k
Code Reviewing Like a Champion
maltzj
528
40k
KATA
mclloyd
PRO
35
16k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
66k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
260
How to Talk to Developers About Accessibility
jct
2
560
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.3k
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