Veritas Access インストールガイド
- Veritas Access のライセンス
- システム要件
- Veritas Access をインストールする準備
- VMware ESXi での Veritas Access インストール用の仮想マシンの配備
- クラスタのインストールと設定
- クラスタの各ノードでのオペレーティングシステムのインストール
- ターゲットクラスタノードでの Veritas Access のインストール
- NIC、結合、および VLAN デバイスの管理について
- VLAN のタグ付けについて
- 応答ファイルを使用した Veritas Access のインストールと設定の自動化
- クラスタのノードの表示と追加
- オペレーティングシステムと Veritas Access のアップグレード
- ローリングアップグレードの実行
- Veritas Access のアンインストール
- 付録 A. インストールの参考情報
- 付録 B. 通信用のセキュアシェルの設定
- 付録 C. Veritas Access の手動配備
非 SSH 環境における 2 ノードクラスタへの Veritas Access の手動配備
このセクションでは、SSH 通信が無効になっているときに、2 ノードクラスタの Veritas Access を手動配備する手順について説明します。
前提条件
2 ノードクラスタを確認する。
サポート対象のオペレーティングシステムバージョン: RHEL 7.4
Veritas Access のイメージがローカルシステム (
/access_build_dir/rhel7_x86_64/
) にあることを前提とする。クラスタ名は clus、クラスタノード名は clus_01 と clus_02 であること。クラスタ名がすべてのノードで一意であること。
すべてのノードで SSH サービスが停止していること。
パブリック NIC は pubeth0 と pubeth1、プライベート NIC は priveth0 と priveth1 と仮定する。すべてのノードで NIC 名に一貫性があること。パブリック NIC 名とプライベート NIC 名がすべてのノードで同じであること。
172.16.0.3 を clus_01 のプライベート IP アドレスとして、172.16.0.4 を clus_02 のプライベート IP アドレスとして使用する。
2 ノードクラスタに Veritas Access を手動配備するには
- 目的のクラスタのすべてのノードに Veritas Access のイメージを複製します。
- すべてのノードで SSH デーモンを停止します。
# systemctl stop sshd
- 次の RPM がインストールされていることを確認します。インストールされていない場合は、RHEL リポジトリから該当する RPM をインストールします。
bash-4.2.46-28.el7.x86_64 lsscsi-0.27-6.el7.x86_64 initscripts-9.49.39-1.el7.x86_64 iproute-3.10.0-87.el7.x86_64 kmod-20-15.el7.x86_64 coreutils-8.22-18.el7.x86_64 binutils-2.25.1-31.base.el7.x86_64 python-requests-2.6.0-1.el7_1.noarch python-urllib3-1.10.2-3.el7.noarch
- 必要なオペレーティングシステム RPM をインストールします。
repo
ファイルを作成します。cat /etc/yum.repos.d/os.repo [veritas-access-os-rpms] name=Veritas Access OS RPMS baseurl=file:///access_build_dir/rhel7_x86_64/os_rpms/ enabled=1 gpgcheck=0
次のコマンドを実行します。
# yum updateinfo
次のコマンドを実行します。
# cd /access_build_dir/rhel7_x86_64/os_rpms/
次のコマンドを実行する前に、システムに RHEL サブスクリプションがないことを確認します。
yum repolist
は、veritas-access-os-rpms
のみを指す必要があります。
# /usr/bin/yum -y install --setopt=protected_multilib=false perl-5.16.3-292.el7.x86_64.rpm nmap-ncat-6.40-7.el7.x86_64.rpm perl-LDAP-0.56-5.el7.noarch.rpm perl-Convert-ASN1-0.26-4.el7.noarch.rpm net-snmp-5.7.2-28.el7_4.1.x86_64.rpm net-snmp-utils-5.7.2-28.el7_4.1.x86_64.rpm openldap-2.4.44-5.el7.x86_64.rpm nss-pam-ldapd-0.8.13-8.el7.x86_64.rpm rrdtool-1.4.8-9.el7.x86_64.rpm wireshark-1.10.14-14.el7.x86_64.rpm vsftpd-3.0.2-22.el7.x86_64.rpm openssl-1.0.2k-12.el7.x86_64.rpm openssl-devel-1.0.2k-12.el7.x86_64.rpm iscsi-initiator-utils-6.2.0.874-4.el7.x86_64.rpm libpcap-1.5.3-9.el7.x86_64.rpm libtirpc-0.2.4-0.10.el7.x86_64.rpm nfs-utils-1.3.0-0.48.el7_4.2.x86_64.rpm kernel-debuginfo-common-x86_64-3.10.0-693.el7.x86_64.rpm kernel-debuginfo-3.10.0-693.el7.x86_64.rpm kernel-headers-3.10.0-693.el7.x86_64.rpm krb5-devel-1.15.1-8.el7.x86_64.rpm krb5-libs-1.15.1-8.el7.x86_64.rpm krb5-workstation-1.15.1-8.el7.x86_64.rpm perl-JSON-2.59-2.el7.noarch.rpm telnet-0.17-64.el7.x86_64.rpm apr-devel-1.4.8-3.el7_4.1.x86_64.rpm apr-util-devel-1.5.2-6.el7.x86_64.rpm glibc-common-2.17-196.el7_4.2.x86_64.rpm glibc-headers-2.17-196.el7_4.2.x86_64.rpm glibc-2.17-196.el7_4.2.x86_64.rpm glibc-2.17-196.el7_4.2.i686.rpm glibc-devel-2.17-196.el7_4.2.x86_64.rpm glibc-utils-2.17-196.el7_4.2.x86_64.rpm nscd-2.17-196.el7_4.2.x86_64.rpm sysstat-10.1.5-12.el7.x86_64.rpm libibverbs-utils-13-7.el7.x86_64.rpm libibumad-13-7.el7.x86_64.rpm opensm-3.3.19-1.el7.x86_64.rpm opensm-libs-3.3.19-1.el7.x86_64.rpm infiniband-diags-1.6.7-1.el7.x86_64.rpm sg3_utils-libs-1.37-12.el7.x86_64.rpm sg3_utils-1.37-12.el7.x86_64.rpm libyaml-0.1.4-11.el7_0.x86_64.rpm memcached-1.4.15-10.el7_3.1.x86_64.rpm python-memcached-1.59-1.noarch.rpm python-paramiko-2.1.1-4.el7.noarch.rpm python-backports-1.0-8.el7.x86_64.rpm python-backports-ssl_match_hostname-3.4.0.2-4.el7.noarch.rpm python-chardet-2.2.1-1.el7_1.noarch.rpm python-six-1.9.0-2.el7.noarch.rpm python-setuptools-0.9.8-7.el7.noarch.rpm python-ipaddress-1.0.16-2.el7.noarch.rpm targetcli-2.1.fb46-1.el7.noarch.rpm fuse-2.9.2-8.el7.x86_64.rpm fuse-devel-2.9.2-8.el7.x86_64.rpm fuse-libs-2.9.2-8.el7.x86_64.rpm PyYAML-3.10-11.el7.x86_64.rpm arptables-0.0.4-8.el7.x86_64.rpm ipvsadm-1.27-7.el7.x86_64.rpm ntpdate-4.2.6p5-25.el7_3.2.x86_64.rpm ntp-4.2.6p5-25.el7_3.2.x86_64.rpm autogen-libopts-5.18-5.el7.x86_64.rpm ethtool-4.8-1.el7.x86_64.rpm net-tools-2.0-0.22.20131004git.el7.x86_64.rpm cups-libs-1.6.3-29.el7.x86_64.rpm avahi-libs-0.6.31-17.el7.x86_64.rpm psmisc-22.20-15.el7.x86_64.rpm strace-4.12-4.el7.x86_64.rpm vim-enhanced-7.4.160-2.el7.x86_64.rpm at-3.1.13-22.el7_4.2.x86_64.rpm rsh-0.17-76.el7_1.1.x86_64.rpm unzip-6.0-16.el7.x86_64.rpm zip-3.0-11.el7.x86_64.rpm bzip2-1.0.6-13.el7.x86_64.rpm mlocate-0.26-6.el7.x86_64.rpm lshw-B.02.18-7.el7.x86_64.rpm jansson-2.10-1.el7.x86_64.rpm ypbind-1.37.1-9.el7.x86_64.rpm yp-tools-2.14-5.el7.x86_64.rpm perl-Net-Telnet-3.03-19.el7.noarch.rpm tzdata-java-2018d-1.el7.noarch.rpm perl-XML-Parser-2.41-10.el7.x86_64.rpm lsof-4.87-4.el7.x86_64.rpm cairo-1.14.8-2.el7.x86_64.rpm pango-1.40.4-1.el7.x86_64.rpm libjpeg-turbo-1.2.90-5.el7.x86_64.rpm sos-3.4-13.el7_4.noarch.rpm traceroute-2.0.22-2.el7.x86_64.rpm openldap-clients-2.4.44-5.el7.x86_64.rpm
- 次のサードパーティの RPM をインストールします。
# cd /access_build_dir/rhel7_x86_64/ third_party _rpms/ # /bin/rpm -U -v --oldpackage --nodeps --replacefiles --replacepkgs ctdb-4.6.6-1.el7.x86_64.rpm perl-Template-Toolkit-2.24-5.el7.x86_64.rpm perl-Template-Extract-0.41-1.noarch.rpm perl-AppConfig-1.66-20.el7.noarch.rpm perl-File-HomeDir-1.00-4.el7.noarch.rpm samba-common-4.6.11-1.el7.x86_64.rpm samba-common-libs-4.6.11-1.el7.x86_64.rpm samba-client-4.6.11-1.el7.x86_64.rpm samba-client-libs-4.6.11-1.el7.x86_64.rpm samba-4.6.11-1.el7.x86_64.rpm samba-winbind-4.6.11-1.el7.x86_64.rpm samba-winbind-clients-4.6.11-1.el7.x86_64.rpm samba-winbind-krb5-locator-4.6.11-1.el7.x86_64.rpm libsmbclient-4.6.6-1.el7.x86_64.rpm samba-krb5-printing-4.6.11-1.el7.x86_64.rpm samba-libs-4.6.11-1.el7.x86_64.rpm libwbclient-4.6.6-1.el7.x86_64.rpm samba-winbind-modules-4.6.11-1.el7.x86_64.rpm libnet-1.1.6-7.el7.x86_64.rpm lmdb-libs-0.9.13-2.el7.x86_64.rpm nfs-ganesha-2.2.0-0.el7.x86_64.rpm nfs-ganesha-vxfs-2.2.0-0.el7.x86_64.rpm gevent-1.0.2-1.x86_64.rpm python-msgpack-0.4.6-1.el7ost.x86_64.rpm python-flask-0.10.1-4.el7.noarch.rpm python-itsdangerous-0.23-2.el7.noarch.rpm libevent-libs-2.0.22-1.el7.x86_64.rpm python-werkzeug-0.9.1-2.el7.noarch.rpm python-jinja2-2.7.2-2.el7.noarch.rpm sdfs-7.4.0.0-1.x86_64.rpm psutil-4.3.0-1.x86_64.rpm python-crontab-2.2.4-1.noarch.rpm libuv-1.9.1-1.el7.x86_64.rpm
このコマンドでは、
/access_build_dir/rhel7_x86_64/ third_party _rpms/
ディレクトリ内の RPM に基づいて RPM のバージョンを更新できます。 - Veritas Access rpm をインストールします。
次のコマンドを実行します。
# cd /access_build_dir/rhel7_x86_64/rpms/repodata/ # cat access73.repo > /etc/yum.repos.d/access73.repo
yum リポジトリのディレクトリに対し、
/etc/yum.repos.d/access73.repo
の baseurl と gpgkey エントリを更新します。baseurl=file:///access_build_dir/rhel7_x86_64/rpms/
gpgkey=file:///access_build_dir/rhel7_x86_64/rpms/ RPM-GPG-KEY-veritas-access7
次のコマンドを実行して yum リポジトリを更新します。
# yum repolist
# yum grouplist
次のコマンドを実行します。
# yum -y groupinstall ACCESS73
次のコマンドを実行します。
# /opt/VRTS/install/bin/add_install_scripts
- Veritas NetBackup クライアントソフトウェアをインストールします。
# cd /access_build_dir/rhel7_x86_64 # /opt/VRTSnas/install/image_install/netbackup/install_netbackup.pl /access_build_dir/rhel7_x86_64/netbackup
- Veritas Access のソフトリンクを作成します。次のコマンドを実行します。
# /opt/VRTSnas/pysnas/install/install_tasks.py all_rpms_installed parallel
- 製品のライセンスを取得します。
永続的な VLIC キーを登録します。
# /opt/VRTSvlic/bin/vxlicinstupgrade -k <Key>
VLIC キーが正しくインストールされていることを確認します。
# /opt/VRTSvlic/bin/vxlicrep
SLIC キーファイルを登録します。
# /opt/VRTSslic/bin/vxlicinstupgrade -k $keyfile
SLIC キーが正しくインストールされていることを確認します。
# /opt/VRTSslic/bin/vxlicrep
- 次のファイルのバックアップを作成します。
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-*
/etc/resolv.conf
- プライベート NIC を設定します。
# cd /etc/sysconfig/network-scripts/
最初のプライベート NIC を設定します。
次のコマンドを実行します。
# ip link set down priveth0
次を使用して
ifcfg-priveth0
ファイルを更新します。DEVICE=priveth0 NAME=priveth0 BOOTPROTO=none TYPE=Ethernet ONBOOT=yes
ifcfg-priveth0
ファイルにエントリを追加します。HWADDR=<MAC address> IPADDR= 172.16.0.3 (use IPADDR= 172.16.0.4 for second node) NETMASK=<netmask> NM_CONTROLLED=no
例:
HWADDR=00:0c:29:0c:8d:69 IPADDR=172.16.0.3 NETMASK=255.255.248.0 NM_CONTROLLED=no
次のコマンドを実行します。
# ip link set up priveth0
2 つ目のプライベート NIC を設定します。
2 つ目のプライベート NIC は同じ方法で設定できます。2 つ目のノードには、priveth0 ではなく priveth1 を使用します。priveth1 に IPADDR を指定する必要はありません。
- パブリック NIC を設定します。
# cd /etc/sysconfig/network-scripts/
(ホスト IP がまだ設定されていない) 2 つ目のパブリック NIC (pubeth1) を設定します。
次のコマンドを実行します。
# ip link set down pubeth1
次を使用して
ifcfg-pubeth1
ファイルを更新します。DEVICE=pubeth1 NAME=pubeth1 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes
ifcfg-pubeth1
ファイルにエントリを追加します。HWADDR=<MAC address> IPADDR=<pubeth1_pub_ip> NETMASK=<netmask> NM_CONTROLLED=no
次のコマンドを実行します。
# ip link set up pubeth1
最初のパブリック NIC (pubeth0) を設定します。
最初のパブリック NIC は停止するので、コンソールから直接システムにアクセスしてください。
次のコマンドを実行します。
# ip link set down pubeth0
次を使用して
ifcfg-pubeth0
ファイルを更新します。DEVICE=pubeth0 NAME=pubeth0 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes
ifcfg-pubeth0
ファイルにエントリを追加します。HWADDR=<MAC address> IPADDR=<pubeth0_pub_ip> NETMASK=<netmask> NM_CONTROLLED=no
次のコマンドを実行します。
# ip link set up pubeth0
pubeth1 が停止しているかどうかを確認します。停止している場合は、オンラインにします。
# ip link set up pubeth1
変更を確認します。
# ip a
次のコマンドを実行します。
# service network restart
sshd サービスを開始すると、前の IP に対して SSH が動作するはずです。
- DNS を設定します。
次のエントリを追加して、
/etc/resolv.conf
ファイルを更新します。nameserver <DNS> domain <master node name>
例:
nameserver 10.182.128.134 domain clus_01
- ゲートウェイを設定します。
/etc/sysconfig/network
ファイルを更新します。GATEWAY=$gateway NOZEROCONF=yes
configfileTemplate
ファイルを更新します。次のコマンドを入力します。
# cd /access_build_dir/rhel7_x86_64/manual_install/network
現在のシステムの詳細で
configfileTemplate
ファイルを更新します。master をマスターノードのモードとして、slave をその他のノードのモードとして使用します。
このテンプレートファイルを設定ユーティリティスクリプトで使用し、設定ファイルを作成します。
old_hostname と new_hostname に同じ名前 (現在のホスト名) を指定します。
- ネットワーク設定ファイルを生成します。
configNetworkHelper.pl
という名前の設定ユーティリティスクリプトで、必要な設定ファイルを作成します。# cd /access_build_dir/rhel7_x86_64/manual_install/network # chmod +x configNetworkHelper.pl
設定ユーティリティスクリプトを実行します。
# ./configNetworkHelper.pl -f configfileTemplate
# cat /opt/VRTSnas/scripts/net/network_options.conf > /opt/VRTSnas/conf/network_options.conf
# sed -i -e '$a\' /opt/VRTSnas/conf/net_console_ip.conf
/etc/hosts
ファイルを更新します。# echo "172.16.0.3 <master hostname>" >> /etc/hosts # echo "172.16.0.4 <slave node name>" >> /etc/hosts
例:
# echo "172.16.0.3 clus_01" >> /etc/hosts # echo "172.16.0.4 clus_02" >> /etc/hosts
- S3 設定ファイルを作成します。
# cat /opt/VRTSnas/conf/ssnas.yml ObjectAccess: config: {admin_port: 8144, s3_port: 8143, server_enable: 'no', ssl: 'no'} defaults: fs_blksize: '8192' fs_encrypt: 'off' fs_nmirrors: '2' fs_options: '' fs_pdirenable: 'yes' fs_protection: disk fs_sharing: 'no' fs_size: 20G fs_type: mirrored poollist: [] filesystems: {} groups: {} pools: {}
- Storage Foundation クラスタを設定します。
# cd /access_build_dir/rhel7_x86_64/manual_install/ network/SetupClusterScripts
# mkdir -p /opt/VRTSperl/lib/site_perl/UXRT72/CPIR/Module/veritas/
# cp sfcfsha_ctrl.sh /opt/VRTSperl/lib/site_perl/UXRT72/CPIR/ Module/veritas/sfcfsha_ctrl.sh
# cp module_script.pl /tmp/
# chmod +x /tmp/module_script.pl
次のコマンドでクラスタ名、システム名、NIC 名を更新し、コマンドを実行します。
# /tmp/module_script.pl veritas::sfcfsha_config '{"cluster_name" => "<Provide cluster name here>","component" => "sfcfsha","state" => "present","vcs_users" => "admin:password:Administrators,user1: passwd1:Operators","vcs_clusterid" => 14865,"cluster_uuid" => "1391a-443ab-2b34c","method" => "ethernet","systems" => "<Provide hostnames separated by comma>","private_link" => "<provide private nic name separated by comma>"}'
たとえば、クラスタ名が clus で、ホスト名が clus_01 と clus_02 の場合は次のようになります。
/tmp/module_script.pl veritas::sfcfsha_config ' {"cluster_name" => "clus","component" => "sfcfsha", "state" => "present","vcs_users" => "admin:password:Administrators,user1:passwd1:Operators", "vcs_clusterid" => 14865,"cluster_uuid" => "1391a-443ab-2b34c", "method" => "ethernet","systems" => "clus_01,clus_02", "private_link" => "priveth0,priveth1"}'
次のファイルを更新して設定します。
# rpm -q --queryformat '%{VERSION}|%{BUILDTIME:date}|% {INSTALLTIME:date}|%{VERSION}\n' VRTSnas > /opt/VRTSnas/conf/version.conf
# echo NORMAL > /opt/VRTSnas/conf/cluster_type
# echo 'path /opt/VRTSsnas/core/kernel/' >> /etc/kdump.conf
# sed -i '/^core_collector\b/d;' /etc/kdump.conf
# echo 'core_collector makedumpfile -c --message-level 1 -d 31' >> /etc/kdump.conf
- Veritas Access 製品のプロセスを開始します。
次のコマンドで現在のホスト名を指定し、コマンドを実行します。
# /tmp/module_script.pl veritas::process '{"state" => "present", "seednode" => "<provide current hostname here>","component" => "sfcfsha"}'
たとえば、ホスト名が clus_01 の場合は次のようになります。
# /tmp/module_script.pl veritas::process '{"state" => "present","seednode" => "clus_01","component" => "sfcfsha"}'
clus_02 で実行している場合は、「seednode" => "clus_02」と指定する必要があります。
次のコマンドを実行します。
# /opt/VRTSnas/pysnas/install/install_tasks.py all_services_running serial
- CVM グループを作成します。
/etc/vx/reconfig.d/state.d/install-db
ファイルが存在する場合は、次のコマンドを実行します。# mv /etc/vx/reconfig.d/state.d/install-db /etc/vx/reconfig.d/state.d/install-db.a
CVM がまだ設定されていない場合は、マスターノードで次のコマンドを実行します。
# /opt/VRTS/bin/cfscluster config -t 200 -s
- hacli を有効にします。
/etc/VRTSvcs/conf/config/main.cf
ファイルを確認します。HacliUserLevel = COMMANDROOT が存在する場合は手順 22 に進み、それ以外の場合は以下の手順に従ってシステムで hacli を有効にします。# /opt/VRTS/bin/hastop -local
/etc/VRTSvcs/conf/config/main.cf
ファイルを更新します。存在しない場合は、次の行を追加します。
HacliUserLevel = COMMANDROOT in cluster <cluster name> ( ) loop
例:
cluster clus ( UserNames = { admin = aHIaHChEIdIIgQIcHF, user1 = aHIaHChEIdIIgFEb } Administrators = { admin } Operators = { user1 } HacliUserLevel = COMMANDROOT # /opt/VRTS/bin/hastart
hacli が動作していることを確認します。
# /opt/VRTS/bin/hacli -cmd "ls /" -sys clus_01
- HAD デーモンが実行されていることを確認します。
# /opt/VRTS/bin/hastatus -sum
- 次の 1 から 22 の手順に従って、2 つ目のノードで Veritas Access を設定します。
- システムが正しく設定されていることを確認します。
LLT が正しく設定されていることを確認します。
# lltconfig -a list
例:
[root@clus_02 SetupClusterScripts]# lltconfig -a list Link 0 (priveth0): Node 0 clus_01 : 00:0C:29:0C:8D:69 Node 1 clus_02 : 00:0C:29:F0:CC:B6 permanent Link 1 (priveth1): Node 0 clus_01 : 00:0C:29:0C:8D:5F Node 1 clus_02 : 00:0C:29:F0:CC:AC permanent
GAB が正しく設定されていることを確認します。
# gabconfig -a
例:
[root@clus_01 network]# gabconfig -a GAB Port Memberships ================================== Port a gen 43b804 membership 01 Port b gen 43b807 membership 01 Port h gen 43b821 membership 01
LLT の状態を確認します。
# lltstat -nvv
例:
[root@clus_01 network]# lltstat -nvv LLT node information: Node State Link Status Address * 0 clus_01 OPEN priveth0 UP 00:0C:29:0C:8D:69 priveth1 UP 00:0C:29:0C:8D:5F 1 clus_02 OPEN priveth0 UP 00:0C:29:F0:CC:B6 priveth1 UP 00:0C:29:F0:CC:AC 2 CONNWAIT priveth0 DOWN priveth1 DOWN
vxconfigd デーモンが両方のノードでオンラインになっているはずです。
# ps -ef | grep vxconfigd
例:
# ps -ef | grep vxconfigd root 13393 1 0 01:33 ? 00:00:00 vxconfigd -k -m disable -x syslog
- Veritas Access 起動後の処理を実行します。
すべてのノードで HAD が実行されていることを確認します。
# /opt/VRTS/bin/hastatus
すべてのノードで
communication.conf
ファイルを作成し、SSH ではなく hacli を有効にします。vim /opt/VRTSnas/conf/communication.conf { "WorkingVersion": "1", "Version": "1", "CommunicationType": "HACLI" }
インストーラを実行して Veritas Access をインストールします。マスターノードでのみ、次のコマンドを実行します。
# /opt/VRTSnas/install/image_install/installer -m master
- スレーブノードで結合処理を実行します。
# /opt/VRTSnas/install/image_install/installer -m join
- 両方のノードで次のコマンドを実行します。
# echo "<first private nic name>" > /opt/VRTSnas/conf/net_priv_dev.conf
例:
# echo "priveth0" > /opt/VRTSnas/conf/net_priv_dev.conf
- NFS リソースを有効にします。マスターノードで次のコマンドを実行します。
# /opt/VRTS/bin/haconf -makerw # /opt/VRTS/bin/hares -modify ssnas_nfs Enabled 1 # /opt/VRTS/bin/haconf -dump -makero
これで、2 ノードクラスタの Veritas Access を使用できます。