Citrix Nitro API for Netscaler - 启用和禁用服务组中的服务器节点

Citrix Nitro API for Netscaler - Enable and Disable server nodes in a service group

我最近开始使用 Nitro API 和 Python。为了向 Netscaler 添加一些可扩展性,我需要能够在服务组中添加服务器节点的启用和禁用。下面的代码是我尝试实现这一点:

def disable_servicegroup_server_binding(session):
try:


    service_group_service_group_member_binding_obj = {}
    service_group_service_group_member_binding_obj['servicegroupname'] = "testingGroup2"
    service_group_service_group_member_binding_obj['servername'] = "Server1"
    service_group_service_group_member_binding_obj['port'] = 80
    #service_group_service_group_member_binding_obj['delay'] = 30
    #service_group_service_group_member_binding_obj['graceful'] = "YES"

    response = post(session, "disable", "servicegroup_servicegroupmember_binding", service_group_service_group_member_binding_obj)

但是当我 运行 这段代码时,它显示 "This resource already exists"。它似乎试图在服务器和服务组之间创建新的绑定,而不是禁用服务器。 'delay' 和 'graceful' 属性未找到,即使它们显示在 nitro 库的 "servicegroup_servicegroupmember_binding" 中(因此只是暂时注释掉)。

有没有人碰巧知道使此禁用正常工作的方法?我能想到的唯一解决方法是删除绑定,然后创建一个已经设置了 "enabled" 或 "disabled" 的新绑定,但这将是一个糟糕的解决方案,因为禁用将无法添加优美的关机。

谢谢大家

有人在 Nitro API 论坛中碰巧 post 遇到了同样的问题。如果有人碰巧需要完成同样的事情,可以在这里找到答案:

http://discussions.citrix.com/topic/364429-nitro-sdk-disable-servicegroupmember/