首页 文章

Kubernetes暴露了docker接口ip

提问于
浏览
0

我可以创建一个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

1 回答

  • 1

    它看起来像 kubectl port-forward 可以帮助你 . 如果您只需要访问服务后面的单个 endpoints (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
    

相关问题