本シリーズの概要と一覧はこちらからどうぞ。
上の記事で紹介したGrid Infrastructureのインストール方法に関して、レスポンスファイルを使ってサイレントインストールするのを試してみたのでその方法を紹介しようと思います。
レスポンスファイルを使用してGrid Infrastructureをインストールする
事前準備
OUIを使ったインストールではインストールウィザードの途中でASMTool(asmtoolg.exe)を使ってASMディスクのスタンプ付けを行いましたが、レスポンスファイルを使ったインストールではそれができません。
このため、事前にASMToolを使いディスクのスタンプ付けをしておく必要があります。
今回はサイレントインストールですのでCUIのasmtool.exe
を使った方法を採ることにします。
asmtool.exe
はGrid Infrastructureのインストール前は[インストール媒体]\asmtool
フォルダに存在し、今回の検証環境だとD:\Temp\grid\asmtool\
になります。
このASMToolを使って以下の様にスタンプ付けしていきます。
まずはasmtool.exe -list
でディスクの状態を確認。
PS C:\Users\oracle> D:\Temp\grid\asmtool\asmtool.exe -list NTFS \Device\Harddisk0\Partition1 350M NTFS \Device\Harddisk0\Partition2 20480M NTFS \Device\Harddisk0\Partition3 20480M \Device\Harddisk1\Partition1 10237M \Device\Harddisk2\Partition1 30717M
OCR用のDisk1(\Device\Harddisk1\Partition1
)に対してORCLDISKOCR0
とスタンプ付けします。
PS C:\Users\oracle> D:\Temp\grid\asmtool\asmtool.exe -add \Device\Harddisk1\Partition1 ORCLDISKOCR0
ディスクの状態を再度確認。
PS C:\Users\oracle> D:\Temp\grid\asmtool\asmtool.exe -list NTFS \Device\Harddisk0\Partition1 350M NTFS \Device\Harddisk0\Partition2 20480M NTFS \Device\Harddisk0\Partition3 20480M ORCLDISKOCR0 \Device\Harddisk1\Partition1 10237M \Device\Harddisk2\Partition1 30717M
サイレントインストール手順
レスポンスファイルを用意して(ファイルの内容は長いので次項で説明します)、OUIを以下の引数で実行するとサイレントインストールすることができます。
PS D:\Temp\grid> .\setup.exe -silent -showProgress -nowait -responseFile D:\Temp\grid\grid.rsp
各引数について説明すると、
-silent
および-responseFile
でレスポンスファイルを指定してサイレントインストールすることができます。- レスポンスファイルのファイル指定は相対パスが指定できないので注意してください。
-nowait
をつけないとサイレントインストール後にプロンプトが終了しないので注意してください。-showProgress
でサイレントインストールの進捗状況を表示することができます。この引数はオプションです。
といった感じになります。
インストール結果はC:\Users\[インストールユーザー]\AppData\Local\Temp\[連番]\OraInstall[時刻]
およびC:\Program Files\Oracle\Inventory\logs
フォルダにログファイルができるのでそこで確認することができます。
サイレントインストールが完了した後はcrsctl stat res -t
でクラスタの状態を確認すると以下の様になり通常のインストールと同様の結果が得られることがわかります。
PS C:\Users\oracle> crsctl stat res -t -------------------------------------------------------------------------------- Name Target State Server State details -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.LISTENER.lsnr ONLINE ONLINE oraserver01 STABLE ONLINE ONLINE oraserver02 STABLE ora.OCR.dg ONLINE ONLINE oraserver01 STABLE ONLINE ONLINE oraserver02 STABLE ora.asm ONLINE ONLINE oraserver01 Started,STABLE ONLINE ONLINE oraserver02 Started,STABLE ora.net1.network ONLINE ONLINE oraserver01 STABLE ONLINE ONLINE oraserver02 STABLE ora.ons ONLINE ONLINE oraserver01 STABLE ONLINE ONLINE oraserver02 STABLE -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE oraserver02 STABLE ora.LISTENER_SCAN2.lsnr 1 ONLINE ONLINE oraserver01 STABLE ora.LISTENER_SCAN3.lsnr 1 ONLINE ONLINE oraserver01 STABLE ora.MGMTLSNR 1 ONLINE ONLINE oraserver01 192.168.35.31,STABLE ora.cvu 1 ONLINE ONLINE oraserver01 STABLE ora.mgmtdb 1 ONLINE ONLINE oraserver01 Open,STABLE ora.oc4j 1 ONLINE ONLINE oraserver01 STABLE ora.oraserver01.vip 1 ONLINE ONLINE oraserver01 STABLE ora.oraserver02.vip 1 ONLINE ONLINE oraserver02 STABLE ora.scan1.vip 1 ONLINE ONLINE oraserver02 STABLE ora.scan2.vip 1 ONLINE ONLINE oraserver01 STABLE ora.scan3.vip 1 ONLINE ONLINE oraserver01 STABLE --------------------------------------------------------------------------------
レスポンスファイル例
レスポンスファイル例を一番最後に記載しました。
これはAll Windows Serverな環境でOracle Real Application Clusters(RAC)を構築してみる - 4.GIインストール編 - しばたテックブログの手順でレスポンス・ファイルの保存
を行ったものをベースとしています。
自動生成されたベースに対して以下の点をカスタマイズしています。
自動生成されたレスポンスファイルにはパスワードは保存されないので以下のパスワードを設定しています。
- Oracleホーム・ユーザーのパスワード :
oracle.install.OracleHomeUserPassword=P@ssw0rd
- SYSASMユーザーのパスワード :
oracle.install.asm.SYSASMPassword=Passw0rd
- ASMSNMPユーザーのパスワード :
oracle.install.asm.monitorPassword=Passw0rd
- Oracleホーム・ユーザーのパスワード :
GUIのインストールでは未使用のNIC名称に日本語が含まれていても問題ないのですが、サイレントインストールの場合はエラーとなってしまいます。
必要に応じてoracle.install.crs.config.networkInterfaceList
の内容を修正してください。その他の部分を変更する場合はレスポンスファイルの説明を読むかマニュアルを読むなどして気合でなんとかします。
GUIから自動生成されればさほど困難なことはないかとは思います。