Container Soup for Your Soul: The Microservice Edition, Building Deployment Tools to Align with your Engineering Culture | AWS Public Sector Summit 2017
This document summarizes Clever's approach to building deployment tools that align with their engineering culture. It discusses Clever's workflows using tools like GitHub, CircleCI, ECR, ECS, and CloudFormation. It describes how about 10% of Clever engineers build internal tools to improve effectiveness. Stories are shared about how discussions around local development led to creating Ark for non-production deploys. Future plans include moving from CloudFormation to ECS APIs and adding automation/chat-based deployments and AWS Batch workflow support.
AWS re:Invent 2016: Serverless IoT Back Ends (IOT401)
Similaire à Container Soup for Your Soul: The Microservice Edition, Building Deployment Tools to Align with your Engineering Culture | AWS Public Sector Summit 2017
Similaire à Container Soup for Your Soul: The Microservice Edition, Building Deployment Tools to Align with your Engineering Culture | AWS Public Sector Summit 2017 (20)
Container Soup for Your Soul: The Microservice Edition, Building Deployment Tools to Align with your Engineering Culture | AWS Public Sector Summit 2017
2. Clever is the platform that
powers technology in the
classroom for simple, powerful,
and highly secure solutions for
student data transfer and single
sign-on.
Infrastructure at Clever
3. Our deployment
workflows
Design of new
engineering tools
at Clever
How we got to
here?
Where are we
going next?
Clever Eng Stories Control Planes Next Steps
What to expect?
Containers with Culture.
4. >50% of US schools use Clever.
A deployment affects
millions of students.
Our Deployment Workflows
Clever Eng
5. A week in deployments
● launched 112000 containers
● 100 unique applications
● with 500 deployments
● in 20 environments
● on average six minutes from master to production
● with very little muss, and even less fuss
38 engineers
Our Deployment Workflows
6. GitHub
Source control and code
reviews
CircleCI
Tests, builds, and static
analysis
Amazon ECR and
DockerHub
Container registries
Source control, test and build
Our Deployment Workflows
7. Ark and Catapult
CLI and REST API to
manage deployments and
development environments.
Dapple
SlackBot and Pipelines
triggered by CI for
automated deployments.
Deployment tooling
Our Deployment Workflows
15. Owning Interactions
"If my code runs in
production, then I
shouldn't have to
change it for you to run
it locally"
16. Owning Interactions
“more important to have
dev stability than
production velocity”
“resiliency, stability,
safety!!!!”
“well-thought-out
systems don’t have such
problems”
17. Clever eng was struggling with…
Configuration
Are all the right variables set for local development in all
dependencies?
Dependency
Are these all the dependencies required?
Visibility
Where are the logs for my dependency that is failing?
Stories: or how we got to here?
19. Clever eng was…
Expecting a more opinionated product
To truly exercise the freedom of choosing the best tool for the
job, we wanted better defaults and easier bootstrapping
Demanding automation
They were automating configuration and syncs for their
users and were expecting the same of tooling at Clever
Focusing on user needs
Keeping dependencies updated, and supporting different
local settings was taking away from our focus on users
Stories: or how we got to here?
20. arka tool for non-production deploys
that could be good enough to eventually use in production
Stories: or how we got to here?