Nico Meisenzahl gives a presentation about automating development and operations processes. He discusses automating infrastructure provisioning, configurations, orchestration, application delivery, and security using tools like Packer, Terraform, and Ansible. Nico also talks about implementing continuous integration/delivery pipelines and treating infrastructure as code. The goal is to avoid manual work and enable flexible collaboration across teams through cultural changes like DevOps.
7. Let’s talk about DevOps...
• a software engineering culture and practice that aims at unifying
software development (Dev) and software operation (Ops).
• not just a set of fancy tools or a temporary project!
• do not manually do anything twice → automation!
• on-going
• rethink everything
• cultural change!
7
8. Cultural change
• agile, flexible and efficient collaboration and communication across
teams
– Business, Produkt Management, Development, Security, QA, Operation
– no silos, “shift left”
• thinking like in a production line (build pipeline)
– automation, automation, automation!
– smooth processing, no accumulation of work, small batch size
– reduce work in process
8
9. Infrastructure-as-Code
• treat your infrastructure as code
– describe it in configuration files
– store it in a Version Control System
• Infrastructure can be
– easily provisioned
– repeatable provisioned
• build immutable infrastructure
9
10. Immutable infrastructure
• replace instead of update
• only possible with automation
• issues with mutable infrastructure
– “Configuration Drift”
– “Slowflake Servers”
• a persistent data layer is needed
10
11. Pipelines & CI/CD
• Automate your process by creating build and deployment pipelines
• Continuous Integration
– every commit runs your pipeline
– builds your infrastructure/application
– tests your infrastructure/application
• Continuous Delivery
– runs after a successful CI run
• on request/manually
• commit on a specific branch
• git tag
11
12. Packer - Templating
• can be used to build any kind of templates
– Virtual Machines
– Docker Images
– ...
• speaking of Virtual Machines
– vSphere
– HyperV
– VirtualBox
– ...
• more details: https://packer.io
12
14. Terraform - Provisioning Infrastructure
• can be used to provision and manage the whole infrastructures
• vSphere
– manage the vSphere Cluster
– manage Network, Storage, …
– manage and deploy Virtual Machines
• AWS, Azure, Kubernetes, ...
– create and manage any resource and service
• Network, Storage, DNS, Monitoring, …
– register new resources in backend services
• more details: https://terraform.io
14
16. Ansible - Configuration Management
• you can manage everything with it
• Immutable
– as part of Packer/Terraform to configure virtual machines or templates
• Mutable
– configure/update persistent data layer
• more details: https://www.ansible.com
16