场景1:websocket服务无法连接

最近更新时间: 2025-03-11 17:03:00

故障现象

执行terraform事件时,无法与服务器建立web socket连接,实时输出编排的控制台内容。

故障影响

高。

故障定位

websocket服务无法连接,可能的原因很多种,可能是网络问题(比如dns,clb配置问题),还有后端服务的问题。

由于云API不支持websocket协议,前端的websocket的流量原封不动地转发到cgi-server pod中,因此需要检查websocket服务是否正常运行。

进入cgi-server pod, 查看websocket启动端口。

检查websocket端口服务是否正常运行。

可以在浏览器上查看websocket的连接状态,比如说打开chrome的网络面板后,执行apply事件,我们可以看到websocket的握手协议:

客户端发送了一个HTTP GET请求,服务返回101 Switching Protocols时即表示握手协议建立成功,已经从HTTP协议升级到了Websocket协议。然后点开Messages tab,就能够看到所有的websocket数据了,在定位问题的时候很有用:

规避措施(可选)

在tce环境初始化的时候,检查cgi-server的websocket服务是否正常启动,否则TIC将无法看到TIC实时编排日志信息。