Data Repository のインストールの準備

Data Repository のインストールが成功することを確実にするには、Data Repository をインストールする前に、要件を満たします。
capm370
HID_Prepare_to_Install_the_Data_Repository
Data Repository のインストールが成功することを確実にするには、Data Repository をインストールする前に、要件を満たします。
2
Data Repository の設定オプションおよび管理の詳細については、「Data Repository の管理」を参照してください。
前提条件の確認
Data Repository をインストールする前に、以下の前提条件を確認します。
  • Vertica のドキュメントを確認します。
  • 各 Data Repository ホストに dialog および chrony パッケージがインストールされているかどうかを確認します。
    chrony パッケージは、RHEL 7.x および OL 7.x のみに必要です。
    rpm -qa | grep ^dialog
    rpm -qa | grep ^chrony
    いずれかのコマンドで結果が返されない場合は、このパッケージをインストールします。
    root ユーザでない場合は、sudo プレフィックスを使用します。
    yum install dialog
    yum install chrony
    このパッケージがインストールされていない場合、検証およびインストール スクリプトは失敗します。
  • インストーラには、zip および unzip パッケージが必要です。 これらのパッケージがインストールされていない場合は、以下のコマンドを使用してインストールします。
    yum -y install zip unzip
  • Data Repository ホストに少なくとも 2 GB のスワップ領域があることを確認します。
  • Data Repository ホストで ext4 ファイル システムを使用していることを確認します。 Vertica は、XFS または btrfs をサポートしていません。 Vertica を使用するすべてのディスクで ext4 を使用する必要があります。
    RHEL 7.x および OL 7.x のデフォルト ファイル システムは XFS ファイル システムです。 SLES のデフォルト ファイル システムは btrfs です。 Vertica は、XFS または btrfs をサポートしていません。 データベースは、ext4 ファイル システムで最大のパフォーマンスが実現されます。
  • 以下のポートが Data Repository システムでオープンであることを確認します。
    • ポート 22 (TCP プロトコル)
    • ポート 4803 (TCP および UDP プロトコル)
    • ポート 4804 (UDP プロトコル)
    • ポート 5433 (TCP プロトコル)
      このポートにはリモート アクセスが必要です。
    • ポート 5434 (TCP プロトコル)
    • ポート 6543 (UDP プロトコル)
  • データベースが破損しないように、インストール ディレクトリおよびそのすべてのサブディレクトリをアンチウイルス スキャンの対象から除外します。 ローカルのアンチウイルス クライアントのインスタンス、およびリモートのアンチウイルス インスタンスからスキャンされないようにします。 以下のディレクトリを除外します。
    • /opt/vertica/*
    • /opt/vconsole/*
    • 指定されたデータ ディレクトリ
      デフォルト:
      /drdata/data
    • 指定されたカタログ ディレクトリ
      デフォルト:
      /drdata/catalog
    • /tmp 内の Vertica 一時ファイル
      • /tmp/4803
      • /tmp/vbr/*
    • Data Repository をバックアップするディレクトリ
  • \etc ディレクトリに「release」という名前のファイルが ある場合は、このファイルを削除します。 削除しないと、Data Repository のインストールは失敗します。
  • インストール タイプに応じてアクセスを確認します。
    • 単一ノード:
      Data Repository をインストールするには、root アクセス権が必要です。 Data Repository を root としてインストールできるかどうかを判断します。
    • クラスタ:
      root ユーザまたは sudo ユーザがデータベース管理者ユーザ アカウントを作成できる、または管理者にこれらのアカウントを作成してもらえることを確認します。
  • CPU 周波数調整が無効であることを確認します。 ホスト システムの BIOS および OS 設定による CPU 周波数調整を無効にします。
    CPU 周波数調整が有効な場合、Vertica の同様なクエリで一貫性のないパフォーマンスが発生する可能性があります。 CPU 周波数調整によって、ダッシュボードのロードに観測できる速度低下や変動が発生する可能性があります。
  • /data および /catalog ディレクトリに論理ボリューム マネージャ(LVM)を使用していないことを確認します。
  • (クラスタのみ)クラスタ内のすべてのホストが同一のサブネットにあることを確認します。
  • (クラスタのみ) root ユーザがセキュア シェル(SSH)を使用してクラスタ内のすべてのホストにログイン(ssh)できることを確認します。
    Data Repository のインストールまたはアップグレード向けに、root ユーザの SSH を設定します。
  • (クラスタのみ) Data Repository ノードをインストールするホストを選択します。
    警告:
    データベース ソフトウェアは、クラスタに含まれている各ホストに展開されます。 このソフトウェアは、クラスタの「ノード」を表します。 3 ノードのクラスタは、単一ノードのロスを許容できる最も単純な構成です。 ただし、クラスタには 3 つを超えるホストを含めることができます。 複数のノードに障害が発生するか、シャットダウンされた場合、Data Repository は使用できなくなり、Data Aggregator が自動的にシャットダウンします。
VM への Data Repository のインストール
最適なパフォーマンスを確保するために、ベア メタル環境に Data Repository をインストールします。 ただし、VMware 仮想マシンの Data Repository をインストールする場合は、以下の要件を確認します。
  • VMware 5.5 以降のバージョンを使用すること。
  • ホストごとの VM の数が物理プロセッサの数を超えないこと。
  • VM ごとに 4 GB のメモリを事前に割り当て、予約すること。
  • 各 VM に専用の 10GB NIC があること。
  • CPU 周波数調整を各 VM のホスト レベルで無効にすること。
  • VMotion を無効にすること。 VMotion は通信を中断し、Data Repository をシャット ダウンする可能性があります。
  • hugepage の VMware パラメータをバージョン 5.5 のデフォルト値に設定すること。
  • ハードウェアとネットワークのパフォーマンスを確認すること。 以下で説明されている Vertica 診断ツールを使用して、パフォーマンスを確認します。
VM での Vertica の実行の詳細については、Vertica のドキュメントを参照してください。
共有ストレージ (SAN) への Data Repository のインストール
SAN に Data Repository をインストールするには、以下の要件を確認します。
  • ホストでディスク容量や帯域幅の競合がないこと。
  • 各ホストに、カタログおよびデータの一意の場所があること。 ホストは、これらのディレクトリの場所を共有できません。
  • ストレージへの個別アクセスに必要な I/O 帯域幅を、ストレージが各ノードに対して十分に保有していること。 I/O 帯域幅を確認するには、Data Repository クラスタ内のすべてのホストから vioperf を同時に実行します。 詳細については、以下の手順を参照してください。
各 Data Repository のホストへの一意のホスト名の設定
クラスタ内の各 Data Repository ホストへの一意のホスト名の設定
以下の手順に従います。
  1. root ユーザとして各 Data Repository ホストにログインし、一意のホスト名を確認します。
    ホスト名は、ループバック アドレス 127.0.0.1
    ではなく
    IP アドレスに関連付ける必要があります。
  2. 各コンピュータ上の /etc/hosts ファイルに以下の行があることを確認します。
    Do not remove the following line, or various programs
    # that require network functionality will fail.
    127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
    IP address of your host
    YourHostName YourHostName.domain
  3. ファイルを変更した場合は、以下のコマンドを実行します。
    service network restart
    /etc/hosts ファイルが正しく設定されました。
    一意のホスト名が設定されます。
  4. (クラスタ インストールのみ)クラスタ内のすべてのホストのホスト名が正しく解決される必要があります。 ホスト名の解決が正しくない場合、Data Repository のクラスタがインストールされないか、正しく動作しません。 クラスタ内に含まれているすべてのホストには、静的な IP アドレスまたは永久にリースされている DHCP アドレスを使用する必要があります。 クラスタ用に選択した各ホストで、/etc/hosts ファイルを設定します。 hosts ファイルには、クラスタ内のすべてのホストのエントリが含まれている必要があります。
    例:
    この例では、クラスタの /etc/hosts ファイルを示し、ホスト名が host01、host02, host03 に指定されています。
    127.0.0.1 localhost.localdomain localhost
    192.168.13.128 host01.domain host01
    192.168.13.129 host02.domain host02
    192.168.13.130 host03.domain host03
    ループバック アドレス(127.0.0.1)の行を削除しないでください。 ローカル Data Repository ホスト名を 127.0.0.1 の行に置くことはできません。 また、クラスタ内にホストを定義している場合は、ループバック アドレスや localhost 名を使用しないでください。
  5. ホスト名解決が、クラスタ内の各ホストに対して機能していることを確認します。
    たとえば、host01 では、以下のようにコマンドが処理されます。
    $ /bin/hostname -f
    host01
    ホスト名解決が設定されました。
(オプション) root または sudo ユーザ用のパスワードなしの SSH のセットアップ
Data Repository クラスタ内のホストでは、Data Repository のインストールまたはアップグレード中に root または sudo ユーザにパスワードなしの ssh が必要です。
dr_validate.sh
スクリプトによってパスワードなしの SSH がセットアップされますが、何度もパスワードを要求されます。 root または sudo ユーザのパスワードを繰り返し指定するのを回避するために、検証スクリプトを実行する前に、パスワードなしの SSH をセットアップします。
ホストのペアごとに、この手順を繰り返します。 root ユーザ用のパスワードなしの SSH セットアップがあるが、Data Repository をインストールして実行するための root アクセス権がない場合は、sudo ユーザ アカウントを設定します。 sudo ユーザ アカウントを使用して root のパスワードを入力する必要なく、製品をインストールする別の方法もあります。 Data Repository のパスワードなしの sudo ユーザ アカウントの設定の詳細については、「Data Repository 用のパスワードなしの sudo ユーザ アカウントの設定
」を参照してください。
Data Repository のインストール時に、Data Repository 管理者ユーザに対してパスワードなしの SSH が自動的にセットアップされます。
以下の手順に従います。
  1. コンソールを開き、root または sudo ユーザとして Data Repository ホストにログインします。
  2. 以下のコマンドを実行します。
    ssh-keygen -N "" -t rsa -f ~/.ssh/id_rsa cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys2 chmod 644 ~/.ssh/authorized_keys2
  3. root または sudo ユーザの公開鍵をリモート ホスト上の許可された鍵のリストにコピーします。
    ssh-copy-id -i
    user
    @
    remotehost
    remotehost
    は、SSH ID をコピーしているクラスタ内のホストを指定します。
  4. パスワードなしの SSH が正しくセットアップされたことを確認するには、ローカル ホストからリモート ホストにログインします。
    ssh
    user
    @
    remotehost
    ls
    パスワードなしの SSH が正しくセットアップされている場合、パスワード入力は要求されません。 また、'ls コマンド' からディレクトリがリスト表示されます。
(オプション) Data Repository 用の sudo ユーザ アカウントの設定
root ユーザ用のパスワードなしの SSH セットアップがあるが、Data Repository をインストールして実行するための root アクセス権がない場合は、sudo ユーザ アカウントを設定します。
クラスタ環境の場合、クラスタ内の各ホスト上でこの手順を実行します。
以下の手順に従います。
  1. 以下のファイルを見つけます。
    /etc/sudoers
  2. ファイルに以下の権限を持つコマンド エイリアスを追加します。
Cmnd_Alias CA_DATAREP = /tmp/installDR.bin,/opt/CA/IMDataRepository_vertica9/dr_validate.sh,/opt/CA/IMDataRepository_vertica9/dr_install.sh,/usr/bin/vim,/usr/bin/reboot,/usr/bin/yum,/opt/CA/IMDataRespository_vertica9/RemoteEngineer/re.sh
## Allows the Data Repository user to manage the Data Repository
sudouser
ALL = CA_DATAREP
  • sudouser
    sudo コマンドを実行できるユーザを指定します。
このコマンド エイリアスには、sudo ユーザが実行できる必要があるコマンドが記述されています。
sudo ユーザが設定されると、すべてのコマンドに sudo プレフィックスを追加して Data Repository をインストールできます。
例:
sudo ./installDR.bin
(オプション) Data Repository 用のパスワードなしの sudo ユーザ アカウントの設定
特定のセキュリティ ポリシーによって、一部の環境では、ホスト サービスの root ユーザに対してパスワードなしの SSH を有効化できません。 以下の手順では、sudo ユーザ アカウントを使用して、そのレベルのアクセスを必要とせずに製品をインストールする別の方法を提供しています。
この機能は RHEL 6.x ではサポートされていません。
  1. 以下のファイルを見つけます。
    /etc/sudoers
  2. ファイルに以下の権限を持つコマンド エイリアスを追加します。
  • RHEL 7 の場合
    Cmnd_Alias CA_DATAREP=/opt/vertica/sbin/install_vertica,/tmp/installDR.bin,/opt/CA/IMDataRepository_vertica9/dr_validate.sh,/opt/CA/IMDataRepository_vertica9/dr_install.sh,/usr/bin/vim,/usr/bin/reboot,/opt/CA/IMDataRespository_vertica9/RemoteEngineer/re.sh,/bin/mkdir*,/usr/bin/whoami,/bin/echo,/sbin/service,/bin/grep,/usr/bin/test,/sbin/iptables,/opt/vertica/oss/python/bin/python,/usr/bin/tee,/usr/sbin/ntpd,/etc/init.d/ntpd,/sbin/blockdev,/etc/init.d/sshd,/etc/sysconfig/sshd,/etc/ssh/sshd_config,/bin/su,/usr/sbin/sshd restart,/usr/bin/ssh,/bin/df,/bin/mv,/bin/rm,/usr/bin/install
    Cmnd_Alias VERTICA = /opt/vertica/bin/,/opt/vertica/sbin/,/opt/vertica/oss/python/bin/
    Cmnd_Alias VERTICA_INSTALL = /bin/echo,/bin/ps -A,/bin/cp /opt/vertica/config/admintools.conf /opt/vertica/config/admintools.conf.bak.*,/bin/rm -rf /tmp/dbRPM.rpm,/bin/df --portability /tmp,/usr/bin/install --owner * --mode 700 -d *,/bin/mv -f /tmp/vstage-*/file /tmp/*,/bin/rm -rf /tmp/vstage-*,/usr/bin/id *,/bin/cp -T /opt/vertica/* /tmp/vstage-*,/bin/su --login dbadmin *,/bin/mkdir -p /opt/vertica/*,/bin/touch /opt/vertica/*,/bin/rm -rf /opt/vertica/*,/bin/mv -f /tmp/vstage-* /opt/vertica/*,/bin/mkdir -p /opt/vertica/*,/bin/touch /opt/vertica/config/users/dbadmin/agent.conf,/bin/su dbadmin *,/bin/sh -c *,/usr/bin,/opt/vertica/share/binlib/test/*,/usr/bin/su dbadmin,/bin/test [ -e /* ],/usr/bin/[ -e /* ]
    Cmnd_Alias USEFUL = /usr/bin/lshw,/usr/bin/yum,/bin/rpm,/sbin/reboot,/sbin/shutdown,/usr/bin/cpan,/bin/chgrp,/bin/chmod,/bin/chown,/bin/mnt,/usr/bin/test,/bin/[,/sbin/service
    ## Allows the Data Repository user to manage the Data Repository
    sudouser ALL = CA_DATAREP, VERTICA , VERTICA_INSTALL , USEFUL
    Defaults env_keep +="VERT_DBA_USR VERT_DBA_HOME VERT_DBA_GRP VERT_DBA_DATA_DIR _ENV_VPWD_VAR"
  • SLES 12 の場合
    Cmnd_Alias CA_DATAREP =/opt/vertica/sbin/install_vertica,/tmp/installDR.bin,/opt/CA/IMDataRepository_vertica9/dr_validate.sh,/opt/CA/IMDataRepository_vertica9/dr_install.sh,/usr/bin/vim,/usr/bin/reboot,/opt/CA/IMDataRespository_vertica9/RemoteEngineer/re.sh,/usr/bin/mkdir, /sbin/SuSEfirewall2 off *,/usr/bin/whoami,/usr/bin/echo,/usr/bin/id,/usr/bin/env,/usr/sbin/service,/usr/bin/grep,/usr/bin/test,/sbin/iptables,/opt/vertica/oss/python/bin/python,/usr/bin/tee,/usr/sbin/ntpd,/etc/init.d/ntpd,/sbin/blockdev,/etc/init.d/sshd,/etc/sysconfig/sshd,/etc/ssh/sshd_config,/usr/bin/su,/usr/sbin/sshd restart,/usr/bin/ssh,/usr/bin/sh,/usr/bin/install
    Cmnd_Alias VERTICA = /opt/vertica/bin/,/opt/vertica/sbin/,/opt/vertica/oss/python/bin/
    Cmnd_Alias VERTICA_INSTALL = /usr/bin/echo,/usr/bin/ps -A,/usr/bin/cp /opt/vertica/config/admintools.conf /opt/vertica/config/admintools.conf.bak.*,/usr/bin/rm -rf /tmp/dbRPM.rpm,/usr/bin/df --portability /tmp,/usr/bin/install --owner * --mode 700 -d *,/usr/bin/mv -f /tmp/vstage-*/file /tmp/*,/usr/bin/rm -rf /tmp/vstage-*,/usr/bin/id *,/usr/bin/cp -T /opt/vertica/* /tmp/vstage-*,/usr/bin/su --login dbadmin *,/usr/bin/mkdir -p /opt/vertica/*,/usr/bin/touch /opt/vertica/*,/usr/bin/rm -rf /opt/vertica/*,/usr/bin/mv -f /tmp/vstage-* /opt/vertica/*,/usr/bin/mkdir -p /opt/vertica/*,/usr/bin/touch /opt/vertica/config/users/dbadmin/agent.conf,/usr/bin/su dbadmin *,/usr/bin/sh -c *,/opt/vertica/share/binlib/test/*,/usr/bin/su dbadmin,/usr/bin/test [ -e /* ],/usr/bin/[ -e /* ]
    Cmnd_Alias USEFUL = /usr/bin/lshw,/usr/bin/yum,/bin/rpm,/sbin/reboot,/sbin/shutdown,/usr/bin/cpan,/bin/chgrp,/bin/chmod,/bin/chown,/bin/mnt,/usr/bin/test,/bin/[,/sbin/service
    ## Allows the Data Repository user to manage the Data Repository
    sudouser ALL = CA_DATAREP, VERTICA , VERTICA_INSTALL , USEFUL
    Defaults env_keep +="VERT_DBA_USR VERT_DBA_HOME VERT_DBA_GRP VERT_DBA_DATA_DIR _ENV_VPWD_VAR"