Forum Discussion

Robin2113's avatar
Robin2113
Icon for Nimbostratus rankNimbostratus
Nov 09, 2024

F5 - AS3 - BIGIQ / BIGIP SchemaVersion Missunderstanding

Dear community, 

 

 I was wondering about the AS3 version currently used in order to deploy my AS3 on my BIG-IP target through BIG-IQ.

BIG-IQ should install this current AS3 version on F5 BIG-IP target when deploying AS3 declaration.

 

Checking on my BIG-IQ, 3.44.0

curl -sk -H "Content-Type: application/json" -H "X-F5-Auth-Token: $TOKEN" -X GET "https://$BIGIQ/mgmt/shared/appsvcs/info"
{"version":"3.44.0","release":"3","schemaCurrent":"3.44.0","schemaMinimum":"3.0.0"}  

Checking on my F5 BIG-IP, v 3.44.0

 #pwd
/var/config/rest/iapps/f5-appsvcs
# cat version 
3.44.0-3

 

My current AS3 declaration (I'm manually forcing schemaVersion) through BIG-IQ : 

 {
    "class": "AS3",
    "action": "patch",
    "schemaVersion": "3.44.0",
    "patchBody": [
      {
        "class": "ADC",
        "schemaVersion": "3.44.0",
        "target": {
          "address": "X.X.X.X"
        },
        "op": "add",
        "path": "/Automation/APP_TEST_1.2.12.140_446",
        "value": {
          "class": "Application",
          "remark": "REFERENCE : NULL_REFERENCE_20241109215237",
          "schemaOverlay": "AS3-F5-HTTPS-PASSTHROUGH-lb-template-big-iq",

.... etc }

 

 

Application Deployment logs from my BIG-IQ :

At the bottom : "schemaVersion": "3.12.0"

I don't understand why it's using this older schemaVersion, it should use the current 3.44.0. Is there any policy on BIG-IQ that can enforce this weird behavior ? 

 

{
    "id": "autogen_a4c95a0f-13e3-4078-92c3-3a8e6ea6f10c",
    "class": "ADC",
    "controls": {
        "class": "Controls",
        "userAgent": "BIG-IQ/8.3 Configured by API"
    },
    "Automation": {
        "class": "Tenant",
        "APP_TEST_1.2.12.140_446": {
            "class": "Application",
            "remark": "REFERENCE : NULL_REFERENCE_20241109215237",
            "template": "tcp",
            "serviceMain": {
                "pool": "/Automation/APP_TEST_1.2.12.140_446/HTTPS_443_pool",
                "class": "Service_TCP",
                "enable": true,
                "profileTCP": {
                    "use": "/Automation/APP_TEST_1.2.12.140_446/HTTPS_443_tcp_profile"
                },
                "virtualPort": 446,
                "virtualAddresses": [
                    "1.2.12.140"
                ],
                "persistenceMethods": [
                    "source-address"
                ],
                "profileAnalyticsTcp": {
                    "use": "/Automation/APP_TEST_1.2.12.140_446/Analytics_TCP_Profile"
                }
            },
            "HTTPS_443_pool": {
                "class": "Pool",
                "members": [
                    {
                        "adminState": "enable",
                        "shareNodes": true,
                        "servicePort": 443,
                        "serverAddresses": [
                            "1.2.12.13"
                        ]
                    }
                ],
                "monitors": [
                    {
                        "use": "/Automation/APP_TEST_1.2.12.140_446/HTTPS_443_monitor"
                    }
                ],
                "loadBalancingMode": "least-connections-member"
            },
            "HTTPS_443_monitor": {
                "send": "GET /\r\n",
                "class": "Monitor",
                "receive": "none",
                "targetPort": 443,
                "monitorType": "http",
                "adaptiveWindow": 180,
                "adaptiveLimitMilliseconds": 1000,
                "adaptiveDivergencePercentage": 100
            },
            "Analytics_TCP_Profile": {
                "class": "Analytics_TCP_Profile",
                "collectCity": false,
                "collectRegion": true,
                "collectCountry": true,
                "collectNexthop": false,
                "collectPostCode": false,
                "collectContinent": true,
                "collectRemoteHostIp": false,
                "collectedByClientSide": true,
                "collectedByServerSide": true,
                "collectRemoteHostSubnet": true
            },
            "HTTPS_443_tcp_profile": {
                "class": "TCP_Profile",
                "synMaxRetrans": 3,
                "finWaitTimeout": 5
            }
        }
    },
    "updateMode": "selective",
    "schemaVersion": "3.12.0"
}

 

 

Thanks in advance for your help ! 

No RepliesBe the first to reply