1. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014
> what is ansible* ?
“Ansible is a configuration management,
application deployment and
IT Orchestration tool ”
"infrastructure as code"
synthesis of;
- configuration management, automation tools (Puppet, Chef, cfengine)
- deployment tools (Capistrano, Fabric)
- ad-hoc task execution tools (Func, pssh, etc)
2. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014
> me
@serkancapkan
nl.linkedin.com/in/serkancapkan
twitter.com/serkancapkan
system administrator @Liberty Global (NL)
ipara.com, sahibinden.com, TMMOB EMO, ITU
3. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 3/27
> summary
- why we need configuration management?
- what is ansible?
- howto: installation & configuration & runtime
- discussions
- questions
4. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 4/27
> why we need configuration management?
- system installation & provisioning
- system configuration
- service installation
- application deployment
- configuration management
- system based
- service based
- application based
5. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 5/27
> why we need configuration management?
- change management
- system based
- service based
- application based
- automate repetitive tasks
- configuration integrity
- documentation (system based)
6. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 6/27
- continuous deployment (ansible&jenkins)
- packaging software product (software | software+system)
- remote command execution
- auto scalability (system base, auto)
- be able to create same systems in case of emergency
- create different environments (dev, stating, load test)
> why we need configuration management?
7. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014
synthesis of;
- configuration management, automation tools (Puppet, Chef, cfengine)
- deployment tools (Capistrano, Fabric)
- ad-hoc task execution tools (Func, pssh, etc)
Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 7/27
> what is ansible* ?
“Ansible is a configuration management,
application deployment and
IT Orchestration tool ”
"infrastructure as code"
8. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014
- Michael DeHaan (@laserllama)
- python
- ssh authenticate
- ansible works, company
- free (speech & beer)
- feb 2012
- 643+ contributor
*Rocannon's World, Dispossessed
Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 8/27
> what is ansible* ?
9. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 9/27
- radically simple
- fast, low resource usage
- no requirement (except Python 2.4 or later)
- push based (pull also possible)
- agentless
- no specific port
- no new authentication integration
> what is ansible* ?
10. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 10/27
- basic tasks basic
- complicated projects possible, easy to implement
- playbook
- roles
- playbooks use yaml format ( like ad hoc )(:/)
- task executed in order
- highly scalable (+6000 parallel)
> what is ansible* ?
11. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 11/27
- integratable ( json output)
- robust module architecture
- part of core code, 1 module for 1 work
- write your own module in any language (json)
- ansible galaxy
- ansible tower (formerly ‘AWX’) (web ui) ( $ )
> what is ansible* ?
12. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 12/27
- installation
- source
- pip
- package manager
yum - EPEL
apt- PPA
> howto: installation & configuration & runtime
13. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 13/27
- installation
- ssh key authentication
- inventory
- go!
> howto: installation & configuration & runtime
14. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 14/27
- runtime (ad-hoc)
ansible [host] -m [module] -a [arguments]
> howto: installation & configuration & runtime
15. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 15/27
- runtime (ad-hoc)
> howto: installation & configuration & runtime
16. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 16/27
- runtime
> howto: installation & configuration & runtime
17. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 17/27
- runtime (ad-hoc)
> howto: installation & configuration & runtime
18. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 18/27
- runtime (ad-hoc)
> howto: installation & configuration & runtime
19. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 19/27
- runtime (playbook)
> howto: installation & configuration & runtime
20. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 20/27
- runtime (playbook)
> howto: installation & configuration & runtime
21. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 21/27
- runtime (playbook adhoc)
> howto: installation & configuration & runtime
22. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 22/27
- runtime (playbook adhoc)
> howto: installation & configuration & runtime
23. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 23/27
- runtime (playbook - role)
site.yml
> howto: installation & configuration & runtime
24. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 24/27
ansible-galaxy install username.rolename
> howto: ansible-galaxy
25. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 24/27
ansible-galaxy install username.rolename
> howto: ansible-galaxy
26. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014
- cloud
- amazon, openstack, digital ocean, netscaler, google compute engine
- [ec2 workshop]
ansible
Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014
> howto: installation & configuration & runtime
27. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 26/27
- system administration
- system development
- devops
> discussions
28. Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014Özgür Yazılım ve Linux Günleri / Istanbul / 29.03.2014 27/27
● http://www.ansible.com/blog/2013/12/08/the-origins-of-ansible
● http://www.ansible.com/blog/2013/11/29/ansibles-architecture-beyond-configuration-
management
● http://docs.ansible.com/
● http://highscalability.com/blog/2012/4/18/ansible-a-simple-model-driven-configuration-
management-and-c.html
> extra