cancel
Showing results for 
Search instead for 
Did you mean: 

How can I deploy disabled Virtual Server using JSON and AS3

WildWeasel
Altostratus
Altostratus

I am migrating from an End Of Life hardware to a new vCMP Guest and with the migration I am deploying all the applications using JSON and AS3 (through BIGiQ).

So we would like all the applications to be staged on the F5 in a disabled state and as we migrate each application with the team on the phone for verification, I just want to make the change in JSON and push to the F5 and disable the Virtual Server on the legacy EoL box and BOOM, live traffic on new box.

Why disabled state?  I don't want any traffic to go to new hardware until we are ready to migrate the application.

So in JSON format all I can figure out looking through the AS3 schema is possibly changing this one setting from true to false.  What it does is create everything but the virtual server if you go to the F5 itself.  So the partition is created (tenant) and you'll find the pool but you won't see any virtual server.

as3_virtualServer_brief.png

The goal is actually to have the virtual server deployed to the F5 using JSON but it be visible and disabled.

disabled.png

Any help/guidance is very much appreciated.

***** UPDATE *****

I tried to delete this post as I realized that the virtual server is still reachable even in a disabled state (replies to ping) so if you have the same Virtual IP on both new and old, even if Virtual Server is disabled on new it responds so the response for a client could get ugly depending on which F5 is responding to query.

Anywho..  I am going to just move forward with changing the JSON setting for enable from true to false and that will get me most of the way and IP doesn't respond because its not there.  Probably why F5 designed it this way.. duh..

Sorry to have wasted your time

1 REPLY 1

You should configure your declaration with arp and echo disabled in the VirtualAdress level. Please refer to this link for an example:

 

https://clouddocs.f5.com/products/extensions/f5-appsvcs-extension/latest/declarations/miscellaneous....

 

{
    "class": "ADC",
    "schemaVersion": "3.15.0",
    "id": "declarationId",
    "source_service_address_example": {
        "class": "Tenant",
        "app": {
            "class": "Application",
            "my_service_address": {
                "class": "Service_Address",
                "virtualAddress": "1.1.1.1",
                "arpEnabled": false,
                "icmpEcho": "disable"
            },
            "service": {
                "class": "Service_Generic",
                "virtualAddresses": [
                    [
                        {
                            "use": "my_service_address"
                        },
                        "1.2.3.4/32"
                    ]
                ],
                "virtualPort": 1000
            }
        }
    }
}