LLaMa-Factory K8s 部署记录:llamafactory-cli webui 无法访问的 Ingress 路由规则配置调整
·
问题描述
在 Kubernetes 集群中部署 LLaMa-Factory 时,通过 llamafactory-cli webui 启动的 WebUI 服务无法通过 Ingress 访问,需调整 Ingress 路由规则以解决访问问题。
常见原因分析
- Ingress 未正确配置路径规则,导致流量无法转发到后端 Service。
- Service 或 Pod 选择器不匹配,导致 Ingress 无法找到后端端点。
- 端口配置错误,WebUI 服务的端口未暴露或与 Ingress 配置不一致。
- 未启用必要的 Ingress 控制器(如 Nginx、Traefik 等)。
解决方法
检查 Service 和 Pod 状态
确保 WebUI 相关的 Pod 和 Service 正常运行:
kubectl get pods -n <namespace>
kubectl get svc -n <namespace>
确认 Pod 状态为 Running,Service 的 CLUSTER-IP 和端口已正确分配。
调整 Ingress 配置
修改 Ingress 资源,确保路径规则指向正确的 Service 和端口。以下是典型配置示例:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: llamafactory-webui
namespace: <namespace>
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- host: webui.example.com # 替换为实际域名
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: llamafactory-webui-service # 替换为实际 Service 名称
port:
number: 7860 # 替换为 WebUI 服务端口
验证端口一致性
确认 WebUI 服务的端口(如 7860)与 Ingress 配置的 port.number 一致。若不一致,需调整 Service 或 Ingress。
检查 Ingress 控制器
确保集群已安装并运行 Ingress 控制器(如 Nginx Ingress Controller):
kubectl get pods -n ingress-nginx
若未安装,需参考官方文档部署对应的 Ingress 控制器。
测试路由访问
应用 Ingress 配置后,通过以下命令验证是否生效:
kubectl describe ingress llamafactory-webui -n <namespace>
通过浏览器或 curl 访问配置的域名,检查是否返回预期内容:
curl -v http://webui.example.com
补充说明
- 若使用 HTTPS,需在 Ingress 中配置 TLS 证书。
- 若路径需重写(如从
/webui转发到/),需通过注解(如nginx.ingress.kubernetes.io/rewrite-target)实现。 - 若问题仍未解决,检查 Kubernetes 事件日志:
kubectl get events -n <namespace>
更多推荐



所有评论(0)