ラベル UEFI の投稿を表示しています。 すべての投稿を表示
ラベル UEFI の投稿を表示しています。 すべての投稿を表示

2020年3月20日金曜日

AHVのUEFIの対応と注意点

AOS5.16からUEFIのSecure Bootにも対応しました。
以前に、AOS5.11でUEFIには対応していましたが、UEFIへの対応強化となります。

では実際にUEFIで仮想マシンを作るところから見ていきたいと思います。

こちらはAOS5.16.1の環境の画面ですがAOS5.11以降、Prism画面からUEFIかBIOSかのどちらかを選択するモードが出てくるようになっています。

UEFIに関してはここから、UEFIを選択するだけです。

acliで確認すると、Prismで作成するとUEFIの領域が、ストレージコンテナが、ManagementShareに作成されます。

vm.get UEFITEST1
UEFITEST1 {
  config {
    agent_vm: False
    allow_live_migrate: True
    boot {
      firmware_config {
        nvram_disk_spec {
          create {
            container_id: 8
            size: 540672
          }
        }
        nvram_disk_uuid: "b329af2f-1ad6-4698-a989-f11f87888c23"
      }
      uefi_boot: True
    }
    cpu_passthrough: False
    disable_branding: False


では、A Sync DRで他のNutanixクラスターにレプリケーションをする際にManagementShareのストレージコンテナも一緒にレプリケーション対象にする必要があるかというと、実際に動きを見たところ、ManagementShareのストレージコンテナをレプリケーション対象に入れなくても、問題なくレプリケーション及びリストア可能です。

現行UEFIでの起動に対応しているOSは、以下の通りです。
  • Windows Server 2012R2/2016/2019 (x64)
  • Windows 10 Pro/Home (x64)
  • CentOS 7.4/7.5/8.0 (x64)
  • RedHat Enterprise Linux 7.1/8.0 (x64)
  • Ubuntu 12.04.x LTS Desktop/Server (x64)
  • Ubuntu 16.04.x LTS Desktop/Server (x64)
  • Ubuntu 18.04.x LTS Desktop/Server (x64)
  • SUSE Linux Enterprise Server 12 SP3 (x64)

なお、Prism上でUEFIで仮想マシンを作成しても、セキュアブートモードにはなりません。
セキュアブートを有効にするには、acliで以下のコマンドを実行する必要があります。

vm.update 仮想マシン名 secure_boot=true machine_type=q35

secure_boot=trueと共に「machine_type=q35」の設定が必要となります。
セキュアブートが有効になると、以下のようにacliで確認するとsecure_boot:Trueと表示が追加されます。

vm.get UEFITEST1
UEFITEST1 {
  config {
    agent_vm: False
    allow_live_migrate: True
    boot {
      firmware_config {
        nvram_disk_spec {
          create {
            container_id: 8
            size: 540672
          }
        }
        nvram_disk_uuid: "b329af2f-1ad6-4698-a989-f11f87888c23"
      }
      secure_boot: True
      uefi_boot: True
    }
=中略=
    hwclock_timezone: "Asia/Tokyo"
    machine_type: "q35"
    memory_mb: 6144
    name: "UEFITEST1"

なお、セキュアブートに対応したOSは、AOS5.16時点で以下の通りです。

  • Windows Server 2016
  • Windows Server 1809
  • CentOS 7.3
  • Red Hat Enterprise Linix 7.7

  • なお、私が試した限りAOS5.16.1では、セキュアブートを有効にした状態で、Windows Server 2019はインストーラー画面の表示がされない(おそらく固まっている)事象を確認しています。
    このあたりはドキュメントに従って、アップデートを待つ必要があるようです。

    ▼UEFI起動時の仮想マシンのブート画面


    一方、セキュアブートでの起動時は、XマークではなくTianoCoreのロゴが表示されます。

    ▼セキュアブート時の仮想マシンブート画面


    また、セキュアブートを有効にした環境では、IDEバスを利用したCDROMドライブや仮想ディスクのマウントとはサポートされていません。セキュアブートの対応によりNGT(Nutanix Guest Tools)は、SATAデバイスのCDROMドライブでも対応することがAOS5.16.1で確認できております。

    UEFI利用時に1点だけ注意点があります。
    UEFI利用時にWindows OSを利用する場合、画面の解像度が800×600に固定され変更することが出来ません。これは、AHV上でVGAドライバーを提供していないことに理由があります。サーバーオペレーションの場合ほとんどがRDPやSSHなどリモートからの操作のため大きな影響はありませんが初期設定が800×600ですと、少々操作し辛い感があります。しかし、UEFIの設定画面で変更することが出来ます。

    ▼画面解像度が固定されている

    仮想マシン起動時にF2キーを押してUEFIの設定画面に入ります。
    [Device Manager]→[OVMF Platform Configuration]から[Change Preferred]で
    画面解像度を変更します。

    設定完了後、「F10」キーを押し、「Y」を押し設定を保存し、その後「ESC」→「ESC」でメインメニューに戻り、[Continue]を選択肢「Enter]キーを押します。
    そのままOSが起動しますが、まだUEFIの設定が反映されていませんので、一度OSを再起動すると新しいUEFIの設定が反映されます。


    なお、AOS5.10であってもUEFIでの設定は可能ですが、UEFIへの対応は正式にはAOS5.11から、セキュアブートはAOS5.16からのサポートとなります。
    AOS5.10でのUEFIで仮想マシンを稼動した場合、先程ご紹介した解像度の設定変更が正しく反映されない制限事項があります。

    AHVにおけるUEFIの対応は、AOS5.11以降急速に進んでいます。
    まだセキュアブートにおいてサポートされるOSが一部少ないなどの課題事項もありますが、これらは近いうちに修正されると思われます。

    Hyper-V 第2世代の仮想マシンからの移行などの場合は、UEFIでの利用が伴いますが、そういった場合も万全に対応可能です。

    2019年8月13日火曜日

    AOS5.11を紹介(その5) AHVでもEFIがサポートされました。

    昨今では、パソコンにおいてもサーバーにおいても大容量化が進んでおり、1つの物理的なHDDでも10TBを超えるものも存在しています。
    Windowsの場合、旧来のBIOSを利用すると2TBを超えるディスクを起動ディスクとすると、2TB以上の領域を利用できないなど、大容量化に対して旧来の技術では対応ができないという課題がありました。
    また、Hyper-Vの第2世代で構成された仮想マシンはUEFIと構成され、AHVへの移行にはかなり手のかかる作業が必要でした。

    今回AOS5.11から正式にAHVにおいてもUEFIがサポートされました。
    従来からAHVにおいてもUEFIはacliコマンドで設定することでEFIモードにすることはできましたが、非サポート扱いでしたがこのタイミングでUEFIもサポータブルになりました。

    2019/4末の段階で、AHVでEFIを設定した仮想マシンの起動ロゴが変わっていることに気が付いておりました。(以前はロゴのない文字しかない画面でした)


    これがおそらく「AHV-20170830.256」のバージョンであると思いますので、4月末ぐらいには水面下にAHVだけが先行的にバイナリが提供されたのかもしれません。

    このUEFI対応に伴い、Prismの仮想マシン作成画面でもBIOSかUEFIかを選択できる画面が追加されました。

    また、BIOS利用時は、優先Bootメディアを選択できるようになり、デフォルトのCDROMドライブではなく最初から任意のメディアにGUIで変更できるようになりました。

    なお、AHVとして正式にUEFIに対応しているゲストOSは以下の通りです。

    • Microsoft Windows 10 Home/Pro
    • Microsoft Windows server 2012 R2/2016
    • CentOS 7.4/7.5
    • Red Hat enterprise Linux 7.1
    • Ubuntu 12.04.x LTS Desktop/Server
    • Ubuntu 16.04.x LTS Desktop/Server
    • Ubuntu 18.04.x LTS Desktop/Server
    • SUSE Linux Enterprise Server 12 SP3

    最新の情報は、AHV Administrator Guideを参照してください。
    https://portal.nutanix.com/#/page/docs/details?targetId=AHV-Admin-Guide-v511:vmm-compatibility-matrix-for-uefi-supported-vm-r.html

    UEFIが正式に対応したこととNutanix Move 3.0からHyper-VからAHVへの移行がサポートされたことにより、Hyper-V第2世代(UEFI)で作成された仮想マシンも問題なく移行することができるようになったのは、AHVの利用の幅を広げる大きな理由の1つになったと思います。