your developers can be heroes on kubernetes
TRANSCRIPT
1
YOUR DEVELOPERS CAN BE HEROES ON KUBERNETES
Richard Li and Rafael Schloming
2
Agenda
Why Kubernetes Kubernetes (User) Primer The Developer Workflow on Kubernetes Q&A
3
Kubernetes is an open source system for automating deployment, scaling, and management of containerized applications.
microservices
4
In a short period of time, Kubernetes has built a significant community and base of users.
5
1. Kubernetes enables a move to a container/service model, which can improve your development agility and velocity.
2. Kubernetes enables infrastructure as configuration, versus infrastructure as code.
6
Kubernetes (User) Primer
7
Kubernetes works like a thermostat.
Declarative. Define your desired state.
Infinite loop. Continuously adjust the observed state of the infrastructure to map to the desired state.
8
A typical Kubernetes cluster
Node
Pod
ContainerContainer
Pod
ContainerContainer
Node
Pod
ContainerContainer
Pod
ContainerContainer
Node
Pod
ContainerContainer
Pod
ContainerContainer
Node
Pod
ContainerContainer
Pod
ContainerContainer
9
A deployment is a declarative definition of pod(s) configuration.
10
A service defines a logical set of Pods and a policy on how that service can be accessed.
11
Three components of deploying a service …
service.yaml deployment.yaml
service dependencies cloud resources
+
12
kubectl explain
% kubectl explain secrets DESCRIPTION: Secret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.
FIELDS: apiVersion <string> APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources
13
Let’s deploy a trivial Hello, World service in Kubernetes from a Docker container.
14
What about developing software on Kubernetes?
15
A typical development workflow
Write code; commit. Build, test, package. Deploy.
16
How does this workflow translate to Kubernetes?
Create service, and edit some code
Build Docker image containing service and its OS dependencies
Push Docker image into a Docker Registry
Write Kubernetes YAML for service and its runtime dependencies
Deploy service and its dependencies into Kubernetes
Iterate based on feedback
Provision runtime dependencies (e.g., database)
17
Iterate based on feedback
The most agile organizations accelerate this feedback loop.
18
Iterate based on feedback
Automate your workflow with custom scripts & CI.1 2
Staff your operations group to create deployment configuration files, provision resources, and handle deployment.
19
Iterate based on feedback
Automate your workflow with custom scripts & CI.1 2
Staff your operations group to create deployment configuration files, provision resources, and handle deployment.
Development delivers features
Operations gates releases
20
Microservices creates a strong incentive to accelerate your DevOps maturity.
21
Development must produce runnable services, not just packages.
22
Let’s see an actual working example of a developer workflow in Kubernetes.
23
Kubernetes Services Acceleration Program
TRAINING
Kubernetes 101. What are the changes you need to
accelerate your adoption of Kubernetes and services?
ARCHITECTURE WORKSHOP
Understand your current and desired development
workflow, and recommend choices for your stack.
DELIVERY
We’ll work on-site or remotely with your team to
set up / update your Kubernetes infrastructure using state-of-the-art OSS
tools.
HANDOFF
Documentation and training, and online support.
Contact us for a free, 30 minute consultation at [email protected].
24
Ambassador, an API Gateway designed for Kubernetes services: getambassador.io Forge, a fast build system for
Kubernetes services: forge.sh Loom, self-service provisioning for
Kubernetes services: loom.run Telepresence, fast, local
development of services against a remote Kubernetes cluster: telepresence.io
Contact us for a free, 30 minute consultation at [email protected].