Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

How we moved our environments to the cloud

39 views

Published on

Šibenik, 4 April 2019
http://windays.hr/
In this talk, you will hear about the DevOps journey in our company, from the initial brown-field all-manual state, to our current situation where we migrated (almost) everything to the cloud using automation in a few months. Not a migration but rebuilding the environment using Infrastructure-as-Code tools: Terraform, Powershell, Ansible, TFS/Azure DevOps. In equilibrium between an high-level view and useful practical tips, we will touch on what informed our decisions, in terms of priorities and technologies, some lessons learned, and how the legacy constraints helped or hindered.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

How we moved our environments to the cloud

  1. 1. How we moved our environments to the cloud
  2. 2. Session framing
  3. 3. Agenda Azure Pipelines
  4. 4. Green-field
  5. 5. Initial State Hosting DB LanguagesOS Tools
  6. 6. Issues Problems Rare and troublesome releases Incongruent environments Resistance to change ‘Don’t touch it’ mindset Lack of Scalability
  7. 7. Technical debt
  8. 8. © Lara Paulussen
  9. 9. Change
  10. 10. © Fr. Lawrence Lew,
  11. 11. Infrastructure Application stack Pipelines Azure Pipelines
  12. 12. Unique naming
  13. 13. Seclude
  14. 14. Regions gotchas
  15. 15. Central US Environments East US 2 West EU Central US East US 2 West EU C E Sandbox LegacySandbox U Q D I
  16. 16. Central US Environments East US 2 West EU Central US East US 2 West EU C E U Q D I
  17. 17. Control costs
  18. 18. Tips
  19. 19. Summary Cloud works Plan Design Control
  20. 20. Terraform DSL resource azurerm_virtual_machine vm_demo demovm northeurope tf-demo azurerm_network_interface.vm_demo.id Standard_B2s MicrosoftWindowsServer WindowsServerSemiAnnual Datacenter-Core-1803-smalldisk latest demovm-osdisk ReadWrite FromImage demovm-datadisk Empty 100 DEMOVM var.vm_admin_username var.vm_admin_password true false
  21. 21. How it works
  22. 22. Language Limits (HCL <0.12)
  23. 23. Critical choices
  24. 24. Summary Terraform is easy Don’t push too hard Treat as usual code
  25. 25. Desired State Configuration (DSC) Configuration MyBox { # Install the IIS role WindowsFeature IIS { Ensure = "Present" Name = "Web-Server" } # Install the ASP .NET 4.5 role WindowsFeature AspNet45 { Ensure = "Present" Name = "Web-Asp-Net45" } #... } 
  26. 26. Ansible --- - hosts: webservers vars: http_port: 80 max_clients: 200 remote_user: root tasks: - name: get latest version yum: name: httpd state: latest - name: write the config file template: src: /srv/httpd.j2 dest: /etc/httpd.conf notify: - restart apache - name: ensure running service: name: httpd state: started handlers: - name: restart apache service: name: httpd state: restarted
  27. 27. Working together  Alternatives
  28. 28. Summary This worked for us There are other ways Biggest effort Ready to host apps Gray area: pipeline deploy
  29. 29. Formerly known as Azure Pipelines
  30. 30. Deployment Groups Azure Pipelines
  31. 31. Configuration Values Azure Pipelines
  32. 32. Summary Source control Source control Source control Deployment groups Key Vault
  33. 33. Money Project approved on cost reduction Estimate an X% saving on operational expenses
  34. 34. Side effects
  35. 35. Version control migration Azure Repos
  36. 36. and the road goes on…
  37. 37. Bio in pictures giulio.dev@casavian.eu @giulio_vian https://www.slideshare.net/giuliov http://blog.casavian.eu/ https://tfsaggregator.github.io Hardware spec: 1KB RAM (upg. 16KB) 4KB ROM First computer Companies Communities
  38. 38. To know more https://www.amazon.com/Continuous- Delivery/dp/0321601912/ https://www.amazon.com/DevOps-Handbook-World- Class-Reliability-Organizations/dp/1942788002/
  39. 39. To know more (cont’d) https://www.amazon.co.uk/gp/product/1491977086/ https://leanpub.com/the-dsc-book 1491977086/
  40. 40. Links https://continuousdelivery.com/ https://www.terraform.io/ https://github.com/giuliov https://azure.microsoft.com/en-us/services/key-vault/ https://docs.microsoft.com/en-us/azure/best-practices-availability-paired-regions https://martinfowler.com/articles/evodb.html http://www.powershellgallery.com/ https://docs.microsoft.com/en-us/powershell/dsc/overview https://itrevolution.com/devops-handbook-debunking-devops-myths/ https://docs.ansible.com/
  41. 41. The End

×