私は最近、Python で Nitro API を使い始めました。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)
しかし、このコードを実行すると、「このリソースは既に存在します」と表示されます。サーバーを無効にするのではなく、サーバーとサービスグループの間に新しいバインディングを作成しようとしているようです。「delay」および「graceful」属性は、ニトロ ライブラリの「servicegroup_servicegroupmember_binding」に表示されていても見つかりません (そのため、一時的にコメント アウトされています)。
この無効化を適切に機能させる方法を知っている人はいますか? 私が考えることができる唯一の回避策は、バインディングを削除してから、「有効」または「無効」に設定された新しいバインディングを作成することですが、無効にすると正常なシャットダウンを追加できないため、これは不十分な解決策です。
皆さんありがとう