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

Configure the BIG-IP Controller for Kubernetes

When you launch the BIG-IP Controller for Kubernetes, you must provide the required configuration parameters shown in the table below. Define these configuration parameters in the args section of the Kubernetes Deployment.

Required configuration parameters

Parameter Description
bigip-username Username for BIG-IP account with permission to manage objects in the bigip-partition; can be an env variable (e.g., “$(BIGIP_USERNAME)")
bigip-password Password for BIG-IP account; can be an env variable (e.g., "$(BIGIP_PASSWORD)")
bigip-url BIG-IP Hostname/IP address
bigip-partition The BIG-IP partition BIG-IP Controller manages
kubeconfig Path to the kubeconfig file
namespace Kubernetes namespace to watch [1]
[1]As of BIG-IP Controller v1.1.0 namespace is not required.
Example Deployment definition
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: k8s-bigip-ctlr-deployment
  namespace: kube-system
spec:
  replicas: 1
  template:
    metadata:
      name: k8s-bigip-ctlr
      labels:
        app: k8s-bigip-ctlr
    spec:
      serviceAccountName: bigip-ctlr-serviceaccount
      containers:
        - name: k8s-bigip-ctlr
          # replace the version as needed
          image: "f5networks/k8s-bigip-ctlr:1.1.0"
          env:
            - name: BIGIP_USERNAME
              valueFrom:
                secretKeyRef:
                  name: bigip-login
                  key: username
            - name: BIGIP_PASSWORD
              valueFrom:
                secretKeyRef:
                  name: bigip-login
                  key: password
          command: ["/app/bin/k8s-bigip-ctlr"]
          args: [
            "--bigip-username=$(BIGIP_USERNAME)",
            "--bigip-password=$(BIGIP_PASSWORD)",
            "--bigip-url=10.190.24.171",
            "--bigip-partition=kubernetes",
            # To manage a single namespace, enter it below
            # (required in v1.0.0)
            # To manage all namespaces, omit the `namespace` entry
            # (default as of v1.1.0)
            # To manage multiple namespaces, enter a separate flag for each
            # namespace below (as of v1.1.0)
            "--namespace=default",
            ]
      imagePullSecrets:
        - name: f5-docker-images

---

apiVersion: v1
kind: ServiceAccount
metadata:
  name: bigip-ctlr-serviceaccount
  namespace: kube-system

Required configuration parameters for F5 resources

The frontend section of an F5 resource should contain the parameters listed in the tables below.

Tip

virtualServer

Parameter Description
partition The BIG-IP partition in which you want to create a virtual server
mode Proxy mode (http or tcp)
balance Load balancing mode
virtualAddress JSON object; allocates a virtual address for the virtualServer. [2]
  • bindAddr
The IP address you want to assign to the virtual server. [2]
  • port
The port you want to assign to the virtual server. [3]
[2](1, 2) Not required when creating unattached pools.
[3]Required when the virtualAddress object is present; not required if you’re creating unattached pools and you omit the virtualAddress object.

iApps

Parameter Description
partition The BIG-IP partition in which you want to create a virtual server
iapp The BIG-IP iApp template you want to deploy; must already exist on the BIG-IP device
iappPoolMemberTable The name and layout of the pool-member table in the iApp. [4]
iappOptions key-value object that provides information about the iApp (see iApp example)
[4]See iApps Pool Member Table for more information.

See Also

See the k8s-bigip-ctlr product documentation for the full list of available configuration parameters.