contivvpp

package module
v0.0.0-...-a11b7ec Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 17, 2018 License: Apache-2.0 Imports: 0 Imported by: 0

README

Contiv - VPP

Build Status Coverage Status Go Report Card GoDoc GitHub license

Please note that the content of this repository is currently WORK IN PROGRESS.

This Kubernetes network plugin uses FD.io VPP to provide network connectivity between PODs. Currently, only Kubernetes 1.9.X versions are supported.

Quickstart

You can get started with Contiv-VPP in one of two ways:

  • Use the Contiv-VPP Vagrant Installation instructions to start a simulated Kubernetes cluster with a couple of hosts running in VirtualBox VMs. This is the easiest way to bring up a cluster for exploring the capabilities and features of Contiv-VPP.

  • Use the Contiv-specific kubeadm install instructions to manually install Kubernetes with Contiv-VPP networking on one or more bare-metal

Reporting Bugs

In order to report a bug, please file an issue in GitHub. Please provide the information described in Bug Reports README.

Contributing

Contributions to VPP-Agent are welcome. We use the standard pull request model. You can either pick an open issue and assign it to yourself or open a new issue and discuss your feature.

In any case, before submitting your pull request please check the Coding style and cover the newly added code with tests and documentation (Contiv-VPP adopted the coding style used in the Ligato project). Upon submission, each patch is run through the go fmt and golint tools.

The tool used for managing third-party dependencies is Dep. After adding or updating a dependency in Gopkg.toml run make install-dep to download the specified dependencies into the vendor folder. Please make sure that each dependency in the Gopkg.toml has a specific version defined (a specific commit ID or a git tag).

Documentation

Overview

Contivvpp is a networking solution for the k8s cluster.

Directories

Path Synopsis
cmd
contiv-agent
Contiv-agent is an extended vpp agent.
Contiv-agent is an extended vpp agent.
contiv-init
Contiv-init is the init process of the contiv vswitch POD.
Contiv-init is the init process of the contiv vswitch POD.
contiv-ksr
Contiv-ksr is an agent that watches k8s resources and propagates all changes into the ETCD data store.
Contiv-ksr is an agent that watches k8s resources and propagates all changes into the ETCD data store.
contiv-stn
Contiv-stn is a Daemon which acts as a GRPC server, serving "Steal the NIC" requests - requests to unbind an interface from the kernel driver.
Contiv-stn is a Daemon which acts as a GRPC server, serving "Steal the NIC" requests - requests to unbind an interface from the kernel driver.
contiv-stn/model/stn
Package stn is a generated protocol buffer package.
Package stn is a generated protocol buffer package.
tools/ldpreload-label-injector
Package ldpreload-label-injector contains tool for injecting ldpreload-specific labels into kubernetes yaml files
Package ldpreload-label-injector contains tool for injecting ldpreload-specific labels into kubernetes yaml files
flavors
contiv
Package contiv defines flavor used for Contiv-VPP agent.
Package contiv defines flavor used for Contiv-VPP agent.
ksr
Package ksr defines flavor used for the contiv-ksr agent.
Package ksr defines flavor used for the contiv-ksr agent.
mock
localclient
Package localclient contains mocks for transactions created by DSL structures in localclient packages.
Package localclient contains mocks for transactions created by DSL structures in localclient packages.
localclient/dsl
Package dsl is base package for mocks of DSL transaction creators.
Package dsl is base package for mocks of DSL transaction creators.
pkg
plugins
contiv
Package contiv implements plugin providing GRPC-server that accepts requests from the contiv-CNI (acting as a GRPC-client) and configures the networking between VPP and the PODs.
Package contiv implements plugin providing GRPC-server that accepts requests from the contiv-CNI (acting as a GRPC-client) and configures the networking between VPP and the PODs.
contiv/containeridx
Package containeridx implements a mapping structure that allows to store configured container networking.
Package containeridx implements a mapping structure that allows to store configured container networking.
contiv/containeridx/model
Package container is a generated protocol buffer package.
Package container is a generated protocol buffer package.
contiv/ipam
Package ipam provides node-local IPAM calculations: POD IP addresses, VPP-host interconnect and node interconnect IP addresses.
Package ipam provides node-local IPAM calculations: POD IP addresses, VPP-host interconnect and node interconnect IP addresses.
contiv/ipam/model
Package model is a generated protocol buffer package.
Package model is a generated protocol buffer package.
contiv/model/cni
Package cni is a generated protocol buffer package.
Package cni is a generated protocol buffer package.
contiv/model/node
Package node is a generated protocol buffer package.
Package node is a generated protocol buffer package.
ksr
Package ksr implements plugin that watches K8s resources and causes all changes to be reflected in the ETCD data store.
Package ksr implements plugin that watches K8s resources and causes all changes to be reflected in the ETCD data store.
ksr/model/endpoints
Package endpoints is a generated protocol buffer package.
Package endpoints is a generated protocol buffer package.
ksr/model/ksrapi
Package ksrapi is a generated protocol buffer package.
Package ksrapi is a generated protocol buffer package.
ksr/model/namespace
Package namespace is a generated protocol buffer package.
Package namespace is a generated protocol buffer package.
ksr/model/node
Package node is a generated protocol buffer package.
Package node is a generated protocol buffer package.
ksr/model/pod
Package pod is a generated protocol buffer package.
Package pod is a generated protocol buffer package.
ksr/model/policy
Package policy is a generated protocol buffer package.
Package policy is a generated protocol buffer package.
ksr/model/service
Package service is a generated protocol buffer package.
Package service is a generated protocol buffer package.
kvdbproxy
Package kvdbproxy implements proxy for a kvdbsync with ability to skip selected change events.
Package kvdbproxy implements proxy for a kvdbsync with ability to skip selected change events.
policy
Package policy implements plugin that processes and applies K8s Network policies into various destination network stacks.
Package policy implements plugin that processes and applies K8s Network policies into various destination network stacks.
service
Package service implements support for Kubernetes services for VPP using the VPP NAT plugin (https://wiki.fd.io/view/VPP/NAT).
Package service implements support for Kubernetes services for VPP using the VPP NAT plugin (https://wiki.fd.io/view/VPP/NAT).
statscollector
Package statscollector implements plugin that collects the statistics from vpp interfaces and publishes them to prometheus.
Package statscollector implements plugin that collects the statistics from vpp interfaces and publishes them to prometheus.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL