Comment contribuer à eBPF
eBPF rassemble de nombreuses communautés, notamment l’environnement d’exécution eBPF dans le noyau Linux, divers SDK et bibliothèques de développement, de grands projets utilisant eBPF ainsi qu’un large éventail de projets et d’outils plus petits. Il existe donc de nombreuses façons de contribuer et de s’impliquer auprès de la communauté eBPF. La liste d’idées qui suit peut vous servir de point de départ.
Contribuer au runtime eBPF dans le noyau Linux
La communauté du noyau Linux maintient des arbres Git distincts pour le sous-système eBPF afin de gérer toutes les contributions des développeurs. Les arbres sont entretenus par :
- Alexeï Starovoitov, Facebook
- Daniel Borkmann, Cilium/Isovalent
Travailler sur l’environnement d’exécution eBPF peut être extrêmement gratifiant car il s’agit de contribuer à un logiciel qui s’exécute sur des millions de systèmes et d’appareils. Le travail comprend un large éventail de sujets couvrant l’ajout de la prise en charge de points d’attache supplémentaires, l’ajout de nouveaux types de programmes, des améliorations au vérificateur eBPF, l’ajout de la prise en charge JIT pour des architectures CPU supplémentaires, l’extension de l’ensemble des fonctions noyau mises à disposition des programmes BPF, l’ajout de nouveaux cas de test à l’infrastructure de test de BPF, ou des améliorations de bpftool et libbpf.
Contribuer à un projet eBPF
Les projets basés sur eBPF sont nombreux, et la liste ne cesse de s’allonger. Il n’y a que l’embarras du choix ! Consultez le paysage eBPF pour un aperçu des différents projets.
De nombreux projets basés sur eBPF maintiennent une liste de tâches dénotées en tant que « good first issues », des portes d’entrée ne nécessitant pas de connaissances approfondies spécifiques au projet et qui offrent une excellente occasion de se familiariser rapidement avec le sujet.
Contribuer aux chaînes d’outils de développement eBPF
Même si le noyau Linux fournit un minimum de bibliothèques et d’API pour utiliser directement eBPF, la majorité des projets exploitent une chaîne d’outils de développement plus haut niveau pour simplifier l’utilisation d’eBPF et mettre en commun l’implémentation de certaines fonctionnalités avec d’autres projets.
Consultez la liste des chaînes d’outils de développement eBPF, fréquemment mise à jour. Si vous souhaitez vous impliquer sur l’un d’entre eux, vous trouverez des informations sur le site web associé.
Contribuer à ebpf.io
Avez-vous un talent d’écriture? Êtes-vous doué(e) avec les diagrammes? Le contenu du site web ebpf.io est sous licence Creative Commons Attribution 4.0 International. Si vous souhaitez vous impliquer, visitez le dépôt GitHub. Assurez-vous également de rejoindre le canal Slack #ebpf-website pour entrer en contact avec l’équipe travaillant sur la documentation. Partagez ce que vous avez appris en améliorant la documentation ou écrivez des tutoriels supplémentaires.