OpenSouthCode 2016 - Accenture DevOps Platform 2016-05-07

872 views

Published on

Slides from my presentation on OpenSouthCode 2016 conference (Malaga, 7th May 2016) about the open source Accenture DevOps Platform. Hackers Welcomed!

Published in: Software
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
872
On SlideShare
0
From Embeds
0
Number of Embeds
39
Actions
Shares
0
Downloads
38
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

OpenSouthCode 2016 - Accenture DevOps Platform 2016-05-07

  1. 1. Accenture DevOps Platform Open Source Continuous Delivery Platform 7th May 2016
  2. 2. 2 Who Am I? Copyright © 2016 Accenture All rights reserved. Jorge Hidalgo @_deors Software Engineering Manager - Senior Technology Architect Accenture Delivery Centre in Spain, Malaga Global Java Professional Community Co-Lead in Accenture Custom Distributed, Architecture & DevOps Lead in Spain DC Father of two children, husband, whistle player, video gamer, sci-fi ‘junkie’, Star Wars ‘addict’, Lego ‘padawan’, Raspberry Pi fan... https://deors.wordpress.com
  3. 3. 3 What is DevOps? DevOps is a movement dedicated to promote collaboration, eliminating friction between Development and Operations  One Common Goal Copyright © 2016 Accenture All rights reserved. Development Operations DevOps Dev wants change Ops wants stability Everyone wants... Stable and operable software Consistent and optimised release process Conformance to infrastructure and platform standards Low risk, high throughput of change Confident code and software integrity Highly available and predictable environments
  4. 4. 4 DevOps Principles Copyright © 2016 Accenture All rights reserved. Solid configuration management practices Continuous delivery of business value (Lean IT) Automated tests, early and often Production-like environments Pipelines Continuous delivery orchestration Fine grained architecture Microservices Collaboration and empathy No silos or blame-game Zero-touch build & deploy Elastic supply of resources Cloud Robust design & resiliency Gradual degradation Opportunistic experimentation Continuous improvement
  5. 5. modular 5 What is ADOP? Copyright © 2016 Accenture All rights reserved. Accenture DevOps Platform best of breedcloud-based opinionated open source HACKERS WELCOMED!
  6. 6. 6 ADOP Internals Copyright © 2016 Accenture All rights reserved. ADOP fifth generation – based on Docker containers Core tools encapsulated as loosely coupled Docker images Independent release cycles, anti-fragile design Modular structure and “cartridge” concept Cartridges extend functionality in the core
  7. 7. 7 Building Blocks – The Usual Suspects Copyright © 2016 Accenture All rights reserved. Jenkins continuous integration / delivery server Gerrit git repo / code review SonarQube code inspection / quality dashboard Selenium web browser testing Nexus binary artefact repo NGINX web / proxy server OpenLDAP directory server ELK log monitoring Sensu - Uchiwa infra/app monitoring
  8. 8. 8 Building Blocks – The Usual Suspects Copyright © 2016 Accenture All rights reserved. Jenkins continuous integration / delivery server Gerrit git repo / code review SonarQube code inspection / quality dashboard Selenium web browser testing Nexus binary artefact repo NGINX web / proxy server OpenLDAP directory server ELK log monitoring Sensu - Uchiwa infra/app monitoring
  9. 9. 9 Where can ADOP run? Copyright © 2016 Accenture All rights reserved. Anywhere where Docker runs Local VM (boot2docker and Oracle VirtualBox) Amazon Web Services EC2 with Linux host Microsoft Azure IaaS with Linux host Microsoft Hyper-V hypervisor with Linux host VMware hypervisor with Linux host
  10. 10. 10 Standing up the Platform Copyright © 2016 Accenture All rights reserved. Go to https://github.com/Accenture/adop-docker-compose Clone the repository to a local directory of your choice ...or download a Zip ...or fork it to your personal GitHub account Fork it if you plan to contribute with enhancements or fixes! 
  11. 11. 11 Standing up the Platform Copyright © 2016 Accenture All rights reserved. There is a README file... TL;DR Create a VPC in Amazon Web Services account Create a CLI pair of keys in IAM Execute command: ./quickstart.sh -t aws -m my-adop -c vpc-xxxxxxxx Keep calm and watch the logs
  12. 12. 12 Standing up the Platform Copyright © 2016 Accenture All rights reserved. For local installation Oracle VirtualBox is needed It comes with Docker Toolbox if you don’t have it already Execute command: ./quickstart.sh -t local -m my-adop Strongly recommended to alter the scripts and use 8 GB of RAM
  13. 13. 13 What Happens Backstage? Copyright © 2016 Accenture All rights reserved. Docker machine (a host) is created if it does not exist Up to date images are pulled from Docker Hub Containers are created and executed Jenkins is initialised with example pipelines and management jobs Certificates are exchanged between Jenkins master and slave
  14. 14. 14 What Happens Backstage? Copyright © 2016 Accenture All rights reserved. Jenkins comes pre-loaded with just one job: Load_Platform When it runs, pulls job DSLs from: https://github.com/Accenture/adop-platform-management The location above is overridable Jobs are stored in Git repo in Gerrit You can update the platform to the latest and greatest without destroying the machine or losing data!
  15. 15. 15 What Happens Backstage? Copyright © 2016 Accenture All rights reserved. The Platform Management jobs do the following: Loads the cartridge list (link) Configures Gerrit (link) Generates an example pipeline (Spring Pet Clinic by default) There is a job available to generate multiple workspaces All generated workspaces and jobs are designed for multitenancy
  16. 16. 16 What Comes with the Example Pipeline Copyright © 2016 Accenture All rights reserved. Build and packaging automation Test automation: unit, integration (UI/BDD), stress, security Code inspection Deployment automation Environment provisioning automation Dev. Source Control Code Review Build Code Quality Deploy Testing A-B Test
  17. 17. 17 Is That All? Copyright © 2016 Accenture All rights reserved. Yes! Very easy to stand up Pre-loaded with exemplar configuration Update without impacting state Update individual images or the whole platform Update Jenkins platform management or individual job templates
  18. 18. 18 Demo Time Copyright © 2016 Accenture All rights reserved.
  19. 19. 19 THANK YOU! Copyright © 2016 Accenture All rights reserved. https://github.com/Accenture/adop-docker-compose

×