Oracle® VM Server for SPARC 3.3 リリースノート

印刷ビューの終了

更新: 2015 年 10 月
 
 

一般的な問題

このセクションでは、Oracle VM Server for SPARC ソフトウェアの今回のリリースに関する一般的な既知の問題のうち、特定のバグ番号でカバーされないものについて説明します。回避方法がある場合は、一緒に記載しています。

移行を取り消したあと、ターゲットシステム上で実行されている ldm コマンドが一時的に応答しなくなる

ライブ移行を取り消した場合、ターゲットマシン上に作成されたドメインインスタンスのメモリーの内容をハイパーバイザが「スクラブする」必要があります。このスクラブ処理はセキュリティー上の理由から実行され、この処理を完了してからでないと、そのメモリーを空きメモリーのプールに返すことができません。このスクラブの進行中に、ldm コマンドが応答しなくなります。その結果、Logical Domains Manager がハングアップしているように見えます。

回復方法: ほかの ldm コマンドを実行しようとする前に、このスクラブリクエストが終了するまで待つ必要があります。この処理には長い時間がかかることがあります。たとえば、500G バイトのメモリーを備えたゲストドメインでは、この処理の完了に SPARC T4 サーバー上では最大 7 分、SPARC T3 サーバー上では最大 25 分かかることがあります。

SPARC M5-32 および SPARC M6-32: 複数の直接 I/O パス経由でアクセスできるディスクの問題

 

ldm add-vcpu コマンドを使用して CPU をドメインに割り当てると、Oracle Solaris OS が次のメッセージを表示してパニックを起こすことがあります。

panic[cpu16]/thread=c4012102c860: mpo_cpu_add: Cannot read MD

    このパニックは、次の条件が存在する場合に発生します。

  • ホストに追加の DCU が割り当てられている

  • ホストが、ホストに割り当てられているすべてのハードウェアを含まない、以前に保存された SP 構成を使用して起動されている

ldm add-vcpu 操作のターゲットドメインはパニックを起こしたドメインです。ドメインは、リブート時に、追加の CPU で回復します。

回避方法: ホストに割り当てられているハードウェアリソースより少ないリソースで生成された構成を使用しないでください。

問題を避けるには、問題の説明に示しているように、CPU を追加しないでください。または、次の手順を実行します。

  1. DCU の追加後に、新しい SP 構成を生成します。

    たとえば、次のコマンドは、new-config-more-dcus という構成を作成します。

    primary# ldm add-config new-config-more-dcus
  2. ドメインをシャットダウンします。

  3. ホストを停止します。

    -> stop /HOST
  4. ホストを起動します。

    -> start /HOST

すべての仮想機能を破棄してスロットをルートドメインに戻しても、ルートコンプレックスリソースが回復されない

 

すべての仮想機能を破棄し、スロットをルートドメインに返しても、ルートコンプレックス上のリソースは復元されません。

回復方法: ルートコンプレックスに関連付けられているすべての仮想 I/O リソースをそのルートドメインに返します。

最初に、制御ドメインで遅延再構成を実行します。

primary# ldm start-reconf primary

すべての子 PCIe スロットを、pci_0 バスを所有するルートドメインに返します。次に、pci_0 バス上のすべての子の仮想機能を削除して破棄します。

最後に、pci_0 バスの iov=off を設定し、ルートドメインをリブートします。

primary# ldm set-io iov=off pci_0
primary# shutdown -y -g 10

回避方法: 特定の PCIe バスに対する iov オプションを off に設定してください。

primary# ldm start-reconf primary
primary# ldm set-io iov=off pci_0

init-system が、保存した XML ファイルからゲストドメインに対する名前付きコアの制約を復元しない

 

ldm init-system コマンドを使用しても、保存した XML ファイルからゲストドメインに対する名前付き CPU コアの制約を復元できません。

回避方法: 次の手順を実行します。

  1. primary ドメイン用の XML ファイルを作成します。

    # ldm ls-constraints -x primary > primary.xml
  2. ゲストドメイン (複数可) 用の XML ファイルを作成します。

    # ldm ls-constraints -x domain-name[,domain-name][,...] > guest.xml
  3. システムの電源を再投入し、出荷時のデフォルト構成でブートします。

  4. XML 構成を primary ドメインに適用します。

    # ldm init-system -r -i primary.xml
  5. XML 構成をゲストドメイン (複数可) に適用します。

    # ldm init-system -f -i guest.xml

ドメインから多数の CPU を削除すると失敗することがある

ゲストドメインから多数の CPU を削除しようとすると、次のエラーメッセージが表示されることがあります。

Request to remove cpu(s) sent, but no valid response received
VCPU(s) will remain allocated to the domain, but might
not be available to the guest OS
Resource modification failed

回避方法: ゲストドメインから 100 個を超える CPU を削除する場合、事前にドメインを停止します。

Logical Domains が構成されている場合に、新しく追加した NIU/XAUI アダプタがホスト OS に表示されない

システム上に Logical Domains が構成されているときに別の XAUI ネットワークカードを追加すると、マシンの電源を再投入してもそのカードは表示されません。

回復方法: 新しく追加した XAUI が制御ドメインに表示されるようにするには、次の手順を実行します。

  1. 制御ドメインにダミー変数を設定し、クリアします。

    次のコマンドでは、fix-xaui というダミー変数を使用しています。

    # ldm set-var fix-xaui=yes primary
    # ldm rm-var fix-xaui primary
  2. 変更した構成を SP に保存し、現在の構成を置き換えます。

    次のコマンドでは構成名 config1 を使用しています。

    # ldm rm-spconfig config1
    # ldm add-spconfig config1
  3. 制御ドメインの再構成リブートを実行します。

    # reboot -- -r

    この時点で、新しく使用可能になったネットワークを Logical Domains 用に構成できます。

LSI SAS 2008 を動的バスまたは PCI-Box のホットプラグ操作で追加できない

 

LSI SAS HBA デバイスをホストしている PCIe バスを削除しようとした場合、あとで動的バスまたは PCI-Box のホットプラグ操作を使用してデバイスを追加できません。

特定の条件で、ゲストドメインの Solaris Volume Manager 構成またはメタデバイスが失われることがある

サービスドメインが Oracle Solaris 10 1/13 OS より前のバージョンの Oracle Solaris 10 OS で動作しており、ゲストドメインに仮想ディスクとして物理ディスクスライスをエクスポートしている場合、このゲストドメインではその仮想ディスクが不適切なデバイス ID で表示されます。その後、このサービスドメインを Oracle Solaris 10 1/13 OS にアップグレードすると、このゲストドメインでは、仮想ディスクとしてエクスポートされた物理ディスクスライスはデバイス ID がない状態で表示されます。

仮想ディスクのデバイス ID を削除すると、仮想ディスクのデバイス ID を参照しようとするアプリケーションで問題が発生する可能性があります。特に、Solaris Volume Manager はその構成を検索したり、そのメタデバイスにアクセスしたりできなくなる可能性があります。

回避方法: サービスドメインを Oracle Solaris 10 1/13 OS にアップグレードしたあとで、ゲストドメインがその Solaris Volume Manager 構成またはメタデバイスを検出できない場合は、次の手順を実行します。

ゲストドメインの Solaris Volume Manager 構成またはメタデバイスの検索方法

  1. ゲストドメインをブートします。
  2. 次の行を /kernel/drv/md.conf ファイルに追加することによって、Solaris Volume Manager の devid 機能を無効にします。
    md_devid_destroy=1;
    md_keep_repl_state=1;
  3. ゲストドメインをリブートします。

    ドメインがブートされたあと、Solaris Volume Manager 構成とメタデバイスを検出できるようになります。

  4. Solaris Volume Manager 構成をチェックして、それが正しいことを確認します。
  5. 手順 2 で追加した 2 行を /kernel/drv/md.conf ファイルから削除することによって、Solaris Volume Manager の devid 機能をふたたび有効にします。
  6. ゲストドメインをリブートします。

    リブート時に次のようなメッセージが表示されます。

    NOTICE: mddb: unable to get devid for 'vdc', 0x10

    これらのメッセージは正常で、問題を報告するものではありません。

Oracle Solaris ブートディスクの互換性

歴史的に見て、Oracle Solaris OS は SMI VTOC ディスクラベルで構成されたブートディスクにインストールされてきました。Oracle Solaris 11.1 OS 以降は、デフォルトで拡張ファームウェアインタフェース (EFI) GUID パーティションテーブル (GPT) ディスクラベルを使って構成されるブートディスクに OS がインストールされます。ファームウェアが EFI をサポートしていない場合は、代わりに SMI VTOC ディスクラベルを使ってディスクが構成されます。この状況は、少なくともバージョン 8.4.0 のシステムファームウェアが実行されている SPARC T4 サーバー、少なくともバージョン 9.1.0 のシステムファームウェアが実行されている SPARC T5、SPARC M5、SPARC M6 サーバー、および少なくとも XCP バージョン 2230 が実行されている Fujitsu M10 サーバー にのみ当てはまります。

    次のサーバーは、EFI GPT ディスクラベルの付いたディスクからブートできません。

  • 使用されるシステムファームウェアのバージョンに関係なく、UltraSPARC T2、UltraSPARC T2 Plus、および SPARC T3 サーバー

  • バージョン 8.4.0 より前のシステムファームウェアが実行されている SPARC T4 サーバー

  • バージョン 9.1.0 より前のシステムファームウェアが実行されている SPARC T5、SPARC M5、および SPARC M6 サーバー

  • バージョン 2230 よりも前の XCP が実行されている Fujitsu M10 サーバー

そのため、最新の SPARC T4、SPARC T5、SPARC M5、SPARC M6、Fujitsu M10 サーバー で作成される Oracle Solaris 11.1 ブートディスクは、それよりも古いサーバー、またはそれよりも古いファームウェアが実行されているサーバーでは使用できません。

この制限により、コールド移行またはライブ移行のどちらかを使って新しいサーバーから古いサーバーにドメインを移すことができなくなります。また、この制限により、古いサーバーで EFI GPT ブートディスクイメージを使用することもできなくなります。

Oracle Solaris 11.1 ブートディスクが、使用しているサーバーやそのファームウェアと互換性があるかどうかを判断するには、Oracle Solaris 11.1 OS が SMI VTOC ディスクラベルで構成されたディスクにインストールされていることを確認します。

    古いファームウェアが動作しているシステムとの下位互換性を維持するには、次のいずれかの手順を使用します。そうしないと、ブートディスクはデフォルトで EFI GPT ディスクラベルを使用します。これらの手順は、少なくともバージョン 8.4.0 のシステムファームウェアが実行されている SPARC T4 サーバー、少なくともバージョン 9.1.0 のシステムファームウェアが実行されている SPARC T5、SPARC M5、または SPARC M6 サーバー、および少なくとも XCP バージョン 2230 が実行されている Fujitsu M10 サーバー 上で、SMI VTOC ディスクラベルの付いたブートディスクに Oracle Solaris 11.1 OS がインストールされていることを確認する方法を示しています。

  • 解決方法 1: ファームウェアが EFI をサポートしていることを報告しないように gpt プロパティーを削除します。

    1. OpenBoot PROM プロンプトから、自動ブートを無効にし、インストールされるシステムをリセットします。

      ok setenv auto-boot? false
      ok reset-all

      システムがリセットされると、ok プロンプトに戻ります。

    2. /packages/disk-label ディレクトリに変更し、gptプロパティーを削除します。

      ok cd /packages/disk-label
      ok " gpt" delete-property
    3. Oracle Solaris 11.1 OS のインストールを開始します。

      たとえば、ネットワークインストールを実行します。

      ok boot net - install
  • 解決方法 2: format -e コマンドを使用して、Oracle Solaris 11.1 OS がインストールされるディスクに SMI VTOC ラベルを書き込みます。

    1. ディスクに SMI VTOC ラベルを書き込みます。

      たとえば、label オプションを選択して、SMI ラベルを指定します。

      # format -e c1d0
      format> label
      [0] SMI Label
      [1] EFI Label
      Specify Label type[1]: 0
    2. ディスク全体をカバーするスライス 0 とスライス 2 でディスクを構成します。

      このディスクにはそのほかにパーティションはありません。例:

      format> partition
       
      partition> print
      Current partition table (unnamed):
      Total disk cylinders available: 14087 + 2 (reserved cylinders)
      
      Part      Tag    Flag     Cylinders         Size            Blocks
        0       root    wm       0 - 14086      136.71GB    (14087/0/0) 286698624
        1 unassigned    wu       0                0         (0/0/0)             0
        2     backup    wu       0 - 14086      136.71GB    (14087/0/0) 286698624
        3 unassigned    wm       0                0         (0/0/0)             0
        4 unassigned    wm       0                0         (0/0/0)             0
        5 unassigned    wm       0                0         (0/0/0)             0
        6 unassigned    wm       0                0         (0/0/0)             0
        7 unassigned    wm       0                0         (0/0/0)             0
    3. SMI VTOC ディスクラベルを再度書き込みます。

      partition> label
      [0] SMI Label
      [1] EFI Label
      Specify Label type[0]: 0
      Ready to label disk, continue? y
    4. Oracle Solaris OS をブートディスクのスライス 0 にインストールするように Oracle Solaris Automatic Installer (AI) を構成します。

      AI マニフェストの <disk> の抜粋を次のように変更します。

      <target>
         <disk whole_disk="true">
              <disk_keyword key="boot_disk"/>
              <slice name="0" in_zpool="rpool"/>
         </disk>
      [...]
      </target>
    5. Oracle Solaris 11.1 OS のインストールを実行します。

動的に追加されたメモリーのブロックがブロック全体でしか動的に削除できないことがある

動的に追加されたメモリーを管理する際の Oracle Solaris OS によるメタデータの処理方法が原因で、そのメモリーの適切なサブセットではなく、以前に動的に追加されたメモリーのブロック全体からしか削除できない可能性があります。

この問題が発生するのは、次の例に示すように、ドメインのメモリーサイズが最初は小さく、そのあとで動的に大きく拡張した場合です。

primary# ldm list ldom1
NAME  STATE FLAGS   CONS VCPU MEMORY UTIL UPTIME
ldom1 active -n--   5000 2    2G     0.4% 23h

primary# ldm add-mem 16G ldom1

primary# ldm rm-mem 8G ldom1
Memory removal failed because all of the memory is in use.

primary# ldm rm-mem 16G ldom1

primary# ldm list ldom1
NAME  STATE FLAGS   CONS VCPU MEMORY UTIL UPTIME
ldom1 active -n--   5000 2    2G     0.4% 23h

回避方法: ldm add-mem コマンドを使用して、今後削除する可能性があるものよりも大きいチャンクではなく、より小さいチャンクでメモリーを連続して追加してください。

    回復方法: 次のアクションのいずれかを実行してください。

  • ドメインを停止し、メモリーを削除してから、ドメインを再起動します。

  • ドメインをリブートします。これにより、以前に追加されたメモリーが小さいチャンクで動的に削除できるように、Oracle Solaris OS のメモリー管理メタデータが割り当てられます。