F5Networks / f5-appsvcs-extension

F5 BIG-IP Application Services 3 Extension
Apache License 2.0
164 stars 53 forks source link

Pool member hostname not populated on BIG-IP #711

Open pedley-f5 opened 1 year ago

pedley-f5 commented 1 year ago

Environment

Summary

Pool member hostname not populated on BIG-IP

Steps To Reproduce

Steps to reproduce the behavior:

  1. Submit the following declaration:

    {
    "$schema": "https://raw.githubusercontent.com/F5Networks/f5-appsvcs-extension/master/schema/latest/as3-schema.json",
    "class": "AS3",
    "action": "deploy",
    "persist": true,
    "declaration": {
      "class": "ADC",
      "schemaVersion": "3.43.0",
      "id": "123abc",
      "label": "SMTPS Example",
      "remark": "",
    
      "Tenant_Acme": {
        "class": "Tenant",
    
        "acme_smtp_app": {
          "class": "Application",
    
          "acme_smtp_vs": {
            "class": "Service_TCP",
            "virtualAddresses": [
              "10.1.20.13"
            ],
            "virtualPort": 25,
            "pool": "acme_smtp_pool",
            "snat": "self",
            "smtpsStartTLS": "require",
            "serverTLS": {
              "bigip": "/Common/clientssl"
            },
            "clientTLS": {
              "bigip": "/Common/serverssl"
            },
            "persistenceMethods": []
          },
    
          "acme_smtp_pool": {
            "class": "Pool",
            "loadBalancingMode": "round-robin",
            "monitors": [{
              "use": "smtp_monitor"
            }],
    
            "members": [{
              "servicePort": 25,
              "shareNodes": false,
              "serverAddresses": [
                "10.1.10.5"
              ],
              "hostname": "foobar"
            }]
          },
          "smtp_monitor": {
            "class": "Monitor",
            "monitorType": "smtp",
            "interval": 30,
            "timeout": 91,
            "domain": "F5"
          }
        }
      }
    }
    }
  2. Observe the following error response: Result comes back OK

    {
    "id": "885d82d8-5e8d-4ef9-b336-703df0db6979",
    "results": [
        {
            "code": 200,
            "message": "success",
            "lineCount": 27,
            "host": "localhost",
            "tenant": "Tenant_Acme",
            "runTime": 890
        }
    ],
    "declaration": {
        "class": "ADC",
        "schemaVersion": "3.43.0",
        "id": "123abc",
        "label": "SMTPS Example",
        "remark": "",
        "Tenant_Acme": {
            "class": "Tenant",
            "acme_smtp_app": {
                "class": "Application",
                "acme_smtp_vs": {
                    "class": "Service_TCP",
                    "virtualAddresses": [
                        "10.1.20.13"
                    ],
                    "virtualPort": 25,
                    "pool": "acme_smtp_pool",
                    "snat": "self",
                    "smtpsStartTLS": "require",
                    "serverTLS": {
                        "bigip": "/Common/clientssl"
                    },
                    "clientTLS": {
                        "bigip": "/Common/serverssl"
                    },
                    "persistenceMethods": []
                },
                "acme_smtp_pool": {
                    "class": "Pool",
                    "loadBalancingMode": "round-robin",
                    "monitors": [
                        {
                            "use": "smtp_monitor"
                        }
                    ],
                    "members": [
                        {
                            "servicePort": 25,
                            "shareNodes": false,
                            "serverAddresses": [
                                "10.1.10.5"
                            ],
                            "hostname": "foobar"
                        }
                    ]
                },
                "smtp_monitor": {
                    "class": "Monitor",
                    "monitorType": "smtp",
                    "interval": 30,
                    "timeout": 91,
                    "domain": "F5"
                }
            }
        },
        "updateMode": "selective",
        "controls": {
            "archiveTimestamp": "2023-03-28T14:36:35.957Z"
        }
    }
    }

    But LTM does not show node/pool member hostnames: ltm node /Tenant_Acme/10.1.10.5 { address 10.1.10.5 } ltm pool /Tenant_Acme/acme_smtp_app/acme_smtp_pool { members { /Tenant_Acme/10.1.10.5:25 { address 10.1.10.5 metadata { source { value declaration } } } } min-active-members 1 monitor min 1 of { /Tenant_Acme/acme_smtp_app/smtp_monitor } }

Expected Behavior

Pool member/node hostname should be populated.

Actual Behavior

Pool member/node hostname is not populated.

sunitharonan commented 1 year ago

Thank you @pedley-f5. I have added this issue to our internal product backlog as AUTOTOOL-3790. In order to prioritize and understand the issue better, please reach out to us at automation_toolchain_pm@f5.com