42장. BPF 컴파일러 컬렉션을 사용한 네트워크 추적
BCC(BPF Compiler Collection)는 eBPF(extended Berkeley Packet Filter) 프로그램을 쉽게 생성할 수 있는 라이브러리입니다. eBPF 프로그램의 주요 유틸리티는 오버헤드 또는 보안 문제가 발생하지 않고 운영 체제 성능 및 네트워크 성능을 분석하는 것입니다.
BCC는 사용자가 eBPF의 심층적인 기술적 세부 사항을 알 필요가 없으며 eBPF 프로그램이 미리 생성된 bcc-tools
패키지와 같은 많은 아웃-인드 시작점을 제공합니다.
참고
eBPF 프로그램은 디스크 I/O, TCP 연결 및 프로세스 생성과 같은 이벤트에서 트리거됩니다. 커널에서 안전한 가상 시스템에서 실행되기 때문에 프로그램이 커널을 충돌, 루프 또는 응답하지 않아야 하는 경우가 거의 없습니다.
42.1. bcc-tools 패키지 설치
bcc-tools
패키지를 설치합니다. 이 패키지는 BPF Compiler Collection(BCC) 라이브러리를 종속성으로 설치합니다.
절차
bcc-tools
를 설치합니다.#
dnf install bcc-tools
BCC 툴은
/usr/share/bcc/tools/
디렉토리에 설치됩니다.선택적으로 툴을 검사합니다.
#
ll /usr/share/bcc/tools/
... -rwxr-xr-x. 1 root root 4198 Dec 14 17:53 dcsnoop -rwxr-xr-x. 1 root root 3931 Dec 14 17:53 dcstat -rwxr-xr-x. 1 root root 20040 Dec 14 17:53 deadlock_detector -rw-r--r--. 1 root root 7105 Dec 14 17:53 deadlock_detector.c drwxr-xr-x. 3 root root 8192 Mar 11 10:28 doc -rwxr-xr-x. 1 root root 7588 Dec 14 17:53 execsnoop -rwxr-xr-x. 1 root root 6373 Dec 14 17:53 ext4dist -rwxr-xr-x. 1 root root 10401 Dec 14 17:53 ext4slower ...위 목록의
doc
디렉터리에는 각 툴에 대한 문서가 포함되어 있습니다.