Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

k8s traffic management #105

Open
HarshadRanganathan opened this issue Sep 11, 2022 · 12 comments
Open

k8s traffic management #105

HarshadRanganathan opened this issue Sep 11, 2022 · 12 comments

Comments

@HarshadRanganathan
Copy link
Owner

HarshadRanganathan commented Sep 11, 2022

External Traffic Policy

https://www.asykim.com/blog/deep-dive-into-kubernetes-external-traffic-policies

Local

Dedicated LB -> Health Check + Pod Anti-Affinity (prevent uneven load spread)
Shared LB -> Pod in every node

Pods

https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/

Inter-pod

https://pumpingco.de/blog/optimizing-network-traffic-across-availability-zones-in-kubernetes/

Pod disruption budget

https://itnext.io/kubernetes-draining-nodes-properly-79e18dca4d5e

Pod Anti Affinity

https://community.pivotal.io/s/article/how-do-I-evenly-distribute-my-pods-across-a-topology-without-using-pod-anti-affinity?language=en_US

Topology Spread

https://awstip.com/kubernetes-and-resilience-pod-topology-spread-constraints-1bf46205a3e1
https://medium.com/wise-engineering/avoiding-kubernetes-pod-topology-spread-constraint-pitfalls-d369bb04689e
https://awstip.com/kubernetes-and-resilience-pod-topology-spread-constraints-1bf46205a3e1

Node Placement

https://itnext.io/kubernetes-pods-and-workernodes-control-the-placement-of-the-pods-on-the-nodes-359bc958a202

Istio

Istio Deployment

https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/

istio/istio#38558

Apps

https://istio.io/latest/docs/tasks/traffic-management/locality-load-balancing/failover/

https://aws.amazon.com/blogs/containers/addressing-latency-and-data-transfer-costs-on-eks-using-istio/

General

https://medium.com/expedia-group-tech/request-load-distribution-in-kubernetes-and-aws-e139a3fec4ba

@HarshadRanganathan
Copy link
Owner Author

image

@HarshadRanganathan
Copy link
Owner Author

image

@HarshadRanganathan
Copy link
Owner Author

image

@HarshadRanganathan
Copy link
Owner Author

HTTP connection drains
kube-proxy load balancing strategies

@HarshadRanganathan
Copy link
Owner Author

HarshadRanganathan commented Mar 31, 2023

Cluster communication

ClusterIP Service
Short-lived TCP (HTTP/1) vs Long-lived TCP (HTTP/2, gRPC) connections

Long-lived -> handle client side through code (load balancing, config, keep-alive etc.) or service mesh
Short-lived -> kube-proxy, ip tables (round robin - not exactly, probabilistic distribution) - for burst traffic will be uneven, for constant load traffic load balanced eventually)

High availability

Pod Anti-Affinity
Topology spreads
https://github.com/kubernetes-sigs/descheduler/blob/master/docs/user-guide.md

@HarshadRanganathan
Copy link
Owner Author

@HarshadRanganathan
Copy link
Owner Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant