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

Update docs for OVS Hardware Offload #755

Merged
merged 1 commit into from
Aug 27, 2024

Conversation

ykulazhenkov
Copy link
Collaborator

Update docs for OVS Hardware Offload to add examples for "softwareBridgeManagement" feature.

fixes #749

Copy link

github-actions bot commented Aug 1, 2024

Thanks for your PR,
To run vendors CIs, Maintainers can use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs, Maintainers can use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@coveralls
Copy link

coveralls commented Aug 1, 2024

Pull Request Test Coverage Report for Build 10383349369

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.007%) to 45.006%

Totals Coverage Status
Change from base Build 10354035877: 0.007%
Covered Lines: 6534
Relevant Lines: 14518

💛 - Coveralls

doc/ovs-hw-offload.md Show resolved Hide resolved
doc/ovs-hw-offload.md Show resolved Hide resolved
```

### Create NetworkAttachmentDefinition CRD with OVS CNI config
_Note: `spec.bridge.ovs: {}` will create OVS bridges with default configuration that is suitable for HW-offloading with OVS-kernel dataplane.
Copy link
Collaborator

Choose a reason for hiding this comment

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

can you add that it will create a bridge for every device (PF) selected by the policy ?

i know its mentioned below as an observation of the node state but i think we need to put this info upfront.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yes, makes sense. I mentioned this explicitly in the section where I describe the policy.

@ykulazhenkov
Copy link
Collaborator Author

@adrianchiris Thx for the review. I addressed your comments.

Copy link
Collaborator

@adrianchiris adrianchiris left a comment

Choose a reason for hiding this comment

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

LGTM, thx @ykulazhenkov !

```

### Create NetworkAttachmentDefinition CRD with OVS CNI config
_Note: `spec.bridge.ovs: {}` - means use default settings (suitable for HW-offloading with OVS-kernel dataplane)
Copy link
Member

Choose a reason for hiding this comment

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

hardware offload is enabled by default?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

for k8s, the k8s plugin will enable HW-offloading for OVS. For Openshift it is required to create SriovNetworkPoolConfig

if vars.ClusterType == constants.ClusterTypeOpenshift {

doc/ovs-hw-offload.md Outdated Show resolved Hide resolved
Copy link
Collaborator

@SchSeba SchSeba left a comment

Choose a reason for hiding this comment

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

great work 2 small comments and we should wait for #750 to be merged

@@ -9,63 +9,148 @@ host net-device. The VF representor plays the same role as TAP devices
in Para-Virtual (PV) setup. A packet sent through the VF representor on the host
arrives to the VF, and a packet sent through the VF is received by its representor.

OVS Hardware Offloading requires NIC to be configured in `switchdev` mode.

The operator can automate the creation and configuration of OVS bridges when the "manageSoftwareBridges" function is activated.
Copy link
Collaborator

Choose a reason for hiding this comment

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

function -> featureGate ?

```

### Create NetworkAttachmentDefinition CRD with OVS CNI config
_Note: `spec.bridge.ovs: {}` - means use default settings (suitable for HW-offloading with OVS-kernel dataplane)
The fields defined in the [Bridge type](https://github.com/k8snetworkplumbingwg/sriov-network-operator/blob/4563178259d2f6f61451d167d3e4affdb8f2fc3a/api/v1/sriovnetworknodepolicy_types.go#L84) can be used to configure advanced bridge and interface level options._
Copy link
Collaborator

Choose a reason for hiding this comment

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

do we want the link to point to master if there are changes in the API in the future?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

done

Signed-off-by: Yury Kulazhenkov <ykulazhenkov@nvidia.com>
@ykulazhenkov
Copy link
Collaborator Author

Thx for the review @SchSeba. I addressed your comments.

Copy link
Collaborator

@SchSeba SchSeba left a comment

Choose a reason for hiding this comment

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

LGTM

let wait for #750 to be merged first before we merge this one

@adrianchiris
Copy link
Collaborator

#750 was merged. merging this one as well.

@adrianchiris adrianchiris merged commit 9dbf2b1 into k8snetworkplumbingwg:master Aug 27, 2024
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add documetnation for software-bridge management feature
5 participants