kylinsoong / f5-tmsh-generator

Apache License 2.0
0 stars 0 forks source link

变更回退增加配置保存以及配置同步 #16

Closed kylinsoong closed 11 months ago

kylinsoong commented 11 months ago
% ./f5-tmsh-generator.py config/bigip-v13.running-config config/app/request-multiple-net.txt
---- 一号机网络配置 ----
tmsh create net vlan External_vlan701 interfaces add { Link_trunk { tagged } } tag 701
tmsh create net vlan Internal_vlan1069 interfaces add { Link_trunk { tagged } } tag 1069
tmsh create net self External_selfip_vlan701 address 192.168.20.251/24 vlan External_vlan701 allow-service none
tmsh create net self External_floatingip_vlan701 address 192.168.20.253/24 vlan External_vlan701 allow-service none traffic-group /Common/traffic-group-1
tmsh create net self Internal_selfip_vlan1069 address 192.168.10.251/24 vlan Internal_vlan1069 allow-service none
tmsh create net self Internal_floatingip_vlan1069 address 192.168.10.253/24 vlan Internal_vlan1069 allow-service none traffic-group /Common/traffic-group-1
---- 二号机网络配置 ----
tmsh create net vlan External_vlan701 interfaces add { Link_trunk { tagged } } tag 701
tmsh create net vlan Internal_vlan1069 interfaces add { Link_trunk { tagged } } tag 1069
tmsh create net self External_selfip_vlan701 address 192.168.20.252/24 vlan External_vlan701 allow-service none
tmsh create net self External_floatingip_vlan701 address 192.168.20.253/24 vlan External_vlan701 allow-service none traffic-group /Common/traffic-group-1
tmsh create net self Internal_selfip_vlan1069 address 192.168.10.252/24 vlan Internal_vlan1069 allow-service none
tmsh create net self Internal_floatingip_vlan1069 address 192.168.10.253/24 vlan Internal_vlan1069 allow-service none traffic-group /Common/traffic-group-1
----  业务变更配置  ----
tmsh create ltm pool CeShiYingYong_192.168.20.100_80_pool members add {  192.168.10.21:8080 192.168.10.22:8080 192.168.10.23:8080 192.168.10.24:8080 } monitor tcp
tmsh create ltm snatpool CeShiYingYong_192.168.20.100_80_snat members add {  192.168.20.101 192.168.20.102 }
tmsh create ltm persistence source-addr source_addr_1200 timeout 300
tmsh create ltm virtual CeShiYingYong_192.168.20.100_80_vs destination 192.168.20.100:80 pool CeShiYingYong_192.168.20.100_80_pool ip-protocol tcp profiles add { fastL4 { } } source-address-translation { type snat pool CeShiYingYong_192.168.20.100_80_snat } persist replace-all-with { source_addr_1200 }
tmsh create ltm pool CeShiYingYong_192.168.20.101_80_pool members add {  192.161.10.21:8080 192.161.10.22:8080 192.161.10.23:8080 192.161.10.24:8080 } monitor tcp
tmsh create ltm snatpool CeShiYingYong_192.168.20.101_80_snat members add {  192.168.20.101 192.168.20.102 }
tmsh create ltm persistence source-addr source_addr_1200 timeout 300
tmsh create ltm virtual CeShiYingYong_192.168.20.101_80_vs destination 192.168.20.101:80 pool CeShiYingYong_192.168.20.101_80_pool ip-protocol tcp profiles add { fastL4 { } } source-address-translation { type snat pool CeShiYingYong_192.168.20.101_80_snat } persist replace-all-with { source_addr_1200 }
tmsh create ltm pool CeShiYingYong_192.168.20.102_80_pool members add {  192.162.10.21:8080 192.162.10.22:8080 192.162.10.23:8080 192.162.10.24:8080 } monitor tcp
tmsh create ltm snatpool CeShiYingYong_192.168.20.102_80_snat members add {  192.168.20.101 192.168.20.102 }
tmsh create ltm persistence source-addr source_addr_1200 timeout 300
tmsh create ltm virtual CeShiYingYong_192.168.20.102_80_vs destination 192.168.20.102:80 pool CeShiYingYong_192.168.20.102_80_pool ip-protocol tcp profiles add { fastL4 { } } source-address-translation { type snat pool CeShiYingYong_192.168.20.102_80_snat } persist replace-all-with { source_addr_1200 }
tmsh save sys config
tmsh run cm config-sync to-group DG-1
----  变更回退配置  ----
tmsh delete ltm virtual CeShiYingYong_192.168.20.102_80_vs
tmsh delete ltm persistence source-addr source_addr_1200
tmsh delete ltm snatpool CeShiYingYong_192.168.20.102_80_snat
tmsh delete ltm pool CeShiYingYong_192.168.20.102_80_pool
tmsh delete ltm virtual CeShiYingYong_192.168.20.101_80_vs
tmsh delete ltm persistence source-addr source_addr_1200
tmsh delete ltm snatpool CeShiYingYong_192.168.20.101_80_snat
tmsh delete ltm pool CeShiYingYong_192.168.20.101_80_pool
tmsh delete ltm virtual CeShiYingYong_192.168.20.100_80_vs
tmsh delete ltm persistence source-addr source_addr_1200
tmsh delete ltm snatpool CeShiYingYong_192.168.20.100_80_snat
tmsh delete ltm pool CeShiYingYong_192.168.20.100_80_pool
tmsh delete net self Internal_floatingip_vlan1069
tmsh delete net self Internal_selfip_vlan1069
tmsh delete net self External_floatingip_vlan701
tmsh delete net self External_selfip_vlan701
tmsh delete net vlan Internal_vlan1069
tmsh delete net vlan External_vlan701
tmsh save sys config
tmsh run cm config-sync to-group DG-1