本記事では、obshell-sdk-pythonを使用してクラスタを停止する方法について説明します。
説明
まずは obshell-sdk-pythonクイックスタート を参照し、obshell-sdk-pythonの使用方法を確認することを推奨します。
注意事項
obshellが正常に実行されていることを確認してください。
リクエストしたclientに対応するノードが停止対象のクラスタ内にあることを確認してください。
サンプルコード
タスクの同期実行
from obshell import ClientSet
from obshell.auth import PasswordAuth
# クライアントインスタンスを作成します。ノードアドレスは '10.10.10.1'、ポートは2886です。
# クラスタのroot@sysパスワードは '****' です。
client = ClientSet("10.10.10.1", 2886, PasswordAuth("****"))
# クラスタ内のすべてのOBServerノードを強制的に停止します。
client.v1.stop_sync("GLOBAL", None, force=True)
tab タスクの非同期実行
from obshell import ClientSet
from obshell.auth import PasswordAuth
# クライアントインスタンスを作成します。ノードアドレスは'10.10.10.1'、ポートは2886です。
# クラスタのroot@sysパスワードは'****'です。
client = ClientSet("10.10.10.1", 2886, PasswordAuth("****"))
# クラスタ内のすべてのOBServerノードを強制的に停止します。
dag = client.v1.stop("GLOBAL", None, force=True)
# タスク完了を待機します。
client.v1.wait_dag_succeed(dag_generic_id)