The gap between Minikube and Kubernetes in production is vast and full of pain. Want to know what it's like to implement Kubernetes in production for the first time before you collect the bumps and bruises yourself? Join me to learn about the ups and downs of one company's initial experience - including who was involved, the scope, and what was intentionally deferred.
We will cover:
* Why even consider Kubernetes (Hint: you might not benefit from it!)
* How a real company approached their first proof-of-concept
* How goals changed during implementation of k8s
* What we learned so far
* What we still need to learn
Kubernetes: A Cautionary Tale
Accelerating commerce through the worlds most powerful supply chain platform
Our people, processes, and technology improve the world's transportation and
supply chains, delivering exceptional value to our customers and suppliers.
in 2018 Gross
IT Employees in
AI USE CASES
So what do you do?
(A view from early 2018)
• Why K8s? (Hint: Might not be right for you)
• One Approach
• How Goals Changed
• What We Learned
• What Remained
Why Kubernetes (k8s)?
When do I need Kubernetes (k8s)?
1. Cloud Hosted (flexibility)
2. Automation (CI/CD)
3. Culture (people matter)
6. Orchestration (e.g. Kubernetes)
Why not Swarm?
How hard is K8s to learn?
“It depends.” ;)
(Not polished in late 2017)
Valuable for my team?
– we learned a lot…
… and apps stayed up.
Valuable for my company?
What We Learned
• Don’t roll your own
• Certificates are important
• Networking knowledge is critical
• Secrets aren’t secret
• Some apps don’t benefit
Don’t Roll Your Own
If you don’t sell k8s, don’t build it
• ~22 Hosted solutions
• ~28 Cloud turnkey solutions
• ~18 On-premises turnkey solutions
Certificates Are Important
You need to “generate TLS certificates
for the following components: etcd,
manager, kube-scheduler, kubelet,
… And that’s before even considering your apps.
Networking Knowledge is Critical
“Kubernetes cluster networking is perhaps one of the most
complex components of the Kubernetes infrastructure because
it involves so many layers and parts (e.g., container-to-container
networking, Pod networking, services, ingress, load balancers),
and many users are struggling to make sense of it all.”
- Kirill Goltsman, Supergiant
Secrets Aren’t Secret
• ENV vs volume mount
• Base64 encoding in cluster
• HashiCorp Vault
Some Apps Don’t Benefit
• Where do they scale?
• Are they “cluster-aware”?
• What about failed deployments?
• CI/CD into K8s
• How to get our nodes (vendor?)
• Improved storage, external state
• Namespaces and environments
• Dev == Minikube?
• Integration == Namespace? Cluster?
• Production == 1+ clusters?
• Testing apps vs testing k8s upgrades
• Think before you k8s - do you need it?
• Plan to learn - in stages, over time
• People matter - especially networking folk ;)
• Expect plans to evolve
• Blaine? Eden Prairie?