3. www.pixelfederation.com
1. Running Kubernetes version 1.9 on AWS
2. Deployed with Kops and Terraform
3. If possible we use managed services (RDS, Elasticache)
a.
4. Prometheus/Grafana used for monitoring
5. Elk stack for log gathering
Kubernetes deployment on AWS
Kubernetes @ Pixel
4. www.pixelfederation.com
Kubernetes deployment on AWS
Kubernetes deployment tools
Multiple available alternatives for kubernetes
deployment
1. Kops (AWS, GCE, digitalocean)
a.
2. Kube-up
a.
3. Kubespray
a.
4. Kubeadm
11. www.pixelfederation.com
1. Trust your health-checks
a.
2. Stateless applications
a.
b.
3. One process per container
a.
4. Scaling
a.
b.
Kubernetes deployment on AWS
Running applications on Kubernetes
12. www.pixelfederation.com
1. Use ingress controllers (traefik, nginx, haproxy, AWS ALB)
a.
b.
c.
2. Plan your updates native support for
a. Recreate
b. Rolling Update
c. Blue/Green,Canary,A/B needs to be scripted
3. Package your manifests with HELM
Kubernetes deployment on AWS
Running applications on Kubernetes vol. 2
14. www.pixelfederation.com
1. Package manager for Kubernetes manifests
a.
2. Use templates to develop reusable charts
a. Sharing charts is simple
3. Supports rollback to previous application versions
a.
4. Use hooks to manage/orchestrate complicated scenarios
Kubernetes deployment on AWS
Kubernetes Helm Package manager
15. www.pixelfederation.com
1. Pods
a. group of one or more containers running on a same physical host
2. Services
a. A Kubernetes Service is an abstraction which defines a logical set of
Pods and a policy by which to access them
b. Use selectors/labels to select right pods
3. Deployments, Stateful sets, Daemon Sets
a.
Kubernetes deployment on AWS
Kubernetes Service objects