توضیحات
What is eBPF? With this revolutionary technology, you can write custom code that dynamically changes the way the kernel behaves. It’s an extraordinary platform for building a whole new generation of security, observability, and networking tools.
This practical book is ideal for developers, system administrators, operators, and students who are curious about eBPF and want to know how it works. Author Liz Rice, chief open source officer with cloud native networking and security specialists Isovalent, also provides a foundation for those who want to explore writing eBPF programs themselves.
The entire eBPF program is defined as a string called program in the Python code. This C program needs to be compiled before it can be executed, but BCC takes care of that for you. The eBPF program is loaded into the kernel and attached to an event, so the program will be triggered whenever a new executable gets launched on the machine. All that remains to do in the Python code is to read the tracing that is output by the kernel, and write it on screen. In the Chapter 2, you saw a simple eBPF Hello World, written using the BCC framework. In the Chapter 3 Ill show you a version of Hello World entirely in C, so that you can see some of the details that BCC took care of in the previous chapter. Ill also show you the stages that an eBPF program goes through on its journey from source code to execution.
eBPF programs can be used to dynamically change the behavior of the system. Theres no need to reboot the machine or restart existing processes – eBPF code starts taking effect as soon as it is attached to an event.
What we call eBPF today has its roots in the BSD Packet Filter, first described in 1993 in a paper1 written by Lawrence Berkeley National Laboratorys Steven McCanne and Van Jacobson. This paper discusses a pseudomachine that can run filters, which are programs written to determine whether to accept or reject a network packet. These programs were written in the BPF instruction set, a general-purpose set of 32-bit instructions that closely resembles assembly language.
You can imagine (or, indeed, refer to the paper to find examples of) more complex filter programs that make decisions based on other aspects of the packet. Importantly, the author of the filter can write their own custom programs to be executed within the kernel, and this is the heart of what eBPF enables.
With this book, you will:
Learn why eBPF has become so important in the past couple of years
Write basic eBPF code, and manipulate eBPF programs and attach them to events
Explore how eBPF components interact with Linux to dynamically change the operating system’s behavior
Learn how tools based on eBPF can instrument applications without changes to the apps or their configuration
Discover how this technology enables new tools for observability, security, and networking
Who This Book Is For:
This book is for developers, system administrators, operators, and students who are curious about eBPF and want to know more about how it works. It will provide a foundation for those who want to explore writing eBPF programs themselves. Since eBPF provides a great platform for a whole new generation of instrumentation and tooling, there will likely be gainful employment for eBPF developers for some years to come.
But you dont necessarily need to be planning to write eBPF code yourself for this book to be useful to you. If you work in operations, security, or any other role that involves software infrastructure, youre likely to come across eBPF-based tooling, now or over the next few years. If you understand something about the internals of these tools, youll be in a better position to use them effectively. For example, if you know how events can trigger eBPF programs, youll have a better mental model for exactly what an eBPF-based tool is really measuring when it shows you performance metrics. If youre an application developer, you might also come into contact with some of these eBPF-based toolsfor example, if you are performance tuning an application, you might use a tool like Parca to generate flame graphs showing which functions are taking the most time. If you are evaluating security tools, this book will help you understand where eBPF shines and how to avoid using it in a nave way that is less effective against attacks.
Even if youre not using eBPF tools today, I hope this book will give you interesting insights into areas of Linux that you might not have considered before. Most developers take the kernel for granted, as they use programming languages with convenient higher-level abstractions that allow them to focus on the work of application developmentwhich is plenty hard enough! They use tools like debuggers and performance analyzers to help them do their job effectively. Knowing the internals of how a debugger or performance tool works might be interesting, but its not essential.
————————————————————–
ترجمه ماشینی :
eBPF چیست؟ با استفاده از این فناوری انقلابی، می توانید کد سفارشی بنویسید که به صورت پویا نحوه رفتار هسته را تغییر می دهد. این یک پلتفرم فوق العاده برای ساختن نسل جدید ابزارهای امنیتی، قابلیت مشاهده و شبکه است. این کتاب کاربردی برای توسعه دهندگان، مدیران سیستم، اپراتورها و دانش آموزانی که در مورد eBPF کنجکاو هستند و می خواهند بدانند چگونه کار می کند ایده آل است. نویسنده لیز رایس، مدیر ارشد منبع باز با متخصصان شبکههای بومی ابری و امنیت Isovalent، همچنین پایهای را برای کسانی که میخواهند خودشان برنامههای eBPF را کاوش کنند، فراهم میکند. کل برنامه eBPF به عنوان رشته ای به نام برنامه در کد پایتون تعریف می شود. این برنامه C باید قبل از اجرا کامپایل شود، اما BCC از آن مراقبت می کند. برنامه eBPF در هسته بارگذاری می شود و به یک رویداد متصل می شود، بنابراین هر زمان که یک فایل اجرایی جدید بر روی دستگاه راه اندازی شود، برنامه فعال می شود. تنها کاری که باید در کد پایتون انجام شود این است که ردیابی خروجی هسته را خوانده و روی صفحه بنویسید. در فصل 2، یک eBPF Hello World ساده را دیدید که با استفاده از چارچوب BCC نوشته شده بود. در فصل 3 نسخهای از Hello World را به طور کامل به زبان C به شما نشان خواهم داد تا بتوانید برخی از جزئیاتی را که BCC در فصل قبل از آن مراقبت کرده است، مشاهده کنید. همچنین مراحلی را که یک برنامه eBPF در مسیر خود از کد منبع تا اجرا طی می کند، به شما نشان خواهم داد. برنامه های eBPF را می توان برای تغییر پویا رفتار سیستم استفاده کرد. نیازی به راهاندازی مجدد دستگاه یا راهاندازی مجدد فرآیندهای موجود نیست – کد eBPF به محض پیوست شدن به یک رویداد شروع به اعمال میکند. آنچه که ما امروز eBPF می نامیم ریشه در فیلتر بسته های BSD دارد که برای اولین بار در سال 1993 در مقاله ای نوشته شده توسط آزمایشگاه ملی لارنس برکلی استیون مک کن و ون جاکوبسون توضیح داده شد. این مقاله درباره یک شبه ماشین بحث میکند که میتواند فیلترها را اجرا کند، این فیلترها برنامههایی هستند که برای تعیین پذیرش یا رد کردن یک بسته شبکه نوشته شدهاند. این برنامه ها در مجموعه دستورالعمل های BPF نوشته شده اند، مجموعه ای همه منظوره از دستورالعمل های 32 بیتی که شباهت زیادی به زبان اسمبلی دارد. \ میتوانید برنامههای فیلتر پیچیدهتری را تصور کنید (یا در واقع به مقاله مراجعه کنید تا نمونههایی از آنها را بیابید) که بر اساس سایر جنبههای بسته تصمیمگیری میکنند. نکته مهم این است که نویسنده فیلتر می تواند برنامه های سفارشی خود را بنویسد تا در هسته اجرا شوند، و این قلب چیزی است که eBPF آن را فعال می کند. با این کتاب، میتوانید: یاد بگیرید که چرا eBPF در چند سال گذشته بسیار مهم شده است کدهای اولیه eBPF را بنویسید و برنامههای eBPF را دستکاری کنید و آنها را به رویدادها متصل کنید نحوه تعامل اجزای eBPF با لینوکس را برای تغییر پویا بررسی کنید. رفتار سیستم عامل بیاموزید که چگونه ابزارهای مبتنی بر eBPF میتوانند برنامهها را بدون تغییر در برنامهها یا پیکربندی آنها ابزارسازی کنند. ، مدیران سیستم، اپراتورها و دانش آموزانی که در مورد eBPF کنجکاو هستند و می خواهند در مورد نحوه عملکرد آن بیشتر بدانند. برای کسانی که میخواهند خودشان برنامههای eBPF را بنویسند، پایهای ایجاد میکند. از آنجایی که eBPF یک پلت فرم عالی برای نسل کاملاً جدید ابزار دقیق و ابزارسازی فراهم می کند، احتمالاً برای چند سال آینده شغل سودآوری برای توسعه دهندگان eBPF وجود خواهد داشت. اما لزوماً لازم نیست خودتان برنامه ریزی کنید تا کد eBPF بنویسید تا این کتاب برای شما مفید باشد. اگر در عملیات، امنیت یا هر نقش دیگری که شامل زیرساخت نرم افزاری است کار می کنید، احتمالاً اکنون یا در چند سال آینده با ابزارهای مبتنی بر eBPF مواجه خواهید شد. اگر چیزی در مورد داخلی این ابزارها می دانید، در موقعیت بهتری برای استفاده موثر از آنها خواهید بود. به عنوان مثال، اگر میدانید رویدادها چگونه میتوانند برنامههای eBPF را راهاندازی کنند، مدل ذهنی بهتری برای اینکه ابزار مبتنی بر eBPF واقعاً چه چیزی را وقتی معیارهای عملکرد را به شما نشان میدهد اندازهگیری میکند، خواهید داشت. اگر یک توسعه دهنده برنامه هستید، ممکن است با برخی از این ابزارهای مبتنی بر eBPF نیز در تماس باشید، برای مثال، اگر در حال تنظیم عملکرد یک برنامه هستید، ممکن است از ابزاری مانند Parca برای تولید نمودارهای شعله استفاده کنید که نشان می دهد کدام عملکردها بیشترین زمان را می گیرند. اگر ابزارهای امنیتی را ارزیابی میکنید، این کتاب به شما کمک میکند بفهمید که eBPF کجا میدرخشد و چگونه از استفاده از آن به روشی که در برابر حملات مؤثرتر است اجتناب کنید. حتی اگر امروز از ابزارهای eBPF استفاده نمی کنید، امیدوارم این کتاب بینش جالبی را در مورد زمینه هایی از لینوکس که ممکن است قبلاً در نظر نمی گرفتید به شما ارائه دهد. اکثر توسعهدهندگان هسته را بدیهی میدانند، زیرا از زبانهای برنامهنویسی با انتزاعات سطح بالاتر استفاده میکنند که به آنها اجازه میدهد بر روی کار توسعه برنامهای که به اندازه کافی سخت است تمرکز کنند! آنها از ابزارهایی مانند دیباگرها و تحلیلگرهای عملکرد استفاده می کنند تا به آنها کمک کند کار خود را به طور مؤثر انجام دهند. دانستن ویژگیهای داخلی نحوه عملکرد یک دیباگر یا ابزار عملکرد ممکن است جالب باشد، اما ضروری نیست.
tag : دانلود کتاب آموزش eBPF: برنامه نویسی هسته لینوکس برای مشاهده، شبکه و امنیت پیشرفته (نسخه نهایی) , Download آموزش eBPF: برنامه نویسی هسته لینوکس برای مشاهده، شبکه و امنیت پیشرفته (نسخه نهایی) , دانلود آموزش eBPF: برنامه نویسی هسته لینوکس برای مشاهده، شبکه و امنیت پیشرفته (نسخه نهایی) , Download Learning eBPF: Programming the Linux Kernel for Enhanced Observability, Networking, and Security (Final Release) Book , آموزش eBPF: برنامه نویسی هسته لینوکس برای مشاهده، شبکه و امنیت پیشرفته (نسخه نهایی) دانلود , buy آموزش eBPF: برنامه نویسی هسته لینوکس برای مشاهده، شبکه و امنیت پیشرفته (نسخه نهایی) , خرید کتاب آموزش eBPF: برنامه نویسی هسته لینوکس برای مشاهده، شبکه و امنیت پیشرفته (نسخه نهایی) , دانلود کتاب Learning eBPF: Programming the Linux Kernel for Enhanced Observability, Networking, and Security (Final Release) , کتاب Learning eBPF: Programming the Linux Kernel for Enhanced Observability, Networking, and Security (Final Release) , دانلود Learning eBPF: Programming the Linux Kernel for Enhanced Observability, Networking, and Security (Final Release) , خرید Learning eBPF: Programming the Linux Kernel for Enhanced Observability, Networking, and Security (Final Release) , خرید کتاب Learning eBPF: Programming the Linux Kernel for Enhanced Observability, Networking, and Security (Final Release) ,

نقد و بررسیها
هنوز بررسیای ثبت نشده است.