SlideShare una empresa de Scribd logo
1 de 38
Descargar para leer sin conexión
AN OVERVIEW OFAN OVERVIEW OF
SPINNAKERSPINNAKER
Pierre Nicolas Durette
DevOps Toronto April 2019



pierrenick
pndurette
pndurette
 Hello!
 Pierre Nicolas Durette
 10 years DevOps-y & delivery
 Worked at big & small
 Travel, tech, touch screens
 Schnauzer
ABOUT MEABOUT ME
WHAT IS SPINNAKER?WHAT IS SPINNAKER?
 Spinnaker is an open source, multi-cloud continuous
delivery platform for releasing software changes with high
velocity and con dence.  – spinnaker.io
TIMELINETIMELINE
2010: Net ix creates Asgard
2012: Net ix open-sources Asgard
2014: Net ix creates Spinnaker
2015: Net ix open-sources Spinnaker (AWS & GCP)
2019: SUPPORTED PLATFORMS2019: SUPPORTED PLATFORMS
Amazon Web Services (EC2, ECS, Lambda), Azure
(VM), Cloud Foundry (e.g. IBM Cloud), DC/OS, Google
Cloud Platform (Compute, AppEngine), Kubernetes
(any), OpenStack, Oracle Cloud
TWO CORE FEATURE SETSTWO CORE FEATURE SETS
1. INFRASTRUCTURE1. INFRASTRUCTURE
(APPLICATION MANAGEMENT)(APPLICATION MANAGEMENT)
View all clouds, accounts & regions
for an application, at a glance
Contextual management replaces consoles
of each individual cloud
Infrastructure state is not stored,
it is read from each cloud
 OLD SCREENSHOTOLD SCREENSHOT
2. PIPELINES2. PIPELINES
(APPLICATION DEPLOYMENT)(APPLICATION DEPLOYMENT)
Create and manage delivery work ow pipelines
Provides CD, not CI; integrates with CI systems
Pipeline-as-code
Pipeline templates
 OLD SCREENSHOTOLD SCREENSHOT
INFRASTRUCTUREINFRASTRUCTURE
Source: https://www.spinnaker.io/concepts/
MULTI-CLOUD ABSTRACTIONSMULTI-CLOUD ABSTRACTIONS
nnaker AWS GCP Azure Kubernetes
ver
oup
Auto
Scaling
Group
Managed
Instance
Group
Virtual
Machine
Scale
Set
'Workload'
(Deployment,
StatefulSet,
DaemonSet,
etc.)
tance Instance VM VM Pod
MULTI-CLOUD ABSTRACTIONS (CONT.)MULTI-CLOUD ABSTRACTIONS (CONT.)
nnaker AWS GCP Azure Kubernetes
ad
ancer
Load
Balancer
Load
Balancer
Application
Gateway
Service
ewall Security
Group
Firewall Network
Security
Group
NetworkPol
gion Region Region Region Namespace
OPERATIONSOPERATIONS
Deploy • Destroy • Resize • Rollback • Terminate •
Terminate Instance and Shrink Server Group • Enable
& Disable Server Group • Create Load Balancer • Edit
Inbound Rules ..
(Not all cloud providers implement all operations)
CONVENTION OVER CONFIGURATIONCONVENTION OVER CONFIGURATION
Best Practices — Very opinionated, in a good way.
CLUSTERSCLUSTERS
An application in a speci c cloud account & region
naming: application[-stack-detail]
application — Application name
stack — User de ned logical group (e.g. prod, dev)
detail — An extra user de ned group
Examples:
"myapp-stg-spot in AWS/us-east-1"
"myapp-prod in Azure/US West"
Source: https://www.spinnaker.io/concepts/
PIPELINESPIPELINES
CONCEPTSCONCEPTS
TRIGGERS (EXAMPLES)TRIGGERS (EXAMPLES)
Jenkins, Travis, Wercker, GCP Cloud Build
Passes data/metadata that can be used
Docker Registry Change
Can also do regex match on tag
GCP Pub/Sub
Webhook
Another pipeline
GitHub, GitLab, BitBucket
CRON
STEPS (EXAMPLES)STEPS (EXAMPLES)
Jenkins
Can trigger jobs as a step and wait (or not) for
completion
Bakery
'Bake' machine images (using HashiCorp Packer)
'Render' Helm charts (for Kubernetes)
Deploy
Strategies e.g. Blue/Green, Rolling, Canary..
Any cloud operation (contextual to provider)
Disable cluster, Shrink cluster..
Manual Judgement
PIPELINE EXPRESSIONSPIPELINE EXPRESSIONS
An extremely powerful expression language (SpEL) that
can be used in almost any text eld, with auto-
completion.
FUNCTIONSFUNCTIONS
PROPERTIESPROPERTIES
EVERYTHING IS 'AS-CODE'EVERYTHING IS 'AS-CODE'
Pipelines can be designed in the UI
and saved as JSON.
The spin CLI tool provides pipeline
CRUD + Run operations
PIPELINE TEMPLATESPIPELINE TEMPLATES
Pipeline Template v2 schema:
1. Create a template in the UI
2. Download it with spin pipelines get
3. Replace the desired parts with variables using the
same Pipeline Expression Language
4. Submit with spin pipeline-templates save
Still a WIP (but very promising):
Spinnaker is gearing towards the data
templating language. See .
Very new (2019)
jsonnet
examples
THE PROJECTTHE PROJECT
GOVERNANCEGOVERNANCE
October 2018: Governance structure announced
March 2019: Spinnaker joins new Continuous
Delivery Foundation as founding project!
https://cd.foundation
INSTALLINGINSTALLING
Ubuntu VM 
Kubernetes (Helm Chart) 
spinnaker-playground 
Local lightweight install — by me!
https://github.com/pndurette/spinnaker-playground
THANK YOU!THANK YOU!
QUESTIONSQUESTIONS

APPENDIXAPPENDIX
COMMUNITY & TALKSCOMMUNITY & TALKS
Talks:
Community:
https://www.spinnaker.io
O'Reilly eBook
Spinnaker Summit 2018
Google Cloud Next '18
More!
Slack
Spinnaker Project Blog
GitHub
REFERENCEREFERENCE
: Spinnaker con guration CLI
: Application, Pipeline & Pipeline Template CLI
Halyard (hal)
spin
Pipeline Expression Language
RELEASESRELEASES
& ChangelogsVersions
Roadmap
MORE TOPICS TO EXPLORE:MORE TOPICS TO EXPLORE:
Image Bakery
Canary support
Chaos Engineering
Authentication & Authorization
Kubernetes Custom Resource De nitions (CRDs)
Custom Webhook Pipeline Stages
Jenkins integration w/ artifact support
Monitoring: Datadog, Prometheus, Stackdriver
Noti cations
User Data

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Openshift Container Platform
Openshift Container PlatformOpenshift Container Platform
Openshift Container Platform
 
Introduction to kubernetes
Introduction to kubernetesIntroduction to kubernetes
Introduction to kubernetes
 
CD using ArgoCD(KnolX).pdf
CD using ArgoCD(KnolX).pdfCD using ArgoCD(KnolX).pdf
CD using ArgoCD(KnolX).pdf
 
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
 
Platform Engineering
Platform EngineeringPlatform Engineering
Platform Engineering
 
Using Azure DevOps to continuously build, test, and deploy containerized appl...
Using Azure DevOps to continuously build, test, and deploy containerized appl...Using Azure DevOps to continuously build, test, and deploy containerized appl...
Using Azure DevOps to continuously build, test, and deploy containerized appl...
 
DevOps with Kubernetes
DevOps with KubernetesDevOps with Kubernetes
DevOps with Kubernetes
 
Azure DevOps in Action
Azure DevOps in ActionAzure DevOps in Action
Azure DevOps in Action
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
DevOps Best Practices
DevOps Best PracticesDevOps Best Practices
DevOps Best Practices
 
CI/CD on AWS
CI/CD on AWSCI/CD on AWS
CI/CD on AWS
 
Kubernetes CI/CD with Helm
Kubernetes CI/CD with HelmKubernetes CI/CD with Helm
Kubernetes CI/CD with Helm
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Deploy Application on Kubernetes
Deploy Application on KubernetesDeploy Application on Kubernetes
Deploy Application on Kubernetes
 
OpenShift 4 installation
OpenShift 4 installationOpenShift 4 installation
OpenShift 4 installation
 
Introduction to DevOps on AWS
Introduction to DevOps on AWSIntroduction to DevOps on AWS
Introduction to DevOps on AWS
 
Welcome to Azure Devops
Welcome to Azure DevopsWelcome to Azure Devops
Welcome to Azure Devops
 
Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17
 
Meetup 23 - 03 - Application Delivery on K8S with GitOps
Meetup 23 - 03 - Application Delivery on K8S with GitOpsMeetup 23 - 03 - Application Delivery on K8S with GitOps
Meetup 23 - 03 - Application Delivery on K8S with GitOps
 
Docker Birthday #3 - Intro to Docker Slides
Docker Birthday #3 - Intro to Docker SlidesDocker Birthday #3 - Intro to Docker Slides
Docker Birthday #3 - Intro to Docker Slides
 

Similar a An Overview of Spinnaker

Similar a An Overview of Spinnaker (20)

vBACD- July 2012 - Crash Course in Open Source Cloud Computing
vBACD- July 2012 - Crash Course in Open Source Cloud ComputingvBACD- July 2012 - Crash Course in Open Source Cloud Computing
vBACD- July 2012 - Crash Course in Open Source Cloud Computing
 
Kubernetes for Java Developers
Kubernetes for Java DevelopersKubernetes for Java Developers
Kubernetes for Java Developers
 
A DevOps guide to Kubernetes
A DevOps guide to KubernetesA DevOps guide to Kubernetes
A DevOps guide to Kubernetes
 
Kubernetes for the PHP developer
Kubernetes for the PHP developerKubernetes for the PHP developer
Kubernetes for the PHP developer
 
Kubernetes for java developers - Tutorial at Oracle Code One 2018
Kubernetes for java developers - Tutorial at Oracle Code One 2018Kubernetes for java developers - Tutorial at Oracle Code One 2018
Kubernetes for java developers - Tutorial at Oracle Code One 2018
 
Leveraging CI/CD to improve open stack operation
Leveraging CI/CD to improve open stack operationLeveraging CI/CD to improve open stack operation
Leveraging CI/CD to improve open stack operation
 
Docker Platform and Ecosystem Nov 2015
Docker Platform and Ecosystem Nov 2015Docker Platform and Ecosystem Nov 2015
Docker Platform and Ecosystem Nov 2015
 
Extending DevOps to Big Data Applications with Kubernetes
Extending DevOps to Big Data Applications with KubernetesExtending DevOps to Big Data Applications with Kubernetes
Extending DevOps to Big Data Applications with Kubernetes
 
Linux Foundation Collaboration Summit: Hitchhiker's Guide to the Cloud
Linux Foundation Collaboration Summit: Hitchhiker's Guide to the CloudLinux Foundation Collaboration Summit: Hitchhiker's Guide to the Cloud
Linux Foundation Collaboration Summit: Hitchhiker's Guide to the Cloud
 
(Open)Stacking Containers
(Open)Stacking Containers(Open)Stacking Containers
(Open)Stacking Containers
 
OpenStack for VMware Administrators
OpenStack for VMware AdministratorsOpenStack for VMware Administrators
OpenStack for VMware Administrators
 
Verizon k8-ignite-meetup
Verizon k8-ignite-meetupVerizon k8-ignite-meetup
Verizon k8-ignite-meetup
 
Introduction to Orchestration and DevOps with OpenStack
Introduction to Orchestration and DevOps with OpenStackIntroduction to Orchestration and DevOps with OpenStack
Introduction to Orchestration and DevOps with OpenStack
 
Sf k8-ignite-meetup
Sf k8-ignite-meetupSf k8-ignite-meetup
Sf k8-ignite-meetup
 
Get you Java application ready for Kubernetes !
Get you Java application ready for Kubernetes !Get you Java application ready for Kubernetes !
Get you Java application ready for Kubernetes !
 
vBACD - Crash Course in Open Source Cloud Computing - 2/28
vBACD - Crash Course in Open Source Cloud Computing - 2/28vBACD - Crash Course in Open Source Cloud Computing - 2/28
vBACD - Crash Course in Open Source Cloud Computing - 2/28
 
Cloud-native .NET Microservices mit Kubernetes
Cloud-native .NET Microservices mit KubernetesCloud-native .NET Microservices mit Kubernetes
Cloud-native .NET Microservices mit Kubernetes
 
Microservices architecture: practical aspects
Microservices architecture: practical aspectsMicroservices architecture: practical aspects
Microservices architecture: practical aspects
 
Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...
Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...
Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...
 
The path to a serverless-native era with Kubernetes
The path to a serverless-native era with KubernetesThe path to a serverless-native era with Kubernetes
The path to a serverless-native era with Kubernetes
 

Último

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Último (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

An Overview of Spinnaker