Oracle ASM Cluster File System(Oracle ACFS)の管理

このチュートリアルでは、Oracle ASM Cluster File System(Oracle ACFS)を作成して管理する方法について説明します。

約1時間

トピック

このチュートリアルでは、以下のトピックについて説明します。

このアイコンの上にカーソルを置くと、すべてのスクリーンショットがロードし、表示されます。 (警告:この操作によって、同時にすべてのスクリーンショットがロードされるため、ご使用のインターネット接続によっては応答時間が遅くなる場合があります。)

注:各手順に関連したスクリーンショットのみを表示する場合は、それぞれの手順にある各アイコンの上にカーソルを置いてください。

概要

このチュートリアルでは、配布されたユーティリティを使用して、Oracle Database 11g Release 2でOracle ASM Cluster File System(Oracle ACFS)を構成し、管理する方法について説明します。

このチュートリアルでは特に、Oracle ASM動的ボリュームの作成、Oracle ACFSの管理、スナップショット機能の使用について重点的に説明します。 また、対応するユーティリティのデモを実行します。

トピック・リストに戻る

Oracle Database 11g Release 2データベースは、すでにインストールされています。 また、Oracle Grid Infrastructureもインストールされており、ASMインスタンスも構成済みです。

トピック・リストに戻る

前提条件

このチュートリアルを始める前に次のことを確認してください。

1.

OBE『スタンドアロン・サーバーへのOracle Grid Infrastructureのインストール』の"Oracle Enterprise Manager Database ControlでOracle ASMを管理するよう構成"というトピックまで完了している必要があります。

このチュートリアルは、上記に挙げたOBEに含まれる以下の条件を前提としています。

  • Grid Infrastructureがインストールされていること
  • Oracle ASMが3~500MBのASMディスクから成るDATAという名前のディスクグループで構成されていること
  • 500MBの追加ディスクをASMディスク候補として使用できること
  • Enterprise Manager Database ControlでOracle ASMを管理するよう構成されていること
  • データベースがASMディスクグループに1つ以上の表領域でインストールされていること
  • Oracle Restartがorclインスタンス、ASMインスタンス、LISTENER、LISTENERASMを再起動するよう構成されていること
2.

トピック・リストに戻る

Oracle ASM Cluster File System(Oracle ACFS)の作成

Oracle ASM Cluster File System(Oracle ACFS)は、Oracle Database 11g Release 2の新機能です。Oracle ACFSは、標準OSユーティリティによってアクセスできる一般ファイル・システムとして設計されていますが、クラスタ環境でも単一サーバーでも使用できます。 Oracle ACFSの作成は、ASM動的ボリュームを作成し、それをOSにマウントすることによって行います。 ACFSファイル・システムを使用するにあたっては、4つのドライバをロードすることが必要です。 これらのドライバは、Linuxでは、oracleasm(ASMモジュール)、oracleadvm(ASM動的ボリューム・マネージャ・モジュール)、oracleoks(カーネル・サービス・モジュール)、oracleacfs(ASMファイル・システム・モジュール)となります。 これらのモジュールはインストール時にロードされますが、Oracle Restartには含まれません。

このトピックでは、複数のツールを使用して操作を実行します。

ACFSドライバ・モジュールの構成

ASMボリュームの管理
Oracle ACFSのマウント
Enterprise Managerを使用したボリュームの作成とOracle ACFSのマウント

トピック・リストに戻る

ACFSドライバを構成するには、以下の手順を実行します。

1.

ターミナル・ウィンドウを開いて、root OSユーザーになります。 su - rootコマンドを使用します。

 

2.

rootユーザーとして、必要なモジュールがロードされているかどうか確認します。 必要なモジュールは、oracleasm、oracleadvm、oracleoks、oracleacfsです。 次のコマンドを実行すると、OSで使用可能なすべてのモジュールが表示されます。

lsmod

3.

サーバーを再起動します。 次のコマンドを使用します。

reboot

 

4.

ターミナル・ウィンドウを開いて、root OSユーザーになります。 su - rootコマンドを使用します。

 

5.

rootユーザーとして、必要なモジュールがロードされているかどうか確認します。次のコマンドを実行すると、OSで使用可能なすべてのモジュールが表示されます。 ASMインスタンスはOracle Restartによって自動的に再起動されているものの、oracleasmモジュールのみがロードされていることに注目してください。

lsmod

 

6.

次のコマンドを使用して、ACFSドライバに必要なモジュールを手動でロードします。

/u01/app/grid/product/11.2.0/grid/bin/acfsload start -s

7.

起動時にACFSモジュールをロードする初期化スクリプトを構成します。 /etc/init.dディレクトリで、任意のエディタを使用してacfsloadという名前のファイルを作成します。

gedit /etc/init.d/acfsload

このファイルには、runlevel構成とacfsloadコマンドが保存されます。 ファイルに次の行を配置します。

#!/bin/sh

# chkconfig: 2345 30 21
# description: Load Oracle ACFS drivers at system boot

/u01/app/grid/product/11.2.0/grid/bin/acfsload start -s

ファイルを保存して、エディタを終了します。

 

8.

次のコマンドを使用して、rootユーザーが実行できるようにacfsloadスクリプトの権限を変更します。

chmod u+x /etc/init.d/acfsload

 

9.

runlevelディレクトリのrc2.d、rc3.d、rc4.d、rc5.dにリンクを作成します。 chkconfigコマンドを使用して、構成を追加して確認します。

chkconfig --add acfsload

chkconfig --list acfsload

 

10.

再起動して、ACFSドライバがロードされていることを確認します。

reboot

 

11.

ターミナル・ウィンドウを開いて、root OSユーザーになります。 su - rootコマンドを使用します。

 

12.

rootユーザーとして、必要なモジュールがロードされているかどうか確認します。次のコマンドを実行すると、OSで使用可能なすべてのモジュールが表示されます。

lsmod

exit

トピックに戻る

ASMボリュームを管理するには、以下の手順を実行します。

1.

ターミナル・ウィンドウで、oracle OSユーザーとして、 oraenvスクリプトを使用して、+ASMインスタンスの環境を設定します。 ORACLE_SIDの入力を要求されたら、+ASMと入力します。

. oraenv

 

2.

SQL*Plusを使用し、sysasmとして接続します。次のコマンドを使用して、ASMボリュームを作成します。

sqlplus / as sysasm

SQL> ALTER DISKGROUP data ADD VOLUME volume1 SIZE 400M;

3.

SQL* Plusを使用して、ASMボリュームのプロパティを表示します。

SQL> SET PAGESIZE 100

SQL> SELECT * FROM V$ASM_VOLUME;

SQL> EXIT

 

4.

ASMCMDユーティリティを使用して、次のコマンドで100MBのASMボリュームを作成します。

asmcmd

ASMCMD> volcreate -G DATA -s 100M volume2

 

5.

ASMボリュームのプロパティを表示して、ボリューム・サイズを確認します。 ASMCMDコマンドを使用します。

ASMCMD> volinfo -a

ASMCMD> exit

 

6.

コマンドライン・モードでASMCMDコマンドを使用して、ASMボリュームのVOLUME2を削除します。

asmcmd voldelete -d DATA volume2

 

トピックに戻る

Oracle ACFSをマウントするには、以下の手順を実行します。

1.

ターミナル・ウィンドウで、oracle OSユーザーとして、マウント・ポイントとして使用するディレクトリを作成します。 マウント・ポイントは、ORACLE_BASE/acfsdataディレクトリの下に作成します。 この演習では、次のコマンドを使用して、orabin、images、miscの3つのディレクトリを作成します。

mkdir -p /u01/app/oracle/acfsdata/orabin

mkdir -p /u01/app/oracle/acfsdata/images

mkdir -p /u01/app/oracle/acfsdata/misc

 

2.

rootユーザーとして、OSコマンドを使用して、ASMボリューム1の/u01/app/oracle/acfsdata/orabinマウント・ポイントにACFSファイル・システムを作成します。 デバイス名は、先ほど説明したvolinfoコマンドの出力に表示されています。 ボリューム名の拡張子は、先ほどのスクリーンショットのように'-##'となります。

su - root

mkfs -t acfs -b 4k /dev/asm/volume1-###

 

3.

rootユーザーとして、次のOSコマンドを使用してACFSファイル・システムをマウントします。

mount -t acfs /dev/asm/volume1-<###> /u01/app/oracle/acfsdata/orabin

 

4.

次のOSコマンドを使用して、ボリュームがマウントされたことを確認します。

df -h

 

5.

Oracle ACFSマウント・レジストリは、Oracle Restart構成でサポートされていますが、Oracle ACFS登録ファイル・システムを自動的にマウントしません。 しかし、1つのmountコマンドで、Oracle ACFSマウント・レジストリにリストされているすべてのOracle ACFSファイル・システムをマウントできます (ACFSマウント・レジストリはクラスタ構成でサポートされており、ACFSボリュームをクラスタ全体のマウント・ポイントに自動的にマウントします)。

次のコマンドを使用して、ACFS volume1をACFSマウント・レジストリに登録し、automountに代わる方法を有効にします。 ボリューム名の拡張子を、先ほどのコマンドに合わせて変更してください。

acfsutil registry -a /dev/asm/volume1-<###> /u01/app/oracle/acfsdata/orabin

exit

注:リブート後、またはOracle ASMの再起動後は、ACFSマウント・レジストリに登録されているACFSボリュームを、rootユーザーとして1つのコマンドを実行するだけでマウントできます。

mount –t acfs –o all none  none

 

トピックに戻る

Enterprise Managerを使用してボリュームを作成し、Oracle ACFSをマウントするには、以下の手順を実行します。

1.

oracle OSユーザーとして、ターミナル・ウィンドウを開きます。 oraenvスクリプトを使用して、orclインスタンスの環境を設定します。 ORACLE_SIDの入力を要求されたら、orclと入力します。

. oraenv

 

2.

次のコマンドを使用して、Enterprise Manager Database Controlを起動します。

emctl start dbconsole

 

3.

https://localhost:1158/emというURLを入力して、ブラウザでEnterprise Manager Database Controlにアクセスし、ログインします。

  • User Name:SYS
  • Password: <sys_password>
  • Connect as: SYSDBA

 

4.

Database HomeページのGeneralセクションで、ASMの以下のリンクをクリックします。 +ASM.example.com

 

5.

Automatic Storage Management: +ASM.example.comページで、「ASM Cluster File System」タブをクリックします。

 

6.

Automatic Storage Management Loginページで、以下を入力します。

  • Username:SYS
  • Password:<sys_password>
  • Login」をクリックします。

 

7.

ASM Cluster File Systemページで、「Create」をクリックします。

 

8.

Create ASM Cluster File Systemページで、「Create ASM Volume」をクリックします。

 

9.

Create ASM Volumeページで、以下のボリュームを作成します。

  • Volume:Volume3
  • Disk Group:DATA
  • Size:100 MB

OK」をクリックします。

 

10.

Create ASM Cluster File Systemページで、ボリュームにラベルを付けます。

  • Volume Label:IMAGES
  • Mount Point:/u01/app/oracle/acfsdata/images
  • OK」をクリックします。

 

11.

ASM Cluster File System Host Credentials: host01.example.comページで、ASMインスタンス管理者のユーザー名とパスワードを入力します。

  • Username:oracle
  • Password:<your_password>

 

12.

Automatic Storage Management: +ASM.example.comページに、確認メッセージが表示されます。

  • VOLUME3」(マウント解除されたボリューム)を選択します。
  • Mount」をクリックします。

 

13.

Mount ASM Cluster File System: /dev/asm/volume3-<##>ページで、マウント・ポイントを入力します。

  • Mount Point:/u01/app/oracle/acfsdata/images
  • Generate Command」をクリックします。

14.

Show Commandページに、ACFSファイル・システムをマウントするコマンドが表示されます。 このコマンドはrootユーザーとして実行する必要があるため、ターミナル・ウィンドウを開いてrootユーザーになります。 rootウィンドウに表示されているコマンドを貼り付けて実行します。 コマンドは次のとおりです。

/bin/mount -t acfs -rw /dev/asm/volume3-<##> /u01/app/oracle/acfsdata/images

rootウィンドウは次のように表示されます。

rootウィンドウを終了します。

Show Commandページで、「Return」をクリックします。

Mount ASM Cluster File System: /dev/asm/volume3-<##>ページで、「Return」をクリックします。

 

15.

Automatic Storage Management: +ASM.example.comページに、マウントされたファイル・システムが表示されます。 2つのファイル・システムがマウントされているはずです。

 

トピックに戻る

トピック・リストに戻る

ACFSファイル・システムの管理

このトピックでは、ACFSファイル・システムを使用し、作成したファイル・システムにファイルを作成します。 ACFSファイル・システムは汎用ファイル・システムのため、ファイル・システムのすべてのOSコマンドを使用できます。 この演習では、ORACLE_HOMEディレクトリの一部をACFSファイル・システムに移動します。 Oracle ACFS内のGrid Infrastructureのホーム・ディレクトリや/ (root)ディレクトリは、サポートされていません。

スナップショットや動的ボリューム・サイズの変更など、Oracle ACFSの高度な機能を使用します。

ボリューム・サイズの変更

ACFSファイル・システムでのOSコマンドの使用

トピック・リストに戻る

ASMボリュームのサイズを変更するには、以下の手順を実行します。

このトピックでは、ASMディスクグループにディスクを追加して、VOLUME1 ASMボリュームのサイズを増加します。

1.

Enterprise Manager Database Controlを使用します。 データベースのホームページへ移動します。 「Database」タブをクリックします。

Homeページで、「+ASM.example.com」リンクをクリックします。

 

2.

Automatic Storage Management: +ASM.example.comページで、「Disk Groups」タブをクリックします。

 

3.

Disk Groupsタブで、「DATA」ディスクグループ・リンクをクリックします。 「Add」をクリックします。

 

4.

Add Disksページで、Path ORCL:DATA4のあるディスクを選択します。 「OK」をクリックします。

 

5.

Used(%)は、最初は分散されていません。

約1分後にブラウザの「Refresh」ボタンをクリックして、ディスクグループがリバランスされていることを確認してください。

このページの左上の「breadcrumb」をクリックして、Automatic Storage Management: +ASM.example.comページに戻ります。

 

6.

Automatic Storage Management: +ASM.example.comページで、「ASM Cluster File System」タブをクリックします。

 

7..

ASM Cluster File Systemタブで、次の手順を実行します。

  • /u01/app/oracle/acfsdata/orabin」マウント・ポイントを選択します。
  • Actionsリストから「Resize」を選択します。
  • Go」をクリックします。

 

8

Resize ASM Cluster File System: /u01/app/oracle/acfsdata/orabinページで、ボリュームのサイズを800MBに変更します。 「OK」をクリックします。

     

9.

ASM Cluster File System Host Credentials: host01.example.comページで、ASMインスタンス管理者のユーザー名とパスワードを入力します。

  • Username:oracle
  • Password:<your_password>
  • Continue」をクリックします。

10.

Automatic Storage Management: +ASM.example.comページで、マウント・ポイント/u01/app/oracle/acsfdata/orabinのボリューム・サイズが1GBになっていることを確認します。 ASMボリューム・マネージャは、増分値256MBで領域を割り当てます。

トピックに戻る

ACFSファイル・システムでOSコマンドを使用するには、以下の手順を実行します。

1.

ACFSボリュームは、rootユーザーによってマウントされ、所有されています。 他のOSユーザーによる一般使用を許可するには、すべてのユーザーがイメージ・ディレクトリの読取り、書込み、実行を行えるように権限を変更します。次のコマンドを使用して、orabinディレクトリが権限755でoracle:oinstallに所有されるように権限を変更します。

su - root

chmod 777 /u01/app/oracle/acfsdata/images

chown oracle:oinstall /u01/app/oracle/acfsdata/orabin

chmod 755 /u01/app/oracle/acfsdata/orabin

exit

 

2.

oracleというOSユーザー名で、ターミナル・ウィンドウを開きます。 ファイルをIMAGES ACFSボリュームにコピーします。ディレクトリをイメージ・ディレクトリに変更し、コンテンツのリストを表示します。

cp /home/oracle/wkdir/acfs/images.zip /u01/app/oracle/acfsdata/images

ls /u01/app/oracle/acfsdata/images

 

3.

ディレクトリをイメージ・ボリュームに変更して、zipファイルからファイルを抽出します。

cd /u01/app/oracle/acfsdata/images

unzip images.zip

 

4.

イメージ・ファイルを表示し、閉じます。 Firefoxブラウザで、gifファイルを開きます。

  • ブラウザ・ボタンをクリックします。
  • file:///u01/app/oracle/acfsdata/images/gridInstall/asm.gifというURLを入力します。
  • ブラウザを閉じます。

 

5.

rootユーザーとして、/u01/app/oracle/product/11.2.0/dbhome_1/binディレクトリをACSFの/u0/app/oracle/acfsdata/orabinディレクトリにコピーします。

  • suコマンドを使用して、rootユーザーになります。
  • ディレクトリを/u01/app/oracle/product/11.2.0/dbhome_1ディレクトリに変更します。
  • 作業ディレクトリを確認します。
  • binのすべてのファイルを/u01/app/oracle/acfsdata/orabin保存権限にコピーします。

su - root

cd /u01/app/oracle/product/11.2.0/dbhome_1

pwd

cp -rp bin/* /u01/app/oracle/acfsdata/orabin

exit

 

6.

ターミナル・ウィンドウで、oracle OSユーザーとして環境をorclインスタンスに設定します。次のコマンドを使用して、Enterprise Manager Database Controlを停止します。

. oraenv

emctl stop dbconsole

7.

次のコマンドを使用して、orclインスタンスを停止します。

srvctl stop database -d orcl

 

8.

$ORACLE_HOME/binディレクトリを移動します。

mv $ORACLE_HOME/bin $ORACLE_HOME/bin.org

 

9.

元のORACLE_HOME/binからOracle ACFSのorabinディレクトリへのシンボリック・リンクを作成します。

ln -s /u01/app/oracle/acfsdata/orabin $ORACLE_HOME/bin

 

10.

Oracle ACFSのorabinディレクトリからSQL*Plusを使用してみます。

  • whichコマンドを使用して、パス内のどのディレクトリが使用されているか確認します。
  • Start sqlplus

which sqlplus

sqlplus / as sysdba

SQL> startup

SQL> exit

 

11.

次のコマンドを使用して、Enterprise Manager Database Controlを起動します。

emctl start dbconsole

トピックに戻る

トピック・リストに戻る

ACFSスナップショットの使用

このトピックでは、ACFSスナップショットを作成し、ファイルを削除して、スナップショットからファイルをリストアします。

ACFSスナップショットの作成

ACFSスナップショットからのリストア

トピック・リストに戻る

ACFSスナップショットを作成するには、以下の手順を実行します。

ACFSスナップショットは、acfsutilユーティリティまたはEnterprise Managerのいずれかで管理できます。 このトピックでは、両方の方法を紹介します。

1.

Enterprise Manager Database Controlを使用して、Automatic Storage Management: +ASM.example.comページに移動し、さらにASM Cluster File Systemタブに移動します。

  • /u01/app/oracle/acfsdata/images」ファイル・システムを選択します。
  • Create Snapshot」をクリックします。

 

2.

Create Snapshot on ASM Cluster File System: /u01/app/oracle/acfsdata/imagesページで、以下の手順を実行します。

  • Snapshot Nameにsnapshot_1と入力します。

  • Show Command」をクリックして、スナップショットを作成するacfsutilコマンドを表示します。

  • Return」をクリックします。
  • OK」をクリックします。
3.

ASM Cluster File System Host Credentials: host01.example.comページで、ASMインスタンス管理者のユーザー名とパスワードを入力します。

  • Username:oracle
  • Password:<your_password>
  • Continue」をクリックします。

 

4.

Automatic Storage Management: +ASM.example.comページで、/u01/app/oracle/acfsdata/imagesファイル・システムのスナップショット数が1になっていることを確認します。

 

5.

ターミナル・ウィンドウで、oracleユーザーとして、/u01/app/oracle/acfsdata/imagesディレクトリからasm.gifファイルを削除します。

rm /u01/app/oracle/acfsdata/images/gridInstall/asm.gif

 

6.

ターミナル・ウィンドウで、rootユーザーとして、acfsutilユーティリティで使用できるコマンドを表示します。

su - root

acfsutil -h

 

7.

/u01/app/oracle/acfsdata/imagesファイル・システムに、もう1つのスナップショットを作成します。 次のacfsutilコマンドを使用します。

acfsutil snap create snapshot_2 /u01/app/oracle/acfsdata/images

8.

OSコマンドを使用して、スナップショットを表示します。 各スナップショットには、スナップショット作成時に元のファイル・システムに存在したすべてのファイルが保存されています。ただし、そのブロックの領域を節約するため、スナップショットには元のファイル・システムから変更された内容が記録されます。 スナップショットには、ファイル・システムが変更を保持している元のブロックが保存されます。

ls -l /u01/app/oracle/acfsdata/images/.ACFS/snaps

exit

 

トピックに戻る

スナップショットからリストアするには、以下の手順を実行します。

まず、OSコマンドを使用してファイルをリストアし、Enterprise Managerを使用してスナップショット内のファイルを検索します。

1.

ターミナル・ウィンドウで、oracle OSユーザーとして、asm.gifが存在しないことを確認します。

cd /u01/app/oracle/acfsdata/images

ls gridInstall/asm.gif

 

2.

スナップショットを確認し、asm.gifファイルがリストア可能かどうか確認します。

ls .ACFS/snaps/*/gridInstall/asm.gif

SFPILEは+data/spfile.oraに存在

 

3.

asm.gifファイルを、snapshot_1から元の場所にコピーします。

cp .ACFS/snaps/snapshot_1/gridInstall/asm.gif gridInstall/asm.gif

 

4.

ブラウザでasm.gifファイルを表示します。 file:///u01/app/oracle/acfsdata/images/gridInstall/asm.gifというURLを入力します。

 

5.

Enterprise Manager Database Controlを使用して、snapshot_2のasm.gifファイルを検索します。

Enterprise Manager Database Controlを使用して、Automatic Storage Management: +ASM.example.comページに移動し、さらにASM Cluster File Systemタブに移動します。/u01/app/oracle/acfsdata/imagesファイル・システムのスナップショットのリンク(このファイル・システムのスナップショット数を表示)をクリックします。 要求されたら、ホスト資格証明を入力します。

 

6.

ASM Cluster File System: /u01/app/oracle/acfsdata/imagesページのSnapshotsタブで、「snapshot_2」をクリックします。

 

7.

Search and List: Directoryページで、以下の手順を実行します。

  • Search in Directoryに、/u01/app/oracle/acfsdata/images/.ACFS/snaps/snapshot_2/gridInstallと入力します。
  • File or Directory Nameに、asm.gifと入力します。
  • Go」をクリックします。

 

8.

ファイルが見つかりません。 snapshot_1を検索します。

Search and List: Directoryページで、以下の手順を実行します。

  • Search in Directoryを、/u01/app/oracle/acfsdata/images/.ACFS/snaps/snapshot_1/gridInstallに変更します。
  • Go」をクリックします。

これでファイルが見つかったため、OSコマンドを使用してリストアできます。

トピックに戻る

トピック・リストに戻る

OBE環境をこの演習の最初の状態に戻すために、以下の手順を実行します。

1.

すべてのウィンドウを閉じます。 ターミナル・ウィンドウを開き、rootユーザーとして次のコマンドを実行します。

su - root

/home/oracle/wkdir/acfs/cleanup.sh

 

2.

このOBEを再生したい場合は、リブートして最初のトピックに戻ってください。

このOBEを完了したら、OBE『スタンドアロン・サーバーへのOracle Grid Infrastructureのインストール』のクリーンアップのセクションを引き続き実行して、OBE環境のクリーンアップを完了します。

 

トピック・リストに戻る

このレッスンで学習した内容は次のとおりです。

トピック・リストに戻る

Oracle ASMとGrid Infrastructureのインストールについて、詳しくは以下を参照してください。

トピック・リストに戻る

このアイコンの上にカーソルを置くと、すべてのスクリーンショットが非表示になります。