うまいぼうぶろぐ

linuxとhttpdとperlのメモ

big-ip rest api

jsonで返ってくるのでjqかなければpython -m json.tool を使うと見易い。

$ curl -s -k --user user:pass https://192.168.0.1/mgmt/tm/ | jq .

URLはこの辺
/tm/net/
/tm/ltm/
/tm/security/
/tm/apm/

ltm

  • node追加
curl --user user:pass -s -k https://192.168.0.1/mgmt/tm/ltm/node \
     -H 'Content-Type: application/json' -X POST \
     -d '{"address": "192.168.0.1", "name": "testnode"}'

responseで帰ってくるの "selfLink": "https://localhost/mgmt/tm/ltm/node/~Common~testnode",
というのこのnodeをapiで操作するurl

  • node削除
curl --user user:pass -s -k https://192.168.0.1/mgmt/tm/ltm/node/~Common~testnode \
     -X DELETE 
  • pool追加

https://192.168.0.1/mgmt/tm/ltm/pool
postパラメータ

'{"name":"testpool-http","monitor":"http","description":"hoge:","members":[{"name":"testnode:80"}]}'

複数monitorを登録する方法は不明

https://192.168.0.1/mgmt/tm/ltm/virtual
postパラメータ

'{"name":"testvirtual-http","destination":"192.168.0.10:80","pool":"testpool-http"}' 

typeがstandardではなくてPerformance(layer 4)になる。。。