當您在EDAS上進行應用部署、啟動、擴容/縮容等操作時,應用變更記錄將整個變更過程以可視化的方式展現給您。您可以直觀的看到變更流程的進度。如果變更失敗,您可以在變更詳情中查詢變更流程中哪些步驟執行失敗了,以及失敗的原因。
排查變更失敗問題
執行應用變更操作后,可以跳轉到應用詳情頁,通過變更流程排查變更失敗問題。
在應用詳情頁面左側的導航欄中單擊變更記錄。
如果某次變更失敗,則在變更狀態列會顯示執行失敗。
在變更記錄頁面執行失敗的變更記錄的操作列單擊查看。
在變更詳情頁面的第一批部署(取決于您在部署該應用時設置的分批數。如果您設置了2批部署,則會有第一批部署和第二批部署兩個頁面。)區域單擊失敗的階段(如執行部署),在右側實例中查看失敗步驟的具體日志,定位問題。
應用變更典型異常及處理
下面介紹應用變更時的幾種典型異常如何通過變更流程排查及處理。
端口健康檢查異常導致變更失敗
可能原因
應用啟動時應該被正常占用的65000端口不可訪問。
客戶的Tomcat容器沒有正常啟動。
處理方法
查看應用日志是否有相應的異常日志。
URL健康檢查失敗導致變更失敗
如果用戶配置了健康檢查URL,應用在啟動時會檢查這個URL是否可以正常訪問。在收到Http code為200的返回碼后,應用發布流程才會繼續進行。如果在3分鐘的健康檢查周期內都收到錯誤的響應(非200),則認為URL健康檢查失敗。
處理方法
應用啟動失敗,需要檢查應用日志是否正常啟動。
檢查URL地址是否配置出錯。
檢查應用是否配置了攔截器,攔截了對HTTP健康檢查URL的請求。
處理完成后,再次部署應用。
磁盤滿導致變更失敗
磁盤滿會導致在變更流程中,應用長時間處于某個階段。
報錯信息
[EDAS-10000] 磁盤上沒有剩余空間了
或No space left on device. Free space (for /home/admin) in bytes: 0exit 1
。說明機器的磁盤滿了,一般是應用的業務日志將磁盤打滿了,此時需要用戶清理應用日志。
處理方法
ECS集群應用需要登錄ECS清理磁盤上的日志。
Swarm集群下的Docker應用則需要重置應用。重置后,容器會被停止、刪掉,然后重建。這樣磁盤空間就會被釋放出來。
缺少服務關聯角色導致變更失敗
可能原因
由于您的賬號沒有開通服務關聯角色AliyunServiceRoleForAutoScaling。該角色可以使彈性伸縮服務獲得關聯云資源的訪問權限,例如ECS、VPC等的訪問權限。
處理方法
在ESS控制臺開通服務關聯角色AliyunServiceRoleForAutoScaling。具體操作,請參見授予彈性伸縮服務權限。