238 страниц Если кого-то интересуют главы книги по мере продвижения перевода - я буду их промежуточные варианты (по мере их готовности) выкладывать сюда.
Перевод книги: Liz Rice "Learning eBPF"
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
Делаю перевод книги: Liz Rice, Learning eBPF
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
Про сам eBPF ... ну и ещё про профилировщик Linux Prof - понемножку здесь: Berkeley Packet Filter (BPF) ... накапливается.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
В принципе, всё что касается eBPF (и отчасти профилировщика Perf) - это принципиальные технологии для всего, что оносится к системе Linux и системному программированию под Linux.
Гораздо больше чем десятки и сотни появляющихся новых технологий, по которым издают тысячи книг.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
Предисловие
В облачном сообществе и за его пределами eBPF стал одной из самых горячих технических тем за последние годы. Новое поколение мощных инструментов и проектов в области сетевой работы, безопасности, наблюдения и многого другого было создано (и продолжает создаваться) с использованием eBPF в качестве платформы, предлагая более высокую производительность и точность по сравнению с их предшественниками. Конференции, связанные с eBPF, такие как eBPF Summit и Cloud Native eBPF Day, привлекли тысячи участников и зрителей, и на момент написания этой статьи сообщество eBPF Slack насчитывает более 14 000 участников.
...
- Вложения
-
- eBPF.Preface.5.pdf
- (60.4 КБ) 16 скачиваний
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
Часть 1 : Что такое eBPF и почему это важно?
eBPF — это революционная технология ядра, которая позволяет разработчикам писать собственный код, который можно динамически загружать в ядро, изменяя поведение ядра.
Это обеспечивает новое поколение высокопроизводительных сетевых инструментов, средств наблюдения и безопасности. И, как вы увидите, если вы хотите оснастить своё приложение этими инструментами на основе eBPF, вам не нужно каким-либо образом модифицировать или перенастраивать код самого приложения, благодаря удобному расположению самого eBPF внутри ядра Linux.
- Вложения
-
- eBPF.CHAPTER.01.9.pdf
- (554.2 КБ) 16 скачиваний
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
Часть 2 : «Hello World» от eBPF
Ниже приведен полный исходный код hello.py, приложения eBPF «Hello World», написанного с использованием библиотеки BCC Python:Код: Выделить всё
#!/usr/bin/python from bcc import BPF program = r""" int hello(void *ctx) { bpf_trace_printk("Hello World!"); return 0; } """ b = BPF(text=program) syscall = b.get_syscall_fnname("execve") b.attach_kprobe(event=syscall, fn_name="hello") b.trace_print()
- Вложения
-
- eBPF.CHAPTER.02.8.pdf
- (378.14 КБ) 16 скачиваний
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
Часть 3 : Анатомия eBPF программы
В предыдущей главе вы видели простую программу eBPF «Hello World», написанную с использованием инфраструктуры BCC. В этой главе приведен пример версии программы «Hello World», полностью написанной на C, чтобы вы могли увидеть некоторые детали, о которых BCC позаботилась за кулисами.
- Вложения
-
- eBPF.CHAPTER.03.4.pdf
- (175.18 КБ) 15 скачиваний
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
По поводу русскоязычной терминологии ... относительно eBPF, Perf, kprobes и др. подобных новых вещей в Linux, которых в русскоязычной практике пока нет.
По ходу перевода её (терминологию) приходится "придумывать" ... и менять на более удачную, по ходу переводов следующих частей. Поэтому предыдущие части приходится пересматривать и корректировать под новые изменения терминологии.
В связи с этим, я буду менять редакции всех уже ранее выложенных PDF частей. Менять буду без специального предупреждения. Но номер последней (текущей) редакции - это последняя цифра в имени прикреплённого файла.
По ходу перевода её (терминологию) приходится "придумывать" ... и менять на более удачную, по ходу переводов следующих частей. Поэтому предыдущие части приходится пересматривать и корректировать под новые изменения терминологии.
В связи с этим, я буду менять редакции всех уже ранее выложенных PDF частей. Менять буду без специального предупреждения. Но номер последней (текущей) редакции - это последняя цифра в имени прикреплённого файла.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
Часть 4 : Системный вызов bpf()
... имеет смысл предположить что если приложение пользовательского пространства хочет загрузить программу eBPF в ядро, то должны быть задействованы некоторые системные вызовы. На самом деле существует системный вызов bpf(), и в этой главе я покажу вам, как он используется для загрузки и взаимодействия с eBPF, программами и картами.
- Вложения
-
- eBPF.CHAPTER.04.4.pdf
- (227.46 КБ) 16 скачиваний
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Перевод книги: Liz Rice "Learning eBPF"
Часть 5 : CO-RE, BTF, и libbpf
Если бы вы взяли объектный файл eBPF, скомпилированный на одном компьютере1, и загрузили его на компьютер с другой версией ядра, не было бы никакой гарантии, что структуры данных будут одинаковыми. Подход CO-RE — это огромный шаг вперед в эффективном решении проблемы переносимости. Это позволяет программам eBPF включать информацию о макетах структур данных, с которыми они были скомпилированы, и предоставляет механизм для настройки доступа к полям, если макет структуры данных отличается на целевой машине, на которой они выполняются.
- Вложения
-
- eBPF.CHAPTER.05.5.pdf
- (9.54 КБ) 15 скачиваний
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя