サイオステクノロジー株式会社
SIOS Protection Suite for Linux
と
Microsoft Azure
の
動作検証レポート(
ARM
編)
2
© SIOS Technology, Inc.
目次
1 本書の内容 ...4
1.1 将来における互換性 ...4
1.2 制限事項 ...4
1.3 用語について...5
2 Azureの概要 ...6
3 構成情報 ...7
3.1 サーバー構成...7
3.2 ソフトウェア構成 ...8
3.3 監視対象 ...8
3.4 ネットワーク構成 ...8
4 AzureVM/LifeKeeper処理の流れ ...8
5 仮想マシンの構築、OSの起動 ... 11
5.1 仮想マシンの構築 ... 11
5.2 Internal Load Balancingの設定 ... 15
5.3 OSの設定 ... 19
5.3.1 SELinux ... 19
5.3.2 ファイアウォール ... 19
5.3.3 アドレス変換 ... 19
5.3.4 GUI接続設定 ... 20
6 LifeKeeperによるHAクラスターの構築 ... 23
6.1 LifeKeeperのインストール ... 23
6.2 LifeKeeper GUIの管理画⾯へのアクセス ... 23
6.3 コミュニケーションパスの作成 ... 23
6.4 Broadcast Pingの無効化 ... 24
6.5 IPリソースの作成 ... 25
6.6 Data Replicationリソース階層の作成 ... 27
6.7 Oracleリソース階層の作成 ... 28
6.8 listenerリソース階層の作成 ... 29
3
© SIOS Technology, Inc.
6.10 Witness/Quorumの設定 ... 31
7 Microsoft Azureの機能確認 ... 33
8 LifeKeeperの機能確認 ... 33
9 参考資料 ... 34
10 謝辞 ... 35
11 お問い合わせ ... 36
12 免責事項 ... 37
改訂履歴
4
© SIOS Technology, Inc.
1
本書の内容
このたび、LifeKeeper for Linux(以下、LifeKeeper)をMicrosoft Azure(以下、Azure) リソースマネージャー環境においてご利用いただけるようになりました。
本書は、弊社で実際に⾏った検証作業の構成をベースとして記述したものです。LifeKeeper
をSingle-NIC構成のAzureVM環境で稼働させ、クラウド環境におけるHAクラスターシ ステムを構築する方法について、ご説明します。
※2 つ以上の NIC を使用している場合、Azure インフラストラクチャの更新の際にデバイ ス名が eth0→eth1、eth1→eh0 という具合に変化することがあります。これは Azure の仕様に基づくものです。詳細は後述の URL にございます「VM 内の NIC の順序はラン ダムになり…」以降をご参照ください。
この動作は LifeKeeper をインストールした環境でも同様に生じるため、HA クラスターの 安定動作上の問題となり得ます。そのため Azure 環境での LifeKeeper の利用においては、 1 つの NIC を使用する構成のみをサポートいたします。
https://azure.microsoft.com/ja-jp/documentation/articles/virtual-networ ks-multiple-nics/#strongstrong
1.1
将来における互換性
本文書に記載されております内容は、2016年6月6日時点のAzure上で実施した検証
結果に基づいています。将来におけるAzure及びLifeKeeperの仕様変更について保証
するものではありません。必要に応じて最新のドキュメンテーションを参照し、適切な 設定を⾏ってください。
1.2
制限事項
Azureで構成するLifeKeeper for Linuxでは、マルチNIC構成はサポートしてお
りません。
Azureで構成するLifeKeeper for Linuxでは、アクティブ/アクティブ構成はサポー トしておりません。
Azureで構成するLifeKeeper for Linuxでは、複数のポートを使用するサービス
5
© SIOS Technology, Inc.
1.3
用語について
本書で使用する用語について説明します。
内部負荷分散(Internal Load Balancing または ILB)
Azure クラウドサービスまたは地域が限定された仮想ネットワークの内側に存在す る仮想マシン間に負荷分散を実現する機能です。
[IP リソースが保護する VIP]
LifeKeeper で作成した仮想 IP アドレスです。
[ILB が設定する VIP]
Azure で作成した Internal Load Balancing の仮想 IP アドレスです。
[Azure のプライベート IP アドレス]
6
© SIOS Technology, Inc.
2
Azure
の概要
Azureは、Microsoftが提供するパブリッククラウドサービスです。ハードウェア、ネット
ワーク、ディスクなどのストレージ、Windows ServerやLinuxなどのサーバーOS、Web
サーバーやRDBMSなどのミドルウェア、グループウェアやサーバー・アプリケーション、
そして.Net Frameworkなどのアプリケーション実⾏環境を、ユーザーがオンデマンドで
ネットワークを経由して利用可能なITの利用形態です。
Microsoftが管理する世界中のデータセンターに、インターネット経由でサーバー・アプリ
ケーションを簡単に作成し、展開、管理が⾏えます。サーバーやインフラを所有すること なく、必要な時に必要な量のメモリやディスクといったコンピューティングリソースを利 用することが出来ます。料⾦体系はリソース毎に分かれており、時間単位の従量課⾦での 利用となります。
Azureでは、Webブラウザベースの管理ポータルを提供しており、ユーザーは直感的に操
作する事が可能です。
Azure では、仮想マシン(VM)、Web サイト、モバイルサービス、クラウドサービスの 4
つの形態でサービスを提供していますが、本ドキュメントでは、仮想マシンに対して
7
© SIOS Technology, Inc.
3
構成情報
本構成ではLifeKeeperを使って、以下の構成のアクティブ/スタンバイクラスターを構築
します。Single-NIC構成のAzureVMにLifeKeeperを導入します。
3.1
サーバー構成
仮想マシンサイズ Standard_D2 (2 コア、7 GB メモリ)
Client/WitnessはBasic_A0 (0.25コア,0.75GBメモリ)
データディスク 32GB(sdbは検証では未使用)
[IPリソースが保護するVIP] 10.0.0.99
[ILBが設定するVIP] 10.0.0.99
ILBが転送するポート 1521
ILBの負荷分散先ホストおよびポート Host1/Host2の各1521ポート
[AzureのプライベートIPアドレス] 10.0.0.4 / 10.0.0.5 / 10.0.0.7
Azure が初期構成でマウントして起動する /mnt/resource のデータディスクは、再起動
8
© SIOS Technology, Inc.
3.2
ソフトウェア構成
OS RedHat Enterprise Linux 7.2 64bit
LifeKeeper SIOS Protection Suite for Linux 9.0.2 Oracle Oracle Database 12c Enterprise Edition
3.3
監視対象
監視対象 IPリソースが保護するVIP / ファイルシステム /
DataReplication / Oracle DB / Oracle Listener
3.4
ネットワーク構成
Azureでは、仮想マシン(VM)間での通信を⾏えるようにする為、“仮想ネットワーク”
(VNET)を作成します。VNETは、サブネットを指定する事で、このサブネット内で
VM間での通信が⾏えるようにしています。
AzureでVMにネットワークを構成する場合、あらかじめVNETを作成し、VMにこの
VNETを指定するのが一般的です。VNETを使用すると、VMに仮想プライベートネット
ワーク(VPN)を提供できます。オプションとして、VPNをオンプレミス環境に接続して、
ハイブリッドソリューションやクロスプレミスソリューションの実現もできます。VNET
は管理ポータルサイトやAzure PowerShellを通して、DNSおよびIPアドレス範囲の
構成を含むネットワークトポロジーを制御できます。
4
AzureVM/LifeKeeper
処理の流れ
1. インターナルロードバランサー(ILB)の導入
9
© SIOS Technology, Inc.
① Oracle clientのHost3が、Oracle Listenerへ接続する為、ILB(10.0.0.99:1521) への接続を開始します。
② ILBでは、負荷分散先として指定された10.0.0.4(Host1),10.0.0.5(Host2)の何
れかのport1521に接続を⾏います。ただしport1521がオープンしているのはアク
ティブノードのみとなる為、実際には10.0.0.4(Host1)へのみ接続を⾏います。
③ LifeKeeperの仕様上Oracle Listenerリソースは[IPリソースが保護するVIP]を
指定する必要があります。その為、受信用にIPリソースを作成します。ILBからの転
送先は、[AzureのプライベートIPアドレス]となります。Oracle Listenerに接続す
るためには、最終的に[IPリソースが保護するVIP]で接続を受信する必要がありますの
で、[AzureのプライベートIPアドレス]にport 1521で届いた接続要求は、[IPリソー
スが保護するVIP]にIPアドレスを変換します。
④ Oracle clientの接続要求は、送信先10.0.0.99:1521で接続が可能となります。
2. ルーティングの変更
10
© SIOS Technology, Inc.
① IPリソースからIPリソースで保護するVIPをソースとして指定したPINGを開
始します。
② PINGの送信元アドレスを、10.0.0.99(IPリソースで保護するVIP)から
10.0.0.4(AzureのプライベートIPアドレス)に置き換えます。
③ ソース置き換え後、PINGの送信先にパケットを送信します。[Azureのプライベー
トIPアドレス]に置き換えられる事で、ネットワークが正常であれば応答が返ります。
3. Quorum の導入
DataKeeper を使用してクラスター構成を⾏った場合、コミュニケーションパスが全断 するようなネットワークの障害が発生した際、スプリットブレインの状態になる可能性 があります。その為、I/O Fencing 機能として提供している Quorum の機能を設定して ください。
今回の検証では、TCP Remote モードによる正常動作を確認しています。下記 URL 中 のダウンロードリンクにある PDF ファイル6ページ目”3.2 TCP Remote モード”をご 参照ください。
LifeKeeper for Linux Quorum Check/Witness Server 機能利用ガイド
http://sios.jp/products/lkdk/product/pdf/lifekeeper_quorum-whitness.pdf
また、以下のテクニカルドキュメンテーションをご参照ください。
11
© SIOS Technology, Inc.
5
仮想マシンの構築、
OS
の起動
Azure上に仮想マシンを作成します。
AzureでLifeKeeperを使用する場合、LifeKeeperのインストール、設定の他に、以下の
3点の設定を⾏う必要があります。
内部負荷分散(Internal Load Balancing または ILB)を使用し、LifeKeeperで保
護するOracleリソースへの接続を有効にする。
IPリソースの監視処理を有効にする。
スプリットブレインを回避するためQuorumの設定を⾏う。
5.1
仮想マシンの構築
Microsoft Azure ポータルからVMを3台デプロイします。
① Microsoft Azureポータルをブラウザで開きます。
② 新規→Virtual Machines→すべて表示をクリックします。
③ フィルターにキーワードを入⼒してデプロイするイメージを検索します。本書では
12
© SIOS Technology, Inc.
④ 検索結果より、所望の VM イメージを選択します。本書では[RedHat Enterprise
Linux 7.2]としました。
13
© SIOS Technology, Inc.
⑥ 基本項目の任意の名前、ユーザー、パスワード、リソースグループ(新規)を入⼒し
て、場所を選びます。
⑦ サイズを選択します。本書ではクラスター用に[Standard D2]、Witnesses/Client
用に[Basic A0]を選択しました。クラスター用は負荷分散(赤枠の部分)が使用で
14
© SIOS Technology, Inc.
⑧ Virtual Network、サブネット、パブリックIPなどを入⼒します。
15
© SIOS Technology, Inc.
⑩ [AzureのプライベートIPアドレス]が固定化されるようNICのIPアドレスを、静
的に割り当ててください。静的IPアドレスを割り当てる方法については、以下を参
考にしてください。
静的内部プライベート IP を設定する方法
https://azure.microsoft.com/ja-jp/documentation/articles/virtual-network s-reserved-private-ip/
5.2
Internal Load Balancing の設定
Azureでは仮想IPにより通信ができません。これを回避するためにロードバランサーを
追加します。
① Azureポータルで[新規]→[ネットワーキング]→[Load Balancer]をクリックし、
[ロードバランサー作成]タブを開き、下図のように設定します。
② [作成]をクリックして完了します。
16
© SIOS Technology, Inc.
④ ポータル→[リソースグループ]→[<作成したリソースグループ>(この場合は
RHEL7)]→[<作成したロードバランサー>(この場合はILBSIOS)]→[すべての
設定]→[バックエンドプール]で[バックエンドアドレスプール]タブを開きます。
⑤ [追加]をクリックします。
⑥ [バックエンドプールの追加]タブで[名前]を設定します。本書では[ILBPSIOS]とし
ました。
⑦ [仮想マシンの追加]をクリックして[仮想マシンの選択]タブを表示します。
⑧ [可用性セットの選択]をクリックして[可用性セットの選択]タブを表示し、VM作成
17
© SIOS Technology, Inc.
⑨ [仮想マシンの選択]タブに表示が戻ります。デプロイした VM(本書では Host1,
Host2)を選択し、[選択]ボタンをクリックします。
⑩ 仮想マシンが選択されると下記のように仮想マシン欄下にリストアップされます。
[OK]をクリックして完了です
18
© SIOS Technology, Inc.
⑫ [プローブ]をクリックします。ポートは Oracle のポート 1521 を設定しました。
OKをクリックして追加完了します。
⑬ 負荷分散規則の設定[名前]は任意です本書では[LBrule]としました。[プロトコル]
はTCP、[ポート]はOracleのポート1521、[バックエンドプール]、[プローブ]は
前項で作成したもの、[フローティングIP]を[有効]、その他はデフォルトを指定し
て、OKをクリックして設定を完了します。
19
© SIOS Technology, Inc.
5.3
OS の設定
Azure で提供する仮想マシン用 LinuxOSは、rootユーザーとして直接ログインするこ
とが出来ません。その為、仮想マシン作成時に設定したユーザーでログインをして、以
下の様にsudoコマンドでroot権限に変更してから設定をする必要があります。
$ sudo su –
以下は、LifeKeeperを導入する為の事前作業となります。
5.3.1
SELinux
SELinuxを無効化します。
# vi /etc/selinux/config
以下のパラメータを、“enforcing”から“disabled”に変更します。 SELINUX=disabled
5.3.2
ファイアウォール
LifeKeeper は特定のポートを使用するため、下記の資料を参考に OS のファイア
ウォールの設定を変更します。
ファイアウォールを使用した状態でのLifeKeeperの実⾏
http://jpdocs.us.sios.com/Linux/9.0.2/LK4L/TechDoc/index.htm#user_gui de/using_lifekeeper_linux/maintenance_tasks/running_lifekeeper_firewall. htm
5.3.3
アドレス変換
ILB が負荷分散した1521ポート宛のパケットを、[IPリソースが保護する VIP]
宛にディスティネーションアドレスを変換します。
IP リソースの監視処理が正常に⾏えるよう、ICMP パケットのソースアドレス変
換を⾏います。
各クラスターノード(Host1/Host2)で、以下の設定を⾏います。
① IP tableパッケージをインストールします
20
© SIOS Technology, Inc.
② IP tableを有効にします
#systemctl start iptables.service #systemctl enable iptables.service
③ IP tableが有効か確認します。
#systemctl list-unit-files | grep iptables
iptables.service enabled
④ Host1で以下を実⾏する。
# iptables -t nat -A PREROUTING -p tcp --dport 1521 -j DNAT --to-destination 10.0.0.99:1521
# iptables -t nat -A POSTROUTING -p icmp -s 10.0.0.99 -j SNAT --to-source 10.0.0.4
# service iptables save # chkconfig iptables on
⑤ Host2で以下を実⾏する。
# iptables -t nat -A PREROUTING -p tcp --dport 1521 -j DNAT --to-destination 10.0.0.99:1521
# iptables -t nat -A POSTROUTING -p icmp -s 10.0.0.99 -j SNAT --to-source 10.0.0.5
# service iptables save # chkconfig iptables on
5.3.4
GUI
接続設定
① GUIパッケージとXRDPのインストール
仮想マシンでGUIを起動するのに必要なパッケージと、リモートデスクトップ接続
を可能とする以下のパッケージを追加します。
# yum -y --skip-broken groupinstall "Server with GUI" # yum -y install vlgothic-*
# rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
# yum -y install xrdp tigervnc-server tigervnc-server-module xterm
② XRDPの設定
21
© SIOS Technology, Inc. # systemctl start xrdp
# chkconfig --level 3 xrdp on
# systemctl set-default graphical.target
③ /etc/sysconfig/iptablesの編集
赤太字をREJECTの前に追加します。
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration *filter
:INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3389 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited
<以下略>
④ 変更を有効にするため再起動します
# shutdown -r now
⑤ リモートデスクトップクライアントの起動と接続します
⑥ リモートデスクトップを起動し、[コンピュータ(C):]にパブリックIPアドレス
を入⼒後、接続をクリックします。
⑦ [このリモートコンピュータの ID を識別できません]と警告が出ますが[はい]
22
© SIOS Technology, Inc.
⑧XRDPのログインダイアログが表示されるのでユーザー名とパスワードを入⼒
してください。
⑨ VMのデスクトップにログインできました。
※「vnc supporting 8,15,16 and 24 bpp rdp connect」というメッセージ が 出 て 、 接 続 で き な い 場 合 は /etc/xrdp/xrdp.ini の max_bpp=32 を
23
© SIOS Technology, Inc.
6
LifeKeeper
による
HA
クラスターの構築
仮想マシンのOSにLifeKeeperをインストールし、HAクラスターを構築します。
6.1
LifeKeeper のインストール
各ノードに LifeKeeper をインストールします。インストールの手順につきましては、下 記の「LifeKeeper for Linux スタートアップガイド(v9.0.2 用)」をご参照ください。 LifeKeeper for Linux スタートアップガイド (v9.0.2 用)
http://lk.sios.com/?p=4304
LifeKeeper のインストール途中で、「Select optional kits for SPS for Linux」画⾯が表 示されたら、「lkDR」と「lkORA」を選択して、インストールします。
セットアップが完了しましたら、LifeKeeper を起動します。 # /opt/LifeKeeper/bin/lkstart
6.2
LifeKeeper GUI の管理画⾯へのアクセス
① DNSや/etc/hostsで、以下のコマンドで表示されるホスト名での名前解決が相互
に出来ることを確認します。
# /opt/LifeKeeper/bin/lcduname
② LifeKeeper GUIにはrootユーザーでログインできない為、LifeKeeperGUI専用
の管理者ユーザー”lkuser”を作成します。
# adduser lkuser # passwd lkuser
# usermod –G lkadmin lkuser
*すべてのノードに作成してください。
③ XRDP経由で接続したGUI上でターミナルを開き、LifeKeeperGUIを起動します。
# /opt/LifeKeeper/bin/lkGUIapp
24
© SIOS Technology, Inc.
LifeKeeperは設定した全てのコミュニケーションパスを通じ、ハートビートの応答確認
を⾏うことによってノードの死活監視を実施しています。ハートビート通信において所 定の回数応答が得られなかった場合、そのコミュニケーションパスの接続が切れている
と判断しステータスをDEADとします。全てのコミュニケーションパスのステータスが
DEADとなった場合、ノード障害と判定してフェイルオーバーを開始します。
LifeKeeper ではサーバー間に 2 経路以上のコミュニケーションパスを推奨しています
が、「1 本書の内容」で述べている通り、Azure でのMulti-NIC サポートをしていない
ため、下記のようにシングルNICでの1経路のみのコミュニケーションパスを構成して
います。
種別 プライオリティ Host1 Host2
TCP 1 10.0.0.4 10.0.0.5
6.4
Broadcast Ping の無効化
Azureの仮想マシン環境では、IPリソース作成直後Broadcast Pingへの応答が得られ
ません。その為、Broadcast Pingによる死活監視を一時的に両ノードで無効にします。
$sudo vi /etc/default/LifeKeeper
変更内容
変更前
NOBCASTPING=0
変更後
25
© SIOS Technology, Inc.
6.5
IP リソースの作成
LifeKeeper GUI管理画⾯よりCreate Resource Hierarchyを選択し、IPリソースを 作成します。リソース作成ウィザードで入⼒する内容は以下の通りです。
Select Recovery Kit IP
Switchback Type Intelligent
IP Resource 10.0.0.99
Netmask 255.255.255.0
Network Interface eth0
IP Resource Tag ip-10.0.0.99
ターゲット(セカンダリ)ノードへのExtend時に入⼒する内容は以下の通りです。
Switchback Type Intelligent Template Priority 1
Target Priority 10
IP Resource 10.0.0.99
Netmask 255.255.255.0
Network Interface eth0
IP Resource Tag ip-10.0.0.99
今回の環境では、Broadcast Pingによる監視を無効にしているため、Unicast Pingを
利用して死活監視を⾏います。以下に設定例を記載します。
26
© SIOS Technology, Inc.
② Ping Listに設定するIPアドレスを入⼒し、Add addressをクリックします。
③ Save Listをクリックし、設定値を保存します。
④ Ping List への登録が終わったら、以下のコマンドでpingへの応答が有る事を確
認してください。
# ping –I 10.0.0.99 10.0.0.7
Pingへの応答を確認してから、”6.4”で無効化した”NOBCASTPING”をオン(0)に戻し
27
© SIOS Technology, Inc.
6.6
Data Replication リソース階層の作成
重要︓
Data Replicationリソース階層作成時に、構成によっては以下のエラーを出⼒し、
リソースの作成に失敗する場合があります。
■エラーメッセージ
ERROR 104052: Cannot get the hardware ID of device “デバイス名”
以下の設定ファイルに、/dev/sd*の1⾏を追加することでエラーを回避できます。
■設定ファイル
/opt/LifeKeeper/subsys/scsi/resources/DEVNAME/device_pattern
この設定は各サーバーで実施してください。詳細は以下の資料をご参照ください。
[Linux]ERROR 104052: Cannot get the hardware ID of device “デバイス 名”について
http://lk.sios.com/?p=866
Azureの管理画⾯から各VMにディスクを増設してください。検証では両ノードに32GB
の増設を⾏い、増設した領域をレプリケーションして利用しています。
LifeKeeper GUI 管 理 画 ⾯ よ り“Create Resource Hierarchy”を 選 択 し 、Data
Replication リソースを作成します。リソース作成ウィザードで入⼒する内容は 以下
の通りです。
Select Recovery Kit Data Replication Switchback Type Intelligent
Hierarchy Type Replicate Existing File system Existing Mount Point /u01/app/oracle
Data Replication
Resource Tag datarep-oracle
File system Resource
Tag /u01/app/oracle
Bitmap File /opt/LifeKeeper/bitmap__u01_app_oracle Enable Asynchronous
28
© SIOS Technology, Inc.
ターゲット(セカンダリ)ノードへのExtend時に入⼒する内容は以下の通りです。
Switchback Type Intelligent Template Priority 1
Target Priority 10
Target Disk /u01/app/oracle
Data Replication
Resource Tag datarep-oracle
Bitmap File /opt/LifeKeeper/bitmap__u01_app_oracle Replication Path 10.0.0.4/10.0.0.5
Mount Point /u01/app/oracle
Root Tag /u01/app/oracle
6.7
Oracle リソース階層の作成
事前にOracleのインストールを⾏ってください。なお、今回の検証では、Oracle,Oracle
listenerおよびOracle DBの全てを、先に作成したData Replication領域にインストー ルしています。
またOracleをLifeKeeperのリソースとして保護する際に必要な設定については、以下
のドキュメントをご参照ください。
Oracle Recovery Kit 管理ガイド
http://jpdocs.us.sios.com/Linux/9.0.2/LK4L/Oracle/index.htm
Oracle の準備が整いましたら、LifeKeeper GUI 管理画⾯より Create Resource
Hierarchyを選択し、Oracleリソースを作成します。
この時点で、Oracleをプライマリサーバー上で実⾏している必要があります。セカンダ
リサーバー上でOracleを実⾏していてはいけません。
Select Recovery Kit Oracle Database
Switchback Type intelligent
Server Host1
ORACLE_SID for Database orcl
Username sys
Password password
Select the Oracle Listener LSNR,LISTENER
29
© SIOS Technology, Inc.
ターゲット(セカンダリ)ノードへのExtend時に入⼒する内容は以下の通りです。
Switchback Type intelligent
Template Priority 1
Target Priority 10
Database Tag orcl
6.8
listener リソース階層の作成
LifeKeeper GUI管理画⾯より“Create Resource Hierarchy”を選択し、
Oracle Database Listenerリソースを作成します。リソース作成ウィザードで入⼒す
る内容は以下の通りです。
Select Recovery Kit Oracle Database Listener
Switchback Type intelligent
Server Host1
Listener Configuration File Path /u01/app/oracle/product/12.1.0/dbhome_1/network/ admin/listener.ora
Listener Name(s) LISTENER
Listener Executable(s) /u01/app/oracle/product/12.1.0/dbhome_1/bin Listener Protection Level Full Control
Listener Recovery Level Standard, (On)
IP Address Name(s) IP-10.0.0.99
Listener Tag LSNR.LISTENER
ターゲット(セカンダリ)ノードへのExtend時に入⼒する内容は以下の通りです。
Target server Host2
Switchback Type intelligent
Template Priority 1
30
© SIOS Technology, Inc.
6.9
IPリソースとOracleリソース間の依存関
係の構築
IPリソースの依存関係を、Listenerリソースとファイルシステムリソースの間に変更し
ます。リスナーリソース(LSNR_LISTENER)の子リソースであるファイルシステムリ
ソ ー ス(/u01/app/oracle)の 依 存 関 係 を 削 除 し 、 フ ァ イ ル シ ス テ ム リ ソ ー ス (/u01/app/oracle)をIPリソース(ip-10.0.0.99)の下位に依存関係を作成します。
依存関係の作成と削除については、以下のドキュメントをご参考ください。
リソース依存関係の削除
http://jpdocs.us.sios.com/Linux/9.0.2/LK4L/TechDoc/index.htm#administrati on/administrator_tasks/deleting_resource_dependency.htm
リソース依存関係の作成
http://jpdocs.us.sios.com/Linux/9.0.2/LK4L/TechDoc/index.htm#administrati on/administrator_tasks/creating_resource_dependency.htm
下記リソースの依存関係図のように、設定を⾏ってください。この設定により、リソー
31
© SIOS Technology, Inc.
6.10
Witness/Quorum の設定
DataKeeper for Linuxを使用した場合、コミュニケーションパス全断時にスプリット
ブレインが発生する可能性があります。スプリットブレインの発生を抑止するためには、
以下にご案内するWitness/Quorumの設定を⾏ってください。
1. インストール CD、もしくはインストールイメージ内の”sps.img”をマウントして、
Witness/Quorum の設定に必要なパッケージをインストールします。これはクラ
スター、Witnessすべてのノードで実⾏してください。
# mount /dev/cdrom /media/cdrom # cd /media/cdrom
# mount sps*.img –t iso9660 –o loop /mnt
# rpm -ivh /mnt/quorum/ steeleye-lkQWK-9.0.2-6513.noarch.rpm
2. クラスターノードについて、/etc/default/LifeKeeper の以下のパラメータの設定
を変更します。
QUORUM_MODE=majority (デフォルト値) QUORUM_HOSTS=
WITNESS_MODE= remote_verify (デフォルト値) QUORUM_LOSS_ACTION=osu
*majorityでWitnessモードを利用していますが、 tcp_remoteでTCP Remote モードをご利用いただく事も可能です。
3. Witnessノードについて、/etc/default/LifeKeeperの以下のパラメータの設定を 変更します。
WITNESS_MODE= off
4. LifeKeeperを再起動します。
# lkstop -f ; lkstart
32
© SIOS Technology, Inc.
Quorum及びwitnessの詳細は以下のユーザーサイトの記事をご参照ください。
33
© SIOS Technology, Inc.
7
Microsoft Azure
の機能確認
本構成で、Microsoft Azure の以下の機能について正常動作を確認しました。
(1) 同地域に2台の仮想マシンを構成し、LifeKeeperによるクラスターを構成する。
(2) Azureの管理ポータルによる仮想マシンのシャットダウン、起動、リブート操作が、
OSのコマンドによるシャットダウン、起動、リブートと同等である事を確認する。
(3) rootユーザーへのログイン機能が無いが、sudoコマンドでLifeKeeperのコントロー
ルが可能である事を確認。(LifeKeeperの動作検証で異常がなかった為、問題なし)
(4) 各テスト項目後に、ILB経由でアクティブノードのOracle DBに接続できることを確
認する。
8
LifeKeeper
の機能確認
本構成で、LifeKeeperの以下の機能について、正常動作を確認しました。
(1) スイッチオーバーの動作確認
(2) Oracleのプロセスが停止した場合の、復旧(ローカルリカバリ、フェイルオーバー)
が⾏われること
(3) 稼働系サーバーでカーネルパニックが発生した場合に、セカンダリサーバーへフェイ
ルオーバーが⾏われること
(4) LifeKeeperプロセス、リソースの停止/起動(lkstop/lkstart)確認
(5) OSによるシャットダウン、リブートの動作確認
34
© SIOS Technology, Inc.
9
参考資料
LifeKeeper User Site http://lk.sios.com/
LifeKeeper for Linux スタートアップガイド(v9.0.2用) http://lk.sios.com/?p=4304
SIOS Technical Documentation http://jpdocs.us.sios.com/
SIOS Protection Suite for Linux 9.0.2 テクニカルドキュメンテーション http://jpdocs.us.sios.com/Linux/9.0.2/LK4L/TechDoc/index.htm
Oracle Recovery Kit 管理ガイド
http://jpdocs.us.sios.com/Linux/9.0.2/LK4L/Oracle/index.htm
Microsoft Azureホームページ http://azure.microsoft.com/ja-jp/
Microsoft Azureドキュメント センター
http://azure.microsoft.com/ja-jp/documentation/
Microsoft Azure Japan Team Blog (ブログ) http://blogs.msdn.com/b/windowsazurej/
Microsoft Azure 自習書シリーズの公開
http://blogs.msdn.com/b/windowsazurej/archive/2014/06/02/blog-published-azure-self-lear ning-series.aspx
High Availability for a file share using WSFC, ILB and 3rd-party Software SIOS Datakeeper(ILB
の設定で参考資料として利用)
35
© SIOS Technology, Inc.
10
謝辞
検証に際して、日本マイクロソフト様よりMicrosoft Azureの利用をご承認いただき、ま
た環境構築や設定、テストケースの作成に際して多大なるご支援をいただきました。御礼 を申し上げます。
36
© SIOS Technology, Inc.
11
お問い合わせ
本書の記載内容についてのお問い合わせ先
LifeKeeper
製品の導入を検討中のお客様
LifeKeeper
製品をご購入済みのお客様
弊社パートナー営業部までお問い合わせください。 お問い合わせメールフォーム
https://www.sios.com/products/bcp/lkdk/contact/
弊社LifeKeeper製品サポート窓口までお問い合わせください。 購入後のお問い合わせ
37
© SIOS Technology, Inc.
12
免責事項
本書に記載された情報は予告なしに変更、削除される場合があります。最新のものを
ご確認ください。
本書に記載された情報は、全て慎重に作成され、記載されていますが、本書をもって、
その妥当性や正確性についていかなる種類の保証もするものではありません。
本書に含まれた誤りに起因して、本書の利用者に生じた損害については、サイオステ
クノロジー株式会社は一切の責任を負うものではありません。
第三者による本書の記載事項の変更、削除、ホームページ及び本書等に対する不正な
アクセス、その他第三者の⾏為により本書の利用者に生じた一切の損害について、サ イオステクノロジー株式会社は一切の責任を負うものではありません。
システム障害などの原因によりメールフォームからのお問い合せが届かず、または延
着する場合がありますので、あらかじめご了承ください。お問い合せの不着及び延着 に関し、サイオステクノロジー株式会社は一切の責任を負うものではありません。
【著作権】
本書に記載されているコンテンツ(情報・資料・画像等種類を問わず)に関する知的財産 権は、サイオステクノロジー株式会社に帰属します。その全部、一部を問わず、サイオス テクノロジー株式会社の許可なく本書を複製、転用、転載、公衆への送信、販売、翻案そ の他の⼆次利用をすることはいずれも禁止されます。またコンテンツの改変、削除につい ても一切認められません。
本書では、製品名、ロゴなど、他社が保有する商標もしくは登録商標を使用しています。
サイオステクノロジー株式会社
〒106-0047 東京都港区南麻布2-12-3 サイオスビル 電話: 03-6401-5111