Video: The Container Operator’s Manual - Alice Goldfuss | #LeadDevLondon 2018



Containers are processes
born from tarballs
anchored to namespaces
controlled by cgroups


4 Lessions

1) containers have strengths - stateless
stateless applications
data -> APPLICATION -> data
  • portable
    • iterate
  • disaster recovery
    • standardized
  • testing environments



2) containers have weaknesses - databases
statefull applications
aka containerizing databases
"Are you Google?"

reasons to try:
  • Faster provisioning
  • Stability
  • faster recovery
--> cloud provider + tooling

"You wanna DIY, really? really!?"
2 main solutions:
  1. containerized databases
    • send their data to network backed storage array (eg. SEF)
    • --> network bound
  2. containerized instances on host
    • store data on host (eg. /data) using mounted volume
    • --> network bound
--> keep it small
=> cloud provider



3) Containers need friends - ecosystem
"It's never 'just' containers"
How will you
  • build your container tarballs?
    • docker (primed for dev setup)
    • ...?
  • schedule container resources? (orchestration)
    • where to run
    • which host
    • automated?
  • manage clusters?
    • health checks
    • drain traffic
    • automatic failover
  • handle routing, access control, service discovery? (networking)

deployment
monitoring
provisioning
debugging

gradual rollout
  • 1 year

end goal
!= all is containerized
== hybrid: legacy + containerized



4) Containers need headcount - new team
"We'll just give it to ops" DONT
new team
skills needed:
  • knows operations (at your company)
  • knows deployments (at your company)
  • write & test tooling + glue together
  • monitoring
  • kernel engineer
  • networking
  • security
  • help with internal adoption - relationships, invite ppl to beta platform
  • project manager
6-8 ppl, atleast 4 ppl
empower them to succeed
  • budget to run different cloud providers
  • mandate to mess with other's roadmaps



Should we use containers in prod?

Do you have...
  • stateless services?
  • a large heterogenous platform?
  • time money, people, org support?
--> Yeay contaners!!



Do you have...
  • a monolith and few services
  • a small team with no org support
--> Boo, containers!!


Do you want containers or a blog post?
"it would be rad" -> DON'T do containers





comments powered by Disqus