I don't see evidence of a failover here; you'd have to confirm that on the system. So here's an almost literal copy paste, minus your provision stuff (don't have time to test that at the moment):
In [30]: v = b.LocalLB.VirtualServer
In [31]: v.get_list()
Out[31]: [test-vs-deleteme, irules-nextgen-demo]
In [32]: v.get_vlan(['test-vs-deleteme'])
Out[32]:
[(Common.VLANFilterList){
state = "STATE_DISABLED"
vlans[] =
}]
In [35]: vlan_filter_list = v.typefactory.create('Common.VLANFilterList')
In [36]: enabled_state = v.typefactory.create('Common.EnabledState')
In [37]: vlan_filter_list.vlans = ["external"]
In [38]: vlan_filter_list.vlans = ["vlan_21"]
In [39]: v.set_vlan(virtual_servers =['test-vs-deleteme'],vlans =[vlan_filter_list])
In [40]: v.get_vlan(['test-vs-deleteme'])
Out[40]:
[(Common.VLANFilterList){
state = "STATE_DISABLED"
vlans[] =
"vlan_21",
}]
...which leads me to believe that something's wacky with the state of your system. I'd restart apache at the very least, and maybe the whole thing. Obviously, tread lightly in prod :)
-Matt