732fb1466e
Initial draft CNI proposal for editing with CNI maintainers
65 lines
2.6 KiB
Text
65 lines
2.6 KiB
Text
# Name of project: Container Networking Interface
|
|
|
|
# Description
|
|
The CNI (Container Network Interface) project consists of a specification and libraries for writing plugins to configure network interfaces
|
|
in Linux containers, along with a number of supported plugins. CNI concerns itself only with network connectivity of containers and removing
|
|
allocated resources when the container is deleted. Because of this focus, CNI has a wide range of support and the specification is simple to
|
|
implement. CNI consists of 3 separate comonents:
|
|
|
|
* CNI Specification: defines an straightforward API between runtimes and network plugins for container network setup/teardown. No more, no less.
|
|
* Plugins: provide network setup for a variety of use-cases and serve as reference examples of plugins conforming to the CNI specification
|
|
* Library: provide a Go implementation of the CNI specification that runtimes can use to more easily consume CNI
|
|
NOTE: CNI Specification is independently versioned from the CNI library and plugins in the repository (e.g. the versions of releases). The plugins are being pulled out into a separate repository
|
|
|
|
**Sponsor/Advisor from TOC:** Ken Owens
|
|
|
|
**preferred maturity level:** Incubating
|
|
|
|
**License:** Apache License v2.0
|
|
|
|
**Source control repositories:** https://github.com/containernetworking/cni
|
|
|
|
**external dependencies:** None
|
|
|
|
**Initial Committers:** https://github.com/containernetworking/cni/graphs/contributors
|
|
|
|
**infrastructure requests (CI / CNCF Cluster):** None
|
|
|
|
**communication channels (slack, irc, mailing lists):**
|
|
* Email: cni-dev
|
|
* IRC: #containernetworking channel on freenode.org
|
|
* Slack: containernetworking.slack.com
|
|
|
|
**issue tracker (GitHub by default):** Github - https://github.com/containernetworking/cni/issues
|
|
|
|
**website (current version will move to project.cncf.io):** https://github.com/containernetworking
|
|
|
|
**release methodology and mechanics:**
|
|
*TBD*
|
|
|
|
**social media accounts**
|
|
|
|
**community size and any existing sponsorship**
|
|
* 56 Contributors
|
|
* 591 Stars
|
|
* 17 releases
|
|
|
|
## Container runtimes
|
|
|
|
rkt - container engine
|
|
Kurma - container runtime
|
|
Kubernetes - a system to simplify container operations
|
|
Cloud Foundry - a platform for cloud applications
|
|
Mesos - a distributed systems kernel
|
|
|
|
## 3rd party plugins
|
|
|
|
Project Calico - a layer 3 virtual network
|
|
Weave - a multi-host Docker network
|
|
Contiv Networking - policy networking for various use cases
|
|
SR-IOV
|
|
Cilium - BPF & XDP for containers
|
|
Infoblox - enterprise IP address management for containers
|
|
Multus - a Multi plugin
|
|
Romana - Layer 3 CNI plugin supporting network policy for Kubernetes
|
|
CNI-Genie - generic CNI network plugin
|