zalando s open source infrastructure on aws with docker
play

Zalandos Open Source Infrastructure on AWS with Docker - PowerPoint PPT Presentation

Zalandos Open Source Infrastructure on AWS with Docker bernd.herding@zalando.de GOTO Con Berlin 2015, 2015-12-04 @01k One of Europes largest online Fashion Retailers 15 countries 3 fulfillment centers 17+ million active customers 2.2+


  1. Zalando’s Open Source Infrastructure on AWS with Docker bernd.herding@zalando.de GOTO Con Berlin 2015, 2015-12-04 @01k

  2. One of Europe’s largest online Fashion Retailers 15 countries 3 fulfillment centers 17+ million active customers 2.2+ billion € revenue 2014 135+ million visits per month 10.000+ employees in DE

  3. A BRIEF HISTORY ON ZALANDO TECHNOLOGY

  4. Deployment; ancient deploy request servers Platform Platform Team

  5. Deployment; recent 70+ Dev Teams deploy request servers request storage Platform Platform Team

  6. Deployment; the Truth 70+ Dev Teams deploy request servers request storage Platform Platform Team

  7. RADICAL AGILITY AUTONOMY MASTERY PURPOSE TRUST

  8. Compliance Innovation

  9. STUPS To Unleash Penguin Swarms

  10. A Platform on Top of Amazon Web Services DOCKER SSH AUDIT FULL AWS DEPLOY ACCESS REPORTS ACCESS STUPS AWS

  11. Isolated AWS Accounts & OAUTH 2.0 & Security Public Internet *.a.example.org LB Data Center *.b.example.org Team A ELB Team B ELB AWS

  12. DEPLOYMENT

  13. Immutable Stacks myapp.example.org 100% ELB myapp-v1 EC2 + EC2 + EC2 + Docker Docker Docker

  14. Immutable Stacks myapp.example.org $ senza traffic myapp v2 10 90% 10% ELB myapp-v1 ELB myapp-v2 EC2 + EC2 + EC2 + EC2 + EC2 + Docker Docker Docker Docker Docker

  15. Immutable Stacks myapp.example.org $ senza traffic myapp v2 100 0% 100% ELB myapp-v1 ELB myapp-v2 EC2 + EC2 + EC2 + EC2 + EC2 + Docker Docker Docker Docker Docker

  16. Deployment with Senza Pier One docker push Senza CLI docker pull AWS Taupage

  17. SENZA: DEFINITION YAML SenzaInfo : StackName : hello-world Parameters : - ImageVersion : Description : "Docker image version of Hello World." SenzaComponents : - Configuration : Type : Senza::StupsAutoConfiguration # auto-detect network setup - AppServer : # will create a launch configuration and ASG with scaling triggers Type : Senza::TaupageAutoScalingGroup InstanceType : t2.micro SecurityGroups : [app-hello-world] ElasticLoadBalancer : AppLoadBalancer TaupageConfig : runtime : Docker source : "stups/hello-world:{{Arguments.ImageVersion}}" ports : 8080: 8080

  18. The STUPS.io Stack Immutable ✓ … Image Immutable AMI ✓ Docker Runtime Ubuntu ✓ ✓ Application Managed SSH access OpenJDK ✓ ✓ Zalando CA Audit Logging ✓ ✓ Isolated certificate Log Collection ✓ ✓ Docker Container Monitoring Metrics team scm-source ✓ ✓ KMS encrypted vars accounts ✓ Created by Reviewed security ✓ ✓ Taupage AMI senza additions through Cloud AWS EC2 Formation

  19. LOGGING

  20. REMOTE ACCESS

  21. Remote SSH Access ● Mostly for Debugging ● Audit Logging ● più granting Access

  22. MONITORING

  23. ZMON - our monitoring Solution TODO: Screenshot

  24. ZMON Appliance ZMON KairosDB Controller *.foo.example.org *.bar.example.org Team “Foo” Team “Bar” ELB ELB ZMON ZMON EC2 EC2 EC2 Instance EC2 Appliance Appliance Instance EC2 Instance EC2 Instance Instance Instance

  25. SECURITY

  26. DISTRIBUTION OF CREDENTIALS OVER S3 BUCKETS WEB UI rotate OAuth passwords Provider Mint Rotator save request passwords OAuth2 token AWS S3 read password Taupage

  27. STUPS in a Nutshell ➊ Isolated AWS account per Team ➋ Deployment with Docker STUPS ➌ Managed SSH Access ➍ REST/OAuth 2.0 mandatory ➎ Traceability of changes

  28. What you might find valuable ● Taupage AMI with Docker runtime ● Senza to manage Cloud Formation ● Pier One Docker Registry with S3 http://docs.stups.io/en/latest/user-guide/standalone-deployment.html

  29. Questions? STUPS Homepage stups.io GitHub Repositories github.com/zalando-stups tech-stups-pr@zalando.de

Recommend


More recommend