Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building Environments with Ansible

Building Environments with Ansible

3718792073b1fd9aef81fc23a35bb825?s=128

Jakub Jarosz

November 30, 2017
Tweet

Transcript

  1. Building Environments with Ansible Tech Talk November 2017 - Jakub

    Jarosz
  2. configuration management • Pull vs Push

  3. pull vs push Master VM 1 (Slave) VM 2 (Slave)

  4. pull Master VM 1 (Slave / Agent) VM 2 (Slave

    / Agent)
  5. push Config VM VM 1 VM 2

  6. configuration drift Master VM 1 (Slave) VM 2 (Slave)

  7. infrastructure erosion OS & application upgrades kernel patches software updates

    (patches, fix security issues, etc.)
  8. automation fear

  9. automation fear

  10. configuration management • configuration drift • snowflake server • fragile

    infrastructure • erosion • automation fear!
  11. infrastructure as code • Systems can be easily reproduced

  12. infrastructure as code • Systems can be easily reproduced •

    Systems are disposable
  13. infrastructure as code • Systems can be easily reproduced •

    Systems are disposable • Systems are consistent
  14. infrastructure as code • Systems can be easily reproduced •

    Systems are disposable • Systems are consistent • Processes are repeatable
  15. infrastructure as code

  16. templates

  17. templates

  18. templates

  19. templates

  20. demo • Building Machine Templates with

  21. packer

  22. packer

  23. packer

  24. packer

  25. packer

  26. ansible demo • Provisioning Machines with

  27. ansible demo workstation server1 parallel

  28. vagrant ansible provisioner

  29. ansible demo • Copy / upload files • Remote commands

  30. ansible demo ad-hoc commands (module copy, shell) workstation rpm repos

    server
  31. ansible demo ad-hoc commands (module copy, shell)

  32. ansible galaxy • Roles & Playbooks

  33. ansible galaxy workstation CI server

  34. ansible galaxy workstation CI server

  35. ansible galaxy

  36. ansible galaxy

  37. ansible playbook

  38. role pattern “package -> config -> service”

  39. role pattern “package -> config -> service”

  40. role pattern “package -> config -> service”

  41. role pattern “package -> config -> service”

  42. demo • Provisioning Machines with

  43. jenkins & ansible

  44. infrastructure as code • Procedural • Declarative • Idempotency

  45. resources • http://bit.ly/SnowflakeServer • http://bit.ly/PhoenixServerExample

  46. Thank You! @qba73