cloud native applications - pixel group · docker warum docker? i java: ... § z.b. mit jenkins,...
TRANSCRIPT
IT-Development & Consulting
it-people l it-solutions
Markus Albrecht, 9. März 2017
Cloud Native Applications
© 2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 3
Docker
Warum Docker? I Java: „Write once, run everywhere“ I Git: „Tiny footprint with lightning fast performance“ I è Docker: „Build, Ship, Run“ I „Infrastruktur-Lego“ I Infrastructure as code I DevOps
© 2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 4
Docker
Anzahl der Container wächst schnell... I Traefik: reverse proxy & SSL I cAdvisor: Monitoring I WatchTower: Deployment I ...
Management mehrerer Container I Docker compose I Chef I Puppet I Ansible I Consul
Management GUIs I Docker Kitematic I Rancher I Portainer.io I ...
© 2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 5
Orchestration
Management vieler Container I Verteilte Systeme I Loadbalancing I Autoscaling I Monitoring
Tools I Kubernetes I Apache Mesos I Docker Swarm
© 2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 6
Docker
Anwendungsszenarien für Docker I Für die fertige Applikation mit Dev-, Staging- und Prod-Umgebungen I Continuous Integration (CI) Pipeline
§ Für Build & Integrationstest § z.B. mit Jenkins, Travis CI, circleci, AWS CodeBuild
I Lokale Builds § Cloud IDE: Eclipse CHE § „Works on my machine → Works on your machine“
© 2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 8
Cloud-Dienste
*aaS I SaaS (Software as a Service) I IaaS (Infrastructure as a Service) I CaaS (Container as a Service) I PaaS (Platform as a Service) I FaaS (Function as a Service) auch „Serverless“
© 2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 9
Cloud-Dienste
Anbieter I Amazon Web Services:
§ EC2 (IaaS), ECS (CaaS), AWS Elastic Beanstalk (PaaS), Lambda (FaaS)
I Microsoft Azure I Google Cloud Platform I Red Hat OpenShift I CloudFoundry I DigitalOcean I Telekom Cloud I ...
I Viele Alternativen, siehe auch: https://paasfinder.org
I Als private Cloud z.B. mit OpenStack
© 2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 10
The 12 Factor App
https://12factor.net/ I I. Codebase
§ One codebase tracked in revision control, many deploys
I II. Dependencies § Explicitly declare and isolate dependencies
I III. Config § Store config in the environment
I IV. Backing services § Treat backing services as attached resources
I V. Build, release, run § Strictly separate build and run stages
I VI. Processes § Execute the app as one or more stateless processes
© 2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 11
The 12 Factor App
I VII. Port binding § Export services via port binding
I VIII. Concurrency § Scale out via the process model
I IX. Disposability § Maximize robustness with fast startup and graceful shutdown
I X. Dev/prod parity § Keep development, staging, and production as similar as possible
I XI. Logs § Treat logs as event streams
I XII. Admin processes § Run admin/management tasks as one-off processes
© 2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 12
Microservices
I "Microservice Architecture" is a particular way of designing software applications as suites of independently deployable services. (Martin Fowler)
I Domain Driven Design I Polyglot Persistence I In Java: gute Unterstützung mit Spring Boot, Spring Cloud
Zentrale PIXEL GmbH Lochhamer Schlag 17 D-82166 Gräfelfing Tel.: +49/89/8 98 68-100 Fax: +49/89/8 98 68-111 [email protected] www.pixel.de Niederlassung PIXEL GmbH Im Gewerbepark C15 D-93059 Regensburg © 2017 PIXEL GmbH Ein Unternehmen der PIXEL Group