Clean up CNI proposal for wider RFC
Signed-off-by: Chris Aniszczyk <caniszczyk@gmail.com>
This commit is contained in:
		
							parent
							
								
									732fb1466e
								
							
						
					
					
						commit
						ca211abf22
					
				
					 2 changed files with 79 additions and 65 deletions
				
			
		|  | @ -1,65 +0,0 @@ | |||
| # 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 | ||||
							
								
								
									
										79
									
								
								proposals/cni.adoc
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								proposals/cni.adoc
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,79 @@ | |||
| # Container Networking Interface (CNI) | ||||
| 
 | ||||
| **Project Name:** cni | ||||
| 
 | ||||
| **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/blob/master/MAINTAINERS | ||||
| 
 | ||||
| **Infrastructure requests (CI / CNCF Cluster):** None | ||||
| 
 | ||||
| **Communication channels (slack, irc, mailing lists):** | ||||
| 
 | ||||
| * Email: [cni-dev](https://groups.google.com/forum/#!forum/cni-dev) | ||||
| * IRC: #containernetworking channel on freenode.org | ||||
| * Slack: https://containernetworking.slack.com | ||||
| 
 | ||||
| **Issue tracker (GitHub by default):** Github - https://github.com/containernetworking/cni/issues | ||||
| 
 | ||||
| **Website:** https://github.com/containernetworking | ||||
| 
 | ||||
| **Release methodology and mechanics:** | ||||
| 
 | ||||
| https://github.com/containernetworking/cni/blob/master/ROADMAP.md | ||||
| 
 | ||||
| **Social media accounts:** N/A | ||||
| 
 | ||||
| **Community size and any existing sponsorship** | ||||
| 
 | ||||
| *  56 Contributors | ||||
| *  591 Stars | ||||
| *  17 releases | ||||
| 
 | ||||
| **Adopters:** | ||||
| 
 | ||||
| * 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 | ||||
| 
 | ||||
| There is also a large ecosystem of third party plug-ins: | ||||
| 
 | ||||
| * 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 | ||||
| 
 | ||||
| **Statement on alignment with CNCF mission**: | ||||
| 
 | ||||
| CNI defines initial guidelines for a network interface specification focused on | ||||
| connectivity and portability of cloud native application patterns. | ||||
| It is already supported by many cloud native and container runtimes discussed | ||||
| in the adopters section of this document. | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue