OceanBaseデータベースはV4.1バージョンからアービトレーションサービス(Arbitration Service)をサポートしており、2リージョン3データセンター構成において、同一リージョン内のレプリカ障害時のRT増大問題を解決するだけでなく、異リージョン間の帯域幅コストを削減し、第3データセンターのコストを極めて低く抑えることができます。
本記事では、OCPを使用して、2台のマシンと1つのアービトレーションメンバーで構成されるOceanBaseクラスタをデプロイする方法について説明します。
説明
- このセクションでは、OCP V4.2.1バージョンを例に操作手順を説明します。OCPのバージョンによって操作画面が異なる場合がありますので、実際の画面をご確認ください。
- 単一のOceanBaseクラスタには、アービトレーションサービスを1つのみ追加できます。
前提条件
- OCPがデプロイ済みであること。詳細については、OCPのデプロイを参照してください。
- OceanBaseクラスタをデプロイしたサーバーがOCPリソースプールに追加されていること。詳細については、サーバーの追加を参照してください。
- 現在OCPにログインしているユーザーに
CREATE CLUSTER権限が付与されていること。詳細については、ロールの概要およびOCPのデフォルトロールを参照してください。 - OceanBaseデータベースV4.1.0以降のRPMパッケージを取得済みであること。詳細については、インストールパッケージの準備を参照してください。
手順
ステップ1:2レプリカクラスタを作成する
OCPにログインします。
左側のナビゲーションバーで、クラスター をクリックします。
クラスター ページの右上隅で、クラスターを作成 をクリックします。
クラスターを作成 ページの右上隅で、デフォルトの 分散型クラスター を選択します。
クラスターを作成 ページで、クラスタの基本情報を設定します。
基本設定 の詳細は次の表のとおりです。
設定説明クラスタータイプ メインクラスター または バックアップクラスター を選択できます。ここでは メインクラスター を選択します。 クラスター名 管理対象のクラスタ名を自由に設定します。クラスタ名は英字で始まる必要があり、大文字・小文字、数字、アンダースコアを含めて2文字以上48文字以下である必要があります。 root@sysのパスワード 自由に設定するか、ランダムに生成することができます。パスワードは以下の複雑さ要件を満たす必要があります:
- 長さ:8文字~32文字。
- 少なくとも2つの数字、2つの大文字、2つの小文字、2つの特殊文字を含む。
サポートされている特殊文字は以下のとおりです:~!@#%^&*_-+=`|(){}[]:;',.?/
また、パスワードをコピー をクリックすると、自分で設定したりランダムに生成したりしたパスワードをクリップボードにコピーできます。OceanBaseのバージョン リストから既存のOceanBaseデータベースバージョンを選択するか、リストの下部にある バージョンの追加 をクリックしてOceanBase RPMバージョンパッケージをアップロードすることができます。 OBProxyクラスタの関連付け このオプションは、既存のOBProxyクラスタを関連付けるために使用します。この例では、このオプションは有効にしません。 クラスターを作成 ページで、クラスタのデプロイメントモード情報を設定します。
デフォルトでは3つのZoneの情報が追加されています。そのうちの1つのZoneの後ろにある削除アイコンをクリックして、2つのZoneを残します。
設定説明ゾーン名 通常はデフォルト名がありますが、必要に応じて名前を自由に設定できます。Zone名は英字で始まる必要があり、大文字・小文字、数字、アンダースコアを含めて2文字以上48文字以下である必要があります。 データセンター Zoneが配置されるデータセンターです。各Zone内のホストは同一のデータセンターにのみデプロイできます。 マシンタイプ(オプション) マシンタイプを選択すると、後続のホストリストがそのマシンタイプに基づいてフィルタリングされます。 CPUアーキテクチャ 自動割り当て または 手動選択 を選択できます。 ホスト マシンのIPアドレスです。複数のIPアドレスを選択できます。 Root Serverの場所 Root Serviceが配置されるマシンとして、1つのIPアドレスを選択する必要があります。複数レプリカのOceanBaseクラスタでは、各Zoneに1つのRoot Serviceを指定する必要があります。 ゾーンの優先順位を設定 クラスタのsysテナントのリーダーレプリカの配置優先順位です。オプションです。指定しない場合、最初のZoneが最優先となります。最も高い優先順位を持つZoneはPrimary Zoneと見なされ、1つしか存在できません。
このオプションを有効にすると、Zoneの優先順位ソートをカスタマイズできます。ソート方法は以下のとおりです:- 左側のリストボックスで1つ以上のZoneを選択します。左側のリストボックスには、現在のクラスタで利用可能なすべてのZoneが表示されます。
- 中央の > ボタンをクリックします。これにより、選択されたZoneが 優先順位ソート リストに移動します。同時に選択された複数のZoneは同じ優先順位を持ちます。
- a、bの操作を繰り返して、より低い優先順位のZoneを追加します。
- 優先順位を調整する必要がある場合、優先順位ソート リスト内でドラッグして順序を変更できます。リスト内では上から下に向かって優先順位が順次低下します。
(オプション)クラスターを作成 ページで、クラスタパラメータを設定します。
デフォルトのパラメータ設定を使用するか、パラメータ設定 モジュールを開いてクラスタパラメータを設定することもできます。
- 起動パラメータ項目を1つずつ追加し、値を設定することができます。
- パラメータテンプレートを選択してください をクリックしてパラメータテンプレートを選択することもできます。システムは、テンプレート内のパラメータと設定を自動的にここに入力します。クラスタパラメータテンプレートが作成されていない場合は、新規クラスタテンプレート をクリックして、クラスタ用にパラメータテンプレートを作成できます。
(オプション)クラスターを作成 ページで、カスタム設定を通じてパスとポートを設定します。
デフォルトのパスとポート設定を使用することも、カスタム設定 モジュールを開いて、パス設定 および ポート設定 をカスタマイズすることもできます。
パスの設定:
- パス設定 モジュールで、必要に応じて ソフトウェアのインストールパス、データディスクのパス、および ログディスクのパス をカスタマイズします。
- 設定完了後、テスト をクリックして、パスが使用可能かどうか確認します。使用できない場合は、テスト結果に基づいて問題を調査するか、他の使用可能なパスに変更することができます。
ポートの設定:
- ポート設定 モジュールで、SQLポート と RPCポート をカスタマイズします。
- 設定完了後、テスト をクリックし、ポートが既に使用されていないか確認します。使用されている場合は、利用可能なポートを再設定する必要があります。
設定が完了したら、右下の 提出する をクリックします。
ステップ2:新しいアービトレーションサービスを作成する
左側のナビゲーションバーで クラスター をクリックして、クラスタページに移動します。
プラン概要ページの右上隅にある 仲裁サービス管理 をクリックします。
仲裁サービス管理 ページで、新仲裁サービス をクリックします。
新仲裁サービス パネルで、アービトレーションサービスの基本情報を設定します。
パラメータ説明ホスト アービトレーションサービスをデプロイするホストを選択します。同一ホスト上で複数のアービトレーションサービスプロセスを起動できます。IPアドレスでホストを検索できるほか、ドロップダウンリストで ホストを追加する をクリックして利用可能なホストを追加することもできます。 注意
OceanBaseサービスが既にデプロイされているホストは選択できません。
サービスバージョン リストから既存のOceanBaseクラスタバージョンを選択できます。選択したバージョンのハードウェアアーキテクチャは ホスト のアーキテクチャと一致している必要があります。また、OceanBase V4.1.0以降のソフトウェアパッケージのみサポートされています。リストの下部で バージョンの追加 をクリックし、必要なバージョンのソフトウェアパッケージをアップロードすることもできます。 ソフトウェアパス ソフトウェアのインストールパスです。デフォルトは /home/admin/oceanbaseです。ホスト上のこのパスに対する 書く 権限が必要です。サービスポート デフォルトは 2882ですが、実際の状況に応じて変更できます。選択したポートが使用されていないことを確認する必要があります。説明(オプション) アービトレーションサービスに関する補足説明を入力します。 パラメータ設定 アービトレーションサービスの起動パラメータを設定します。 注意
アービトレーションノードのログディレクトリが自動的にクリーンアップされ、ディスクが満杯になるのを防ぐために、
enable_syslog_recycleをTrueに設定し、max_syslog_file_countを有効な値に設定する必要があります。そうしない場合、ログファイルが次第に増大し、ディスク容量が使い果たされる可能性があります。設定が完了したら、右下の 確定 をクリックします。ポップアップウィンドウ内のタスクIDをクリックすると、タスクの実行状態を確認できます。
システムは入力された情報を検証します。検証に失敗した場合、ページの指示に従って調査または修正を行うことができます。
ステップ3:クラスタにアービトレーションサービスを追加する
左側のナビゲーションバーで クラスター をクリックして、クラスタページに移動します。
クラスター ページの クラスター一覧 セクションで、操作対象のクラスタを選択し、そのクラスタ名をクリックします。
クラスタの 概要 ページの右上隅にある ... アイコンをクリックし、仲裁サービスを追加する を選択します。
仲裁サービスを追加する パネルで、クラスタ用のアービトレーションサービスのアドレスを選択します。リストの下部で 新サービス をクリックすることもできます。
選択が完了したら、右下の 送信 をクリックします。
次のステップ
クラスタの作成が完了したら、ビジネスニーズに応じてユーザーテナントを作成できます。
OCPを使用してユーザーテナントを作成する詳細については、プライマリテナントの新規作成を参照してください。
コマンドラインを使用してユーザーテナントを作成する詳細については、テナントの作成を参照してください。