Skip to content

Latest commit

 

History

History
73 lines (57 loc) · 1.48 KB

File metadata and controls

73 lines (57 loc) · 1.48 KB

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.