我使用命令kubectl expose deployment hotspot-deployment --type=LoadBalancer --port=8080
部署了服务
并且外部IP处于待处理状态:
hotspot-deployment LoadBalancer 10.104.104.81 <pending> 8080:31904/TCP 1m
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 18m
在寻找解决方案之后,我通过以下方式将外部IP分配给了我的服务:
kubectl patch svc hotspot-deployment -p '{"spec": {"type": "LoadBalancer", "externalIPs":["192.168.98.103"]}}'
并分配了IP:
hotspot-deployment LoadBalancer 10.106.137.71 192.168.98.103 8080:31354/TCP 12m
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 35m
现在,当我尝试使用以下网址访问服务时:http://192.168.98.103:8080
该页面无法打开。我试着用
minikube tunnel
,它显示:
machine: minikube
pid: 33058
route: 10.96.0.0/12 -> 192.168.99.105
minikube: Running
services: [hotspot-deployment]
errors:
minikube: no errors
router: no errors
loadbalancer emulator: no errors
请帮助!
答案 0 :(得分:0)
首先,您不能不在added by them:
类型的minikube中公开您的服务,因为它打算使用云提供商的负载均衡器
您应该使用LoadBalanser
命令:
service
然后在浏览器中打开网址