Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Cilium | 15,553 | 15 | 23 minutes ago | 547 | September 14, 2022 | 1,167 | apache-2.0 | Go | ||
eBPF-based Networking, Security, and Observability | ||||||||||
Cni | 4,882 | 467 | 2 days ago | 85 | July 27, 2022 | 118 | apache-2.0 | Go | ||
Container Network Interface - networking for Linux containers | ||||||||||
Amazon Vpc Cni K8s | 2,053 | 2 | 20 | 20 hours ago | 97 | September 12, 2022 | 39 | apache-2.0 | Go | |
Networking plugin repository for pod networking in Kubernetes using Elastic Network Interfaces on AWS | ||||||||||
Multus Cni | 1,837 | 5 | 12 days ago | 39 | July 16, 2021 | 30 | apache-2.0 | Go | ||
A CNI meta-plugin for multi-homed pods in Kubernetes | ||||||||||
Kilo | 1,748 | a month ago | 33 | April 21, 2021 | 41 | apache-2.0 | Go | |||
Kilo is a multi-cloud network overlay built on WireGuard and designed for Kubernetes (k8s + wg = kg) | ||||||||||
Kube Ovn | 1,589 | 1 | 5 hours ago | 83 | July 13, 2022 | 82 | apache-2.0 | Go | ||
A Bridge between SDN and Cloud Native (Project under CNCF) | ||||||||||
Antrea | 1,480 | 2 | an hour ago | 129 | July 14, 2022 | 155 | apache-2.0 | Go | ||
Kubernetes networking based on Open vSwitch | ||||||||||
Kiam | 1,131 | 4 months ago | 1 | July 07, 2021 | 121 | apache-2.0 | Go | |||
Integrate AWS IAM with Kubernetes | ||||||||||
Kismatic | 807 | 4 years ago | 89 | apache-2.0 | Go | |||||
Kismatic Enterprise Toolkit: Fully-Automated, Production-Grade Kubernetes Operations | ||||||||||
Fabedge | 481 | 6 days ago | 4 | September 26, 2022 | 2 | apache-2.0 | Go | |||
Secure Edge Networking Solution Based On Kubernetes |
Coil is a CNI-based network plugin for Kubernetes.
Coil is designed with respect to the UNIX philosophy. You can combine Coil with any routing software and/or any network policy implementation.
Coil allows to define multiple IP address pools. You can define a pool of global IPv4 addresses for a small number of pods and another pool of private IPv4 addresses for the remaining pods.
There are blog articles about Coil: https://blog.kintone.io/archive/category/Coil
Version 2 is generally available (GA). It conforms to CNI spec 0.4.0.
Kubernetes Version: 1.24, 1.25, 1.26
(Optional) Routing software
Address pools
Coil can have multiple pools of IP addresses for different purposes. By setting a special annotation to a namespace, you can specify a pool for the pods in that namespace.
IPv4/IPv6 dual stack
In addition to IPv4-only and IPv6-only stacks, Coil can define dual stack address pools.
Running with any routing software
Coil provides a simple router for clusters where all the nodes are in
a flat L2 network. This router, called coil-router
, is optional.
For more complex networks, Coil exports routing information to an unused kernel routing table. By importing the routes from the table, any routing software can advertise them.
On-demand NAT for egress traffics
Coil can implement SNAT on Kubernetes. You can define SNAT routers for external networks as many as you want.
Only selected pods can communicate with external networks via SNAT routers.
Auto MTU configuration
Coil detects the optimal MTU and configures MTU for container networks.
Refer to the design document for more information on these features.
Coil can run on kind clusters using Docker.
Prepare a recent Ubuntu and install Docker and Go, then run:
$ cd v2
$ make certs
$ make image
$ cd e2e
$ make start
$ make install-coil
$ ../bin/kubectl apply -f manifests/default_pool.yaml
Now you can play with Coil.
Project Neco uses Coil with these software:
Coil can work with Cilium through its generic veth chaining feature.
Installation procedures are described in docs/setup.md.
The user manual is docs/usage.md.
docs directory contains other documents about designs and specifications.
See coil-migrator.md
Coil is licensed under the Apache License, Version 2.0.