Kubeshark - 트래픽 분석 도구
목차
컨테이너, 포드, 노드 및 클러스터에 들어오고 나가는 모든 트래픽과 페이로드를 캡처하고 모니터링하는 API 트래픽 분석기
- 내부 네트워크에 대한 실시간 프로토콜 가시성 제공
- eBPF를 통해 구현, 커널 공관과 유저 공간의 모니터링을 통해 인사이트 제공
- kprobe를 사용해 TCP 커넥션에 대한 정보(Source, Destination IP Port)를 수집(Trace)하여 Request/Reponse를 하나로 묶어 제공
- 실제 TCP 패킷은 PCAP 파일로 임시 저장하여 다운로드 가능
- TLS로 암호화된 패킷은 평문으로 확인 가능
- 통신 간 발생하는 Request, Reponse Header 확인을 통한 애플리케이션 인증 문제확인
- Network, Memory 자원을 많이 사용하므로 ks tab 명령 사용 시 대상을 정확히 지정하여 trace 하는 것을 권장
- ex : ks tab -n default “(calico* | myweb*)”
설치
#설치
$ sh <(curl -Ls https://kubeshark.co/install)
🦈 Started to download Kubeshark
######################################################################################################################################################## 100.0%
⬇️ Kubeshark is downloaded into /home/kuber/dashboard_rbac/kubeshark
Do you want to install system-wide? Requires sudo 😇 (y/N)? y
[sudo] password for kuber:
Kubeshark is installed into /usr/local/bin/kubeshark
Do you want to add 'ks' alias for Kubeshark? (y/N)? y
✅ You can use the ks command now.
Please give us a star 🌟 on https://github.com/kubeshark/kubeshark if you ❤️ Kubeshark!
#실행
$ ks tab
#실행 후 맨아래서 확인 가능
... Kubeshark is available at: url=http://127.0.0.1:8899외부접속 설정
- 마스터 노드에서만 브라우저 접속가능
- HOME/.kubeshark/config.yaml 에 설정
- 4개 노드까지만 무료 사용가능
- 보안 취약 사용하지 않는걸 추천
- ks tap –proxy-host 0.0.0.0 을 통해 커맨드에서 바로 사용 가능
$ cd $HOME
$ mkdir .kubeshark
$ vi .kubeshark.config.yamltap:
proxy:
host: 127.0.0.1