Open mkyrc opened 2 years ago
UPDATE after discussion with f5 support.
Long story short: The problem is connected with 'design' of NODE. POOL MEMBERS are referenced to NODE. With legacy tools (GUI or tmsh) is not possible to change IP address of the NODE, because it's 'by design'. Explanation: If it were possible to change IP address of NODE, it would affect many other referenced objects (Pools/Pool Members).
This 'design' is here for many years. We can discuss if it's good or not. I think no.
My point of view:
AS3 is declarative model. In other words - what I want (to configure), I will get (configured). In this case it's not valid. Requested change (with named Nodes/Pool Members) is not configured. Moreover, it's confusing because response from the device is code: 200 (OK), message: success
and it's not true (all objects - except named nodes are configured).
In this situation, is new feature for naming nodes coming with f5-appsvcs v3.35.0 strongly unusable in NetOps process (automation gets response 200 ok, but it's not true and declarative model is not 'declarative' in this case).
It would be good to make a change:
Thank you for your feedback. I agree that we should be able to provide a more declarative experience in this case. In fact AS3 already provides many declarative layers over these kinds of tmsh limitations by deleting and recreating resources in an atomic fashion. This has been added to our internal product backlog as AUTOTOOL-3098.
There is also an outstanding bug for config-sync issues and named nodes... https://support.f5.com/csp/article/K16592 BZ ID 382040
Hi @mkyrc, please reach out to us at automation_toolchain_pm@f5.com in order for us to get more information and prioritize. Thanks.
Environment
Summary
Deployment of the new LTM configuration (with named nodes) based on AS3 rest call is working correctly. But another POST (or PATCH) call changes all required objects correctly, except IP address of existing named pool member (named node). In other words, it is not possible change IP address of the (named) pool member when this pool member (node) exists.
This issue is connected to new feature - named pool members (added in f5-appsvcs v3.35.0)
Steps To Reproduce
Everything is deployed correctly. See bigip.conf:
Response to this POST (I'm trying also PATCH) is correct (code 200 with correct declaration response):
Above change is applied correctly - it is possible to confirm by
GET https://{{bigip_mgmt}}/mgmt/shared/appsvcs/declare/test-as3-issue
, but bigip configuartion is not changed (IP address of 'rserver2' is not changed):bigip.conf is now correcly changed:
Expected Behavior
Expected behavior is that IP address of named pool member change without the need for renaming.
Actual Behavior
IP address of the named pool member is not changed. In this case is IP address change possibly only two ways: