F5Networks / k8s-bigip-ctlr

Repository for F5 Container Ingress Services for Kubernetes & OpenShift.
Apache License 2.0
364 stars 195 forks source link
bigip customresourcedefinition docker f5-cc ingress ingress-controller kubernetes openshift orchestration route tls

Build Status Azure DevOps tests

F5 BIG-IP Container Ingress Services for Kubernetes & OpenShift

The F5 BIG-IP Container Ingress Services for Kubernetes and OpenShift makes F5 BIG-IP services available to applications running in Kubernetes and OpenShift.

Documentation

For instruction on how to use this component, see the docs for F5 BIG-IP Container Ingress Services for Kubernetes & OpenShift.

For guides on this and other solutions for Kubernetes, see the F5 Solution Guides for Kubernetes.

What's New?

Support for Custom Resource Definitions Documentation

Getting Help

We encourage you to use the cis-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 
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

# RHEL image
make prod BASE_OS=ubi

Alternate, unofficial build

A normal go toolchain can be used as well

Prerequisites:

mkdir -p $GOPATH/src/github.com/F5Networks
cd $GOPATH/src/github.com/F5Networks
git clone https://github.com/f5networks/k8s-bigip-ctlr
cd k8s-bigip-ctlr

# Build all packages, and run unit tests
make all test

To make changes to vendor dependencies, see Devel