ESXi 4.x/5.x/6.x の永続的スクラッチの場所の作成
book
Article ID: 344451
calendar_today
Updated On:
Products
VMware vSphere ESXi
Show More
Show Less
Issue/Introduction
この記事では、ESXi の永続的スクラッチの場所を作成する手順について説明します。 VMware は、ログ、診断情報およびシステム スワップを含む一時データの格納のために ESXi が永続的スクラッチの場所を備えておくことを推奨します。(ただし、これは要件ではありません)永続的スクラッチの領域は、ESXi ホストによってアクセス可能な FAT 16、VMFS または NFS パーティションにプロビジョニングすることができます。 注 : スクラッチ領域は、ESXi ホストのインストール時、または最初のブート時に自動的に構成されるため、手動で構成する必要はありません。十分な領域があり、デバイスがローカルであるとみなされる場合、ESXi Installable はインストール時にターゲット デバイスに 4GB の Fat16 パーティションを作成します。 VirtualCenter 2.5 Update 1 以降では、スワップを有効にした ESXi システムのみ HA クラスタに追加できます。詳細については、「 ESXi hosts without swap enabled cannot be added to a VMware High Availability Cluster (1004177) 」を参照してください。 Symptoms:
免責事項 :これは英文の記事「 Creating a persistent scratch location for ESXi 4.x/5.x/6.x (1033696) 」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。 esxcli software vib list
コマンドを実行すると、次のようなエラーが表示される。Traceback (most recent call last):
File "/usr/lib/vmware/esxcli-software", line 432, in module
setupLogging()
File "/usr/lib/vmware/esxcli-software", line 78, in setupLogging
handler = logging.handlers.SysLogHandler(address='/dev/log')
File "/build/mts/release/bora-504890/bora/build/esx/release/python-
2.6-lib-zip-stage/504890/visor/pylib/python2.6/logging/handlers.py",
line 704, in __init__
File "/build/mts/release/bora-504890/bora/build/esx/release/python-
2.6-lib-zip-stage/504890/visor/pylib/python2.6/logging/handlers.py",
line 719, in _connect_unixsocket
File "string ", line 1, in connect
socket.error: [Errno 2] No such file or directory
esxcli software
または esxupdate
に関連するコマンドは動作しない。Update Manager を使用してホストをスキャンすると、次のエラーが表示されて失敗する。General System Error
最初にホストを再起動したときには問題は解決しますが、数日以内に再度発生する。 /var/log/
ファイルにログ ファイルが見つからないか、更新されていない。影響を受ける ESXi ホストには HA エージェントをインストールできない。 ESXi は SD カードまたは USB スティックにインストールされる。
Environment
VMware ESXi 4.0.x Embedded VMware ESXi 4.1.x Embedded VMware ESXi 4.0.x Installable VMware vSphere ESXi 5.5 VMware vSphere ESXi 5.1 VMware ESXi 4.1.x Installable VMware vSphere ESXi 6.0 VMware vSphere ESXi 5.0
Cause
永続的スクラッチ領域が利用可能でない場合、ESXi はこの一時データを領域に制限のある ramdisk に格納します。これはメモリの少ない状況では問題になる場合がありますが、ESXi の動作には重大ではありません。ramdisk に格納された情報は再起動後は残らないため、ログやコア ファイルなどのトラブルシューティング情報が失われる場合があります。ホスト上の永続的スクラッチの場所が適切に構成されていないと、一時ファイルの領域が不足しているために問題が断続的に発生し、ログ ファイルが更新されません。 スクラッチ領域は、ESXi 4.1 U2 以降のホストをインストールするとき、または最初に起動するときに自動的に構成されるため、手動で構成する必要はありません。
Resolution
ESXi ホストのスクラッチ領域は、vSphere Client、vCLI、PowerCLI、Tech Support モードを使用して、またはスクリプト化されたインストールの実行中に、手動で構成することができます。環境に適した方法を選択してください。選択した方法に関係なく、構成は /etc/vmware/locker.conf
構成ファイルに書き込まれ、次回のブートで使用されます。構成されたスクラッチの場所を変更する場合、変更を有効にするには ESXi ホストを再起動する必要があります。変更の前に、vMotion を使用して ESXi ホスト上のすべての仮想マシンを移行またはパワーオフします。詳細については、「 Rebooting an ESX Server host (1003530) 」を参照してください。 構成されたスクラッチの場所は、Fat16 または VMFS ボリュームのような ESXi ホストからアクセス可能なファイルシステムのディレクトリを指している必要があります。ESXi ホストにそれ自身の個別のディレクトリが割り当てられている限り、この場所は共有ディスクのディレクトリでもリモート ディスクのディレクトリでもかまいません。 注意 :複数の ESXi ホスト間でスクラッチ ロッカーのディレクトリを共有しないでください。 注 :VSAN データストア上のスクラッチの場所の構成はサポートされません。 これらの手順を完了する前に、ESXi ホストの再起動が必要になる場合があります。 vSphere Web Client for ESXi 5.1 以降を使用した永続的スクラッチの場所の構成 vSphere Web Client を使用して vCenter Server へログインします。 [ホストおよびクラスタ] をクリックし、特定のホストを選択します。[管理] タブをクリックします。[設定] > [システム] > [システムの詳細設定] をクリックします。ScratchConfig.ConfiguredScratchLocation
を見つけます。[編集] をクリックして、スクラッチ ディレクトリへのパスを追加します。ホストを再起動します。 VMware Host Client for ESXi 6.5 を使用した永続的スクラッチの場所の構成 Host Client を使用して、ESXi ホストに接続します。 [ストレージ] をクリックします。データストアを右クリックして、[参照] をクリックします。 この ESXi ホスト用に一意の名前を持つディレクトリを作成します。 例: .locker-ESXHostname データストア ブラウザを閉じます。 [管理] タブをクリックします。[システム] で、[システムの詳細設定] をクリックします。 設定 [ScratchConfig.CurrentScratchLocation] にスクラッチ パーティションの現在の場所が表示されます。 フィールド [ScratchConfig.ConfiguredScratchLocation] に、このホスト用の一意のディレクトリ パスを入力します。 たとえば、/vmfs/volumes/DatastoreUUID/DatastoreFolder 。 ホストを再起動します。 vSphere Client を使用した永続的スクラッチの場所の構成 vSphere Client を使用して ESXi の永続的スクラッチ領域を構成するには: vSphere Client を使用して、vCenter Server または ESXi ホストに接続します。 インベントリで ESXi ホストをクリックします。 [構成] タブ > [ストレージ] をクリックします。データストアを右クリックして、[参照] をクリックします。 この ESXi ホスト用に一意の名前を持つディレクトリを作成します。 例: 。 locker-ESXHostname
データストア ブラウザを閉じます。 [ソフトウェア] > [詳細設定] をクリックします。[スクラッチ構成] セクションを選択します。ScratchConfig.ConfiguredScratchLocation
構成オプションを変更し、ディレクトリへのフル パスを指定します。 例:/vmfs/volumes/DatastoreUUID /.locker-ESXHostname
注 :データストア UUID を決定するには: [構成] > [ストレージ] に移動します。データストアを選択します。 [データストアの詳細] の下にある [場所] を確認します。 /vmfs/volumes/51dda02d-fade5016-8a08-005056171889 のようなデータストア UUID が表示されます(ここで 51dda02d-fade5016-8a08-005056171889 は UUID です)。 [OK] をクリックします。ESXi ホストをメンテナンス モードにして再起動し、構成の変更を有効にします。 vCLI を使用した永続的スクラッチの場所の構成 vSphere コマンドライン インターフェイスを使用して ESXi の永続的スクラッチ領域を構成するには: 注 :使用方法の詳細については、『 vSphere Command-Line Interface Documentation 』を参照してください。 vCLI がインストールされている場所でコマンド プロンプトを開きます。 次のコマンドを使用して、この ESXi ホストからアクセス可能なデータストアのリストを取得します。vifs.pl connectoptions --listds
例:vifs.pl --server esx_hostname_or_IP --username root --listds
次のコマンドを使用して、この ESXi ホストのための一意の名前を持つディレクトリを作成します。vifs.pl connectoptions --mkdir "[DatastoreName ] DirectoryName "
例:vifs.pl --server esx_hostname_or_IP --username root --mkdir "[Datastore1] .locker-ESXHostname"
次のコマンドを使用して、ScratchConfig.ConfiguredScratchLocation
構成オプションの現在の値を確認します。vicfg-advcfg.pl connectoptions -g ScratchConfig.ConfiguredScratchLocation
例:vicfg-advcfg.pl --server esx_hostname_or_IP --username root -g ScratchConfig.ConfiguredScratchLocation Value of ScratchConfig.ConfiguredScratchLocation is /path/to/location
次のコマンドを使用して、ScratchConfig.ConfiguredScratchLocation
構成オプションを変更し、手順 3 で作成したディレクトリへのフル パスを指定します。vicfg-advcfg.pl connectoptions -s /vmfs/volumes/DatastoreName /DirectoryName ScratchConfig.ConfiguredScratchLocation
例:vicfg-advcfg.pl --server esx_hostname_or_IP --username root -s /vmfs/volumes/Datastore1/.locker-ESXHostname ScratchConfig.ConfiguredScratchLocation
ESXi ホストをメンテナンス モードにして再起動し、構成の変更を有効にします。 PowerCLI 5.1 以降を使用した永続的スクラッチの場所の構成 vSphere PowerCLI インターフェイスを使用して ESXi の永続的スクラッチ領域を構成するには: 注 : 先に進む前に、/tmp/scratch
が存在することを確認します。存在しない場合は、コマンド mkdir /tmp/scratch
を使用して作成します。 vSphere PowerCLI の使用方法の詳細については、『vSphere PowerCLI documentation 』を参照してください。 PowerCLI がインストールされている場所でコマンド プロンプトを開きます。 次のコマンドを使用して ESXi ホストに接続します。connect-viserver esx_hostname_or_IP
次のコマンドを使用して、この ESXi ホストからアクセス可能なデータストアのリストを取得します。Get-Datastore
次のコマンドを使用して、データストアの読み/書きを PSDrive としてマウントします。New-PSDrive -Name "mounteddatastore" -Root \ -PSProvider VimDatastore -Datastore (Get-Datastore "DatastoreName ")
次のコマンドを使用して新しい PSDrive にアクセスします。Set-Location mounteddatastore:\
次のコマンドを使用して、この ESXi ホストのための一意の名前を持つディレクトリを作成します。New-Item "DirectoryName " -ItemType directory
例:New-Item ".locker-ESXHostname" -ItemType directory
次のコマンドを使用して、ScratchConfig.ConfiguredScratchLocation
構成オプションの現在の値を確認します。Get-VMhost | Get-AdvancedSetting -Name "ScratchConfig.ConfiguredScratchLocation"
次のコマンドを使用して、ScratchConfig.ConfiguredScratchLocation
構成オプションを変更し、手順 6 で作成したディレクトリのフルパスを指定します。Get-VMhost | Get-AdvancedSetting -Name "ScratchConfig.ConfiguredScratchLocation" | Set-AdvancedSetting -Value "/vmfs/volumes/DatastoreName /DirectoryName "
例:Get-VMhost | Get-AdvancedSetting -Name "ScratchConfig.ConfiguredScratchLocation" | Set-AdvancedSetting -Value "/vmfs/volumes/Datastore1/.locker-ESXHostname"
プロンプトが表示されたら、[はい] を選択して詳細設定を変更します。 ESXi ホストをメンテナンス モードにして再起動し、構成の変更を有効にします。 Tech Support モードを使用した永続的スクラッチの場所の構成 ESXi で Tech Support モードを使用して ESXi の永続的スクラッチ領域を構成するには: 注 : これはローカル コンソールまたは SSH を介して実行することができます。 .filename
は隠しファイルです。隠しファイルを表示するには、ls -a
コマンドを実行します。 ESXi ホストのコンソールを開きます。詳細については、「Using Tech Support Mode in ESXi 4.1 and 5.0 (1017910) 」を参照してください。 次のコマンドを使用して、この ESXi ホストからアクセス可能なデータストアのリストを取得します。ls /vmfs/volumes
次のコマンドを使用して、この ESXi ホストのための一意の名前を持つディレクトリを作成します。mkdir /vmfs/volumes/DatastoreName /DirectoryName
例:mkdir /vmfs/volumes/Datastore1/.locker-ESXHostname
次のコマンドを使用して、ScratchConfig.ConfiguredScratchLocation
構成オプションの現在の値を確認します。vim-cmd hostsvc/advopt/view ScratchConfig.ConfiguredScratchLocation
例:(vim.option.OptionValue) [ (vim.option.OptionValue) { dynamicType = unset , key = "ScratchConfig.ConfiguredScratchLocation", value = "/path/to/location ", } }
次のコマンドを使用して、ScratchConfig.ConfiguredScratchLocation
構成オプションを変更し、手順 3 で作成したディレクトリへのフル パスを指定します。vim-cmd hostsvc/advopt/update ScratchConfig.ConfiguredScratchLocation string /vmfs/volumes/DatastoreName /DirectoryName
例:/bin/vim-cmd hostsvc/advopt/update ScratchConfig.ConfiguredScratchLocation string /vmfs/volumes/Datastore1/.locker-ESXHostname
ESXi ホストをメンテナンス モードにして再起動し、構成の変更を有効にします。 キックスタート スクリプトを使用するスクリプト化されたインストール中の永続的スクラッチの場所の構成 ディレクトリの作成と構成オプションの変更を実行するキックスタート スクリプトにコマンドを追加することにより、キックスタート インストール中に ESXi の永続的スクラッチ領域を構成することができます。ESXi のスクリプト化されたデプロイの詳細については、『 ESXi Installable and vCenter Server Setup Guide 』を参照してください。 カスタムのキックスタート スクリプトに次のコマンドを追加します。 # Generate a new scratch directory for this host on a Datastore
scratchdirectory=/vmfs/volumes/DatastoreName /.locker-$(hostname 2> /dev/null)-$(esxcfg-info -b 2> /dev/null)
# Create the scratch directory
mkdir -p $scratchdirectory
# Change the advanced configuration option
vim-cmd hostsvc/advopt/update ScratchConfig.ConfiguredScratchLocation string $scratchdirectory
注 :構成されたスクラッチの場所は ESXi ホストの起動中に有効になります。上記のコマンドを実行した後は再起動が必要です。
Additional Information
NFS によりバックアップされたスクラッチを持つホスト上の Cisco Nexus 1000V モジュールをアップグレードする際の既知の問題については、「 Cannot upgrade Cisco Nexus 1000V module on ESXi host configured with NFS backed scratch (2004978) 」を参照してください。 スクラッチ パーティションの詳細については、以下を参照してください。 ホストが 24 時間以上稼働していると、この設定は上記の手順を実行した後に永続的でなくなる場合があります。その場合は、以下の手順を実行してください: ホストをメンテナンス モードにして再起動します。 [構成] タブをクリックします。[ソフトウェア] をクリックします。[詳細設定 ] をクリックします。 [スクラッチ構成] セクションを選択します。ScratchConfig.ConfiguredScratchLocation
の構成オプションを変更し、ディレクトリのフルパスに設定します。 例:/vmfs/volumes/DatastoreName /.locker-ESXHostname
[OK] をクリックします。ウィンドウを閉じます。 [詳細設定] をクリックし、ウィンドウを再度開きます。[スクラッチ構成] セクションを選択します。ScratchConfig.ConfiguredScratchLocation
フィールドに手順 6 で構成したスクラッチ設定が含まれていることを確認します。含まれていない場合はホストを再起動します。 ホストは構成されたスクラッチ パーティションを使用するようになります。ディスク デバイスの判定方法の詳細については、「 Identifying disks when working with VMware ESX (1014953) 」を参照してください。また esxcfg-scsidevs -l
コマンドの出力で Is Local
フラグを確認してください。 Local が true の場合、ストレージ デバイスは複数の ESXi ホスト間で共有することはできません。 Local が false の場合、ストレージ デバイスはリモートで、複数の ESXi ホスト間で共有することができます。リモート デバイスは、ESXi によって自動的にスクラッチに使用されません。 ESXi は、設定した順序に従って起動中にこれらのスクラッチの場所の1 つを選択します。 この記事にある、ScratchConfig.ConfiguredScratchLocation
構成オプションによって設定される、/etc/vmware/locker.conf
構成ファイル内で構成された場所。 ローカルの起動デバイス上の少なくとも 4GB の Fat16 ファイル システム。 ローカル デバイス上の少なくとも 4GB の Fat16 ファイル システム。 .locker/
ディレクトリにあるローカル デバイス上の VMFS データストア。ramdisk /tmp/scratch/.
これらはスクラッチ領域が永続的ストレージ上で自動的に定義されない可能性がある 2 つの例です。いずれの場合も、一時的なスクラッチ場所が ramdisk 上に構成されます。 USB キーを含むフラッシュまたは SD デバイスにデプロイされた ESXi。スクラッチ パーティションは(インストール時に接続されていても)フラッシュまたは SD ストレージ デバイスには作成されません。これは、利用できる読み/書きサイクルが制限される可能性があるためです。 SAN からの起動構成でデプロイされた、または SAS デバイスにデプロイされた ESXi。SAN または SAS LUN からの起動はリモートであると見なされ、複数の ESXi ホスト間で共有することができます。複数の ESXi ホスト間の競合を回避するため、リモート デバイスはスクラッチには使用されません。 ESXi 5.x の syslog の構成の詳細については、「 Configuring syslog on ESXi 5.x (2003322) 」を参照してください。 この記事の翻訳バージョンについては、次を参照してください。 • Español: Crear una ubicación permanente para datos temporales en ESXi (2033130) • Português: Como criar uma área de rascunho persistente para ESXi (2032967) • 日本語: ESXi 4.x および ESX 5.x 環境での scratch の作成 (2042585)
Creating a persistent scratch location for ESXi 4.x/5.x/6.x
Feedback
thumb_up
Yes
thumb_down
No