我合并/遵循了下列手册,以便在kubernetes (GCP)上创建一个redis集群:
我已经创建了3个节点,每个节点上有2个豆荚。问题是:当我从kubernetes集群外部(通过负载均衡器外部ip)连接到redis集群时,会得到连接超时。
$ redis-cli -h external_ip_lb -p 6379 -c
external_ip_lb:6379> set foo bar
-> Redirected to slot [12182] located at interal_ip_node:6379
Could not connect to Redis at interal_ip_node:6379: Operation timed out当我进入正在运行的容器的shell并在那里执行redis-cli命令时,它就工作了。
$ kubectl exec -it redis-cluster-0 -- redis-cli -c
127.0.0.1:6379> set foo bar
-> Redirected to slot [12182] located at internal_ip_node:6379
OK
internal_ip_node:6379> get foo
"bar"我还尝试设置集群IP服务,并对本地机器端口7000执行端口设置,这与外部ip方法的错误相同。
$ kubectl port-foward pods/redis-cluster-0 7000:6379有没有人知道什么可能是错的?显然,我的本地机器不是kubernetes集群的一部分,因此与其他节点的内部IP的连接失败了。
编辑: kubectl的输出描述svc redis-集群-lb
Name: redis-cluster-lb
Namespace: default
Labels: <none>
Annotations: kubectl.kubernetes.io/last-applied-configuration:
{"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"name":"redis-cluster-lb","namespace":"default"},"spec":{"ports":[{"port"...
Selector: app=redis-cluster
Type: LoadBalancer
IP: internal_ip_lb
LoadBalancer Ingress: external_ip_lb
Port: <unset> 6379/TCP
TargetPort: 6379/TCP
NodePort: <unset> 30631/TCP
Endpoints: internal_ip_node_1:6379,internal_ip_node_2:6379,internal_ip_node_3:6379 + 3 more...
Session Affinity: None
External Traffic Policy: Cluster
Events: <none>我可以打开外部负载均衡器的IP。
https://stackoverflow.com/questions/61984561
复制相似问题