概述
容器很好用,但是容器要是出現(xiàn)網(wǎng)絡(luò)問(wèn)題就頭大,比如說(shuō)幾十個(gè)容器中有一個(gè)容器瘋狂亂發(fā)報(bào)文沖擊防火墻. 防火墻可不管你,直接就把整個(gè)宿主機(jī)拉入小黑屋.
凡是網(wǎng)絡(luò)問(wèn)題,工具不頂用就要考慮抓包了,,我們可以抓宿主機(jī)的包,也可以通過(guò)nsenter抓某個(gè)容器的包.
比如我這有一個(gè)案例,一個(gè)容器不斷的請(qǐng)求dns.
不需要每個(gè)docker都安裝抓包工具,只要宿主機(jī)有tcpdump就可以了,利用nsenter,用來(lái)進(jìn)入到進(jìn)程的linux namespace中。centos7自帶
#獲取容器的pid
docker inspect 1d4d8cdf0dc4 -f '{{.State.Pid}}'
5583
#進(jìn)入容器的namespace
nsenter -n -t 5583
抓包就用 tcpdump -i 網(wǎng)卡名 host 只抓取指定的ip