F5 Container Integrations v1.2

Current Page

Application Services Proxy

Cloud Foundry

Kubernetes

Mesos Marathon

OpenShift

Support

Troubleshooting

Tutorials

Cloud Docs Home > F5 Container Integrations Index

F5 Cloud Foundry Container Integration

Overview

The F5 Container Integration for Cloud Foundry consists of the F5 BIG-IP Controller for Cloud Foundry.

The BIG-IP Controller for Cloud Foundry configures BIG-IP Local Traffic Manager (LTM) objects for Cloud Foundry applications, serving North-South traffic.

You can use the BIG-IP Controller for Cloud Foundry with Cloud Foundry or Pivotal Cloud Foundry (PCF).

General Prerequisites

The F5 Integration for Cloud Foundry’s documentation set assumes that you:

  • already have a functional Cloud Foundry or Pivotal Cloud Foundry deployment;
  • are familiar with the Cloud Foundry CLI and API;
  • already have a BIG-IP device licensed and provisioned for your requirements; and
  • are familiar with BIG-IP LTM concepts and tmsh commands.

BIG-IP Controller for Cloud Foundry

The BIG-IP Controller for Cloud Foundry is a Docker container-based application that runs on a Cloud Foundry Diego cell.

You can deploy the F5 BIG-IP Controller for Cloud Foundry using an Application Manifest. The Application Manifest tells the BIG-IP Controller for Cloud Foundry

  • how to log in to the BIG-IP device, and
  • how to set up the BIG-IP device when you launch the BIG-IP Controller for the first time.

Once the BIG-IP Controller for Cloud Foundry is running, it

  • creates a BIG-IP virtual server, which serves as the entry point for traffic into the cloud;
  • creates a BIG-IP Local Traffic policy (maximum of two - one each for http and https) with rules for each route it finds in Cloud Foundry;
  • creates a pool for each route, with members for each application instance;
  • associates each application’s traffic policy rule with its pool.

Attention

The BIG-IP Controller for Cloud Foundry can create a maximum of two (2) virtual servers for Cloud Foundry: one (1) for HTTP and one (1) for HTTPS. The BIG-IP Controller for Cloud Foundry creates an HTTP virtual server by default.

Key Cloud Foundry Concepts

BIG-IP Controller for Cloud Foundry configurations are “global”, meaning a single set of configurations apply to all of the pools/pools members created for Cloud Foundry Apps. The Cloud Foundry Application Manifest file is the means via which you can identify the BIG-IP policies, profiles, etc., you want to apply.

Gorouter and NATS

In Cloud Foundry, the Gorouter component routes all incoming traffic. Similarly, the BIG-IP Controller for Cloud Foundry uses Cloud Foundry’s routing tables to direct traffic to the correct Diego cell virtual machine(s) for a requested application. The BIG-IP Controller for Cloud Foundry watches the NATS bus for route updates; when it discovers changes, it configures the BIG-IP device(s) accordingly.

When you deploy a new application in Cloud Foundry, the BIG-IP Controller for Cloud Foundry automatically creates a BIG-IP pool, pool members, and traffic policy rule for the new route.

See also

The Pivotal Cloud Foundry documentation provides instructions for adding an external load balancer to your Cloud Foundry deployment.

See Cloud Foundry’s Routes and Domains documentation for more information about how Gorouter creates and maps routes for applications.

BIG-IP Local Traffic Manager Services

You can apply existing BIG-IP health monitors, policies, and SSL profiles to the virtual server(s) and pools the BIG-IP Controller for Cloud Foundry creates. Likewise, you can select any load balancing mode that exists on the BIG-IP device. Define the BIG-IP Controller configuration parameters in your Application Manifest.

Tip

You can enable “x-forwarded-for” and “x-forwarded-proto” profiles for the BIG-IP virtual server(s). Just create the profiles on the BIG-IP, then add them to the Application Manifest before launching the BIG-IP Controller.