Manual Chapter : Upgrading from previous F5 SSL Orchestrator versions using the recovery procedure

Applies To:

  • F5 SSL Orchestrator

    17.0.0, 16.1.3, 16.1.1, 16.1.0, 16.0.1, 16.0.0

Upgrading from previous F5 SSL Orchestrator versions using the recovery procedure

If you need to recover from a failed recommended upgrade procedure and still need to undeploy your previous SSL Orchestrator deployments, as well as uninstall your previous version of the application, manual steps are required to reset your environment and undeploy the previous version.

Depending on your previous SSL Orchestrator version and current access to the BIG-IP Applications LX menu, use one of the following upgrade paths:

  • Upgrading from SSL Orchestrator versions 12.x.x, 13.x.x using recovery procedure
  • Upgrading from SSL Orchestrator versions 14.0.x using recovery procedure with Applications LX menu access
  • Upgrading from SSL Orchestrator versions 14.0.x using recovery procedure without Applications LX menu access

  • Access to log on to the BIG-IP console as root or equivalent privileges.
  • Access to user credentials so to enter a curl command.

To upgrade from SSL Orchestrator version 12.x.x or 13.x.x, follow the procedure in this section to cleanup your environment. When you complete this procedure, your environment will be clean and you can log in to BIG-IP and start using SSL Orchestrator Guided Configuration by clicking SSL Orchestrator > Configuration.

Steps to cleanup your environment:

  • Cleaning up forwarding database (FDB) entries
  • Cleaning up nodes
  • Cleaning up iApp application service
  1. Either SSH to BIG-IP as a root user or as a user with equivalent or higher privileges.

    For example, SSH root@<Management IP>.

  2. Enter the following command to get the SSL Orchestrator block and write down the value for the id, name, and state attribute from the output of the command.

    curl --insecure -XGET 'https://<<BigIp management IP>>/mgmt/shared/iapp/blocks?$select=id,name,state&$filter=presentationHtmlReference/link%20eq%20%27https://localhost/iapps/f5-iappslx-ssl-orchestrator/index.html%27%20and%20state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u <<userID>>:<<password>> | python -m json.tool

    For example, note down the details:

              "id": "2f00771a-48c1-4c0d-a907-b586164177d7", 
    
              "name": "ssloAppName", 
    
              "state": "BOUND"
    
    [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/shared/iapp/blocks?$select=id,name,state&$filter=presentationHtmlReference/link%20eq%20%27https://localhost/iapps/f5-iappslx-ssl-orchestrator/index.html%27%20and%20state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u admin:admin | python -m json.tool
    
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current Dload  Upload   Total   Spent    Left  Speed
    
    100   265  100   265    0     0    884      0 --:--:-- --:--:-- --:--:--   904
    
    {
    
        "generation": 57, 
    
        "items": [
    
            {
    
                "id": "2f00771a-48c1-4c0d-a907-b586164177d7", 
    
                "name": "ssloAppName", 
    
                "state": "BOUND"
    
            }
    
        ], 
    
    ....
    
    }
  3. Cleaning up forwarding database (FDB) entries

  4. To delete and cleanup the FDB entries, F5 recommends that you first map the MAC addresses and VLAN names so to properly determine the TMUI command to delete the FDB entries. We recommend creating a table to track the required information.

    MAC Address VLAN Name TMUI Command to delete FDB entry
         
  5. To retrieve the MAC addresses, enter the following command and populate the table with the correct information.

    curl --insecure -XGET 'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks?$select=id,name,inputProperties/value/receiveOnlyServices/macAddress&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u <<userID>>:<<password>>| python -m json.tool

    Update the table with the MAC address details.

    MAC Address VLAN Name TMUI Command to delete FDB entry
    11:22:33:44:55:66    
    77:88:99:11:22:33    

    The MAC address information would come from this source:

    
    [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/shared/iapp/blocks?$select=id,name,inputProperties/value/receiveOnlyServices/macAddress&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u admin:admin | python -m json.tool
    
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current  Dload  Upload   Total   Spent    Left  Speed
    
    100   390  100   390    0     0   2502      0 --:--:-- --:--:-- --:--:--  2635
    
    {
    
        "generation": 57, 
    
        "items": [
    
            {
    
                "id": "2f00771a-48c1-4c0d-a907-b586164177d7", 
    
                "inputProperties": [
    
                    {
    
                        "value": {
    
                            "receiveOnlyServices": [
    
                                {
    
                                    "macAddress": "11:22:33:44:55:66"
    
                                }, 
    
                                {
    
                                    "macAddress": "77:88:99:11:22:33"
    
                                }
    
                            ]
    
                        }
    
                    }, 
    
                    {
    
                        "value": true
    
                    }
    
                ], 
    
                "name": "ssloAppName"
    
            }
    
        ], 
    
    .......
    
    }
  6. To retrieve the VLAN names, enter the following command and populate the table with the correct information.

    curl --insecure -XGET 'https://<<Big Ip Management IP>>/mgmt/tm/net/fdb/vlan?$select=name,records/name' -u <<User ID>>:<<Password>> | python -m json.tool

    Update the table with the VLAN name details.

    MAC Address VLAN Name TMUI Command to delete FDB entry
    11:22:33:44:55:66 v1  
    77:88:99:11:22:33 v1  

    Note: Ignore “v3” because the mapped MAC address in not present in the above table.

    Note: Ignore the MAC address fa:18:4a:ca:c1:4d from any “v1” VLAN name.

    The VLAN name information would come from this source:

    
    [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/tm/net/fdb/vlan?$select=name,records/name' -u admin:admin | python -m json.tool
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current Dload  Upload   Total   Spent    Left  Speed
    100   434  100   434    0     0   1254      0 --:--:-- --:--:-- --:--:--  1280
    
    {
    
        "items": [
    
            {
    
                "name": "ssloAppName-70-0-D"
    
            }, 
    
            {
    
                "name": "ssloAppName-70-0-S"
    
            }, 
    
            {
    
                "name": "ssloAppName-71-0-D"
    
            }, 
    
            {
    
                "name": "ssloAppName-71-0-S"
    
            }, 
    
            {
    
                "name": "v1", 
    
                "records": [
    
                    {
    
                        "name": "11:22:33:44:55:66"
    
                    }, 
    
                    {
    
                        "name": "77:88:99:11:22:33"
    
                    },
    
                    {
    
                        "name": "fa:18:4a:ca:c1:4d"
    
                    }
    
                ]
    
            }, 
    
            {
    
                "name": "v2",
    
            }, 
    
            {
    
                "name": "v3", 
    
                "records": [
    
                    {
    
                        "name": "fa:16:3e:cb:d1:8d"
    
                    }
    
                ]
    
            }, 
    
            {
    
                "name": "v4"
    
            }
    
        ], 
    
    ......
    
    }
  7. Use the following command to build the delete commands for cleaning up the FDB entries and update the table.

    modify net fdb vlan <<vlan name>> records delete { <<macaddress>> }

    Update the table with the delete command details.

MAC Address

VLAN Name

TMUI Command to delete FDB entry

11:22:33:44:55:66

v1

modify net fdb vlan v1 records delete { 11:22:33:44:55:66 }

77:88:99:11:22:33

v1

modify net fdb vlan v1 records delete { 77:88:99:11:22:33 }
  1. Enter all of the delete commands for deleting FDB entries. For example:

    tmsh modify net fdb vlan v1 records delete { 11:22:33:44:55:66 }
    tmsh modify net fdb vlan v1 records delete { 77:88:99:11:22:33 }
  2. Cleaning up nodes

  3. To delete the necessary nodes used in different services and objects created through the SSL Orchestrator application, you must identify the list of IP addresses that map to each node. F5 recommends you populate a table to track the information using information output from commands detailed in the steps below. For example:

    IP Address TMUI command for deleting nodes
       
  4. Enter the following command and populate the table with the values in the IP address column. Ignore all duplicates when listing all IP addresses for explicitProxyConfiguration, ingressDeviceEgressConfiguration, ingressDeviceConfiguration, egressDeviceEgressConfiguration, and decryptZone.

    curl --insecure -XGET 'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks?$select=inputProperties/value/generalSection/ingressDeviceEgressConfiguration/ipv4OutboundGateways/ip,inputProperties/value/generalSection/ingressDeviceEgressConfiguration/ipv6OutboundGateways/ip,inputProperties/value/generalSection/egressDeviceEgressConfiguration/ipv4OutboundGateways/ip,inputProperties/value/generalSection/egressDeviceEgressConfiguration/ipv6OutboundGateways/ip&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u <<userID>>:<<password>> | python -m json.tool

    For example:

    IP Address TMUI command for deleting nodes
    90.90.90.94  
    90.90.90.95  
    2001:0db8:85a3:0000:0000:8a2e:0370:7334  

    The explicitProxyConfiguration, ingressDeviceEgressConfiguration, ingressDeviceConfiguration, egressDeviceEgressConfiguration, and decryptZone IP address information would come from this source:

    [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/shared/iapp/blocks?$select=inputProperties/value/generalSection/ingressDeviceEgressConfiguration/ipv4OutboundGateways/ip,inputProperties/value/generalSection/ingressDeviceEgressConfiguration/ipv6OutboundGateways/ip,inputProperties/value/generalSection/egressDeviceEgressConfiguration/ipv4OutboundGateways/ip,inputProperties/value/generalSection/egressDeviceEgressConfiguration/ipv6OutboundGateways/ip&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u admin:admin | python -m json.tool
    
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current Dload  Upload   Total   Spent    Left  Speed
    
    100   534  100   534    0     0   3144      0 --:--:-- --:--:-- --:--:--  3296
    
    {
    
        "generation": 57, 
    
        "items": [
    
            {
    
                "inputProperties": [
    
                    {
    
                        "value": {
    
                            "generalSection": {
    
                                "egressDeviceEgressConfiguration": {
    
                                    "ipv4OutboundGateways": [
    
                                        {
    
                                            "ip": ""
    
                                        }
    
                                    ], 
    
                                    "ipv6OutboundGateways": [
    
                                        {
    
                                            "ip": ""
    
                                        }
    
                                    ]
    
                                }, 
    
                                "ingressDeviceEgressConfiguration": {
    
                                    "ipv4OutboundGateways": [
    
                                        {
    
                                            "ip": "90.90.90.94"
    
                                        }, 
    
                                        {
    
                                            "ip": "90.90.90.95"
    
                                        }
    
                                    ], 
    
                                    "ipv6OutboundGateways": [
    
                                        {
    
                                            "ip": "2001:0db8:85a3:0000:0000:8a2e:0370:7334"
    
                                        }
    
                                    ]
    
                                }
    
                            }
    
                        }
    
                    }, 
    
                    {
    
                        "value": true
    
                    }
    
                ]
    
            }
    
        ], 
    
        "kind": "shared:iapp:blocks:blockcollectionstate", 
    
    ......
    
    }
  5. List all IP addresses for receiveOnlyServices and update the IP addresses in the table by entering the following command:

    curl --insecure -XGET 'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks?$select=inputProperties/value/receiveOnlyServices/ipAddress&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u <<userID>>:<<password>> | python -m json.tool	

    For example:

    IP Address TMUI command for deleting nodes
    90.90.90.94  
    90.90.90.95  
    2001:0db8:85a3:0000:0000:8a2e:0370:7334  
    10.10.10.10  
    20.20.20.20  

    The receiveOnlyServices IP address information would come from this source:

    [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/shared/iapp/blocks?$select=inputProperties/value/receiveOnlyServices/ipAddress&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u admin:admin | python -m json.tool
    
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current Dload  Upload   Total   Spent    Left  Speed
    
    100   311  100   311    0     0   1800      0 --:--:-- --:--:-- --:--:--  1884
    
    {
    
        "generation": 57, 
    
        "items": [
    
            {
    
                "inputProperties": [
    
                    {
    
                        "value": {
    
                            "receiveOnlyServices": [
    
                                {
    
                                    "ipAddress": "10.10.10.10"
    
                                }, 
    
                                {
    
                                    "ipAddress": "20.20.20.20"
    
                                }
    
                            ]
    
                        }
    
                    }, 
    
                    {
    
                        "value": true
    
                    }
    
                ]
    
            }
    
        ], 
    
        "kind": "shared:iapp:blocks:blockcollectionstate", 
    
    ......
    
    }
  6. List all IP addresses for icapServices and update the IP addresses in the table by entering the following command:

    curl --insecure -XGET 'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks?$select=inputProperties/value/icapServices/inspectionDevices/ipAddress,inputProperties/value/icapServices/backupItem/inspectionDevices/ipAddress&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u <<userID>>:<<password>> | python -m json.tool

    For example:

    IP Address TMUI command for deleting nodes
    90.90.90.94  
    90.90.90.95  
    2001:0db8:85a3:0000:0000:8a2e:0370:7334  
    10.10.10.10  
    20.20.20.20  
    30.30.30.30  
    40.40.40.40  
    50.50.50.50  

    The icapServices IP address information would come from this source:

    [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/shared/iapp/blocks?$select=inputProperties/value/icapServices/inspectionDevices/ipAddress,inputProperties/value/icapServices/backupItem/inspectionDevices/ipAddress&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u <<userID>>:<<password>> | python -m json.tool
    
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current  Dload  Upload   Total   Spent    Left  Speed
    
    100   538  100   538    0     0   3987      0 --:--:-- --:--:-- --:--:--  4014
    
    {
    
        "generation": 57, 
    
        "items": [
    
            {
    
                "inputProperties": [
    
                    {
    
                        "value": {
    
                            "icapServices": [
    
                                {
    
                                    "backupItem": {
    
                                        "inspectionDevices": [
    
                                            {
    
                                                "ipAddress": "30.30.30.30"
    
                                            }, 
    
                                            {
    
                                                "ipAddress": "40.40.40.40"
    
                                            }
    
                                        ]
    
                                    }, 
    
                                    "inspectionDevices": [
    
                                        {
    
                                            "ipAddress": "30.30.30.30"
    
                                        }, 
    
                                        {
    
                                            "ipAddress": "40.40.40.40"
    
                                        }
    
                                    ]
    
                                }, 
    
                                {
    
                                    "backupItem": {
    
                                        "inspectionDevices": [
    
                                            {
    
                                                "ipAddress": "50.50.50.50"
    
                                            }
    
                                        ]
    
                                    }, 
    
                                    "inspectionDevices": [
    
                                        {
    
                                            "ipAddress": "50.50.50.50"
    
                                        }
    
                                    ]
    
                                }
    
                            ]
    
                        }
    
                    }, 
    
                    {
    
                        "value": true
    
                    }
    
                ]
    
            }
    
        ], 
    
        "kind": "shared:iapp:blocks:blockcollectionstate", 
    
    .....
    
    }
  7. Create the delete commands for cleaning up FDB entries and update the IP addresses in the table by entering the following command:

    delete ltm node <<IP Address>>

    For example:

    IP Address TMUI command for deleting nodes
    90.90.90.94 delete ltm node 90.90.90.94
    90.90.90.95 delete ltm node 90.90.90.95
    2001:0db8:85a3:0000:0000:8a2e:0370:7334 delete ltm node 2001:0db8:85a3:0000:0000:8a2e:0370:7334
    10.10.10.10 delete ltm node 10.10.10.10
    20.20.20.20 delete ltm node 20.20.20.20
    30.30.30.30 delete ltm node 30.30.30.30
    40.40.40.40 delete ltm node 40.40.40.40
    50.50.50.50 delete ltm node 50.50.50.50
  8. Enter all of the delete commands built in the table.

    Note: Ignore the following error message if any delete commands fail since the node may be getting used somewhere else.

    “Node address ‘/Common/<<IP Address>>’ is referenced by a member of pool ‘/Common/<<Pool Name>>’”

    Example of delete commands:

    
    tmsh delete ltm node 90.90.90.94
    tmsh delete ltm node 90.90.90.95
    tmsh delete ltm node 2001:0db8:85a3:0000:0000:8a2e:0370:7334
    tmsh delete ltm node 10.10.10.10
    tmsh delete ltm node 20.20.20.20
    tmsh delete ltm node 30.30.30.30
    tmsh delete ltm node 40.40.40.40
    tmsh delete ltm node 50.50.50.50
  9. Cleaning up iApp application service

  10. Enter the following command using the SSL Orchestrator application name noted down in Step 4:

    tmsh delete sys application service <<SSLO App Name>>.app/<<SSLO App Name>>

    For example, “name”:“ssloAppName” would look much like this:

    delete sys application service ssloAppName.app/ssloAppName 
  11. Enter the following command while replacing the <<block id>> with the id value noted down in Step 2:

    curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks/<<block Id>>' -u <<userID>>:<<password>>

    For example:

    curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/2f00771a-48c1-4c0d-a907-b586164177d7' 
    -u admin:admin
  12. Wait at least two to three minutes before attempting to execute the following command so to check the status of the iApp block. Repeat this command until the status value changes to ERROR/UNBOUND.

    curl --insecure -XGET 'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks?$select=state,id&$filter=id%20eq%20%27<<Block Id>>%27' -u <<userID>>:<<password>> | python -m json.tool

    In this example, the id that was noted down in Step 2 is: 2f00771a-48c1-4c0d-a907-b586164177d7.

    curl --insecure -XGET 'https://10.192.225.215/mgmt/shared/iapp/blocks?$select=state,id&$filter=id%20eq%20%27**2f00771a-48c1-4c0d-a907-b586164177d7**%27' -u admin:admin | python -m json.tool
  13. Enter the following command to delete the iApp block. The block must be in EROR state before executing this command. Refer to step 16 to check the block state.

    curl --insecure  -X DELETE  'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks/2f00771a-48c1-4c0d-a907-b586164177d7' -u <<userID>>:<<password>>

    For example:

    curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/2f00771a-48c1-4c0d-a907-b586164177d7' -u admin:admin

You have now cleaned the device of SSL Orchestrator deployments. Log in to the BIG-IP and start using SSL Orchestrator by clicking SSL Orchestrator > Configuration.

To upgrade from SSL Orchestrator versions 14.0.x while you have access to the Applications LX menu, follow the procedure in this section to cleanup your environment. When you complete this procedure your environment will be clean and you can log in to BIG-IP and start using SSL Orchestrator Guided Configuration by clicking SSL Orchestrator > Configuration.

  1. Login to BIG-IP and navigate to iApps > Application Services > Applications LX.

  2. Select all deployed SSL Orchestrator applications in the table.

  3. Click Undeploy.

  4. Delete all SSL Orchestrator applications which have the below template type:

    • f5-ssl-orchestrator-storage
    • f5-ssl-orchestrator-network
    • f5-ssl-orchestrator-policy
    • f5-ssl-orchestrator-service
    • f5-ssl-orchestrator-tls
    • f5-ssl-orchestrator
  5. Click iApps > Package Management LX. The Package Management LX screen opens.

  6. Select the f5-iappslx-ssl-orchestrator package and click uninstall.

You have now cleaned the device of any SSL Orchestrator deployments. Log in to the BIG-IP and start using SSL Orchestrator by clicking SSL Orchestrator > Configuration.

To upgrade from SSL Orchestrator versions 14.0.x and you do not have access to the Applications LX menu, follow the procedure in this section to cleanup your environment. When you complete this procedure your environment will be clean and you can log in to BIG-IP and start using SSL Orchestrator Guided Configuration by clicking SSL Orchestrator > Configuration.

  1. Enter the following command and note down the name and id.

    curl --insecure -XGET 'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks?$select=id,name&$filter=configurationProcessorReference/link%20eq%20%27https://localhost/mgmt/shared/iapp/processors/f5-iappslx-ssl-orchestrator%27%20and%20state%20ne%20%27TEMPLATE%27' -u <<userID>>:<<password>> | python -m json.tool

    For example, note down the name and id details:

    [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/shared/iapp/blocks?$select=id,name&$filter=configurationProcessorReference/link%20eq%20%27https://localhost/mgmt/shared/iapp/processors/f5-iappslx-ssl-orchestrator%27%20and%20state%20ne%20%27TEMPLATE%27' -u admin:admin | python -m json.tool
    
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current .  Dload  Upload   Total   Spent    Left  Speed
    
    100   257  100   257    0     0   1771      0 --:--:-- --:--:-- --:--:--  1889
    
    {
    
        "generation": 11569,
    
        "items": [
    
            {
    
                "id": "c670eb32-89a5-4555-a2bf-e7a82c743ff6",
    
                "name": "sslo_TestSsloApp"
    
            }
    
        ],
    
        .....
    
    }
  2. To delete and cleanup the forwarding database (FDB) entries, F5 recommends you first map the MAC addresses and VLAN names so to properly determine the TMUI command to delete the FDB entries. We recommend creating a table to track the required information.

    MAC Address VLAN Name TMUI Command to delete FDB entry
         
  3. To retrieve all of the MAC addresses used for FDB entries, enter the following command and populate the table with the correct information.

    curl --insecure -XGET 'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks?$select=id,state,name,inputProperties/value/customService/serviceSpecific/macAddress,inputProperties/value/customService/serviceSpecific/vlan&$filter=configurationProcessorReference/link%20eq%20%27https://localhost/mgmt/shared/iapp/processors/f5-iappslx-ssl-orchestrator-service%27%20and%20inputProperties/value/customService/serviceType%20eq%20%27tap%27%20and%20%20state%20ne%20%27TEMPLATE%27' -u <<userID>>:<<password>> | python -m json.tool

    Populate the table with the MAC addresses.

    MAC Address VLAN Name TMUI Command to delete FDB entry
    fa:16:3e:cb:d1:8d    
    fa:16:3e:5d:fe:58    

    For example, the MAC address information would come from this source:

    [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/shared/iapp/blocks?$select=id,state,name,inputProperties/value/customService/serviceSpecific/macAddress,inputProperties/value/customService/serviceSpecific/vlan&$filter=configurationProcessorReference/link%20eq%20%27https://localhost/mgmt/shared/iapp/processors/f5-iappslx-ssl-orchestrator-service%27%20and%20inputProperties/value/customService/serviceType%20eq%20%27tap%27%20and%20%20state%20ne%20%27TEMPLATE%27' -u admin:bigip123 | python -m json.tool
    
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current .  Dload  Upload   Total   Spent    Left  Speed
    
    100   645  100   645    0     0    752      0 --:--:-- --:--:-- --:--:--   761
    
    {
    
        "generation": 13107,
    
        "items": [
    
            {
    
                "id": "9bf2efe3-db82-4c1a-8dd4-52bc23b9d5eb",
    
                "inputProperties": [
    
                    {
    
                        "value": {
    
                            "customService": {
    
                                "serviceSpecific": {
    
                                    "macAddress": "fa:16:3e:5d:fe:58",
    
                                    "vlan": "/Common/ssloN_vLan3Sslo.app/ssloN_vLan3Sslo"
    
                                }
    
                            }
    
                        }
    
                    }
    
                ],
    
                "name": "ssloS_TapService_2",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "6e161941-826d-424e-865e-3defbfdfd116",
    
                "inputProperties": [
    
                    {
    
                        "value": {
    
                            "customService": {
    
                                "serviceSpecific": {
    
                                    "macAddress": "fa:16:3e:cb:d1:8d",
    
                                    "vlan": "/Common/vLan1"
    
                                }
    
                            }
    
                        }
    
                    }
    
                ],
    
                "name": "ssloS_TapService",
    
                "state": "BOUND"
    
            }
    
        ],
    
    ....
    
    }
  4. To retrieve the VLAN names, enter the following command and populate the table with the correct information.

    curl --insecure -XGET 'https://<<BigIP Management IP>>/mgmt/tm/net/fdb/vlan?$select=name,records/name' -u <<userID>>:<<password>> | python -m json.tool

    Update the table with the VLAN name details.

    MAC Address VLAN Name TMUI Command to delete FDB entry
    fa:16:3e:cb:d1:8d vLan1  
    fa:16:3e:cb:d1:8d ssloN_ssloVlan_1  
    fa:16:3e:5d:fe:58 ssloN_vLan3Sslo  

    Note: If the same MAC address is associated with multiple VLANs, note the multiple VLAN names against each of the MAC addresses.

    For example, the information would come from this source:

    [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/tm/net/fdb/vlan?$select=name,records/name' -u admin:bigip123 | python -m json.tool 
    
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current . Dload  Upload   Total   Spent    Left  Speed
    
    100   372  100   372    0     0   1252      0 --:--:-- --:--:-- --:--:--  1261
    
    {
    
        "items": [
    
            {
    
                "name": "ssloN_ssloVlan_1",
    
                "records": [
    
                    {
    
                        "name": "fa:16:3e:cb:d1:8d"
    
                    }
    
                ]
    
            },
    
            {
    
                "name": "ssloN_vLan3Sslo",
    
                "records": [
    
                    {
    
                        "name": "fa:16:3e:5d:fe:58"
    
                    }
    
                ]
    
            },
    
            {
    
                "name": "vLan1",
    
                 "records": [
    
                    {
    
                        "name": "fa:16:3e:cb:d1:8d"
    
                    }
    
                ]
    
            },
    
            {
    
                "name": "vLan2"
    
            },
    
            {
    
                "name": "vLan3"
    
            },
    
            {
    
                "name": "vLan4"
    
            }
    
        ],
    
    ....
    
    }
  5. Use the following command to build the delete commands for cleaning up the FDB entries and update the table.

    modify net fdb vlan <<vlan name>> records delete { <<macaddress>> }

MAC Address

VLAN Name

TMUI Command to delete FDB entry

fa:16:3e:cb:d1:8d

vLan1

modify net fdb vlan vLan1 records delete { fa:16:3e:cb:d1:8d }

fa:16:3e:cb:d1:8d

ssloN_ssloVlan_1

modify net fdb vlan ssloN_ssloVlan_1.app/ssloN_ssloVlan_1 records delete {fa:16:3e:cb:d1:8d }

fa:16:3e:5d:fe:58

ssloN_vLan3Sslo

modify net fdb vlan ssloN_vLan3Sslo.app/ssloN_vLan3Sslo records delete {fa:16:3e:5d:fe:58 }
**Note:** If you receive a strictness warning \(Protcted/Unprotected Configurations\) while deleting FDB entries, enter the following command and try to enter the delete command again.

```
modify sys application service <<vLan Name>>.app/<<vLan Name>>  strict-updates disabled
```

For example, the information would come from this source:

```
root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# modify net fdb vlan ssloN_vLan3Sslo.app/ssloN_vLan3Sslo records delete {fa:16:3e:5d:fe:58 }

010715bc:3: The application service (/Common/ssloN_vLan3Sslo.app/ssloN_vLan3Sslo) has strict updates enabled, the object (VLAN /Common/ssloN_vLan3Sslo.app/ssloN_vLan3Sslo) must be updated using an application management interface.

root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# modify sys application service ssloN_vLan3Sslo.app/ssloN_vLan3Sslo  strict-updates disabled

root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# modify net fdb vlan ssloN_vLan3Sslo.app/ssloN_vLan3Sslo records delete {fa:16:3e:5d:fe:58 }

root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# 
```
  1. Enter all of the delete commands for deleting FDB entries. For example:

    tms modify net fdb vlan vLan1 records delete { fa:16:3e:cb:d1:8d }
    tmsh modify net fdb vlan ssloN_ssloVlan_1.app/ssloN_ssloVlan_1 records delete {fa:16:3e:cb:d1:8d }
    tmsh modify net fdb vlan ssloN_vLan3Sslo.app/ssloN_vLan3Sslo records delete {fa:16:3e:5d:fe:58 }
  2. Enter the following command on the BIG-IP:

    tmsh

    For example:

    [root@localhost:Active:Standalone] config # tmsh
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)#
  3. Enter the following command and press tab to view the list of deployed application services. The resulting information from this step will be used in step 9.

    delete sys application service

    For example:

    [root@localhost:Active:Standalone] config # tmsh
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service 
    
    Options:
    
      recursive                  
    
    Configuration Items:
    
      ssloN_ssloVlan_1.app/      ssloN_vLan3Sslo.app/       ssloS_HttpService.app/     ssloS_L2Service_1.app/     ssloS_L3Service_2.app/     ssloS_TapService_2.app/    ssloS_iCapService_2.app/   ssloT_sslSettings_1.app/   
    
      ssloN_vLan2Sslo.app/       ssloP_PRP1.app/            ssloS_HttpService_1.app/   ssloS_L3Service_1.app/     ssloS_TapService.app/      ssloS_iCapService_1.app/   ssloT_SSL3.app/            sslo_TestSsloApp.app/ 
  4. Populate a table based on the output from the command used in step 8. For example:

    • Deployment App: Name which matches the format <<SSLO deployed App>>.app here <<SSLO deployed App>> is the name which is noted down in step 1.
    • Policy App: Name which starts with ssloP_.
    • Services App: Name which starts with ssloS_.
    • Network App: Name which starts with ssloN_.
    • SSL App: Name which starts with ssloT_.

Deployment App

Policy App

Services App

Network App

SSL App

sslo_TestSsloApp.app/

ssloP_PRP1.app/

ssloS_HttpService.app/

ssloS_L2Service_1.app/

ssloS_L3Service_2.app/

ssloS_TapService_2.app/

ssloS_iCapService_2.app/

ssloS_HttpService_1.app/

ssloS_L3Service_1.app/

ssloS_TapService.app/

ssloS_iCapService_1.app/

ssloN_ssloVlan_1.app/

ssloN_vLan3Sslo.app/

ssloN_vLan2Sslo.app/

ssloT_SSL3.app/

ssloT_sslSettings_1.app/

  1. Enter the following command for all of the apps listed in step 9.

    Note: Make sure to enter the TMSH command before starting this step on the BIG-IP device.

    Note: The order in which the commands are entered is important. F5 recommends that you start with Deployment App, followed by Policy App, and so on based on the suggested table headings.

    Note: If a command fails due to a dependency, determine what the dependency is from the message and delete it before proceeding.

    delete sys application service <<appName>>/ <<press TAB to complete the command>>

    For example:

    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service sslo_TestSsloApp.app/sslo_TestSsloApp 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloP_PRP1.app/ssloP_PRP1 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_HttpService.app/ssloS_HttpService 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_HttpService_1.app/ssloS_HttpService_1 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_L2Service_1.app/ssloS_L2Service_1 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_L3Service_2.app/ssloS_L3Service_2 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_TapService_2
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_TapService_2.app/ssloS_TapService_2 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_iCapService_2.app/ssloS_iCapService_2 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_L3Service_1.app/ssloS_L3Service_1 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_TapService.app/ssloS_TapService 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloS_iCapService_1.app/ssloS_iCapService_1 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloN_ssloVlan_1.app/ssloN_ssloVlan_1 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloN_vLan3Sslo.app/ssloN_vLan3Sslo 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloN_vLan2Sslo.app/ssloN_vLan2Sslo 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloT_SSL3.app/ssloT_SSL3 
    
    root@(localhost)(cfg-sync Standalone)(Active)(/Common)(tmos)# delete sys application service ssloT_sslSettings_1.app/ssloT_sslSettings_1
  2. Enter the following command:

    curl --insecure -XGET 'https://<<BigIP Management IP>>mgmt/shared/iapp/blocks?$select=id,state,name&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u <<userID>>:<<password>> | python -m json.tool

    For example:

     [root@localhost:Active:Standalone] config # curl --insecure -XGET 'https://10.192.225.215/mgmt/shared/iapp/blocks?$select=id,state,name&$filter=state%20eq%20%27*%27%20and%20state%20ne%20%27TEMPLATE%27' -u admin:admin | python -m json.tool 
    
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current Dload  Upload   Total   Spent    Left  Speed
    
    100  3550  100  3550    0     0  20938      0 --:--:-- --:--:-- --:--:-- 21005
    
    {
    
        "generation": 46597,
    
        "items": [
    
            {
    
                "id": "c670eb32-89a5-4555-a2bf-e7a82c743ff6",
    
                "name": "sslo_TestSsloApp",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "35947fc5-3152-4ee9-94be-d98cc3c32059",
    
                "name": "ssloT_sslSettings_1",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "c8ff1bcd-451a-4614-a9e0-8a3a02df7dc2",
    
                "name": "ssloS_L3Service_1",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "9bf2efe3-db82-4c1a-8dd4-52bc23b9d5eb",
    
                "name": "ssloS_TapService_2",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "22841137-9d38-4176-ad75-362748f7067b",
    
                "name": "ssloS_HttpService",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "0cf207ce-0460-49b3-b0f3-a140bb265fa9",
    
                "name": "ssloN_vLan3Sslo",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "aef17b81-929c-4c12-90e6-a70931952ff9",
    
                "name": "ssloT_SSL3",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "5c8f3039-d6cc-45db-88a1-6d030dac686b",
    
                "name": "7684d4ac-00d0-4f43-a0ba-921f459113bc-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "2f952eba-4331-4a3e-995d-644f5a01b045",
    
                "name": "ssloS_L3Service_2",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "46e05e4e-c350-4e33-8ffc-fa2671acac80",
    
                "name": "ssloS_iCapService_1",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "75800f9c-f8c8-46e4-9e71-1c7b11fff5fd",
    
                "name": "ssloN_vLan2Sslo",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "7684d4ac-00d0-4f43-a0ba-921f459113bc",
    
                "name": "ssloP_PRP1",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "41697b7c-c059-47f2-b13a-b574d2b858f8",
    
                "name": "ssloS_L2Service_1",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "e44a78c0-4efd-45cc-a3f1-a7d79302004e",
    
                "name": "ssloN_ssloVlan_1",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "e47a45fb-7422-4ab3-a59a-deafe257660c",
    
                "name": "ssloS_iCapService_2",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "69ba205f-e618-479e-b355-ae8010219b5f",
    
                "name": "ssloS_HttpService_1",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "6e161941-826d-424e-865e-3defbfdfd116",
    
                "name": "ssloS_TapService",
    
                "state": "BOUND"
    
            },
    
            {
    
                "id": "df843553-dcbb-4239-a3f7-fbf4cf5ccf22",
    
                "name": "c670eb32-89a5-4555-a2bf-e7a82c743ff6-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "ab0584b4-e8dd-461d-a3c9-f7585c42fdc7",
    
                "name": "22841137-9d38-4176-ad75-362748f7067b-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "2037b09f-dfaf-4c60-bef9-52b7e1f74ba7",
    
                "name": "69ba205f-e618-479e-b355-ae8010219b5f-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "ead269a0-43a8-4fd4-88cf-471cd287a6d5",
    
                "name": "2f952eba-4331-4a3e-995d-644f5a01b045-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "38c5b1af-3f6b-4498-93fc-6380affd1483",
    
                "name": "41697b7c-c059-47f2-b13a-b574d2b858f8-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "1e97e0ff-955b-43f2-b43f-fa9f806273bc",
    
                "name": "9bf2efe3-db82-4c1a-8dd4-52bc23b9d5eb-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "f705eb0a-3e8e-4434-8bcc-8bd9135e5383",
    
                "name": "6e161941-826d-424e-865e-3defbfdfd116-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "3f31c864-d2ca-4b15-baf2-47f4d490f84c",
    
                "name": "c8ff1bcd-451a-4614-a9e0-8a3a02df7dc2-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "1356eb55-53c4-4eee-86a2-c647228d5cae",
    
                "name": "e47a45fb-7422-4ab3-a59a-deafe257660c-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "e778bcb2-697f-4238-a76d-169894304d44",
    
                "name": "46e05e4e-c350-4e33-8ffc-fa2671acac80-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "e75c0952-8838-4484-817d-2cded5d7e63c",
    
                "name": "35947fc5-3152-4ee9-94be-d98cc3c32059-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "f9c38383-a5a7-46fc-8fca-4196f021a64e",
    
                "name": "aef17b81-929c-4c12-90e6-a70931952ff9-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "d65877b5-20d2-4c81-9723-0151aa5a51a1",
    
                "name": "75800f9c-f8c8-46e4-9e71-1c7b11fff5fd-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "05131174-faf2-42a7-8b98-85718e4676d5",
    
                "name": "e44a78c0-4efd-45cc-a3f1-a7d79302004e-1538161044915",
    
                "state": "ERROR"
    
            },
    
            {
    
                "id": "67a567c1-f711-45bc-94ac-232121030aa2",
    
                "name": "0cf207ce-0460-49b3-b0f3-a140bb265fa9-1538161044915",
    
                "state": "ERROR"
    
            }
    
        ],
    
        .....
    
    }
  3. F5 recommends creating a table to track the required information based on the output from the command entered in step 11.

ID

State

Patch Command

Delete Command

<<block Id>>

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks/<<block Id>>' -u <<userID>>:<<password>>
curl --insecure  -X DELETE  'https://<<BigIP Management IP>>/mgmt/shared/iapp/blocks/<<block Id>>' -u <<userID>>:<<password>>

<<block Id>>

ERROR

NO NEED FOR ERROR

For example:

ID

State

Patch Command

Delete Command

c670eb32-89a5-4555-a2bf-e7a82c743ff6

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**c670eb32-89a5-4555-a2bf-e7a82c743ff6'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**c670eb32-89a5-4555-a2bf-e7a82c743ff6'** -u admin:admin

35947fc5-3152-4ee9-94be-d98cc3c32059

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**35947fc5-3152-4ee9-94be-d98cc3c32059'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**35947fc5-3152-4ee9-94be-d98cc3c32059'** -u admin:admin

c8ff1bcd-451a-4614-a9e0-8a3a02df7dc2

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**c8ff1bcd-451a-4614-a9e0-8a3a02df7dc2'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**c8ff1bcd-451a-4614-a9e0-8a3a02df7dc2'** -u admin:admin

9bf2efe3-db82-4c1a-8dd4-52bc23b9d5eb

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**9bf2efe3-db82-4c1a-8dd4-52bc23b9d5eb'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**9bf2efe3-db82-4c1a-8dd4-52bc23b9d5eb'** -u admin:admin

22841137-9d38-4176-ad75-362748f7067b

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**22841137-9d38-4176-ad75-362748f7067b'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**22841137-9d38-4176-ad75-362748f7067b'** -u admin:admin

0cf207ce-0460-49b3-b0f3-a140bb265fa9

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**0cf207ce-0460-49b3-b0f3-a140bb265fa9'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**0cf207ce-0460-49b3-b0f3-a140bb265fa9'** -u admin:admin

aef17b81-929c-4c12-90e6-a70931952ff9

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**aef17b81-929c-4c12-90e6-a70931952ff9'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**aef17b81-929c-4c12-90e6-a70931952ff9'** -u admin:admin

5c8f3039-d6cc-45db-88a1-6d030dac686b

ERROR

curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**5c8f3039-d6cc-45db-88a1-6d030dac686b'** -u admin:admin

2f952eba-4331-4a3e-995d-644f5a01b045

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**2f952eba-4331-4a3e-995d-644f5a01b045'** -u admin:admin

curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**2f952eba-4331-4a3e-995d-644f5a01b045'** -u admin:admin

46e05e4e-c350-4e33-8ffc-fa2671acac80

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**46e05e4e-c350-4e33-8ffc-fa2671acac80'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**46e05e4e-c350-4e33-8ffc-fa2671acac80'** -u admin:admin

75800f9c-f8c8-46e4-9e71-1c7b11fff5fd

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**75800f9c-f8c8-46e4-9e71-1c7b11fff5fd'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**75800f9c-f8c8-46e4-9e71-1c7b11fff5fd'** -u admin:admin

7684d4ac-00d0-4f43-a0ba-921f459113bc

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**7684d4ac-00d0-4f43-a0ba-921f459113bc'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**7684d4ac-00d0-4f43-a0ba-921f459113bc'** -u admin:admin

41697b7c-c059-47f2-b13a-b574d2b858f8

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**41697b7c-c059-47f2-b13a-b574d2b858f8'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**41697b7c-c059-47f2-b13a-b574d2b858f8'** -u admin:admin

e44a78c0-4efd-45cc-a3f1-a7d79302004e

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**e44a78c0-4efd-45cc-a3f1-a7d79302004e'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**e44a78c0-4efd-45cc-a3f1-a7d79302004e'** -u admin:admin

e47a45fb-7422-4ab3-a59a-deafe257660c

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**e47a45fb-7422-4ab3-a59a-deafe257660c'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**e47a45fb-7422-4ab3-a59a-deafe257660c'** -u admin:admin

69ba205f-e618-479e-b355-ae8010219b5f

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**69ba205f-e618-479e-b355-ae8010219b5f'** -u admin:admin
curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**69ba205f-e618-479e-b355-ae8010219b5f'** -u admin:admin

6e161941-826d-424e-865e-3defbfdfd116

BOUND

curl --insecure --data '{state:"UNBINDING"}' -X PATCH  'https://10.192.225.215/mgmt/shared/iapp/blocks/**6e161941-826d-424e-865e-3defbfdfd116'** -u admin:admin

 curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**6e161941-826d-424e-865e-3defbfdfd116'** -u admin:admin

df843553-dcbb-4239-a3f7-fbf4cf5ccf22

ERROR

curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**df843553-dcbb-4239-a3f7-fbf4cf5ccf22'** -u admin:admin

ab0584b4-e8dd-461d-a3c9-f7585c42fdc7

ERROR

curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**ab0584b4-e8dd-461d-a3c9-f7585c42fdc7'** -u admin:admin

2037b09f-dfaf-4c60-bef9-52b7e1f74ba7

ERROR

curl --insecure  -X DELETE  'https://10.192.225.215/mgmt/shared/iapp/blocks/**2037b09f-dfaf-4c60-bef9-52b7e1f74ba7'** -u admin:admin

You have now cleaned the device of SSL Orchestrator deployments. Log in to the BIG-IP and start using SSL Orchestrator by clicking SSL Orchestrator > Configuration.