今天遇到了一個線上問題,公司在阿裡雲上面香港業務的伺服器突然從淩晨開始就down了,
重新開機伺服器和程式也沒用,看日志是docker 重新開機後一直加載中。
查了一下網上的資料,說是xfs檔案系統的問題。
Docker程序卡死原因:
centos7核心跟docker版本之間的一個bug,過于頻繁create/destory container、
pull/push image的時候,當thin pool滿時,DeviceMapper後端預設檔案系統xfs會不斷retry
失敗的IO,導緻程序挂起。重新開機docker,那些挂起的程序也會不斷地跑,是以需要在啟動參數上面
增加dm.xfs_nospace_max_retries=0。
但我直接把這個參數加到 /etc/docker/daemon.json上面,發現啟動失敗了。
最終看文檔發現,是完整的參數是
又是一個完美的坑。