How to add iRule and http profile to a virtual server
Problem this snippet solves:
- First do a Simple Post to create a Virtual Server
- Then attach the iRule and Http profile to the virtual server
How to use this snippet:
We need to create a Separate json file for Step 1. For step 2 make sure you have the iRule already present in the BIG-IP, else you need to create one.
Code :
curl -k --user admin:admin -H "Accept: application/json" -H "Content-Type:application/json" -X POST -d@ServiceRouting_forHTTP.json https://173.36.215.237/mgmt/tm/ltm/virtual/ | python -m json.tool
Payload file below ServiceRouting_forHTTP.json
{
"addressStatus": "yes",
"autoLasthop": "default",
"cmpEnabled": "yes",
"connectionLimit": 0,
"destination": "/Common/192.168.32.11:80",
"enabled": true,
"fullPath": "ServiceRouting_forHTTP",
"generation": 37093,
"gtmScore": 0,
"ipProtocol": "tcp",
"kind": "tm:ltm:virtual:virtualstate",
"mask": "255.255.255.255",
"mirror": "disabled",
"mobileAppTunnel": "disabled",
"name": "ServiceRouting_forHTTP",
"nat64": "disabled",
"policiesReference": {
"isSubcollection": true,
"link": "https://localhost/mgmt/tm/ltm/virtual/~Common~ServiceRouting_forHTTP/policies?ver=11.5.3"
},
"pool": "/Common/S4HPool",
"profilesReference": {
"isSubcollection": true,
"link": "https://localhost/mgmt/tm/ltm/virtual/~Common~ServiceRouting_forHTTP/profiles?ver=11.5.3"
},
"rateLimit": "disabled",
"rateLimitDstMask": 0,
"rateLimitMode": "object",
"rateLimitSrcMask": 0,
"selfLink": "https://localhost/mgmt/tm/ltm/virtual/ServiceRouting_forHTTP?ver=11.5.3",
"source": "0.0.0.0/0",
"sourceAddressTranslation": {
"type": "automap"
},
"sourcePort": "preserve",
"synCookieStatus": "not-activated",
"translateAddress": "enabled",
"translatePort": "enabled",
"vlansDisabled": true,
"vsIndex": 32
}
Then make a PUT so that we add the HTTP Profile and also the iRule
curl -s -k -u admin:admin -H 'Content-Type: application/json' -X PUT https://173.36.215.237/mgmt/tm/ltm/virtual/ServiceRouting_forHTTP -d '{"profiles":[{"name":"http"},{"name":"tcp"}], "rules": ["/Common/Testing_class"]}' |python -m json.toolTested this on version:
11.5Published Jun 26, 2016
Version 1.0Sanjay_Shitole
Ret. Employee
Joined May 16, 2019
Sanjay_Shitole
Ret. Employee
Joined May 16, 2019
No CommentsBe the first to comment