我可以创建kubernetes部署并使用类型loadbalancer创建服务。 当我用kubectl描述pod时,我得到了我的容器绑定到docker界面的信息。我无法访问它们,也不会将eth0接口ip的调用路由到docker interface ip。
kubectl describe services
Name: fpgra
Namespace: default
Labels: run=fpgra
Selector: run=fpgra
Type: LoadBalancer
IP: 10.254.138.121
Port: <unset> 3000/TCP
NodePort: <unset> 32547/TCP
Endpoints: 172.17.2.3:3033,172.17.30.2:3033
Session Affinity: None
No events.
我只想访问我的应用程序并测试kubernetes的行为作为负载均衡器和自动缩放器。
这就是我创建服务以暴露我的应用程序以使其可以从extern访问的方式:
kubectl expose deployment fpgra --port=3000 --target-port=3033 --type=LoadBalancer
答案 0 :(得分:1)
看起来kubectl port-forward
可以帮到你。如果您只需要访问服务后面的单个端点(pod),则可以使用以下其中一个端点:
$ kubectl port-forward -h
Forward one or more local ports to a pod.
Examples:
# Listen on ports 5000 and 6000 locally, forwarding data to/from ports 5000 and 6000 in the pod
kubectl port-forward mypod 5000 6000
# Listen on port 8888 locally, forwarding to 5000 in the pod
kubectl port-forward mypod 8888:5000
# Listen on a random port locally, forwarding to 5000 in the pod
kubectl port-forward mypod :5000
# Listen on a random port locally, forwarding to 5000 in the pod
kubectl port-forward mypod 0:5000