如何让istio-ingressgateway的端口转发在后台运行?
如何将Kubectl端口转发置于后台运行?
问题描述
我已按照kubeflow/manifests仓库的指引部署了Kubeflow,并确认istio-ingressgateway服务正常运行:
kubectl get svc istio-ingressgateway -n istio-system
输出:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE istio-ingressgateway NodePort 10.96.89.178 <none> 15021:32680/TCP,80:32075/TCP,443:32334/TCP,31400:30226/TCP,15443:30276/TCP 15m
执行端口转发命令:
kubectl port-forward svc/istio-ingressgateway -n istio-system 8080:80
得到输出:
Forwarding from 127.0.0.1:8080 -> 8080 Forwarding from [::1]:8080 -> 8080
当前连接8080端口时必须保持终端运行,我希望将该端口转发操作置于后台运行,请问有实现方法吗?
环境信息:
- Ubuntu 20.04
kubectl version --client && kubeadm version
输出:
Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.13", GitCommit:"a43c0904d0de10f92aa3956c74489c45e6453d6e", GitTreeState:"clean", BuildDate:"2022-08-17T18:28:56Z", GoVersion:"go1.16.15", Compiler:"gc", Platform:"linux/amd64"} kubeadm version: &version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.13", GitCommit:"a43c0904d0de10f92aa3956c74489c45e6453d6e", GitTreeState:"clean", BuildDate:"2022-08-17T18:27:51Z", GoVersion:"go1.16.15", Compiler:"gc", Platform:"linux/amd64"}
解决方案
1. Shell后台运行符&
直接在命令末尾追加&,让进程在后台运行:
kubectl port-forward svc/istio-ingressgateway -n istio-system 8080:80 &
执行后会返回进程ID(PID),如需停止进程,执行kill <PID>即可。
2. nohup实现终端关闭后仍运行
如果需要关闭终端后端口转发进程继续存活,使用nohup忽略挂起信号,同时可将输出重定向避免生成日志文件:
nohup kubectl port-forward svc/istio-ingressgateway -n istio-system 8080:80 > /dev/null 2>&1 &
> /dev/null:丢弃标准输出2>&1:将标准错误重定向到标准输出,一并丢弃- 停止进程可执行
kill <PID>,或用pkill -f "kubectl port-forward"批量终止相关进程
3. 终端复用工具(screen/tmux)
适合需要随时回到会话查看端口转发日志的场景:
使用screen
- 启动命名会话:
screen -S kubeflow-port-forward - 在会话内执行端口转发命令
- 按下
Ctrl+A再按D,将会话后台分离 - 重新连接会话:
screen -r kubeflow-port-forward
使用tmux
- 启动命名会话:
tmux new -s kubeflow-port-forward - 在会话内执行端口转发命令
- 按下
Ctrl+B再按D,将会话后台分离 - 重新连接会话:
tmux attach -t kubeflow-port-forward
4. 直接使用NodePort访问(无需端口转发)
你的istio-ingressgateway已配置为NodePort类型,80端口已映射到节点的32075端口,可直接通过节点IP+端口访问Kubeflow:
http://<你的节点IP>:32075
这种方式无需维护端口转发进程,更适合长期使用。
内容的提问来源于stack exchange,提问作者TaeUk Noh
相关产品推荐
相关产品推荐

