Skip to content

Passt network binding plugin configures VMs Passt interface using Kubevirts hook sidecar interface.

License

Notifications You must be signed in to change notification settings

phoracek/passt-kubevirt-network-binding-plugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Passt KubeVirt network binding plugin

Passt network binding plugin configures VMs Passt interface using Kubevirts hook sidecar interface.

It will be used by Kubevirt to offload Passt networking configuration.

NOTE: Passt network binding is supported for pod network interfaces only.

Usage

Deploy the passt binding plugin binary on the cluster:

kubectl apply -f manifests/cni-ds.yaml

Register the passt binding plugin with its sidecar image:

apiVersion: kubevirt.io/v1
kind: KubeVirt
metadata:
  name: kubevirt
  namespace: kubevirt
spec:
  configuration:
    network:
      binding:
        passt:
          sidecarImage: registry:5000/kubevirt/network-passt-binding:devel
  ...

In the VM spec, set interface to use passt binding plugin:

apiVersion: kubevirt.io/v1
kind: VirtualMachineInstance
metadata:
  name: vmi-passt
spec:
  domain:
    devices:
      interfaces:
      - name: passt
        binding:
          name: passt
  ...
  networks:
  - name: passt-net
    pod: {}
  ...

Development

See DEVELOPMENT.md to find some basic commands to interact with the project. To learn more, read the code. A good place to start would be cmd/*.

License

Software of this project is distributed under the terms of the Apache license version 2. See LICENSE for details.

TODO

  • GitHub actions to check PRs (format and build).
  • GitHub actions to publish new version.
  • Containerized runs of CNI tests.
  • Sidecar.

About

Passt network binding plugin configures VMs Passt interface using Kubevirts hook sidecar interface.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published