我有一个在内存数据库中使用的应用程序。我使用POD创建了状态填充,例如3副本。使用PVC存储与数据库相关的文件。
我使用loabalancer揭露了状态填充。
因此,当流量每次将其转发到不同的豆荚时,交通量时。
无论如何,我是否可以根据某种条件控制到POD的LoadBalacing(例如,如果客户端IP是X转到Pod Y)?
您有一个领导者/追随者拓扑,要求将流量引导到上述nome(主节点)有缺陷,原因有两个:
- 当前领导者失败并且有一个新的会发生什么选举新领导者
- 豆荚是短暂的事实他们不应该在生产中发挥重要作用,而是工作带有部署及其复制品。您要实现的目标是一个反图案
无论如何,如果您想要的话,也许您想阅读有关gateways in istio
的信息,可以在此处找到
您可以使用K8S Ingress资源来解决此情况。我认为您要做的是基于主机的路由。使用标签将您的豆荚放在不同的服务后面。在您的案例1-100落后于服务1、100-200幕后的服务2等。然后创建一个入学资源,以基于主机或路径的方式将传入的流量重定向到不同的服务。您可能必须使用NGINX这样的代理才能在公共云平台中使用此功能。YAML清单将是这样的:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: example-ingress
annotations:
kubernetes.io/ingress.class: nginx
spec:
rules:
- host: host1.com
http:
paths:
- path: /web1
backend:
serviceName: service1
servicePort: 443
- path: /api/v1/a
backend:
serviceName: service2
servicePort: 80
- path: /api/v1/b
backend:
serviceName: service3
servicePort: 80
- host: host2.com
http:
paths:
- path: /web2
backend:
serviceName: service4
servicePort: 443
- path: /api/v2/a
backend:
serviceName: service5
servicePort: 80