Kubernetes 上的工作负载设置以实现高可用性
Workload setting on Kubernetes for high availability
我是 kubernetes 的新手,我创建了一个 k8s 集群,其中包含两个工作节点 - Node-AZ1 和 Node-AZ2。
对于我的 objective,我想为高可用性设置设置两个具有相同网络应用程序图像的 pods/deploys。
即
K8S Cluster -> Worker Node: Node-AZ1
-> Pod: Backend-App-AZ1-{id}
-> Deploy: Backend-App-AZ1 (Backend App Image v1.0.0)
-> Worker Node: Node-AZ2
-> Pod: Backend-App-AZ2-{id}
-> Deploy: Backend-App-AZ2 (Backend App Image v1.0.0)
在k8s服务设置中,它包含类型-LoadBalancer,但似乎不是代理类型的负载均衡器。在我的问题中,我想找到一个 tool/config 设置,它可以是代理类型负载均衡器,用于将请求平均代理到 AZ1 和 AZ2。
例如。
Post 请求:http://www.sample.com/api
负载均衡器会将请求代理到 workload:Backend-App-AZ1 上的 api 服务或 workload:Backend-App-AZ2
上的 api 服务
如果您可以使用 Nginx ingress 并使用它处理流量,我建议您使用它
所以流量会像
internet -> ingress > K8s service > Deployments > PODs
您可以结帐:https://aws.amazon.com/blogs/opensource/network-load-balancer-nginx-ingress-controller-eks/
或守护程序集:https://github.com/nginxinc/kubernetes-ingress/blob/master/deployments/daemon-set/nginx-ingress.yaml
我是 kubernetes 的新手,我创建了一个 k8s 集群,其中包含两个工作节点 - Node-AZ1 和 Node-AZ2。
对于我的 objective,我想为高可用性设置设置两个具有相同网络应用程序图像的 pods/deploys。 即
K8S Cluster -> Worker Node: Node-AZ1
-> Pod: Backend-App-AZ1-{id}
-> Deploy: Backend-App-AZ1 (Backend App Image v1.0.0)
-> Worker Node: Node-AZ2
-> Pod: Backend-App-AZ2-{id}
-> Deploy: Backend-App-AZ2 (Backend App Image v1.0.0)
在k8s服务设置中,它包含类型-LoadBalancer,但似乎不是代理类型的负载均衡器。在我的问题中,我想找到一个 tool/config 设置,它可以是代理类型负载均衡器,用于将请求平均代理到 AZ1 和 AZ2。 例如。 Post 请求:http://www.sample.com/api 负载均衡器会将请求代理到 workload:Backend-App-AZ1 上的 api 服务或 workload:Backend-App-AZ2
上的 api 服务如果您可以使用 Nginx ingress 并使用它处理流量,我建议您使用它
所以流量会像
internet -> ingress > K8s service > Deployments > PODs
您可以结帐:https://aws.amazon.com/blogs/opensource/network-load-balancer-nginx-ingress-controller-eks/
或守护程序集:https://github.com/nginxinc/kubernetes-ingress/blob/master/deployments/daemon-set/nginx-ingress.yaml