在使用Redis串連地址串連執行個體時,如果因DNS服務出現問題導致ECS解析串連地址失敗,ECS與Redis之間的網路連接將會中斷。您可以參考本文解決此類問題。
問題原因
ECS與Redis之間出現串連問題的原因多種多樣,DNS解析失敗是其中較為常見的一種。
當出現UnknownHostException
或者failed to connect: r-***************.redis.rds.aliyuncs.com could not be resolved
之類報錯,提示未知主機名稱或串連地址無法正常解析時,請檢查網域名稱的正確性和DNS伺服器設定。
操作步驟
本文以Linux環境為例進行說明。
- 檢查業務代碼中設定的Redis串連地址是否正確。說明 您可以在Redis管理主控台中執行個體詳情頁面的串連地址地區查看Redis的串連地址,如下圖所示。
- 確認ECS執行個體是否配置了正確的DNS伺服器,具體操作請參見Linux系統的ECS執行個體內部無法正常解析網域名稱。
- 可選:若以上步驟未能解決問題,您可以採用臨時方案。在
/etc/hosts
檔案中加入Redis的網域名稱和IP映射地址,確保網域名稱可以正常解析,之後參考Redis串連問題排查流程文檔排除其它原因引起的串連問題。重要/etc/hosts
檔案的編輯方法類似resolv.conf
。修改/etc/hosts
的方案只能作為臨時解決方案,如果Redis執行個體的IP地址發生改變,該方案將會失效。