4
2

More than 1 year has passed since last update.

【環境構築】パーツ購入からESXi7.0サーバ作成してみた

Last updated at Posted at 2023-01-02

はじめに

私は2021年に新卒でインフラエンジニアとして働いています。
その中で、個人的な学習としてESXiのサーバを構築しました。
自分専用のESXiがあると、何かと勉強の幅が広がるので、初級インフラエンジニアの方は持っておくことをおすすめします!

私自身初めての自作PCからの、初めてのESXiインストールです。
初めてだらけだったので、間違っている部分があると思いますが、参考程度に眺めてみていただければと思います。

本記事の対象者

  • 初めて自作PC(サーバ)を作成する人
  • 自作PC(サーバ)に興味がある人
  • ESXiのインストールをしようとしている人
  • 初心者インフラエンジニアで暇な人

作成の要望

私が自作PCを作成するにあたり、欲しいと思った要望です。

  • 自作サーバは物理的に小さくしたい
  • ESXiを使用した複数機能を持つサーバを作成したい
  • 複数の仮想サーバを立ててもある程度耐えられる処理能力が欲しい

ということを考えました。
これらから、実際にパーツを購入するための要件を以下のように絞りました。

  • マザーボード(MB)の規格はMini-ITX
  • PCケースもMini-ITX対応の最小のもの
  • ESXi7.0のハード要件を満たす

それでは、実際に購入した部品をまとめます。

購入品

合計金額:¥46,767(クーポン未使用で¥51,967)
※購入は全て2022/9/26~2022/10/1に行いました。
※その他、キーボード / マウス / モニター / 各種ケーブル等は家に余っていたものを使用

5EEEBFCC-D175-435C-AA41-3544C723E2EE.jpeg

  • マザーボード
    製品名:GIGABYTE H610I DDR4(H610 1700 Mini-ITX)
    購入場所:メルカリ
    状態:中古
    価格:13,000円(1,300OFFクーポン使用)

  • CPU
    製品名:Intel Core i3 12100 BOX
    購入場所:じゃんぱら
    状態:未使用・未開封
    価格:18,750円(100OFFクーポン使用)

  • RAM
    製品名:G.SKILL F4-2666C19D-16GNT
    購入場所:ドスパラ
    状態:新品
    価格:5,390円(300OFFクーポン使用)

  • DISK
    製品名:SUNEAST 320GB
    購入場所:Yahoo!ショッピング
    状態:新品
    価格:2,950円(500OFFクーポン使用)

  • ケース
    製品名:RGEEK PCケース
    購入場所:Yahoo!ショッピング
    状態:新品
    価格:7,378円(3,000OFFクーポン使用)

  • DC-ATX-160W
    製品名:Yiteng
    購入場所:Amazon
    状態:新品
    価格:1,999円

  • ACアダプタ
    製品名:12V 10A 120W 汎用ACアダプター
    購入場所:Amazon
    状態:新品
    価格:2,500円

組み立ては省きます。
次からは組み立てして、起動確認後からのお話です。

ESXi7.0インストール

まず、ESXi7.0はインストーラーイメージを作成する必要があります。
インストーラーイメージを作成後に、作成した自作サーバにインストールします。

ESXi7.0インストーラーイメージ作成手順

1. 準備

  1. インストーラーイメージを作成するWindowsPCで、作業用フォルダを用意する
    わかりやすくて長くなければなんでもいい(例:D:\ESXi-Customizer)
    ※パスが長すぎるとエラーになる可能性があるので、できるだけ短くすること

  2. NICドライバのダウンロード
    前提として、ESXi7.0の場合のNICドライブである
    Community Networking Driver for ESXiページから、Community Networking Driver for ESXiをダウンロードする。

  3. ダウンロードファイルの解凍
    解凍後,vib20/net-community配下にある VMW_bootbank_net-community_1.2.*.0-1vmw.700.1.0.15843807.vib ファイルのみをaで作成したフォルダに格納する。
    使用したVIBファイル:
    VMW_bootbank_net-community_1.2.7.0-1vmw.700.1.0.15843807.vib

    NICドライバの選定方法
    NICドライバ持たない公式からダウンロードできるisoイメージを使用すると、「No Network Adapters」エラーが出る。

    Untitled.png
    NICの確認
    上記画面で、以下を実行することで、ESXi ダイレクト コンソール インターフェースから使用可能なNICの情報を確認することができる

    Alt + F1  << 開始
    
    localhost.localdmain login: root    << rootと入力
    password:     << 空欄
    
    [root@localhost:~] lspci -v | grep "Class 0200" -B 1
    0000:00:1f.6 Network controller Ethernet controller: Intel Corporation Ethernet Connection (17) I219-V
             Class 0200: 8086:1a1d
    
    Alt + F2  << 終了
    

    結果
    以下であることが確認できました。

    種類 詳細
    モデル Ethernet Connection (17) I219-V
    ブランド名 Intel Corporation
    VID 8086
    DID 1a1d

    結論
    ESXi6.5, 6.7では、Ethernet Connection (17) I219-Vに対応できるNICドライバがありませんでした。

    ESXi7.0はCommunity Networking Driver for ESXiで対応可能であることが分かったので、こちらを使用しました。

    Untitled.png

  4. カスタムイメージ自動作成スクリプトをダウンロード
    Githubをダウンロードして、ESXi-Customizer-PS.ps1のみをaで作成したフォルダに格納する。
    実際に使用したpsファイル:ESXi-Customizer-PS.ps1

  5. 空のUSBメモリ
    作成したカスタムイメージをUSBメモリに展開してインストールメディアにするために必要である。ツールで作成する際に、中身が削除されるので、消えてほしくないファイル等は移動させておきます。

2. VMwarePowerCLIをインストール

VMwarePowerCLIとは、WindowsPowerShellにコマンドからインストールをして、VmwareをCLI操作(vCenter、ESXiなど複数のバックアップを取得等)することができる。

  1. インストール
    WindowsPowerShellを管理者権限で開き、以下実行する。
    ※結構時間かかりました

    PS C:\Windows\system32> Install-Module -Name VMware.PowerCLI -Scope CurrentUser
    
    続行するには NuGet プロバイダーが必要です
    PowerShellGet  NuGet ベースのリポジトリを操作するには、'2.8.5.201' 以降のバージョンの NuGet
    プロバイダーが必要です。NuGet プロバイダーは 'C:\Program Files\PackageManagement\ProviderAssemblies' または
    'C:\Users\futak\AppData\Local\PackageManagement\ProviderAssemblies' に配置する必要があります。'Install-PackageProvider
    -Name NuGet -MinimumVersion 2.8.5.201 -Force' を実行して NuGet プロバイダーをインストールすることもできます。今すぐ
    PowerShellGet  NuGet プロバイダーをインストールしてインポートしますか?
    [Y] はい(Y)  [N] いいえ(N)  [S] 中断(S)  [?] ヘルプ (既定値は "Y"): Y
    
    信頼されていないリポジトリ
    信頼されていないリポジトリからモジュールをインストールしようとしています。このリポジトリを信頼する場合は、Set-PSReposit
    ory コマンドレットを実行して、リポジトリの InstallationPolicy の値を変更してください。'PSGallery'
    からモジュールをインストールしますか?
    [Y] はい(Y)  [A] すべて続行(A)  [N] いいえ(N)  [L] すべて無視(L)  [S] 中断(S)  [?] ヘルプ (既定値は "N"): Y
    
  2. セキュリティポリシー変更
    CurrentUserがVMwarePowerCLIを実行できるようセキュリティポリシーを変更する

    PS C:\Windows\system32> Set-ExecutionPolicy Unrestricted
    
    実行ポリシーの変更
    実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシーを変更すると、about_Execution_Policies のヘルプ トピック (https://go.microsoft.com/fwlink/?LinkID=135170)
    で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシーを変更しますか?
    [Y] はい(Y)  [A] すべて続行(A)  [N] いいえ(N)  [L] すべて無視(L)  [S] 中断(S)  [?] ヘルプ (既定値は "N"): Y
    
  3. セキュリティポリシー確認
    CurrentUserが「Unrestricted」になっていればOK
    ※RemoteSignedでなければ問題ない

    PS C:\Windows\system32> Get-ExecutionPolicy -List
    
            Scope ExecutionPolicy
            ----- ---------------
    MachinePolicy       Undefined
       UserPolicy       Undefined
          Process       Undefined
      CurrentUser    Unrestricted
     LocalMachine    Unrestricted
    
  4. VMwarePowerCLI 確認コマンド
    下記コマンドから、バージョン12.7.0であることが確認できる

    PS C:\Windows\system32> Get-PowerCLIVersion
    
    PowerCLI Version
    ----------------
       VMware.PowerCLI 12.7.0 build 20091289
    ---------------
    Component Versions
    ---------------
       VMware Common PowerCLI Component 12.7 build 20067789
       VMware Cis Core PowerCLI Component PowerCLI Component 12.6 build 19601368
       VMware VimAutomation VICore Commands PowerCLI Component PowerCLI Component 12.7 build 20091293
    

ExecutionPolicy(PoweeShellの実行ポリシー)の詳細については下記リンクを参照

3. カスタムインストーラーイメージ作成

  1. 準備で作成したフォルダに移動
    PS C:\Windows\system32> cd D:\ESXi-Customizer
    
  2. 準備したフォルダの中身に不備がないことを確認
    PS D:\ESXi-Customizer> dir
    
        ディレクトリ: D:\ESXi-Customizer
    
    Mode                 LastWriteTime         Length Name
    ----                 -------------         ------ ----
    -a----        2022/08/12      4:11          22755 ESXi-Customizer-PS.ps1
    -a----        2022/03/10     22:27         229174 VMW_bootbank_net-community_1.2.7.0-1vmw.700.1.0.15843807.vib
    
  3. offline bundleの作成
    .\ESXi-Customizer-PS.ps1 -ozip -v70 -pkgDir <NICドライバ保存フォルダ> -nsc
    
    実際のコード↓
    PS D:\ESXi-Customizer> .\ESXi-Customizer-PS.ps1 -ozip -v70 -pkgDir D:\ESXi-Customizer\ -nsc
    
    This is ESXi-Customizer-PS Version 2.8.2 (visit https://ESXi-Customizer-PS.v-front.de for more information!)
    (Call with -help for instructions)
    
    Logging to C:\Users\kobat\AppData\Local\Temp\ESXi-Customizer-PS-30640.log ...
              Welcome to VMware PowerCLI!
    
    Log in to a vCenter Server or ESX host:              Connect-VIServer
    To find out what commands are available, type:       Get-VICommand
    To show searchable help for all PowerCLI commands:   Get-PowerCLIHelp
    Once youve connected, display all virtual machines: Get-VM
    If you need more help, visit the PowerCLI community: Get-PowerCLICommunity
    
           Copyright (C) VMware, Inc. All rights reserved.
    
    Running with PowerShell version 5.1 and VMware PowerCLI version 12.7.0 build 20091289
    
    Connecting the VMware ESXi Software depot ... [OK]
    
    Getting Imageprofiles, please wait ... [OK]
    
    Using Imageprofile ESXi-7.0U3g-20328353-standard ...
    (Dated 09/01/2022 00:00:00, AcceptanceLevel: PartnerSupported,
    The general availability release of VMware ESXi Server 7.0U3g brings whole new levels of virtualization performance to datacenters and enterprises.)
    
    Loading Offline bundles and VIB files from D:\ESXi-Customizer\ ...
       Loading D:\ESXi-Customizer\VMW_bootbank_net-community_1.2.7.0-1vmw.700.1.0.15843807.vib ... [OK]
          Add VIB net-community 1.2.7.0-1vmw.700.1.0.15843807 [OK, added]    << ##ここでドライバが追加されている
    
    Exporting the Imageprofile to 'D:\ESXi-Customizer\ESXi-7.0U3g-20328353-standard-customized.zip'. Please be patient ...
    
    All done.   << ##これが確認できればOK
    
  4. isoイメージ作成
    .\ESXi-Customizer-PS.ps1 -izip <3で作成できたzipファイルのパス> -v70 -nsc
    
    実際のコード↓
    PS D:\ESXi-Customizer> .\ESXi-Customizer-PS.ps1 -izip .\ESXi-7.0U3g-20328353-standard-customized.zip -v70 -nsc
    
    This is ESXi-Customizer-PS Version 2.8.2 (visit https://ESXi-Customizer-PS.v-front.de for more information!)
    (Call with -help for instructions)
    
    Logging to C:\Users\kobat\AppData\Local\Temp\ESXi-Customizer-PS-30640.log ...
    
    Running with PowerShell version 5.1 and VMware PowerCLI version 12.7.0 build 20091289
    
    Adding base Offline bundle .\ESXi-7.0U3g-20328353-standard-customized.zip ... [OK]
    
    Getting Imageprofiles, please wait ... [OK]
    
    Using Imageprofile ESXi-7.0U3g-20328353-standard-customized ...
    (Dated 09/01/2022 00:00:00, AcceptanceLevel: PartnerSupported,
    The general availability release of VMware ESXi Server 7.0U3g brings whole new levels of virtualization performance to datacenters and enterprises. (customized))
    
    Exporting the Imageprofile to 'D:\ESXi-Customizer\ESXi-7.0U3g-20328353-standard-customized.iso'. Please be patient ...
    
    All done.   << ##これが確認できればOK
    
エラー:Fail to create VibSigner object, Could not get string.が出た時の対処法

問題・エラー
「offline bundleの作成」や「isoイメージ作成」の際に、「Fail to create VibSigner object, Could not get string.」というエラーが出ました。

PS D:\ESXi-Customizer> .\ESXi-Customizer-PS.ps1 -izip .\ESXi-7.0U3g-20328353-standard-customized.zip -v70

An unexpected error occurred:
Fail to create VibSigner object, Could not get string.

If requesting support please be sure to include the log file
   C:\Users\***\AppData\Local\Temp\ESXi-Customizer-PS-*****.log

解決策
コマンドに「-nsc」というオプションを付けて実行する

4. インストールメディア作成(USB)

USBメモリをインストールメディア(ブータブルUSB)にするためにRufusを使います。

  1. 最新版のRufusをダウンロードしてください。(下記画像は使用当時のバージョン)
    Untitled.png
  2. インストールメディア作成方法
    a ダウンロードした「rufus-3.**.exe」を実行する。
    b. ブートの種類のみ、「選択」から作成したisoイメージを選択する。
    c. その他の値はデフォルト値で、「スタート」を押す。
    ※出てくるポップは全てOK
    Untitled.png
  3. USBを戻す方法
    a. Windows+Rで「diskmgmt.msc」を開く
    b. 戻したいボリュームを選択して、右クリックからフォーマットを選択
    Untitled.png
    c. 下記画像を参考にして、OKを押す
    Untitled.png

ESXi7.0インストール

1. OSData パーティションを指定する

ESXi7.0ではデフォルトで、OSData パーティションが最大120GBまで確保されてしまい、VMFS 領域(VM等を作成する容量)が無い・少量になってしまいます。

そこで、オプションで適切なサイズをsystemMediaSizeで指定してインストールすることが可能です。

systemMediaSizeに指定するパラメータは4種類ある
ESXi のシステム ストレージの概要 > ESXi 7.0 のシステム ストレージのサイズ

種類 詳細
min 32 GB、1 台のディスクまたは組み込みのサーバ用
small 64 GB、512 GB 以上の RAM を搭載したサーバ用
default 128 GB
max 使用可能なすべての容量を使用、マルチテラバイトのサーバ用

本件サーバは、minを使用する。

設定手順

  1. ブータブルUSBを差して、サーバを起動した直後(下記画像で)5秒間の間に、
    ” Shift + O ”を押下する。
    Untitled.png

  2. 文字が入力できるので、”systemMediaSize=min”と入力後、Enterを押下する。
    Untitled.png

    ※失敗手順
    ブータブルUSB内にある「boot.cfg」の設定を変更する方法もあるらしいが、うまくいかなかった

    bootstate=0
    title=Loading ESXi installer
    timeout=5
    prefix=
    kernel=/b.b00
    kernelopt=runweasel cdromBoot systemMediaSize=min    << # 末尾の部分を追加
    modules=/jumpstrt.gz --- /useropts.gz --- /features.gz --- /k.b00 --- /uc_intel.b00 --- /uc_amd.b00 --- /uc_hygon.b00 --- /procfs.b00 --- /vmx.v00 --- /vim.v00 --- /tpm.v00 --- /sb.v00 --- /s.v00 --- /atlantic.v00 --- /bnxtnet.v00 --- /bnxtroce.v00 --- /brcmfcoe.v00 --- /elxiscsi.v00 --- /elxnet.v00 --- /i40en.v00 --- /iavmd.v00 --- /icen.v00 --- /igbn.v00 --- /ionic_en.v00 --- /irdman.v00 --- /iser.v00 --- /ixgben.v00 --- /lpfc.v00 --- /lpnic.v00 --- /lsi_mr3.v00 --- /lsi_msgp.v00 --- /lsi_msgp.v01 --- /lsi_msgp.v02 --- /mtip32xx.v00 --- /ne1000.v00 --- /nenic.v00 --- /netcommu.v00 --- /nfnic.v00 --- /nhpsa.v00 --- /nmlx4_co.v00 --- /nmlx4_en.v00 --- /nmlx4_rd.v00 --- /nmlx5_co.v00 --- /nmlx5_rd.v00 --- /ntg3.v00 --- /nvme_pci.v00 --- /nvmerdma.v00 --- /nvmetcp.v00 --- /nvmxnet3.v00 --- /nvmxnet3.v01 --- /pvscsi.v00 --- /qcnic.v00 --- /qedentv.v00 --- /qedrntv.v00 --- /qfle3.v00 --- /qfle3f.v00 --- /qfle3i.v00 --- /qflge.v00 --- /rste.v00 --- /sfvmk.v00 --- /smartpqi.v00 --- /vmkata.v00 --- /vmkfcoe.v00 --- /vmkusb.v00 --- /vmw_ahci.v00 --- /bmcal.v00 --- /crx.v00 --- /elx_esx_.v00 --- /btldr.v00 --- /esx_dvfi.v00 --- /esx_ui.v00 --- /esxupdt.v00 --- /tpmesxup.v00 --- /weaselin.v00 --- /esxio_co.v00 --- /loadesx.v00 --- /lsuv2_hp.v00 --- /lsuv2_in.v00 --- /lsuv2_ls.v00 --- /lsuv2_nv.v00 --- /lsuv2_oe.v00 --- /lsuv2_oe.v01 --- /lsuv2_oe.v02 --- /lsuv2_sm.v00 --- /native_m.v00 --- /qlnative.v00 --- /trx.v00 --- /vdfs.v00 --- /vmware_e.v00 --- /vsan.v00 --- /vsanheal.v00 --- /vsanmgmt.v00 --- /tools.t00 --- /xorg.v00 --- /gc.v00 --- /imgdb.tgz --- /basemisc.tgz --- /resvibs.tgz --- /imgpayld.tgz
    build=7.0.3-0.55.20328353
    updated=0
    

    ※ブータブルUSB内にある「boot.cfg」の設定変更により、ホスト名やIPアドレス等を設定することも可能なようです。 >>Automated ESXi Installation to USB using Kickstart

2. インストール

基本的には、F11またはEnterでインストールを進めていく

3. インストール完了後

以下設定をサーバ上で直接変更した

  • IPv4アドレスを任意のアドレスのスタティックIP
  • ホスト名を「ESXi7-01」

ライセンスの割り当て
VMware vSphere Hypervisor 7.0 ダウンロード センターでログインする。
「ライセンスとダウンロード」>「ライセンス情報」>「ライセンス キー」をコピーする。

HostClient(HTTP)から「ホスト」>「管理」>「ライセンス」>「ライセンスの割り当て」から、コピーしたライセンス キーを張り付ける。
Untitled.png

まとめ

PCのパーツ購入から、ESXi7.0インストールまでいかがだったでしょうか。
PCのパーツによって組み立て方法が異なると思うので、本記事では省きました。
ESXiのインストーラーイメージ作成は結構難しい気がしています。

ESXi作成に当たって参考にしたサイトをまとめておきます。

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2