kubernetes - network trouble-shooting tools관련
동작 중인 워크로드의 네트워크 상태나, 서비스 Endpoint등의 네트워크 상태 체를 위해
아무 pod 실행해서 centos / ubuntu / alpine / 등... 리눅스 종류
각각의 패키지 매니저 (yum/dnf, apt-get, apt, pkg, ...) 를 통해 필요한 툴을 설치하고 트러블 슈팅하면 된다.
못하는 상황이거나 귀찮거나 등등 그럴 경우 아래 툴을 사용해보자.
o network-multitool
github.com/Praqma/Network-MultiTool
hub.docker.com/r/praqma/network-multitool/
다음과 같은 툴이 포함되어 있음.
- ...
- wget, curl, iperf3
- dig, nslookup
- ip, ifconfig, ethtool, mii-tool, route
- ping, nmap, arp, arping
- ..
- ps, netstat, ss
- ..
- tcpdump, wireshark, tshark
- telnet client, ssh client, ftp client, rsync, scp
- traceroute, tracepath, mtr
- netcat (nc), socat
- ApacheBench (ab)
- mysql & postgresql client
- jq
- ..
Example)
$ kubectl run multitool --image=praqma/network-multitool --replicas=1
$ kubectl run multitool -it --image=praqma/network-multitool --generator=run-pod/v1 --rm=true bash
—> multitool pod 기동했다가 Ctrl + D 종료(Pod삭제
o netshoot
hub.docker.com/r/nicolaka/netshoot
다음과 같은 툴이 포함됨.
- ..
- bind-tools
- ..
- conntrack-tools
- curl
- dhcping
- ethtool
- fping
- httpie
- iftop
- iperf
- iproute2
- ipset
- iptables
- iptraf-ng
- iputils
- net-snmp-tools
- netcat-openbsd
- netgen
- nftables
- ..
- nmap
- nmap-nping
- ..
- strace
- tcpdump
- tcptraceroute
- termshark
- tshark
- ..
- websocat
Example)
$ kubectl run netshoot --rm -i --tty --image nicolaka/netshoot -- /bin/bash
사실 얘는 안써봄... multitool을 먼저 써봐서.... 직접 설치하고 쓰는 편이라 -_-