本記事では、obshell-sdk-pythonを使用してクラスタを乗っ取る方法について説明します。
説明
まず、obshell-sdk-python クイックスタートを参照し、obshell-sdk-pythonの使い方を確認することをお勧めします。
注意事項
クラスタを乗っ取る前に、必要なobshellがすべてのマシンで解凍され、インストールされていることを確認してください。手動で解凍することも、obshell-sdk-pythonを使用して解凍・インストールすることもできます。obshell-sdk-pythonを使用した解凍・インストールの操作については、obshellのインストールを参照してください。
サンプルコード
from obshell import takeover, NodeConfig
def init_nodes():
ips = [
"10.10.10.1",
"10.10.10.2",
"10.10.10.3",
]
work_dir = "/data/ob" # OceanBaseデータベースの作業ディレクトリ
nodes_config = []
for _, ip in enumerate(ips):
node = NodeConfig(ip, work_dir)
nodes_config.append(node)
# 乗っ取り
# パラメータ説明:
# password: 乗っ取る対象クラスタのroot@sysパスワード
# configs: ノードの設定情報
takeover("pwd", nodes_config)
関連ドキュメント
obshell-sdk-goを使用してAPIメソッドを呼び出す方法については、クラスタの乗っ取りを参照してください。