F5 BIG-IP Controller for Kubernetes
The F5 BIG-IP Controller for Kubernetes makes F5 BIG-IP
services available to applications running in Kubernetes.
Documentation
For instruction on how to use this component, see the
docs
for F5 BIG-IP Controller for Kubernetes.
For guides on this and other solutions for Kubernetes, see the
F5 Solution Guides for Kubernetes.
Getting Help
We encourage you to use the cc-kubernetes channel in our f5CloudSolutions Slack workspace for discussion and assistance on this
controller. This channel is typically monitored Monday-Friday 9am-5pm MST by F5
employees who will offer best-effort support.
Contact F5 Technical support via your typical method for more time sensitive
changes and other issues requiring immediate support.
Running
The official docker image is f5networks/k8s-bigip-ctlr
.
Usually, the controller is deployed in Kubernetes. However, the controller can be run locally for development testing.
docker run f5networks/k8s-bigip-ctlr /app/bin/k8s-bigip-ctlr <args>
Building
The official images are built using docker, but the adventurous can use standard go build tools.
Official Build
Prerequisites:
git clone https://github.com/f5networks/k8s-bigip-ctlr.git
cd k8s-bigip-ctlr
# Use docker to build the release artifacts, into a local "_docker_workspace" directory, then put into docker images
# Debian image
make prod
OR
# RHEL7 image
make prod BASE_OS=rhel7
Alternate, unofficial build
A normal go and godep toolchain can be used as well
Prerequisites:
- go 1.7
- $GOPATH pointing at a valid go workspace
- godep (Only needed to modify vendor's packages)
- python
- virtualenv
mkdir -p $GOPATH/src/github.com/F5Networks
cd $GOPATH/src/github.com/F5Networks
git clone https://github.com/f5networks/k8s-bigip-ctlr.git
cd k8s-bigip-ctlr
# Build all packages, and run unit tests
make all test
To make changes to vendor dependencies, see Devel