Data Repository クラスタへのノードの追加

システム パフォーマンスを向上させるか、ノードを置換するには、Data Repository クラスタにノードを追加します。
capm370
システム パフォーマンスを向上させるか、ノードを置換するには、Data Repository クラスタにノードを追加します。
このプロセスは、ホスト名で設定されたノードの展開に適用されます。 ノードが localhost を使用して設定された場合、Vertica 内のノード テーブルでは node_address または node_ip が 127.0.0.1 に設定されます。 localhost を使用して設定されたノードを展開するには、CA サポートにお問い合わせください。
このプロセスの詳細については、Vertica のドキュメントを参照してください。
前提条件の完了
Data Repository クラスタに新しいノードを追加する前に、前提条件を完了します。
  • Data Aggregator の停止
    service dadaemon stop
    プロセス全体が完了するまで、Data Aggregator を停止したままにします。
  • Data Repository インストール用の新しいホストを準備します。 詳細については、「Data Repository のインストールの準備」を参照してください。
  • Data Repository をバックアップします。 詳細については、「Data Repository のバックアップ」を参照してください。
新しいホストの準備
クラスタにホストを追加する前に、drinstall.properties ファイルを設定および検証します。
以下の手順に従います。
  1. 新しいホスト上の /tmp に installDR.bin ファイルをコピーします。
  2. 新しいホストで、BIN ファイルからインストール ファイルを抽出します。
    ./installDR.bin
  3. drinstall.properties ファイルを設定します。
    パラメータは、元のクラスタのプロパティ ファイルと一致する必要があります。 アクティブなノードから drinstall.properties をコピーし、必要なパラメータのみを変更することをお勧めします。
    • DbAdminLinuxUser=
      Vertica データベース管理者として作成された Linux ユーザ
      デフォルト
      : dradmin
    • DbAdminLinuxUserHome=
      Vertica Linux データベース管理者ユーザ ホーム ディレクトリ
      デフォルト:
      /export/dradmin
      Vertica インストーラがユーザを作成すると、このディレクトリが作成されます。 ホーム アカウントにつながるディレクトリがすでにシステムに存在することを確認してください。 たとえば、/export/dradmin を使用する場合、/export が存在することを確認します。
    • DbDataDir=
      データ ディレクトリの場所
      デフォルト:
      /data
    • DbCatalogDir=
      カタログ ディレクトリの場所
      デフォルト:
      /catalog
    • DbHostNames=
      新しいホストの名前
    • DbName=
      データベース名
      デフォルト:
      drdata
      このパラメータでは、大文字と小文字が区別されます。
    • DbPwd=
      データベース パスワード
      デフォルト:
      dbpass
      ここで定義するデータベース パスワードは Data Aggregator のインストール中に使用されます。
  4. 検証スクリプトを実行します。
    ./dr_validate.sh -p drinstall.properties
    検証スクリプトによって再起動を促される場合があります。
ホストのクラスタへの追加
新しいホストを準備した後に、ホストをクラスタに追加します。
移行元クラスタと同じ設定を、新しいクラスタに使用します。 たとえば、vertica のバージョン、ノード数、データベース名、管理者、ユーザ、カタログ ディレクトリ、およびデータ ディレクトリは元の Data Repository と同じである必要があります。
以下の手順に従います。
  1. 既存の Data Repository ホストのいずれかにログインします。
  2. ホストをクラスタに追加するには、以下のタスクのいずれかを実行します。
    • root アクセス権がある場合は、以下のコマンドを入力し、斜体の値を指定します。
      /opt/vertica/sbin/update_vertica --add-hosts
      hostname
      -u
      DbAdminLinuxUser
      -l
      DbAdminLinuxUserHome
      -L
      location
      /resources/vlicense.dat --rpm
      location
      /resources/
      vertica-release.rpm
      -T -S default
      • hostname
        クラスタに追加する新しいホストの名前を指定します。
      • DbAdminLinuxUser
        プロパティ ファイルで指定されているクラスタのデータベース管理者ユーザ名
      • DbAdminLinuxUserHome
        データベース管理者ユーザ ホーム ディレクトリ
      • 場所
        installDR.bin ファイルを抽出した場所
      • vertica-release.rpm
        抽出されたインストール ディレクトリに存在する、現在の RPM ファイル
    • root アクセス権がない場合は、sudo ユーザとしてコマンドを実行します。
      export SUDO_USER=root
      /opt/vertica/sbin/update_vertica --add-hosts
      hostname
      -u
      DbAdminLinuxUser
      -l
      DbAdminLinuxUserHome
      -L
      location
      /resources/vlicense.dat --rpm
      location
      /resources/
      vertica-release.rpm
      -T -S default
    このスクリプトによって、Vertica が新しいホストにインストールされ、ホストがクラスタに組み込まれます。
    データベース管理者ユーザがまだ存在しない場合、インストール スクリプトはこのユーザを作成します。 スクリプトは、新しいパスワードを割り当てるようにユーザに促します。 データベース管理者ユーザが存在するが、パスワードなしの SSH がセットアップされていない場合、スクリプトによってセットアップするパスワードがリクエストされます。
  3. Vertica データベース管理者がデータおよびカタログ ディレクトリに書き込み可能であることを確認します。 以下のコマンドを実行します。
    chown
    DbAdminLinuxUser
    .verticadba
    DbDataDir DbCatalogDir
    chmod 755
    DbDataDir DbCatalogDir
    1 つのノードから展開する場合、展開完了後に、データベースをセグメント化します。 詳細については、「データベース テーブルのセグメント化」を参照してください。
ノードのデータベースへの追加
ホストをクラスタに追加した後に、ノードをデータベースに追加します。 クラスタに複数のノードを追加する場合は、データベースに任意のノードを追加する前に、すべてのノードを準備します。
以下の手順に従います。
  1. Data Repository 管理者として、クラスタ内の任意のホストにログインします。
  2. 管理ツールを開きます。
    /opt/vertica/bin/adminTools
  3. [詳細メニュー]
    を選択し、Enter キーを押します。
  4. [クラスタ管理]
    を選択し、Enter キーを押します。
  5. [ホストの追加]
    を選択し、Enter キーを押します。
  6. データベースを選択し、Enter キーを押します。
    コンソールに使用されていないホストのリストが表示されます。
  7. 新しいホストを選択し、Enter キーを押します。
  8. 選択内容を確認し、コンソールで以下の手順に従います。
    Data Repository によって、ノードがクラスタに追加されます。 このプロセスには時間がかかる場合があります。
バディ プロジェクションの作成
拡張クラスタの k-safety を 1 にする前に、
migration_status
テーブル用のバディ プロジェクションを作成する必要があります。
  1. dradmin
    ユーザとして vsql にログインします。
  2. 以下のコマンドを実行します。
    select export_objects('/tmp/migration_status.sql', '
    SCHEMA
    .migration_status');
    • SCHEMA
      スキーマ(
      dauser
      など)を指定します。
  3. 以下のファイルを編集します。
    /tmp/migration_status.sql
  4. CREATE TABLE
    定義およびそれより上のすべての項目を削除します。
  5. 以下のように
    CREATE PROJECTION
    を編集します。
    1. 名前を
      migration_status_super
      から
      migration_status_super_b1
      に変更します。
    2. ALL NODES
      の後、かつセミコロン(;)の前に、
      OFFSET 1
      を追加します
    3. SELECT MARK_DESIGN_SAFE
      行の前に、
      SELECT START_REFRESH()
      を追加します
    4. MARK_DESIGN_KSAFE(0)
      MARK_DESIGN_KSAFE(1)
      に変更します
  6. migration_status.sql
    ファイルを保存します。
  7. 以下のコマンドを実行します。
    vsql -U dradmin -w
    dradminPassword
    -f /tmp/migration_status.sql
    リフレッシュ バックグラウンド プロセスが開始されたことを確認するプロンプトが表示されます。
Data Repository 設定の更新
Data Aggregator ホストで、
dbconnection.cfg
ファイルが正しい Data Repository ホストを参照していることを確認します。
以下の手順に従います。
  1. Data Aggregator ホスト上の
    DA_installation_directory
    /apache-karaf-<
    version
    >/etc/dbconnection.cfg
    ファイルを開きます。
  2. dbconnection.cfg
    ファイルの以下の行を変更します。 各 Data Repository ホストのホスト名または IP アドレスを参照するように、この行を変更します。
    dbHostNames=
    dbNode1Hostname
    ,
    dbNode2Hostname
    ,
    dbNode3Hostname
  3. dbconnection.cfg
    ファイルを保存します。
  4. 以下の手順のいずれかを実行します。
    • Data Aggregator サービスを開始します。
      service dadaemon start
      RHEL 7.x または OL の場合、
      service
      systemctl
      を呼び出します。 代わりに
      systemctl
      を使用できます。
    • (フォールト トレラント環境)以下のいずれかのコマンドを実行することでフォールト トレラント Data Aggregator を有効化して、必要に応じて開始できるようにします。
      • RHEL 6.x:
        service dadaemon activate
      • RHEL 7.x、SLES、または OL:
        DA_Install_Directory
        /scripts/dadaemon activate