Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bpfd integration #121

Merged
merged 2 commits into from
Oct 26, 2023
Merged

Bpfd integration #121

merged 2 commits into from
Oct 26, 2023

Conversation

astoycos
Copy link
Member

@astoycos astoycos commented Oct 20, 2023

This sets up the integration with bpfd

Additionally it adds a deployment scenario to the integration tests so that we run with and without bpfd.

To test it out locally

1. Build Cluster: make build.cluster
2. Install bpfd: kubectl apply -k ./config/bpfd-install
3. Install Blixt with bpfd programs: kubectl apply -k ./config/bpfd

@k8s-ci-robot k8s-ci-robot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Oct 20, 2023
@k8s-ci-robot k8s-ci-robot added approved Indicates a PR has been approved by an approver from all required OWNERS files. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Oct 20, 2023
@k8s-ci-robot k8s-ci-robot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Oct 20, 2023
@astoycos astoycos marked this pull request as ready for review October 20, 2023 15:44
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Oct 20, 2023
@k8s-ci-robot k8s-ci-robot requested a review from shaneutt October 20, 2023 15:44
@astoycos
Copy link
Member Author

astoycos commented Oct 20, 2023

TODO: I need follow up issues for

  1. Building/pushing blixt bytecode images in CI
  2. Pointing back to bpfd:main rather than bpfd:blixt for the bpfd install images
  3. Adding documentation
  4. Figure out a better way in the loaded to determine if bpfd is installed (probably based on the privileges we have in this deployment scenario)

Copy link
Member

@shaneutt shaneutt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good, glad to see us adding bpfd!

Mostly small comments.

Makefile Show resolved Hide resolved
dataplane/.cargo/config.toml Show resolved Hide resolved
This commit makes the necessary changes which allow the
bpf programs to be build with btf.  It requires:
- The `fix-di` branch of bpf-linker
- A patched version of aya (https://github.com/aya-rs/aya/tree/fix-verifier-blixt)
- A patched version of bpfd (https://github.com/bpfd-dev/bpfd/tree/blixt-custom-build)

Additionally it adds a check in the loader program to check if the blixt
programs are installed by bpfd.

Signed-off-by: astoycos <[email protected]>
Add new config to allow:
- deploying bpfd (with custom blixt settings)
- Run integrations on the blixt + bpfd setup
- Activate all of this in CI
- Allow building of new blixt program bytecode images

Signed-off-by: astoycos <[email protected]>
@shaneutt shaneutt self-requested a review October 26, 2023 16:50
Copy link
Member

@shaneutt shaneutt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/approve
/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 26, 2023
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: astoycos, shaneutt

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@shaneutt shaneutt merged commit c318c6c into kubernetes-sigs:main Oct 26, 2023
9 checks passed
@astoycos astoycos mentioned this pull request Feb 1, 2024
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
Development

Successfully merging this pull request may close these issues.

3 participants