Sun Cluster Data Service for Oracle Real Application Clusters ガイド (Solaris OS 版)

Oracle Real Application Clusters データベース用の Solaris Volume Manager for Sun Cluster にマルチオーナーディスクセットを作成する

  1. マルチオーナーディスクセットを作成します。

    これには metaset(1M) コマンドを使用します。


    # metaset -s setname -M -a -h nodelist
    
    -s setname

    作成するディスクセットの名前を指定します。

    -M

    作成するディスクセットがマルチオーナーディスクセットであることを意味します。

    -a

    -h オプションで指定するノードをディスクセットに追加することを意味します。

    -h nodelist

    ディスクセットに追加するノードをスペースで区切って指定します。Sun Cluster Support for Oracle Real Application Clusters ソフトウェアパッケージは、このリストの各ノードにインストールする必要があります。

  2. 手順 1 で作成したディスクセットに広域デバイスを追加します。


    # metaset -s setname -a devicelist
    
    -s setname

    手順 1 で作成したディスクセットを変更します。

    -a

    devicelist で指定するデバイスをディスクセットに追加することを意味します。

    devicelist

    ディスクセットに追加する広域デバイスの完全なデバイス ID パス名をスペースで区切って指定します。各デバイスにクライアントのどのノードからでもアクセスできるためには、デバイス ID パス名の形式が /dev/did/dsk/d N になっていなければなりません。N はデバイス番号です。

  3. 手順 1 で作成したディスクセットに対して、Oracle Real Application Clusters データベースで使用するボリュームを作成します。


    注 –

    Oracle データファイル用のボリュームを多数作成する場合は、ソフトパーティションを使うとこのステップが簡単になります。詳細は、『Solaris ボリュームマネージャの管理』の「ソフトパーティション (概要)」と『Solaris ボリュームマネージャの管理』の「ソフトパーティション (作業)」を参照してください。


    手順 2 で追加した広域デバイス上のスライスを連結してそれぞれのボリュームを作成します。これには metainit(1M) コマンドを使用します。


    # metainit -s setname volume-abbrev numstripes width slicelist
    
    -s setname

    手順 1 で作成したディスクセットに対してボリュームを作成します。

    volume-abbrev

    作成するボリュームの省略名を指定します。省略名の形式は d V で、V はボリューム番号です。

    numstripes

    ボリュームに作成するストライプの数を指定します。

    width

    各ストライプに作成するスライスの数を指定します。width に 1 より大きい数を指定すると、スライスはストライプ化されます。

    slicelist

    ボリュームに組み込むスライスをスペースで区切って指定します。それぞれのスライスは、手順 2 で追加した広域デバイス上になければなりません。

  4. 各ノードがマルチオーナーディスクセットに正しく追加されているか確認します。

    これには metastat(1M) コマンドを使用します。


    # metastat -s setname
    
    -s setname

    手順 1 で作成したディスクセットの構成を確認します。

    このコマンドを実行すると、ディスクセットに正しく追加されているノードごとに、次の情報を示す表が表示されます。

    • Host 列にはノード名が表示されます。

    • Owner 列には、multi-owner という文字が表示されます。

    • Member 列には、Yes という文字が表示されます。

  5. マルチオーナーディスクセットが正しく構成されているか確認します。


    # scconf -pvv | grep setname
    
    setname

    手順 1 で作成したディスクセットの構成情報だけを表示します。

    このコマンドを実行すると、ディスクセットのデバイスグループ情報が表示されます。マルチオーナーディスクセットの場合、デバイスグループタイプは Multi-owner_SVM です。

  6. マルチオーナーディスクセットのオンライン状態を確認します。


    # scstat -D
    

    このコマンドを実行すると、オンラインになっている、マルチオーナーディスクセット内のノードの名前が表示されます。

  7. そのディスクセットを所有する可能性のある個々のノードで、手順 3 で作成した各ボリュームの所有権を次のように変更します。

    • 所有者:oracle

    • グループ:dba

    所有権を変更するのは、Oracle Real Application Clusters データベースが使用するボリュームだけにしてください。


    # chown oracle:dba volume-list
    
    volume-list

    そのディスクセットに対して作成したボリュームの論理名をスペースで区切って指定します。論理名の形式は、ボリュームが存在するデバイスのタイプによって異なります。

    • ブロックデバイスの場合:/dev/md/ setname/dsk/dV

    • raw デバイスの場合:/dev/md/ setname/rdsk/dV

    これらの論理名の変数の意味は次のとおりです。

    setname

    手順 1 で作成したマルチオーナーディスクセットの名前です。

    V

    手順 3で作成したボリュームのボリューム番号です。

    このリストには、手順 3 で作成したボリュームを指定する必要があります。

  8. ディスクセットを所有する可能性のある各ノードで、手順 7 で所有権を変更したボリュームごとに、読み取りアクセス権と書き込みアクセス権を oracle ユーザーに付与します。

    アクセス権を変更するのは、Oracle Real Application Clusters データベースが使用するボリュームだけにしてください。


    # chmod u+rw volume-list
    
    volume-list

    oracle ユーザーに読み取りアクセス権と書き込みアクセス権を付与するボリュームの論理名をスペースで区切って指定します。このリストには、手順 7 で指定したボリュームを指定する必要があります。


例 1–3 Solaris Volume Manager for Sun Cluster にマルチオーナーディスクセットを作成する

この例では、Solaris Volume Manager for Sun Cluster にマルチオーナーディスクセットを作成します。この例では、すべてのボリュームが raw デバイス上にあることを想定します。

  1. 次のコマンドを実行して、マルチオーナーディスクセットを作成します。


    # metaset -s racdbset -M -a -h rachost1 rachost2 rachost3 rachost4
    

    マルチオーナーディスクセットに racdbset という名前を付けます。このディスクセットにノード rachost1rachost2rachost3rachost4 を追加します。

  2. 次のコマンドを実行して、ディスクセットに広域デバイス /dev/did/dsk/d0 を追加します。


    # metaset -s racdbset -a /dev/did/dsk/d0
    
  3. 次のコマンドを実行して、ディスクセットに対してボリュームを作成します。


    # metainit -s racdbset d0 1 1 /dev/did/dsk/d0s0 
    

    ボリュームには d0 という名前を付けます。このボリュームは、スライス /dev/did/dsk/d0s0 を 1 対 1 で連結したものです。スライスはストライプ化されません。

  4. 次のコマンドを実行して、各ノードがマルチオーナーディスクセットに正しく追加されているか確認します。


    # metastat -s racdbset
    Multi-owner Set name = racdbset, Set number = 1, Master = rachost2
    
    Host                Owner          Member
       rachost1           multi-owner   Yes
       rachost2           multi-owner   Yes
       rachost3           multi-owner   Yes
       rachost4           multi-owner   Yes
    
    Drive Dbase
    
    d6    Yes
    
    d10   Yes
  5. 次のコマンドを実行して、マルチオーナーディスクセットが正しく構成されているか確認します。


    # scconf -pvv | grep racdbset
    Device group name:                                 racdbset
       (racdbset) Device group type:                       Multi-owner_SVM
       (racdbset) Device group failback enabled:           no
       (racdbset) Device group node list:       rachost1, rachost2, rachost3, rachost4
       (racdbset) Device group ordered node list:          no
       (racdbset) Device group desired number of secondaries: 0
       (racdbset) Device group diskset name:               racdbset
  6. 次のコマンドを実行して、マルチオーナーディスクセットのオンライン状態を確認します。


    # scstat -D
    
    -- Device Group Servers --
    
                              Device Group        Primary             Secondary
                              ------------        -------             ---------
    
    
    -- Device Group Status --
    
                                   Device Group        Status
                                   ------------        ------
    
    
    -- Multi-owner Device Groups --
    
                                   Device Group        Online Status
                                   ------------        -------------
       Multi-owner device group:   racdbset            rachost1,rachost2,rachost3,rachost4
  7. 次のコマンドを実行して、ディスクセット内のボリュームの所有権をグループ dba のオーナー oracle に変更します。


    # chown oracle:dba /dev/md/racdbset/rdsk/d0
    

    このコマンドは、ディスクセットを所有する可能性のあるすべてのノードで実行する必要があります。

  8. 次のコマンドを実行して、ディスクセット内のボリュームへの読み取りアクセス権を oracle ユーザーに付与します。


    # chmod u+rw /dev/md/racdbset/rdsk/d0
    

    このコマンドは、ディスクセットを所有する可能性のあるすべてのノードで実行する必要があります。