解決思路:
1、查看測試服java接口正常、tracker和storage進程正常、端口也通。
2、查看storage日誌,有很多報錯
ERROR - file: storage_service.c, line: 4460, client ip: 192.168.0.69, file_ext_name: [B@216 is invalid!
3、查看tracker日誌,只在最後壹行有個信息:
INFO - file: tracker_mem.c, line: 5954, storage server 192.168.0.21:23000 idle too long, status change to offline!
大概含義是空閑時間過長,狀態置為離線。
解決:重啟storage後解決問題
疑問:文件服務壹直在使用,為什麽會說idle too long。後來想到中午公司網絡不正常,然後看到tracker有個啟動參數是g_connection_pool_max_idle_time=3600s。應該是指,tracker會檢測storage是否在線,如果超過3600s沒檢測到storage
則會將storage踢下線,類似於nginx的upstream。但問題是,網絡恢復正常後,tracker卻沒有再次將storage的狀態改變。。。
這是壹個坑。
計劃:需要及時到tracker上查看storage的狀態,以免出現上述問題。可以將此加入到監控項中。