cf-networking-release icon indicating copy to clipboard operation
cf-networking-release copied to clipboard

Container Networking for CloudFoundry

CF Networking Release

This repository is a BOSH release for deploying CF Networking and associated tasks. CF Networking provides policy-based container networking and service discovery for Cloud Foundry.

For information on getting started with Cloud Foundry look at the docs for CF Deployment.

Downloads

Our BOSH release is available on bosh.io and on our GitHub Releases page

Getting Help

For help or questions with this release or any of its submodules, you can reach the maintainers on Slack at cloudfoundry.slack.com in the #cf-for-vms-networking channel.

Contributing

Please look at the "Contributing to CF Networking" doc for more information.

Docs Table of Contents

  1. CF Networking Operator Resources
  2. CF App Developer Resources
  3. CF Networking Contributor Resources
  4. CF CNI Plugin Developer Resources

CF Networking Operator Resources

What does CF Networking do?

  • What is CF Networking explains the problems that this release solves and describes the basic functionaltiy that this release provides.

CF Networking Architecture

  • Container to Container Networking Architecture goes step-by-step through the container to container networking control plane and data plane flows.

  • Service Discovery Architecture goes step-by-step through the control plane and data plane flows for service discovery.

Deploying CF Networking

CF Networking is automatically included in CF Deployment. You don't have to do anything!

Configuring CF Networking

  • Configuring Container to Container Networking describes some of the most popular ways to configure container to container networking and its policies.
  • Configuring Service Discovery describes some of the most popular ways to configure service discovery, including how to create more internal domains.

Monitoring

  • Service Discovery Metrics lists all of the available metrics for the service discovery components.
  • TODO - add doc for c2c networking metrics.

Troubleshooting

  • Overlay Network Troubleshooting describes general debugging tips for overlay networking and common failures.
  • Container to Container Networking Troubleshooting describes general debugging tips for c2c networking and some specific common failures.
  • Debugging Latency with Container to Container Networking describes how to determine the root cause for c2c latency.
  • Network Policy Database Overview
  • Known Issues contains a list of known bugs for c2c networking. This list has not been maintained since 2018 and even then it was only sporadically maintained.

CF Networking App Developer Resources

Using CF Networking with CLIs

Using CF Networking APIs

  • Policy Server External API contains full docs on all endpoints for the external policy server. This includes creating, listing, and deleting policies.

  • Policy Server Internal API contains full docs on all endpoints for the internal policy server. This includes creating and listing tags and getting policies.

Example Apps

  • Example Apps Overview describes a handful of example apps (like the ever popular proxy) and the features that they provide.

CF Networking Contributor Resources

Contributing Guide

  • The Contributing Guide describes the steps you should take to contribute. Thanks in advance! We love our community :D
  • Adding Libraries or Packages describes how to add external golang libraries or new bosh packages to this release.

Running Tests

  • Test Overview describes the many tests for CF Networking and how to run them. Running these tests is a requirement for contributors.

CF CNI Plugin Developer Resources

  • 3rd Party Plugin Development describes how to create a CNI plugin for CF that would replace silk-release.