“一直转圈”基本可以定位到是负责对接License Server的某个Pod(容器)卡住了,常见的原因可能是网络中断或升级等操作导致的Pod假死。负责这个功能的Pod在不同版本中名字可能不一样,可以按下面几个最有可能的目标去排查。
核心排查对象是这个Pod:cloudos-license-manager(最常见,用于版本E5102及以上)。如果没找到,也可能是下面这几种:
license-core:同样常见,负责授权组件。
cancer:在一些经验分享中被提及,代表了更早的版本。
os-license-:在一些官方案例中作为操作对象。
排查时可以从以下几步进行:
1. 定位可疑Pod
使用以下命令并列显示关键信息,找出状态非Running或重启次数高的Pod:
2. 判断Pod状态并分析
Pod状态非Running,建议直接重启;若状态为Running但问题依旧,大概率是Pod“假死”,需从Pod日志和网络连接综合判断:
查看Pod日志:执行命令进一步排查:
测试网络连通性:确认CloudOS和License Server之间互通无阻,端口为5555。
3. 重启Pod
优先方案:直接删除Pod让其自愈(注意:在业务低谷时段执行)。
备用方案:若删除无法自动恢复,登录后台管理页面找到对应的“重启”按钮。
4. 重启后重新连接
5. 最终验证
重启后刷新页面查看连接状态,同时检查CloudOS控制台的“系统 > 软件授权”页面配置(地址、端口、密码)是否正确。
暂无评论
先给结论:CloudOS 里负责连接 License Server 的核心微服务 / Pod,通常是 plat-license(或 license-service),归属 plat 命名空间;同时 plat-gateway/plat-web 也会参与前端请求转发。下面直接给你排查命令、日志路径和常见卡点。
一、先定位 License 相关 Pod
登录任意控制节点,切到 root,执行:
bash
运行
# 查看plat命名空间下所有pod,过滤license
kubectl get pods -n plat | grep -i license
常见输出:
plaintext
plat-license-7f98765432-abcde 1/1 Running 0 1d
核心 Pod:plat-license-xxxx —— 真正和 License Server 建连、拉授权的组件。
关联 Pod:
plat-gateway-xxxx:网关,前端页面请求先到这里,再转给 plat-license。
plat-web-xxxx:Web UI,你看到的 “转圈” 页面所属 Pod。
二、查看 plat-license 日志(关键排障)
bash
运行
# 实时看日志
kubectl logs -f plat-license-7f98765432-abcde -n plat
# 导出日志到文件
kubectl logs plat-license-7f98765432-abcde -n plat > /tmp/license.log
日志关键词:
connect refused:网络不通 / 端口没放通。
timeout:网络延迟、防火墙拦截、License Server 未响应。
auth failed:用户名 / 密码错误。
no route:路由不可达。
日志物理路径(也可直接看宿主机日志):
plaintext
/var/log/cloudos/plat/license/
三、快速排查:为什么一直转圈?
1)网络连通性(最常见)
CloudOS → License Server 默认端口:TCP 8090。在 plat-license 所在节点测试:
bash
运行
telnet <License-Server-IP> 8090
# 或
curl -v http://<License-Server-IP>:8090
不通:检查防火墙(iptables / 安全组)、路由、端口是否放行。
通:继续往下。
2)License Server 状态
浏览器访问:http://<License-Server-IP>:8090,确认服务正常、授权未过期、客户端列表无冲突。
检查 License Server 日志:/var/log/flexnet/ 或安装目录下 lmgrd.log。
3)plat-license 配置是否正确
查看配置文件(容器内):
bash
运行
kubectl exec -it plat-license-xxxx -n plat -- cat /etc/cloudos/license.conf
确认:
plaintext
license.server.ip=<正确IP>
license.server.port=8090
license.username=xxx
license.password=xxx
4)重启 License 组件(临时恢复)
bash
运行
# 重启plat-license
kubectl delete pod plat-license-xxxx -n plat
# 必要时重启网关
kubectl delete pod plat-gateway-xxxx -n plat
四、补充:CloudOS 版本差异
5.0/7.0:核心 Pod 名基本都是 plat-license,命名空间 plat。
若过滤不到:
bash
运行
kubectl get pods -n plat | grep -E "lic|auth"
五、一句话总结
核心 Pod:plat-license(负责和 License Server 通信)。
排障顺序:网络连通(8090 端口)→ License Server 状态 → plat-license 日志 → 重启组件。
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论