Forum Discussion

vytbr222's avatar
vytbr222
Icon for Nimbostratus rankNimbostratus
Nov 17, 2023

F5 AS3 set ProfileHTTP on Service_L4

Hi all,

  as per https://my.f5.com/manage/s/article/K16446 - Big-IP supports setting a HTTP Profile on a Performance L4 service type.

  Putting aside all the "why would anyone use this combo", I need to replicate this kind of configuration using AS3, but looking at the AS3 schema reference for Service_L4 - there seems to be no profileHTTP property available. I was wondering was it deliberate and what are the reasons for that?

  Is there another way of implementing the Service of type performance_L4 with HTTP profile associated using AS3?

thanks,

Vytautas

3 Replies

  • Hi F5_Design_Engineer

    thanks for such a quick response.

    I am in fact talking about an layer 4 service and I am trying to associate a "http" profile with it. To give you an example, I'm trying to form an AS3 declaration, which would translate into the following CLI config snippet:

    ltm virtual /Common/Shared/vip_1 {
    ...
      profiles {
        /Common/fastL4 { }
        /Common/http { }
      }
    }

    Note I need both "http" and "fastL4" profiles associated with the service.

    In order to attach the "fastL4" profile, I need to use the service of class "Service_L4", but in that case it does not accept the profileHTTP property.

    If I were to use a "Service_HTTP" instead, I'd be able to use the profileHTTP, but in that case I'd not be able to associate the "fastL4" profile, would I?

    Hopefully this clarifies the issue I'm having.

    thanks,

    Vytautas

  • I wanted to "bump" this conversation, and request the same.     Here is my configuration, and there should be no reason it is deployed incorrectly:


    "rabbitmq_dev_80_vs": {
            "remark": "rabbitmq-n",
            "layer4": "tcp",
            "iRules": [
                    {
                            "bigip": "/Common/Shared/https_redir_ir"
                    }
            ],
            "translateServerAddress": true,
            "translateServerPort": true,
            "class": "Service_HTTP",
            "profileL4": { "use": "/rabbitmq/Shared/rabbitmq_fast_l4_prof" },
            "profileHTTP": { "bigip": "/Common/Shared/std_http_prof" },
            "virtualAddresses": [
                    "128.83.80.19"
            ],
            "virtualPort": 80,
            "snat": "none"
    }

    I am using "Service_HTTP", and specifying an L4 profile.   Yet the it deploys as a "Standard" configuration. 


    Special note:  when it deploys as "standard" it is broken, and no traffic flows (even thought pools are up and such), and it is only if I used the GUI to change the configuration to "Performance (Layer 4)" and save it, that it then starts working (traffic starts flowing).  

    I compared the AS3 configuration that I deployed and the one that the F5 shows as deployed (using Visual Studio Code), and they are identical, yet the deployed version is broken, because it is set to "Standard".