containernetworking / plugins

Some reference and example networking plugins, maintained by the CNI team.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Determining the cniVersion in the configuration

nnlkcncff opened this issue · comments

How do I determine which cniVersion I should specify in the CNI plugin configuration?

Plugins report on supported versions:

/opt/cni/bin/dummy
CNI dummy plugin v1.3.0
CNI protocol versions supported: 0.1.0, 0.2.0, 0.3.0, 0.3.1, 0.4.0, 1.0.0

/opt/cni/bin/loopback
CNI loopback plugin v1.3.0
CNI protocol versions supported: 0.1.0, 0.2.0, 0.3.0, 0.3.1, 0.4.0, 1.0.0

/opt/cni/bin/bridge
CNI bridge plugin v1.3.0
CNI protocol versions supported: 0.1.0, 0.2.0, 0.3.0, 0.3.1, 0.4.0, 1.0.0

But which version should I choose?

Documentation... There is no one for dummy and loopback plugins! According to the examples you can choose version 0.3.1 for bridge plugin, but there are still many supported versions from the plugin outputs, which one to choose?

According to CNI documentation for configurations without a version field you should use 0.2.0, but how do you find out if a version field exists without documentation?

According to Kubernetes documentation for all plugins you must choose 0.4.0 or higher, preferably 1.0.0, but how to figure out which one exactly?

Of course you can just reuse someone else's code without a full understanding, but this is the wrong way.