今天接到項(xiàng)目上開發(fā)人員的問題反饋,客戶有一臺(tái)虛機(jī)在安裝完docker之后,啟動(dòng)一些docker容器服務(wù)時(shí),發(fā)現(xiàn)這些容器服務(wù)無法正常啟動(dòng)。通過tail -f /var/log/messages
查看系統(tǒng)log,
發(fā)現(xiàn)系統(tǒng)一直在報(bào)錯(cuò),主要內(nèi)容是bro:port 2(veth0) entered blocking state
或bro:port 1(vxlan0) entered blocking state
,網(wǎng)卡呈現(xiàn)阻塞的狀態(tài),具體報(bào)錯(cuò)詳見下圖:
使用systemctl status docker -l
查看docker運(yùn)行狀態(tài),發(fā)現(xiàn)docker是正常運(yùn)行的,但是狀態(tài)信息里打印的有error錯(cuò)誤,都是網(wǎng)絡(luò)方面的報(bào)錯(cuò)~
上面 docker 運(yùn)行狀態(tài)是正常的,說明 docker 的安裝部署應(yīng)該是沒問題的,從報(bào)錯(cuò)上看應(yīng)該是主機(jī)網(wǎng)路的問題,經(jīng)排查發(fā)現(xiàn)系統(tǒng)的 selinux
是enforcing
狀態(tài)。
臨時(shí)關(guān)閉 selinux 重啟 docker 發(fā)現(xiàn)網(wǎng)絡(luò)恢復(fù)正?!?/p>
主要排查步驟如下:
(1)查看系統(tǒng)當(dāng)前selinux的狀態(tài)
getenforce
(2)關(guān)閉selinux
#臨時(shí)關(guān)閉 setenforce 0 #永久關(guān)閉 sed -i s#SELINUX=enforcing#SELINUX=disabled#g /etc/sysconfig/selinux
(3)查看系統(tǒng)防火墻狀態(tài)
#查看狀態(tài) systemctl status firewalld #關(guān)閉防火墻(按需) systemctl stop firewalld
(4)重啟docker服務(wù)
systemctl restart docker
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。