如何在Windows版Docker上设置Kubernetes与LoadBalancer一起使用?
我有一个非常简单的Kubernetes问候世界:
kubectl run my-nginx --image=nginx --replicas=1 --port=80
kubectl expose deployment my-nginx --port=80 --type=LoadBalancer
kubectl get svc
kubectl describe service my-nginx
curl -m 10 http://localhost/
curl -m 10 http://localhost:32026/
它不起作用,本地主机没有响应。我得到的输出是:
deployment.apps "my-nginx" created
service "my-nginx" exposed
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
my-nginx LoadBalancer 10.103.126.2 localhost 80:32026/TCP 0s
Name: my-nginx
Namespace: default
Labels: run=my-nginx
Annotations: <none>
Selector: run=my-nginx
Type: LoadBalancer
IP: 10.103.126.2
LoadBalancer Ingress: localhost
Port: <unset> 80/TCP
TargetPort: 80/TCP
NodePort: <unset> 32026/TCP
Endpoints: <none>
Session Affinity: None
External Traffic Policy: Cluster
Events: <none>
curl: (28) Operation timed out after 10000 milliseconds with 0 bytes received
curl: (28) Operation timed out after 10000 milliseconds with 0 bytes received
LoadBalancer似乎在外部IP中,但是它不起作用。
我已经测试过可以使用kubectl exec pod-name -it -- bash
进入吊舱,并且可以看到nginx正在吊舱中运行。但是,无法从Windows进行访问。
我还测试了与Docker映像的连接正常工作:
docker run -dit --rm --name nginx -p 80:80 nginx
curl -m 10 http://localhost/
docker stop nginx
这有效。
在Kubernetes中与LoadBalancer的连接以某种方式断开了,对其他人有用吗?有什么方法可以解决此问题?
适用于Windows的Docker, 版本2.0.0.3(31259), 频道:稳定, 版本号:8858db3
答案 0 :(得分:0)
服务器正在侦听端口32270,请尝试localhost:32270