Forum Discussion
Manipulate state of pool members via Python SDK
- Mar 21, 2022
I modified your script so that the relevant poolmemeber of the pool can be listed
Then perform the desired action,from f5.bigip import ManagementRoot # # Choice Poolmemeber def cpm(): print("\nChoice Pool Memeber:\n") index = 1 # ListPoolm = {} for poolm in pool_1.members_s.get_collection(): print(str(index) + ". " + poolm.name) ListPoolm[index] = poolm.name index += 1 choice = input("Which Poolmember do you want to action? ") return ListPoolm[int(choice)] # Action For Poolmember def act(): member = pool_1.members_s.members.load(partition='Common', name=cpm()) # action = input("enabled, disabled, forced_offline, Your input (press enter to skip): ") # if action == 'enabled': # enables member member.state = 'user-up' member.session = 'user-enabled' elif action == 'disabled': # disables member member.session = 'user-disabled' elif action == 'forced_offline': # forces online member member.state = 'user-down' member.session = 'user-disabled' if action is not None: member.update() else: print('readonly mode, no changes applied') if __name__ == "__main__": LB01 = ManagementRoot("testlb01", "weakuser", "weakpassword") pool_1 = LB01.tm.ltm.pools.pool.load (name="test-pool", partition="Common") # act() # via single for loop, I can extract the necessary info about pool members: for item in pool_1.members_s.raw["items"]: print("Node name: " + item["name"]) print("Node IP: " + item["address"]) print("Node full path: " + item["fullPath"]) # if item["session"] == "monitor-enabled": print("Node state: enable") elif item["session"] == "user-disabled": print("Node state: disable") # print("Node reachability: " + item["state"]) print("\n")
I hope I can help you - Mar 24, 2022
Hi oscarnet.
Your reply is what I wanted, just simplified:
#BRING POOL MEMBER UP:
pool_1.state = "user-up"
pool_1.session = "user-enabled"
pool_1.update()# BRING POOL MEMBER DOWN:
pool_1.state = "user-down"
pool_1.session = "user-disabled"
pool_1.update()Thank you very much for help.
Best Regards
Michal
Hi oscarnet.
Your reply is what I wanted, just simplified:
#BRING POOL MEMBER UP:
pool_1.state = "user-up"
pool_1.session = "user-enabled"
pool_1.update()
# BRING POOL MEMBER DOWN:
pool_1.state = "user-down"
pool_1.session = "user-disabled"
pool_1.update()
Thank you very much for help.
Best Regards
Michal
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com