我在Linux Mint上安装了Kubernetes(minikube)集群。然后我部署了演示Example: Deploying WordPress and MySQL with Persistent Volumes。
apiVersion: v1
kind: Service
metadata:
name: wordpress
labels:
app: wordpress
spec:
ports:
- port: 80
nodePort: 30375
selector:
app: wordpress
tier: frontend
type: NodePort
externalIPs:
- 178.54.220.175
- 192.168.1.10
如果外部IP 178.54.220.175仅在路由器中,则使用Internet访问Kubernetes服务,使用Linux 192.168.1.10和ip Kubernetes 192.168.99.100:30375进行主机IP。
如何将这些IP地址与178.54.220.175关联 - > 192.168.1.10 - > 192.168.99.100:30375
答案 0 :(得分:1)
如果使用迷你立方体,则禁用此功能。
当使用VirtualBox作为管理程序时,您还可以使用VirtualBox NAT端口转发功能来允许从外部访问通过NodePorts公开的服务。
像这样的东西(限制范围,暴露整个默认的NodePort范围30000-32767需要永远......):
for port in {30000..30100}; do VBoxManage controlvm minikube natpf1 "NodePort$port,tcp,,$port,,$port"; done
您可以将它与反向SSH隧道结合到VPS,这样任何人都可以从公共互联网进行临时访问:
R_ARGS=$(for port in {30000..30100}; do echo -n "-R $port:localhost:$port "; done)
autossh -M 0 -q -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ExitOnForwardFailure=yes -o ServerAliveInterval=5 -o ServerAliveCountMax=3 user@examplevps.com -N $R_ARGS
删除VirtualBox端口转发规则:
for port in {30000..30100}; do VBoxManage controlvm minikube natpf1 delete "NodePort$port"; done
SSH转发方法虽然比较简单,但我认为管理程序不可知,所以非常感谢!
https://github.com/kubernetes/minikube/issues/877
https://cwienczek.com/reaching-minikube-from-your-machines-public-ip-aka-network-bridge/