SlideShare a Scribd company logo
* as Code
Árni Birgisson
Infrastructure Engineer @arnibirgisson
What is QuizUp?
What is QuizUp?
• The biggest trivia game in the world!
• Record setting 1M in first week
• 1000+ curated topics in 6 languages
• MyQuizUp topics
• Millions of questions
QuizUp
Infrastructure
• QuizUp-Admin
• Codebase python
• Created AMI’s along
with ASG, ELB AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
{ASG
ELB
Datastores
• Multiple services
• AMI + ASG per service
• ELB for service-to-
service
AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
{ASG
ELB
AMI #2
[Java App]
ELB
AMI #2
[Java App]
AMI #2
[Java App]
Datastores
• Increasing number of services
• SOA / Micro Service architecture
• Routers (nginx)
• ZooKeeper
• ZooRunner AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
AMI#1
[Python App]
ASG
Routers
AMI #2
[Java App]
AMI #2
[Java App]
AMI #2
[Java App]
Datastores
RoutersRoutersRouters
AMI #2
[Java App]
{ AMI #2
[Java App]
AMI #3
[Java App]
• Docker
• Python, Node, Go, Java, Scala,
C++
• More generic AMIs
AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
AMI
[Docker App]
ASG
Routers
AMI #2
[Java App]
AMI #2
[Java App]
AMI #2
[Docker App]
Datastores
RoutersRoutersRouters
AMI #2
[Java App]
{ AMI #2
[Java App]
AMI #3
[Docker App]
• ~50 different services
• Mostly JVM
• All services run in docker
• Single AMI
• Datastores too* AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
AMI
[Python App]
Single AMI
[App]
[Dependancies]
ASG
Routers
AMI #2
[Java App]
AMI #2
[Java App]
Single AMI
[App]
[Dependancies]
Datastores
RoutersRoutersRouters
AMI #2
[Java App]
{
AMI #2
[Java App]
Single AMI
[App]
[Dependancies]
… x 50
Why IaC?
Why IaC?
• EC2 Classic - VPC
• QuizUp-Admin outdated
• Increasing complexity
• Iteration speed
• Clean setup, not a VPC version of the old
stuff.
Experiments
Experiments
• CloudFormation, Troposphere, Terraform
• VPC with one service
Experiments
• VPC
• Subnets
• Routing Table
• Auto-Scale Group
• Launch Configuration
• Security Group (+ rules)
• Support for variables
Experiments
• Decided to use Terraform
• Plan / Apply (preview changes)
• Why is that important?
Infrastructure as Code
What’s Included
• Repository
• Terraform
• CI
• Module for a Service
• Modules for DynamoDB, ELBs, etc.
deploy
staging
iterate
Test
deploy
production
PR/Revie
w
merge
CI JOB checks syntax and
outputs plan
Branch with
proposed change
Iteration
Single AMI
• Can become any service
• Packer + Puppet
• QuizUp Docker Manager
• Logging & Metrics
Single AMI
Quizup Docker Manager
statsd log shipper
Instance metadata ZooKeeper
application dependancy dependancy
Docker registry
Configuration as Code
Configuration
• Servers fetch config from ZooKeeper
• ZooKeeper manually updated
• Can we use a similar flow?
Yes!
• In house git repository
• git/filesystem to ZooKeeper sync tool
• Jenkins CI
• Configuration through same workflow
Branches, PR
What have we gained?
What have we gained?
• Production infrastructure changes worry-
free non-events
• Code = Documentation
• Peer reviews, PRs, Comments
• Disaster recovery
• History (+ reverting!)
What have we gained?
• Anyone can propose infrastructure changes
• Faster and more consistent changes
• Staging is a small copy of production
What have we gained?
Infrastructure as Code
helps maintain a devops culture
by using the same workflow
to modify applications, infrastructure and
configuration
What’s not great?
State
• State file must be kept safe!
• Hard to “inject” resources into state
• (Currently) no way to create Terraform
description of current resources
Speed
• Must choose between:
• Apply everything always (slower)
Infrastructure = Code
• Apply in parts (speedy)
Requires plumbing. Can diverge.
No sidelining
• No manual changes
• They are reset during next apply
• Pro or Con ?
Thank You

More Related Content

What's hot

DevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryDevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software Delivery
Amazon Web Services
 
Strategic Approaches to AWS Enterprise Application Migration
Strategic Approaches to AWS Enterprise Application MigrationStrategic Approaches to AWS Enterprise Application Migration
Strategic Approaches to AWS Enterprise Application Migration
Amazon Web Services
 
Automating Compliance for Financial Institutions - AWS Summit SG 2017
Automating Compliance for Financial Institutions - AWS Summit SG 2017Automating Compliance for Financial Institutions - AWS Summit SG 2017
Automating Compliance for Financial Institutions - AWS Summit SG 2017
Amazon Web Services
 
Simplestream
SimplestreamSimplestream
Simplestream
Amazon Web Services
 
Serverless beyond AWS Lambda
Serverless beyond AWS LambdaServerless beyond AWS Lambda
Serverless beyond AWS Lambda
Ben Kehoe
 
Using Security To Build With Confidence in AWS – Justin Foster, Director of P...
Using Security To Build With Confidence in AWS – Justin Foster, Director of P...Using Security To Build With Confidence in AWS – Justin Foster, Director of P...
Using Security To Build With Confidence in AWS – Justin Foster, Director of P...
Amazon Web Services
 
AWS re:Invent 2016: Chalk Talk: Applying Security-by-Design to Drive Complian...
AWS re:Invent 2016: Chalk Talk: Applying Security-by-Design to Drive Complian...AWS re:Invent 2016: Chalk Talk: Applying Security-by-Design to Drive Complian...
AWS re:Invent 2016: Chalk Talk: Applying Security-by-Design to Drive Complian...
Amazon Web Services
 
Introduction to Serverless on AWS
Introduction to Serverless on AWSIntroduction to Serverless on AWS
Introduction to Serverless on AWS
Amazon Web Services
 
AWS DevOps Introduction
AWS DevOps Introduction AWS DevOps Introduction
AWS DevOps Introduction
Varun Manik
 
Using AWS Lambda for Infrastructure Automation and Beyond
Using AWS Lambda for Infrastructure Automation and BeyondUsing AWS Lambda for Infrastructure Automation and Beyond
Using AWS Lambda for Infrastructure Automation and Beyond
SoftServe
 
Rapid Prototyping for Big Data with AWS
Rapid Prototyping for Big Data with AWS Rapid Prototyping for Big Data with AWS
Rapid Prototyping for Big Data with AWS
SoftServe
 
Key Steps for Setting up your AWS Journey for Success - Business
Key Steps for Setting up your AWS Journey for Success - BusinessKey Steps for Setting up your AWS Journey for Success - Business
Key Steps for Setting up your AWS Journey for Success - Business
Amazon Web Services
 
Visibility and Control in the Cloud: How to Get your Boss Comfortable with AW...
Visibility and Control in the Cloud: How to Get your Boss Comfortable with AW...Visibility and Control in the Cloud: How to Get your Boss Comfortable with AW...
Visibility and Control in the Cloud: How to Get your Boss Comfortable with AW...
Amazon Web Services
 
The Hitchhiker’s Guide to Hybrid Connectivity
The Hitchhiker’s Guide to Hybrid ConnectivityThe Hitchhiker’s Guide to Hybrid Connectivity
The Hitchhiker’s Guide to Hybrid Connectivity
BizTalk360
 
Meetup#7: AWS LightSail - The Simplicity of VPS - The Power of AWS
Meetup#7: AWS LightSail - The Simplicity of VPS - The Power of AWSMeetup#7: AWS LightSail - The Simplicity of VPS - The Power of AWS
Meetup#7: AWS LightSail - The Simplicity of VPS - The Power of AWS
AWS Vietnam Community
 
Enterprise Serverless Adoption. An Experience Report
Enterprise Serverless Adoption. An Experience ReportEnterprise Serverless Adoption. An Experience Report
Enterprise Serverless Adoption. An Experience Report
SheenBrisals
 
BBC
BBCBBC
Compute Without Servers – Building Applications with AWS Lambda - Technical 301
Compute Without Servers – Building Applications with AWS Lambda - Technical 301Compute Without Servers – Building Applications with AWS Lambda - Technical 301
Compute Without Servers – Building Applications with AWS Lambda - Technical 301
Amazon Web Services
 
Husqvarna Group
Husqvarna GroupHusqvarna Group
Husqvarna Group
Amazon Web Services
 
Creating Your Virtual Data Center - AWS Summit Bahrain 2017
Creating Your Virtual Data Center - AWS Summit Bahrain 2017Creating Your Virtual Data Center - AWS Summit Bahrain 2017
Creating Your Virtual Data Center - AWS Summit Bahrain 2017
Amazon Web Services
 

What's hot (20)

DevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryDevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software Delivery
 
Strategic Approaches to AWS Enterprise Application Migration
Strategic Approaches to AWS Enterprise Application MigrationStrategic Approaches to AWS Enterprise Application Migration
Strategic Approaches to AWS Enterprise Application Migration
 
Automating Compliance for Financial Institutions - AWS Summit SG 2017
Automating Compliance for Financial Institutions - AWS Summit SG 2017Automating Compliance for Financial Institutions - AWS Summit SG 2017
Automating Compliance for Financial Institutions - AWS Summit SG 2017
 
Simplestream
SimplestreamSimplestream
Simplestream
 
Serverless beyond AWS Lambda
Serverless beyond AWS LambdaServerless beyond AWS Lambda
Serverless beyond AWS Lambda
 
Using Security To Build With Confidence in AWS – Justin Foster, Director of P...
Using Security To Build With Confidence in AWS – Justin Foster, Director of P...Using Security To Build With Confidence in AWS – Justin Foster, Director of P...
Using Security To Build With Confidence in AWS – Justin Foster, Director of P...
 
AWS re:Invent 2016: Chalk Talk: Applying Security-by-Design to Drive Complian...
AWS re:Invent 2016: Chalk Talk: Applying Security-by-Design to Drive Complian...AWS re:Invent 2016: Chalk Talk: Applying Security-by-Design to Drive Complian...
AWS re:Invent 2016: Chalk Talk: Applying Security-by-Design to Drive Complian...
 
Introduction to Serverless on AWS
Introduction to Serverless on AWSIntroduction to Serverless on AWS
Introduction to Serverless on AWS
 
AWS DevOps Introduction
AWS DevOps Introduction AWS DevOps Introduction
AWS DevOps Introduction
 
Using AWS Lambda for Infrastructure Automation and Beyond
Using AWS Lambda for Infrastructure Automation and BeyondUsing AWS Lambda for Infrastructure Automation and Beyond
Using AWS Lambda for Infrastructure Automation and Beyond
 
Rapid Prototyping for Big Data with AWS
Rapid Prototyping for Big Data with AWS Rapid Prototyping for Big Data with AWS
Rapid Prototyping for Big Data with AWS
 
Key Steps for Setting up your AWS Journey for Success - Business
Key Steps for Setting up your AWS Journey for Success - BusinessKey Steps for Setting up your AWS Journey for Success - Business
Key Steps for Setting up your AWS Journey for Success - Business
 
Visibility and Control in the Cloud: How to Get your Boss Comfortable with AW...
Visibility and Control in the Cloud: How to Get your Boss Comfortable with AW...Visibility and Control in the Cloud: How to Get your Boss Comfortable with AW...
Visibility and Control in the Cloud: How to Get your Boss Comfortable with AW...
 
The Hitchhiker’s Guide to Hybrid Connectivity
The Hitchhiker’s Guide to Hybrid ConnectivityThe Hitchhiker’s Guide to Hybrid Connectivity
The Hitchhiker’s Guide to Hybrid Connectivity
 
Meetup#7: AWS LightSail - The Simplicity of VPS - The Power of AWS
Meetup#7: AWS LightSail - The Simplicity of VPS - The Power of AWSMeetup#7: AWS LightSail - The Simplicity of VPS - The Power of AWS
Meetup#7: AWS LightSail - The Simplicity of VPS - The Power of AWS
 
Enterprise Serverless Adoption. An Experience Report
Enterprise Serverless Adoption. An Experience ReportEnterprise Serverless Adoption. An Experience Report
Enterprise Serverless Adoption. An Experience Report
 
BBC
BBCBBC
BBC
 
Compute Without Servers – Building Applications with AWS Lambda - Technical 301
Compute Without Servers – Building Applications with AWS Lambda - Technical 301Compute Without Servers – Building Applications with AWS Lambda - Technical 301
Compute Without Servers – Building Applications with AWS Lambda - Technical 301
 
Husqvarna Group
Husqvarna GroupHusqvarna Group
Husqvarna Group
 
Creating Your Virtual Data Center - AWS Summit Bahrain 2017
Creating Your Virtual Data Center - AWS Summit Bahrain 2017Creating Your Virtual Data Center - AWS Summit Bahrain 2017
Creating Your Virtual Data Center - AWS Summit Bahrain 2017
 

Viewers also liked

Quiz up
Quiz upQuiz up
Quiz up
DonaldJMcShan
 
RDF Validation in a Linked Data World - A vision beyond structural and value ...
RDF Validation in a Linked Data World - A vision beyond structural and value ...RDF Validation in a Linked Data World - A vision beyond structural and value ...
RDF Validation in a Linked Data World - A vision beyond structural and value ...
Nandana Mihindukulasooriya
 
3 arte romano
3 arte romano3 arte romano
3 arte romano
gorbea
 
Eerm mapping c++
Eerm mapping c++Eerm mapping c++
Eerm mapping c++
Ramrao Desai
 
Vétérenaires Sans Frontieres International
Vétérenaires Sans Frontieres InternationalVétérenaires Sans Frontieres International
Vétérenaires Sans Frontieres International
FAO
 
Cómo adelgazar sin recuperar los kilos perdidos
Cómo adelgazar sin recuperar los kilos perdidosCómo adelgazar sin recuperar los kilos perdidos
Cómo adelgazar sin recuperar los kilos perdidos
chicadieta
 
Central 105
Central 105Central 105
Central 105
ronychilca
 
Dicionário de Expressões
Dicionário de ExpressõesDicionário de Expressões
Dicionário de ExpressõesElsa Fernandes
 
AVIONICA
AVIONICAAVIONICA
AVIONICA
Cithe
 
Furry Influencers and Their Fans
Furry Influencers and Their FansFurry Influencers and Their Fans
Furry Influencers and Their Fans
Tara Hunt
 
Map Projections, Datums, GIS and GPS for Everyone
Map Projections, Datums, GIS and GPS for EveryoneMap Projections, Datums, GIS and GPS for Everyone
Map Projections, Datums, GIS and GPS for Everyone
Dr. Geophysics
 
E leadership in virtuellen Teams
E leadership in virtuellen TeamsE leadership in virtuellen Teams
E leadership in virtuellen Teams
René Keller
 
Quiz Up - Gen Quiz - Prelims
Quiz Up - Gen Quiz - PrelimsQuiz Up - Gen Quiz - Prelims
Quiz Up - Gen Quiz - Prelims
Soham Patel
 
Presentaciones
PresentacionesPresentaciones
Presentaciones
networklanguages
 
Teruel Emprende, ¿y Tú? 2015
Teruel Emprende, ¿y Tú? 2015Teruel Emprende, ¿y Tú? 2015
Teruel Emprende, ¿y Tú? 2015
Antena Aguja Agujama
 
ProEvents Team presentation
ProEvents Team presentationProEvents Team presentation
ProEvents Team presentationElisabeta Ionita
 
Retailing
RetailingRetailing
Retailing
Sathya Narayanan
 
Quiz up - Gen Quiz - Finals
Quiz up - Gen Quiz - FinalsQuiz up - Gen Quiz - Finals
Quiz up - Gen Quiz - Finals
Soham Patel
 
Ventas y compras internacionales
Ventas y compras internacionalesVentas y compras internacionales
Ventas y compras internacionalesRavaventas
 

Viewers also liked (20)

Quiz up
Quiz upQuiz up
Quiz up
 
RDF Validation in a Linked Data World - A vision beyond structural and value ...
RDF Validation in a Linked Data World - A vision beyond structural and value ...RDF Validation in a Linked Data World - A vision beyond structural and value ...
RDF Validation in a Linked Data World - A vision beyond structural and value ...
 
3 arte romano
3 arte romano3 arte romano
3 arte romano
 
Eerm mapping c++
Eerm mapping c++Eerm mapping c++
Eerm mapping c++
 
Vétérenaires Sans Frontieres International
Vétérenaires Sans Frontieres InternationalVétérenaires Sans Frontieres International
Vétérenaires Sans Frontieres International
 
Cómo adelgazar sin recuperar los kilos perdidos
Cómo adelgazar sin recuperar los kilos perdidosCómo adelgazar sin recuperar los kilos perdidos
Cómo adelgazar sin recuperar los kilos perdidos
 
Central 105
Central 105Central 105
Central 105
 
Dicionário de Expressões
Dicionário de ExpressõesDicionário de Expressões
Dicionário de Expressões
 
AVIONICA
AVIONICAAVIONICA
AVIONICA
 
Furry Influencers and Their Fans
Furry Influencers and Their FansFurry Influencers and Their Fans
Furry Influencers and Their Fans
 
Map Projections, Datums, GIS and GPS for Everyone
Map Projections, Datums, GIS and GPS for EveryoneMap Projections, Datums, GIS and GPS for Everyone
Map Projections, Datums, GIS and GPS for Everyone
 
E leadership in virtuellen Teams
E leadership in virtuellen TeamsE leadership in virtuellen Teams
E leadership in virtuellen Teams
 
English CV
English CVEnglish CV
English CV
 
Quiz Up - Gen Quiz - Prelims
Quiz Up - Gen Quiz - PrelimsQuiz Up - Gen Quiz - Prelims
Quiz Up - Gen Quiz - Prelims
 
Presentaciones
PresentacionesPresentaciones
Presentaciones
 
Teruel Emprende, ¿y Tú? 2015
Teruel Emprende, ¿y Tú? 2015Teruel Emprende, ¿y Tú? 2015
Teruel Emprende, ¿y Tú? 2015
 
ProEvents Team presentation
ProEvents Team presentationProEvents Team presentation
ProEvents Team presentation
 
Retailing
RetailingRetailing
Retailing
 
Quiz up - Gen Quiz - Finals
Quiz up - Gen Quiz - FinalsQuiz up - Gen Quiz - Finals
Quiz up - Gen Quiz - Finals
 
Ventas y compras internacionales
Ventas y compras internacionalesVentas y compras internacionales
Ventas y compras internacionales
 

Similar to Startup Showcase - QuizUp

Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talksRuslan Meshenberg
 
Cincom smalltalk roadmap 2015 draft2
Cincom smalltalk roadmap 2015 draft2Cincom smalltalk roadmap 2015 draft2
Cincom smalltalk roadmap 2015 draft2ArdenCST
 
From Zero to Serverless
From Zero to ServerlessFrom Zero to Serverless
From Zero to Serverless
Chad Green
 
Key alias dev standard final
Key alias   dev standard finalKey alias   dev standard final
Key alias dev standard final
Raditya Alwafi Surachman
 
Building a scalable API with Grails
Building a scalable API with GrailsBuilding a scalable API with Grails
Building a scalable API with Grails
Tanausu Cerdeña
 
Cincom smalltalk roadmap 2015 draft3
Cincom smalltalk roadmap 2015 draft3Cincom smalltalk roadmap 2015 draft3
Cincom smalltalk roadmap 2015 draft3ArdenCST
 
Cincom Smalltalk Roadmap 2015
Cincom Smalltalk Roadmap 2015Cincom Smalltalk Roadmap 2015
Cincom Smalltalk Roadmap 2015
ESUG
 
Logic appsforbeginners
Logic appsforbeginnersLogic appsforbeginners
Logic appsforbeginners
Mandar Dharmadhikari
 
Dev ops for mobile apps at microsoft teams
Dev ops for mobile apps at microsoft teamsDev ops for mobile apps at microsoft teams
Dev ops for mobile apps at microsoft teams
Mahesh Arali
 
Real World Cloud Application Security
Real World Cloud Application SecurityReal World Cloud Application Security
Real World Cloud Application SecurityJason Chan
 
How to Build Single Page HTML5 Apps that Scale
How to Build Single Page HTML5 Apps that ScaleHow to Build Single Page HTML5 Apps that Scale
How to Build Single Page HTML5 Apps that Scale
Phil Leggetter
 
AWS for Java Developers workshop
AWS for Java Developers workshopAWS for Java Developers workshop
AWS for Java Developers workshop
Rory Preddy
 
Azure Functions Real World Examples
Azure Functions Real World Examples Azure Functions Real World Examples
Azure Functions Real World Examples
Yochay Kiriaty
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
Amazon Web Services
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
GlobalLogic Ukraine
 
AWS for the Java Developer
AWS for the Java DeveloperAWS for the Java Developer
AWS for the Java Developer
Rory Preddy
 
SPS calgary 2017 introduction to azure functions microsoft flow
SPS calgary 2017 introduction to azure functions microsoft flowSPS calgary 2017 introduction to azure functions microsoft flow
SPS calgary 2017 introduction to azure functions microsoft flow
Vincent Biret
 
Cloud Connected Devices on a Global Scale (CPN303) | AWS re:Invent 2013
Cloud Connected Devices on a Global Scale (CPN303) | AWS re:Invent 2013Cloud Connected Devices on a Global Scale (CPN303) | AWS re:Invent 2013
Cloud Connected Devices on a Global Scale (CPN303) | AWS re:Invent 2013
Amazon Web Services
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
Howard Greenberg
 
Azure enterprise integration platform
Azure enterprise integration platformAzure enterprise integration platform
Azure enterprise integration platform
Michael Stephenson
 

Similar to Startup Showcase - QuizUp (20)

Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talks
 
Cincom smalltalk roadmap 2015 draft2
Cincom smalltalk roadmap 2015 draft2Cincom smalltalk roadmap 2015 draft2
Cincom smalltalk roadmap 2015 draft2
 
From Zero to Serverless
From Zero to ServerlessFrom Zero to Serverless
From Zero to Serverless
 
Key alias dev standard final
Key alias   dev standard finalKey alias   dev standard final
Key alias dev standard final
 
Building a scalable API with Grails
Building a scalable API with GrailsBuilding a scalable API with Grails
Building a scalable API with Grails
 
Cincom smalltalk roadmap 2015 draft3
Cincom smalltalk roadmap 2015 draft3Cincom smalltalk roadmap 2015 draft3
Cincom smalltalk roadmap 2015 draft3
 
Cincom Smalltalk Roadmap 2015
Cincom Smalltalk Roadmap 2015Cincom Smalltalk Roadmap 2015
Cincom Smalltalk Roadmap 2015
 
Logic appsforbeginners
Logic appsforbeginnersLogic appsforbeginners
Logic appsforbeginners
 
Dev ops for mobile apps at microsoft teams
Dev ops for mobile apps at microsoft teamsDev ops for mobile apps at microsoft teams
Dev ops for mobile apps at microsoft teams
 
Real World Cloud Application Security
Real World Cloud Application SecurityReal World Cloud Application Security
Real World Cloud Application Security
 
How to Build Single Page HTML5 Apps that Scale
How to Build Single Page HTML5 Apps that ScaleHow to Build Single Page HTML5 Apps that Scale
How to Build Single Page HTML5 Apps that Scale
 
AWS for Java Developers workshop
AWS for Java Developers workshopAWS for Java Developers workshop
AWS for Java Developers workshop
 
Azure Functions Real World Examples
Azure Functions Real World Examples Azure Functions Real World Examples
Azure Functions Real World Examples
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
AWS for the Java Developer
AWS for the Java DeveloperAWS for the Java Developer
AWS for the Java Developer
 
SPS calgary 2017 introduction to azure functions microsoft flow
SPS calgary 2017 introduction to azure functions microsoft flowSPS calgary 2017 introduction to azure functions microsoft flow
SPS calgary 2017 introduction to azure functions microsoft flow
 
Cloud Connected Devices on a Global Scale (CPN303) | AWS re:Invent 2013
Cloud Connected Devices on a Global Scale (CPN303) | AWS re:Invent 2013Cloud Connected Devices on a Global Scale (CPN303) | AWS re:Invent 2013
Cloud Connected Devices on a Global Scale (CPN303) | AWS re:Invent 2013
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
 
Azure enterprise integration platform
Azure enterprise integration platformAzure enterprise integration platform
Azure enterprise integration platform
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
Amazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
Amazon Web Services
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Amazon Web Services
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
Amazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
Amazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Amazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
Amazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Amazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Recently uploaded

Observation Lab PowerPoint Assignment for TEM 431
Observation Lab PowerPoint Assignment for TEM 431Observation Lab PowerPoint Assignment for TEM 431
Observation Lab PowerPoint Assignment for TEM 431
ecamare2
 
Training my puppy and implementation in this story
Training my puppy and implementation in this storyTraining my puppy and implementation in this story
Training my puppy and implementation in this story
WilliamRodrigues148
 
Exploring Patterns of Connection with Social Dreaming
Exploring Patterns of Connection with Social DreamingExploring Patterns of Connection with Social Dreaming
Exploring Patterns of Connection with Social Dreaming
Nicola Wreford-Howard
 
Understanding User Needs and Satisfying Them
Understanding User Needs and Satisfying ThemUnderstanding User Needs and Satisfying Them
Understanding User Needs and Satisfying Them
Aggregage
 
The effects of customers service quality and online reviews on customer loyal...
The effects of customers service quality and online reviews on customer loyal...The effects of customers service quality and online reviews on customer loyal...
The effects of customers service quality and online reviews on customer loyal...
balatucanapplelovely
 
Mastering B2B Payments Webinar from BlueSnap
Mastering B2B Payments Webinar from BlueSnapMastering B2B Payments Webinar from BlueSnap
Mastering B2B Payments Webinar from BlueSnap
Norma Mushkat Gaffin
 
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
SOFTTECHHUB
 
Authentically Social by Corey Perlman - EO Puerto Rico
Authentically Social by Corey Perlman - EO Puerto RicoAuthentically Social by Corey Perlman - EO Puerto Rico
Authentically Social by Corey Perlman - EO Puerto Rico
Corey Perlman, Social Media Speaker and Consultant
 
An introduction to the cryptocurrency investment platform Binance Savings.
An introduction to the cryptocurrency investment platform Binance Savings.An introduction to the cryptocurrency investment platform Binance Savings.
An introduction to the cryptocurrency investment platform Binance Savings.
Any kyc Account
 
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.docBài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
daothibichhang1
 
VAT Registration Outlined In UAE: Benefits and Requirements
VAT Registration Outlined In UAE: Benefits and RequirementsVAT Registration Outlined In UAE: Benefits and Requirements
VAT Registration Outlined In UAE: Benefits and Requirements
uae taxgpt
 
一比一原版加拿大渥太华大学毕业证(uottawa毕业证书)如何办理
一比一原版加拿大渥太华大学毕业证(uottawa毕业证书)如何办理一比一原版加拿大渥太华大学毕业证(uottawa毕业证书)如何办理
一比一原版加拿大渥太华大学毕业证(uottawa毕业证书)如何办理
taqyed
 
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc.pdf
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc.pdfBài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc.pdf
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc.pdf
daothibichhang1
 
Building Your Employer Brand with Social Media
Building Your Employer Brand with Social MediaBuilding Your Employer Brand with Social Media
Building Your Employer Brand with Social Media
LuanWise
 
Digital Transformation and IT Strategy Toolkit and Templates
Digital Transformation and IT Strategy Toolkit and TemplatesDigital Transformation and IT Strategy Toolkit and Templates
Digital Transformation and IT Strategy Toolkit and Templates
Aurelien Domont, MBA
 
Agency Managed Advisory Board As a Solution To Career Path Defining Business ...
Agency Managed Advisory Board As a Solution To Career Path Defining Business ...Agency Managed Advisory Board As a Solution To Career Path Defining Business ...
Agency Managed Advisory Board As a Solution To Career Path Defining Business ...
Boris Ziegler
 
Project File Report BBA 6th semester.pdf
Project File Report BBA 6th semester.pdfProject File Report BBA 6th semester.pdf
Project File Report BBA 6th semester.pdf
RajPriye
 
BeMetals Investor Presentation_June 1, 2024.pdf
BeMetals Investor Presentation_June 1, 2024.pdfBeMetals Investor Presentation_June 1, 2024.pdf
BeMetals Investor Presentation_June 1, 2024.pdf
DerekIwanaka1
 
Auditing study material for b.com final year students
Auditing study material for b.com final year  studentsAuditing study material for b.com final year  students
Auditing study material for b.com final year students
narasimhamurthyh4
 
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challengesEvent Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Holger Mueller
 

Recently uploaded (20)

Observation Lab PowerPoint Assignment for TEM 431
Observation Lab PowerPoint Assignment for TEM 431Observation Lab PowerPoint Assignment for TEM 431
Observation Lab PowerPoint Assignment for TEM 431
 
Training my puppy and implementation in this story
Training my puppy and implementation in this storyTraining my puppy and implementation in this story
Training my puppy and implementation in this story
 
Exploring Patterns of Connection with Social Dreaming
Exploring Patterns of Connection with Social DreamingExploring Patterns of Connection with Social Dreaming
Exploring Patterns of Connection with Social Dreaming
 
Understanding User Needs and Satisfying Them
Understanding User Needs and Satisfying ThemUnderstanding User Needs and Satisfying Them
Understanding User Needs and Satisfying Them
 
The effects of customers service quality and online reviews on customer loyal...
The effects of customers service quality and online reviews on customer loyal...The effects of customers service quality and online reviews on customer loyal...
The effects of customers service quality and online reviews on customer loyal...
 
Mastering B2B Payments Webinar from BlueSnap
Mastering B2B Payments Webinar from BlueSnapMastering B2B Payments Webinar from BlueSnap
Mastering B2B Payments Webinar from BlueSnap
 
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
 
Authentically Social by Corey Perlman - EO Puerto Rico
Authentically Social by Corey Perlman - EO Puerto RicoAuthentically Social by Corey Perlman - EO Puerto Rico
Authentically Social by Corey Perlman - EO Puerto Rico
 
An introduction to the cryptocurrency investment platform Binance Savings.
An introduction to the cryptocurrency investment platform Binance Savings.An introduction to the cryptocurrency investment platform Binance Savings.
An introduction to the cryptocurrency investment platform Binance Savings.
 
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.docBài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
 
VAT Registration Outlined In UAE: Benefits and Requirements
VAT Registration Outlined In UAE: Benefits and RequirementsVAT Registration Outlined In UAE: Benefits and Requirements
VAT Registration Outlined In UAE: Benefits and Requirements
 
一比一原版加拿大渥太华大学毕业证(uottawa毕业证书)如何办理
一比一原版加拿大渥太华大学毕业证(uottawa毕业证书)如何办理一比一原版加拿大渥太华大学毕业证(uottawa毕业证书)如何办理
一比一原版加拿大渥太华大学毕业证(uottawa毕业证书)如何办理
 
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc.pdf
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc.pdfBài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc.pdf
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc.pdf
 
Building Your Employer Brand with Social Media
Building Your Employer Brand with Social MediaBuilding Your Employer Brand with Social Media
Building Your Employer Brand with Social Media
 
Digital Transformation and IT Strategy Toolkit and Templates
Digital Transformation and IT Strategy Toolkit and TemplatesDigital Transformation and IT Strategy Toolkit and Templates
Digital Transformation and IT Strategy Toolkit and Templates
 
Agency Managed Advisory Board As a Solution To Career Path Defining Business ...
Agency Managed Advisory Board As a Solution To Career Path Defining Business ...Agency Managed Advisory Board As a Solution To Career Path Defining Business ...
Agency Managed Advisory Board As a Solution To Career Path Defining Business ...
 
Project File Report BBA 6th semester.pdf
Project File Report BBA 6th semester.pdfProject File Report BBA 6th semester.pdf
Project File Report BBA 6th semester.pdf
 
BeMetals Investor Presentation_June 1, 2024.pdf
BeMetals Investor Presentation_June 1, 2024.pdfBeMetals Investor Presentation_June 1, 2024.pdf
BeMetals Investor Presentation_June 1, 2024.pdf
 
Auditing study material for b.com final year students
Auditing study material for b.com final year  studentsAuditing study material for b.com final year  students
Auditing study material for b.com final year students
 
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challengesEvent Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
 

Startup Showcase - QuizUp

  • 1.
  • 2. * as Code Árni Birgisson Infrastructure Engineer @arnibirgisson
  • 4. What is QuizUp? • The biggest trivia game in the world! • Record setting 1M in first week • 1000+ curated topics in 6 languages • MyQuizUp topics • Millions of questions
  • 6. • QuizUp-Admin • Codebase python • Created AMI’s along with ASG, ELB AMI [Python App] AMI [Python App] AMI [Python App] AMI [Python App] AMI [Python App] {ASG ELB Datastores
  • 7. • Multiple services • AMI + ASG per service • ELB for service-to- service AMI [Python App] AMI [Python App] AMI [Python App] AMI [Python App] AMI [Python App] {ASG ELB AMI #2 [Java App] ELB AMI #2 [Java App] AMI #2 [Java App] Datastores
  • 8. • Increasing number of services • SOA / Micro Service architecture • Routers (nginx) • ZooKeeper • ZooRunner AMI [Python App] AMI [Python App] AMI [Python App] AMI [Python App] AMI#1 [Python App] ASG Routers AMI #2 [Java App] AMI #2 [Java App] AMI #2 [Java App] Datastores RoutersRoutersRouters AMI #2 [Java App] { AMI #2 [Java App] AMI #3 [Java App]
  • 9. • Docker • Python, Node, Go, Java, Scala, C++ • More generic AMIs AMI [Python App] AMI [Python App] AMI [Python App] AMI [Python App] AMI [Docker App] ASG Routers AMI #2 [Java App] AMI #2 [Java App] AMI #2 [Docker App] Datastores RoutersRoutersRouters AMI #2 [Java App] { AMI #2 [Java App] AMI #3 [Docker App]
  • 10. • ~50 different services • Mostly JVM • All services run in docker • Single AMI • Datastores too* AMI [Python App] AMI [Python App] AMI [Python App] AMI [Python App] Single AMI [App] [Dependancies] ASG Routers AMI #2 [Java App] AMI #2 [Java App] Single AMI [App] [Dependancies] Datastores RoutersRoutersRouters AMI #2 [Java App] { AMI #2 [Java App] Single AMI [App] [Dependancies] … x 50
  • 12. Why IaC? • EC2 Classic - VPC • QuizUp-Admin outdated • Increasing complexity • Iteration speed • Clean setup, not a VPC version of the old stuff.
  • 14. Experiments • CloudFormation, Troposphere, Terraform • VPC with one service
  • 15. Experiments • VPC • Subnets • Routing Table • Auto-Scale Group • Launch Configuration • Security Group (+ rules) • Support for variables
  • 16. Experiments • Decided to use Terraform • Plan / Apply (preview changes) • Why is that important?
  • 18. What’s Included • Repository • Terraform • CI • Module for a Service • Modules for DynamoDB, ELBs, etc.
  • 19.
  • 20. deploy staging iterate Test deploy production PR/Revie w merge CI JOB checks syntax and outputs plan Branch with proposed change Iteration
  • 21. Single AMI • Can become any service • Packer + Puppet • QuizUp Docker Manager • Logging & Metrics
  • 22. Single AMI Quizup Docker Manager statsd log shipper Instance metadata ZooKeeper application dependancy dependancy Docker registry
  • 24. Configuration • Servers fetch config from ZooKeeper • ZooKeeper manually updated • Can we use a similar flow?
  • 25. Yes! • In house git repository • git/filesystem to ZooKeeper sync tool • Jenkins CI • Configuration through same workflow Branches, PR
  • 26. What have we gained?
  • 27. What have we gained? • Production infrastructure changes worry- free non-events • Code = Documentation • Peer reviews, PRs, Comments • Disaster recovery • History (+ reverting!)
  • 28. What have we gained? • Anyone can propose infrastructure changes • Faster and more consistent changes • Staging is a small copy of production
  • 29. What have we gained? Infrastructure as Code helps maintain a devops culture by using the same workflow to modify applications, infrastructure and configuration
  • 31. State • State file must be kept safe! • Hard to “inject” resources into state • (Currently) no way to create Terraform description of current resources
  • 32. Speed • Must choose between: • Apply everything always (slower) Infrastructure = Code • Apply in parts (speedy) Requires plumbing. Can diverge.
  • 33. No sidelining • No manual changes • They are reset during next apply • Pro or Con ?