일상/IT

eBPF 기능 탐색

얇은생각 2023. 7. 11. 07:30
반응형

최고 오픈 소스 책임자인 리즈 라이스는 eBPF에 대한 새 책을 발표하고 개발자에게 초능력을 부여할 수 있는 방법을 설명합니다.

Dev Interrupted의 이번 주 에피소드에서는 Learning eBPF의 저자이자 Isivalent의 최고 오픈 소스 책임자인 Liz Rice와 이야기를 나누었습니다: 향상된 관찰 가능성, 네트워킹 및 보안을 위해 Linux 커널 프로그래밍.

Liz는 오픈 소스, 컨테이너 및 클라우드 네이티브 기술에 대한 전문가이며, 그녀의 책, 그녀가 사람들이 말하는 eBPF "초능력자", 프로젝트 케플러와 같은 eBPF를 둘러싼 흥미로운 프로젝트에 대해 논의합니다.

문자 집합이기 때문에, 그것이 무엇을 의미하는지 말해야 합니다. 그리고 그것은 확장 버클리 패킷 필터를 의미합니다. 하지만 이제 그 단어들을 머릿속에서 지울 수 있습니다. 왜냐하면, 비록 그것이 패킷 필터링에 뿌리를 두고 있지만, 그것은 현재 그 두문자어가 거의 의미가 없는 것보다 훨씬 더 많은 것을 할 수 있기 때문입니다.

그래서 이것을 eBPF라는 용어로 생각하고 커널 내부에서 맞춤형 프로그램을 실행할 수 있게 해줍니다. 요즘에는 Windows에서도 eBPF를 실행할 수 있습니다. 그래서 다른 운영 체제에 채택되고 있습니다. 하지만 이러한 종류의 역사와 리눅스에서 가장 널리 채택되고 있습니다.

그리고 그곳이 가장 친숙한 곳입니다. 사용자 정의 프로그램을 작성하고 커널에 동적으로 로드하여 시스템의 모든 이벤트에 연결할 수 있습니다. 그러면 프로그램이 이벤트에 대한 정보를 수집할 수 있습니다. 그래서 관측 가능성을 위해 사용할 수 있습니다. 커널이 동작하는 방식에도 영향을 미칠 수 있습니다.

따라서 네트워크 패킷을 수정하거나 네트워크 패킷을 리디렉션하여 네트워킹 기능을 구축하거나 보안상의 이유로 정책 결정을 내리는 데 사용할 수 있습니다. 네트워크 패킷을 삭제하든 보안 관점에서 특정 작업을 허용하거나 거부하든 커널의 동작 방식을 수정하고 동적으로 수정할 수 있는 기능은 초능력을 줍니다.

 

 

eBPF 기능 탐색

 

 

책을 따라가기를 추천하는 사람의 유형

그래서 약간 아이러니한 것은 많은 사람들이 그들만의 eBPF 코드를 작성할 필요가 없다고 생각한다는 것입니다. 그래서 저는 아무도 읽을 필요가 없다고 생각하는 책을 썼습니다. 하지만 대부분의 경우, 필요해서가 아니라 관심이 있고 원하기 때문에 무언가를 합니다. 직접 해보고 코드를 봐야 합니다. 그리고 그것이 책에서 하려고 했던 것입니다. 그래서, 사람들이 말하는 이 eBPF가 무엇인지 그리고 어떻게 사람들이 말하는 이 놀라운 초능력들을 성취하는지에 관심이 있는 사람들을 위해 설명해주세요.

책에서 보여주고 그것을 구축하려고 노력하고 있습니다. 그리고 설명하는 가장 좋은 방법은 코드를 통해서입니다. 만약 그렇다면, 나중에 가서 eBPF 코드를 작성하고 싶습니다. 바라건대, 그렇게 하는 것이 좋은 시작점이기를 바랍니다. 하지만  대부분이 괜찮을 것이라고 생각합니다. 이것은 개념들이 어떻게 작동하는지에 대한 느낌을 줍니다. 그것은 이해할 수 있는 정신적 모델을 줍니다. 다른 도구들이 eBPF에서 어떻게 만들어지는지, 어떻게 작동하는지, 그리고 바라건대, 그것으로부터 약간의 관심을 얻을 수 있기를 바랍니다.

반응형