搭建MHA時 yum 安裝perl模組提示 baseurl 錯誤
今天在搭建MySQL MHA 安裝MHA node所需的perl模組(DBD:mysql)時遇到了一個小的錯誤,如果思路不對的話,還是產生不少麻煩。
現梳理記錄下來。
問題現象
執行的命令
yum install perl-DBD-MySQL -y
報錯資訊如下:
可以看出錯誤的關鍵字為 :Cannot find a valid baseurl for repo: base/7/x86_64。
這個問題 說明url 無效。
分析處理
在這個錯誤提示中其實有顯示url的資料,我們可以從錯誤資訊中的二、三兩行來定位。資料如下:
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was14: curl#6 - "Could not resolve host: mirrorlist.centos.org
判讀是否有效,我們可以首先看是否可以ping通。
執行命令:
ping mirrorlist.centos.org
發現此時是ping 不通的,說明確實有問題。但此時尚不可以判斷是源主機(網址)不存在或非法,也有一種可能,就是本地請求沒有成功發出去。
怎麼驗證呢?其實很簡單,我們只要Ping下百度就可以了。
執行命令
ping www.baidu.com
從以上截圖中可以看出百度也ping不通,此時說明不是url的問題。問題在於我們request請求,根本就沒有傳送出到host主機。
所以,問題很可能在我們本機的網路設定。但是考慮到,本機已成功分配到IP地址,ip addr 顯示正常,可以在區域網內互聯。
此時感覺很是奇怪。
忽然想到,可能是DNS的問題。
安裝本機時同事使用的老的裝機模板,所以DNS引數沒有及時更新。
問題基本定位到了,下一步修改。
馬上進入 /etc/sysconfig/network-scripts目錄,修改檔案 ifcfg-ens32 中的DNS1引數。
修改DNS1配置後,記得一定要重啟 network 服務,否則無效。
執行重啟的命令如下:
service network restart
結果驗證
此時 ping 百度正常
ping 安裝程式的url正常
再次安裝perl模組(DBD:mysql),成功執行
後記
這只是個小問題,沒有太大的科技含量。我們在yum安裝模組時,經常會遇到各種各樣的坑。總結下,記於此,更多的是經常提醒自己,怎麼處理問題。如果能對初學者有所裨益,那是更好。