Skip to content

Commit 62d8b7d

Browse files
committed
passt: Fix docs
Update docs about cni daemonSet. Update outdated parts. Signed-off-by: Or Shoval <[email protected]>
1 parent 65f41ee commit 62d8b7d

File tree

1 file changed

+67
-9
lines changed
  • docs/network/net_binding_plugins

1 file changed

+67
-9
lines changed

docs/network/net_binding_plugins/passt.md

Lines changed: 67 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -62,16 +62,74 @@ the passt plugin needs to:
6262
And in detail:
6363

6464
### Passt CNI deployment on nodes
65-
The CNI plugin binary can be retrieved directly from the kubevirt release
66-
assets (on GitHub) or to be built from its
65+
66+
#### v1.6.0 and above
67+
Kubevirt releases a container image `quay.io/kubevirt/network-passt-binding-cni:v1.6.0`,
68+
which can be used via daemonSet to copy the CNI binary to the nodes.
69+
70+
Create the following DaemonSet:
71+
72+
```yaml
73+
apiVersion: apps/v1
74+
kind: DaemonSet
75+
metadata:
76+
name: passt-binding-cni
77+
namespace: kubevirt
78+
labels:
79+
tier: node
80+
app: passt-binding-cni
81+
spec:
82+
selector:
83+
matchLabels:
84+
name: passt-binding-cni
85+
updateStrategy:
86+
type: RollingUpdate
87+
rollingUpdate:
88+
maxUnavailable: 10%
89+
template:
90+
metadata:
91+
labels:
92+
name: passt-binding-cni
93+
tier: node
94+
app: passt-binding-cni
95+
annotations:
96+
description: passt-binding-cni installs 'passt binding' CNI on cluster nodes
97+
spec:
98+
priorityClassName: system-cluster-critical
99+
containers:
100+
- name: installer
101+
image: quay.io/kubevirt/network-passt-binding-cni:v1.6.0
102+
command: [ "/bin/sh", "-ce" ]
103+
args:
104+
- |
105+
ls -la "/cni/kubevirt-passt-binding"
106+
cp -f "/cni/kubevirt-passt-binding" "/opt/cni/bin"
107+
echo "passt binding CNI plugin installation complete..sleep infinity"
108+
sleep 2147483647
109+
resources:
110+
requests:
111+
cpu: "10m"
112+
memory: "15Mi"
113+
securityContext:
114+
privileged: true
115+
volumeMounts:
116+
- name: cnibin
117+
mountPath: /opt/cni/bin
118+
volumes:
119+
- name: cnibin
120+
hostPath:
121+
path: /opt/cni/bin
122+
```
123+
124+
#### prior to v1.6.0
125+
The CNI binary can be retrieved directly from the kubevirt release assets (on GitHub) or to be built from its
67126
[sources](https://github.com/kubevirt/kubevirt/tree/release-1.1/cmd/cniplugins/passt-binding).
68127
69128
> **Note**: The kubevirt project uses Bazel to build the binaries and container images.
70129
> For more information in how to build the whole project, visit the developer
71130
> [getting started guide](https://github.com/kubevirt/kubevirt/blob/release-1.1/docs/getting-started.md).
72131
73-
Once the binary is ready, you may rename it to a meaningful name
74-
(e.g. `kubevirt-passt-binding`).
132+
Once the binary is ready, you may rename it to a meaningful name (e.g. `kubevirt-passt-binding`).
75133
This name is used in the NetworkAttachmentDefinition configuration.
76134

77135
Copy the binary to each node in your cluster.
@@ -114,11 +172,11 @@ specified in the Kubevirt CR when registering the network binding plugin.
114172
### Feature Gate
115173
For KubeVirt versions prior to v1.5, make sure to enable the `NetworkBindingPlugins` FG.
116174
```
117-
kubectl patch kubevirts -n kubevirt kubevirt --type=json -p='[{"op": "add", "path": "/spec/configuration/developerConfiguration/featureGates/-", "value": "NetworkBindingPlugins"}]'
175+
kubectl patch kubevirt -n kubevirt kubevirt --type=merge -p='{"spec":{"configuration":{"developerConfiguration":{"featureGates":["NetworkBindingPlugins"]}}}}'
118176
```
119177
120-
> **Note**: The specific passt plugin has no FG by its own. It is up to the cluster
121-
> admin to decide if the plugin is to be available in the cluster.
178+
**Note**:
179+
> It is up to the cluster admin to decide if the plugin is to be available in the cluster.
122180
> The passt binding is still in evaluation, use it with care.
123181
124182
### Passt Registration
@@ -131,7 +189,7 @@ kubectl patch kubevirts -n kubevirt kubevirt --type=json -p='[{"op": "add", "pat
131189
"binding": {
132190
"passt": {
133191
"networkAttachmentDefinition": "default/netbindingpasst",
134-
"sidecarImage": "quay.io/kubevirt/network-passt-binding:20231205_29a16d5c9",
192+
"sidecarImage": "quay.io/kubevirt/network-passt-binding:v1.6.0",
135193
"migration": {},
136194
"computeResourceOverhead": {
137195
"requests": {
@@ -210,7 +268,7 @@ spec:
210268
terminationGracePeriodSeconds: 0
211269
volumes:
212270
- containerDisk:
213-
image: quay.io/kubevirt/fedora-with-test-tooling-container-disk:v1.1.0
271+
image: quay.io/kubevirt/fedora-with-test-tooling-container-disk:v1.6.0
214272
name: containerdisk
215273
- cloudInitNoCloud:
216274
networkData: |

0 commit comments

Comments
 (0)