AWS - Modern Applications Web Day
Jukka Forsgren, Cloud Architect
25-10-2018
About myself
Software deployments in legacy IT
- Slow
- Fragile
- Manual
- Bureaucratic
Benefits of a CI/CD pipeline
- Automated
- Increased velocity
- Better developer experience
- More productive also for Ops team
Customer project - winter 2018
- Replace old deployment mechanism
- Use an established product/project
- Provide more visibility and control to developers
- Must support all cloud providers
- Must support ASG based deployments
- Must support containers
Spinnaker
- Netflix, Google, Microsoft, Pivotal
- Open-sourced in 2015
- Microservices implementation
- Part of CNCF landscape
Spinnaker - Supported providers
- Google App Engine
- AWS
- Azure
- DC/OS
- Docker v2 registry
- Google Compute Engine
- Kubernetes
- OpenStack
Spinnaker - Components
- deck (browser based UI)
- orca (internal orchestration engine)
- igor (integration with Jenkins, Travis CI, etc.)
- gate (API gateway)
- echo (eventing bus for notifications)
- rosco (image bakery)
- fiat (authentication service)
- front50 (persist all Spinnaker metadata)
- kayenta (canary deployments)
https://screenshots.firefox.com/1IH
Sm9qaD9gGcSVB/www.spinnaker.i
o
https://screenshots.firefox.com/1IH
Sm9qaD9gGcSVB/www.spinnaker.i
o
Spinnaker - Concepts
- Account
- Application
- Cluster
- Server group
- Pipeline
- Stage
- Trigger
Spinnaker - Deployment types
- Highlander
- Red/black
- Custom
- Rolling red/black (experimental)
- Canary (with Kayenta)
Spinnaker - Templated pipelines
- YAML
- Jinja2
- roer CLI tool
- Spinnaker API (gate)
Spinnaker - Installation options
- Halyard
- Helm Chart
- AWS Quickstart
Spinnaker advantages
- Tailor made for multi-cloud CD
- No need for scripting or plugins
- Nice UI into cloud accounts and deployments
- Tightly integrated with packer
What’s wrong with Jenkins?
- Made before cloud became a thing
- Too many plugins
- Not designed for containers
Lessons learned
- Have OSS mindset
- Allocate enough time and resources
- Read also armory.io’s documentation
Thank you

Modern Applications Web Day | Continuous Delivery to Amazon EKS with Spinnaker

  • 1.
    AWS - ModernApplications Web Day Jukka Forsgren, Cloud Architect 25-10-2018
  • 2.
  • 3.
    Software deployments inlegacy IT - Slow - Fragile - Manual - Bureaucratic
  • 4.
    Benefits of aCI/CD pipeline - Automated - Increased velocity - Better developer experience - More productive also for Ops team
  • 5.
    Customer project -winter 2018 - Replace old deployment mechanism - Use an established product/project - Provide more visibility and control to developers - Must support all cloud providers - Must support ASG based deployments - Must support containers
  • 7.
    Spinnaker - Netflix, Google,Microsoft, Pivotal - Open-sourced in 2015 - Microservices implementation - Part of CNCF landscape
  • 9.
    Spinnaker - Supportedproviders - Google App Engine - AWS - Azure - DC/OS - Docker v2 registry - Google Compute Engine - Kubernetes - OpenStack
  • 10.
    Spinnaker - Components -deck (browser based UI) - orca (internal orchestration engine) - igor (integration with Jenkins, Travis CI, etc.) - gate (API gateway) - echo (eventing bus for notifications) - rosco (image bakery) - fiat (authentication service) - front50 (persist all Spinnaker metadata) - kayenta (canary deployments) https://screenshots.firefox.com/1IH Sm9qaD9gGcSVB/www.spinnaker.i o
  • 11.
  • 12.
    Spinnaker - Concepts -Account - Application - Cluster - Server group - Pipeline - Stage - Trigger
  • 14.
    Spinnaker - Deploymenttypes - Highlander - Red/black - Custom - Rolling red/black (experimental) - Canary (with Kayenta)
  • 15.
    Spinnaker - Templatedpipelines - YAML - Jinja2 - roer CLI tool - Spinnaker API (gate)
  • 17.
    Spinnaker - Installationoptions - Halyard - Helm Chart - AWS Quickstart
  • 18.
    Spinnaker advantages - Tailormade for multi-cloud CD - No need for scripting or plugins - Nice UI into cloud accounts and deployments - Tightly integrated with packer
  • 19.
    What’s wrong withJenkins? - Made before cloud became a thing - Too many plugins - Not designed for containers
  • 20.
    Lessons learned - HaveOSS mindset - Allocate enough time and resources - Read also armory.io’s documentation
  • 21.