Technical Articles
F5 SMEs share good practice.
cancel
Showing results for 
Search instead for 
Did you mean: 
Custom Alert Banner
Erik_Darzins_16
Historic F5 Account

 

 

The App Services Integration iApp provides an iApp template that can be used to automate and orchestrate Layer 4-7 application service deployments using F5 Networks BIG-IP/iWorkflow Products. Also, this template serves as a common integration point for third party SDN/NFV/Automation/Orchestration products. In this particular case I'll show how to automate service management with this iApp in Marathon via the F5 Marathon BIG-IP Controller.

Marathon and Kubernetes are production-grade container orchestration platforms for automating deployment, scaling, and management of containerized applications. F5’s Container Connectors (CCs) understand these container orchestration environments. The CCs provide PaaS-native integrations for F5 BIG-IP devices and the F5 Application Services Proxy (ASP). The F5 Marathon BIG-IP Controller is a Marathon Application that manages F5 BIG-IP Local Traffic Manager (LTM) services. It watches the Marathon API for the creation/destruction/modification of Marathon Apps; when it discovers an App with F5 labels applied, it automatically manages BIG-IP objects or deploys application services using iApps.

In the following example, I'll demonstrate the combined effectiveness of these two technologies to create and manage an application service that implements a simple L7 policy.

Start the Marathon BIG-IP Controller

Launch the F5 Marathon BIG-IP Controller in Marathon via the Marathon REST API or the Marathon Web Interface. The environment variables configure how the controller connects to Marathon, BIG-IP, and what BIG-IP partitions it manages.

0151T000003d70lQAA.png

 

Start a service and annotate it with F5 Application Labels

Next, start an application in Marathon and configure it with F5 application labels: key-value pairs that correspond to BIG-IP configuration options.

0151T000003d70mQAA.png

 

The Marathon BIG-IP Controller automatically discovers the application and its labels, then configures the BIG-iP appropriately; creating, deleting, and updating BIG-IP resources such as Virtual Servers, Pools, Health Monitors, and Policies.

0151T000003d70nQAA.png

 

The application labels can be simple key-value pairs or JSON-formatted tables, such as the L7 Policy Rules:

F5_0_IAPP_TABLE_l7policy__rulesMatch={"rows": [["0", "http-uri/request/path", "no", "starts-with", "/env", "no", "no"], ["default", "", "no", "", "", "no", "no"]], "columns": ["Group", "Operand", "Negate", "Condition", "Value", "CaseSensitive", "Missing"]}
F5_0_IAPP_TABLE_l7policy__rulesAction={"rows": [["0", "forward/request/reset", "none"], ["default", "forward/request/select/pool", "pool:0"]], "columns": ["Group", "Target", "Parameter"]}

Refer to the Application Service iApp Reference Guide for a complete description of all available configuration options.

Scale App in Marathon

When the application is scaled, the Marathon BIG-IP Controller detects this and creates (or deletes) the pool members to match.

0151T000003d70oQAA.png  0151T000003d70pQAA.png

Verify L7 Policy

Verify that the configured L7 policy functions as expected. The simple L7 policy configured here will reset the connection for HTTP requests that contain a path of "/env" and forward all other requests to Pool 0.

 

user@test:~$ curl 172.16.3.2:8080
Hello from d9fea065-4f60-47d3-b6ae-352c854cf5be :0)

user@test:~$ curl 172.16.3.2:8080/env
curl: (56) Recv failure: Connection reset by peer

 

This was was a simple example of F5's Container Connector for Marathon. To learn more about F5's Container Integrations for Marathon and Kubernetes, please see the documentation.

Comments
Mr_Bansal_35035
Nimbostratus
Nimbostratus

Thank you so much Erik for all the references and codes it is really a very informative article. I learnt so much from it. https://getappvalley.com/ https://test-dpc.com/ https://tweakbox.mobi/

 

Shorey_377040
Nimbostratus
Nimbostratus

Download free application on android mobile for free Live TV Download Here

 

tvtap01_378014
Nimbostratus
Nimbostratus

get some knowledge about the streaming application for your Firestick.. It's free of cost http://tvtapios.co/tvtap-pro-on-firestick-fire-tv/.

 

andru96_380470
Nimbostratus
Nimbostratus
naveen948_38105
Nimbostratus
Nimbostratus
Harvey_Moore_38
Nimbostratus
Nimbostratus

Great article. I'm dealing with some of these issues as well.. https://tweak-boxapp.com/

 

paulroman_38351
Nimbostratus
Nimbostratus

Quite Knowledgeable topic great effort and thanks for support and sharing. tvtap

 

Version history
Last update:
‎26-Apr-2017 11:26
Updated by:
Contributors