3 Oracle ASMLIBの構成

警告:

Oracle Linux 7は現在延長サポート中です。詳細は、Oracle Linux拡張サポートおよびOracleオープン・ソース・サポート・ポリシーを参照してください。

できるだけ早くアプリケーションとデータをOracle Linux 8またはOracle Linux 9に移行してください。

次の手順は、Oracle LinuxでのASMLIBの初期構成のガイドラインです。詳細は、次のOracle Databaseのドキュメントを参照してください。

重要:

ASMLIB構成に対する変更は、すぐには有効になりません。ASMLIBの再構成時に、データベースおよびすべての関連プロセスを停止してください。通常、変更は、次のシステム再起動後に有効になります。

ASMLIB構成の初期化

インストール後、管理ユーティリティ/usr/sbin/oracleasmを使用して、ASMLIBソフトウェアを構成し、起動時にディスクをスキャンします。

ASMLIB構成ファイルは/etc/sysconfig/oracleasmで読み取ることができますが、このファイルが常に正しく構成されるように、常にoracleasm configureを使用して構成パラメータを変更することをお薦めします。対話型(-i)オプションは通常、ライブラリを初めて構成するために使用されます。

  • 構成ユーティリティを対話モードで実行して、構成を初期化します。
    sudo oracleasm configure -i

    初めて実行する場合、oracleasm configureユーティリティは、ASMLIBを使用する権限を割り当てるユーザーIDとグループIDなど、一連の質問をします。

    Oracle Databaseがoracleユーザーおよびdbaグループとして実行されるように構成されている場合、出力は次のようになります。

    Configuring the Oracle ASM library driver.
     
    This will configure the on-boot properties of the Oracle ASM library
    driver.  The following questions will determine whether the driver is
    loaded on boot and what permissions it will have.  The current values
    will be shown in brackets ('[]').  Hitting  without typing an
    answer will keep that current value.  Ctrl-C will abort.
    
    Default user to own the driver interface []: oracle
    Default group to own the driver interface []: dba
    Start Oracle ASM library driver on boot (y/n) [y]: y
    Scan for Oracle ASM disks on boot (y/n) [y]: y
    Writing Oracle ASM library driver configuration: done
  • oracleasmサービスを有効にして起動します。

    ASMLIBの構成が終了したら、oracleasmサービスを有効化して起動します。

    sudo systemctl enable --now oracleasm

ディスクをASMLIBで使用可能にする

Oracle DatabaseがASMLIBを使用してアクセスするすべてのディスクにラベルを付ける必要があります。このトピックでは、ASMディスク・ラベルの作成方法、検証方法およびラベルの削除方法について説明します。

次のコマンドは、ディスクをスキャンし、ASMディスク・ラベルを作成する方法を示しています。ディスク・ラベルの表示および照会を実行したり、削除したりするための手順も提供されています。

  1. oracleasm scandisksコマンドを使用して、システムに接続されているすべてのブロック・デバイスでASMディスク・ラベルをスキャンし、検出されたASMディスクをASMで使用できるようにします。
    sudo oracleasm scandisks

    出力は次のようになります。

    Reloading disk partitions: done
    Cleaning any stale ASM disks...
    Scanning system for ASM disks...
  2. oracleasm creatediskコマンドを使用して、ディスクにラベルを付けます。
    sudo oracleasm createdisk VOL1 /dev/sdg1

    次のような出力結果が表示される場合があります。

    Writing disk header: done
    Instantiating disk: done
  3. oracleasm listdisksコマンドを使用して、既存のディスク・ラベルを表示します。
    sudo oracleasm listdisks

    出力は次のようになります。

    VOL1
    VOL2
    VOL3
  4. oracleasm querydiskコマンドを使用して、ディスク・デバイスにラベルがあるかどうかを確認します。
    sudo oracleasm querydisk /dev/sdg1

    デバイスにASMディスクのラベルが付いていない場合は、次の出力が表示されます。

    Device "/dev/sdg1" is not marked as an ASM disk
    デバイスにASMディスクのラベルが付いている場合、出力は次のようになります。
    Device "/dev/sdg1" is marked an ASM disk with the label "VOL1"
    ASMディスク・ラベルを問い合せて、ラベルが有効かどうかを確認することもできます。次に例を示します。
    sudo oracleasm querydisk VOL1
  5. oracleasm deletediskコマンドを使用して、ディスクからASMラベルを削除します。
    sudo oracleasm deletedisk VOL1

    次のような出力結果が表示される場合があります。

    Clearing disk header: done
    Dropping disk: done

ディスクの可用性の構成が終了したら、ディスクがASMに表示されていることを確認できます。「検出文字列を使用したASMディスクの表示の検証」を参照してください。

ASMLIB構成ステータスの確認

oracleasm statusコマンドを使用して、ASMLIB構成のステータスを表示します。このコマンドは、問題の特定に役立ち、有効になっている機能を表示できます。

  • oracleasm statusを実行して、現在の構成ステータスを表示します。
    sudo oracleasm status
    次の出力例は、UEK R6を実行しているシステムから取得されます。
    Checking if the oracleasm kernel module is loaded: yes
    Checking if /dev/oracleasm is mounted: yes
    
    次のチェックが実行されます。
    • oracleasmカーネル・モジュールがロードされているかどうかを確認します。

    • /dev/oracleasmがマウントされているかどうかを確認します。

検出文字列を使用したASMディスクの表示の検証

ASMでは、検出文字列を使用して、システムにアタッチされているラベル付きASMディスクのうち、どのディスクをOracle Databaseインスタンスで使用できるかを記述します。

oracleasm-discoverコマンドを使用して、ASM検出文字列を検証し、関連するASMディスクの特性を表示します。

  • システム上のすべてのASMディスクをリストします。
    sudo oracleasm-discover

    次のような出力結果が表示される場合があります。

    Using ASMLib from /opt/oracle/extapi/64/asm/orcl/1/libasm.so
    [ASM Library - Generic Linux, version 2.0.16 (KABI_V2)]
    Discovered disk: ORCL:DB1 [1044162 blocks (534610944 bytes), blksz 512/512, maxio 524288 bytes, integrity none]
    Discovered disk: ORCL:DB2 [1044162 blocks (534610944 bytes), blksz 512/512, maxio 524288 bytes, integrity none]
    Discovered disk: ORCL:VOL1 [1044162 blocks (534610944 bytes), blksz 512/512, maxio 524288 bytes, integrity none]
    Discovered disk: ORCL:VOL2 [1044162 blocks (534610944 bytes), blksz 512/512, maxio 524288 bytes, integrity none]
  • ラベルが"VOL"で始まるすべてのASMディスクをリストします。
    sudo oracleasm-discover ORCL:VOL\*

    次のような出力結果が表示される場合があります。

    Using ASMLib from /opt/oracle/extapi/64/asm/orcl/1/libasm.so
    [ASM Library - Generic Linux, version 2.0.16 (KABI_V2)]
    Discovered disk: ORCL:VOL1 [1044162 blocks (534610944 bytes), blksz 512/512, maxio 524288 bytes, integrity none]
    Discovered disk: ORCL:VOL2 [1044162 blocks (534610944 bytes), blksz 512/512, maxio 524288 bytes, integrity none]