Skip navigation
2013

こんな記事を見つけました。パッチ適用について解説されています。

 

Understanding ESXi Patches – Size & Patch Bundles
http://blogs.vmware.com/vsphere/2013/04/understanding-esxi-patches-size-patch-bundles.html


簡単にまとめると・・・

 

ESXi のパッチ適用は「イメージ プロファイル」全体の置き換えになるので、
パッチを適用するたびにハイパーバイザが使用する容量が増えたりしない。
※ESXi 全体容量が若干増加することはありますが、
 適用するたびに以前のファイルが残って容量が増えたりはしない、ということです。

 

これは、アップデート(ESXi510-201212001 のようなパッチ適用)でも、
アップグレード(ESXi 5.0 → ESXi 5.1)でも同じ。

 

ESXi のパッチ適用は、2つのブートバンクパーティションを使ったロールバックができる。

 

修正版(VIB 単位で提供されている)には、
セキュリティフィックス(SG)とバグフィックス(BG)がある。
BG には、SG も含まれている。

※VIB は、ESXi のモジュールのこと。Red Hat での RPM のようなものです。

 

パッチのセキュリティ修正も、バク修正も累積的で、
後にリリースされたパッチには、以前の修正が含まれる。

 

詳しくは原文をどうぞ・・・

 

ちなみに、
記事の中にあるブートバンク(boot bank partitions)は、ESXi からは、

 

  • Primary Boot Bank → /bootbank
  • Alternate Boot Bank → /altbootbank


として見えます。

 

Primary Boot Bank が現在の ESXi イメージで、
Alternate Boot Bank にはパッチ適用前のイメージが格納されます。
パッチ適用前の ESXi イメージにロールバックしたい場合は、ESXi の起動画面(下記)で Shift + R を押します。

esxi_boot_shift_r.png

 

ためしに、違うバージョンの ESXi で、ブートバンクのパーティションを見てみました。

実際は 130MB 程度しか使用していません。

 

ESXi 5.0

~ # vmware -v
VMware ESXi 5.0.0 build-623860

~ # ls -l /bootbank /altbootbank
lrwxrwxrwx    1 root     root  49 Apr  5 05:22 /altbootbank -> /vmfs/volumes/83e5a376-53913a73-000b-c189f76f34ab
lrwxrwxrwx    1 root     root  49 Apr  5 05:22 /bootbank -> /vmfs/volumes/6ea24f7e-79ac5e6f-8f9a-c984ff2c64ed


~ # df -h
Filesystem   Size   Used Available Use% Mounted on
VMFS-5       3.0G 625.0M      2.4G  20% /vmfs/volumes/ds_local_esxi501
vfat         4.0G  20.4M      4.0G   0% /vmfs/volumes/5133df94-58d56db2-557d-000c29f64fbb
vfat       249.7M 126.4M    123.3M  51% /vmfs/volumes/6ea24f7e-79ac5e6f-8f9a-c984ff2c64ed
vfat       249.7M 139.8M    109.9M  56% /vmfs/volumes/83e5a376-53913a73-000b-c189f76f34ab

vfat       285.8M 179.8M    106.1M  63% /vmfs/volumes/5133df8b-ac86a44a-da7e-000c29f64fbb

 

 

ESXi 5.1

~ # vmware -v
VMware ESXi 5.1.0 build-838463

~ # ls -l /bootbank /altbootbank
lrwxrwxrwx    1 root     root  49 Apr 24 22:51 /altbootbank -> /vmfs/volumes/2f4c5d7c-b6dcf4de-c73e-929023028db4
lrwxrwxrwx    1 root     root  49 Apr 24 22:51 /bootbank -> /vmfs/volumes/8c5de477-c38a8e6f-d788-e67366ddce88

 

~ # df -h
Filesystem   Size   Used Available Use% Mounted on
VMFS-5       3.0G 831.0M      2.2G  27% /vmfs/volumes/ds_esxi01
vfat         4.0G  15.1M      4.0G   0% /vmfs/volumes/51166f8f-87bb8f52-a114-000c29013d16
vfat       249.7M 130.2M    119.5M  52% /vmfs/volumes/8c5de477-c38a8e6f-d788-e67366ddce88
vfat       249.7M   8.0K    249.7M   0% /vmfs/volumes/2f4c5d7c-b6dcf4de-c73e-929023028db4
vfat       285.8M 201.9M     83.9M  71% /vmfs/volumes/51166f87-ee697d6a-0a9f-000c29013d16

 

以上、ESXi のパッチについてでした。

今回は、vCenter の設定を PowerCLI で取得してみます。

 

vSphere Client の「管理」→「vCenter Server 設定」のあたりで見られるものをテキスト化できるので、

たとえば、パラメータシート作成や、設定確認などの時にちょっと楽できるのではないかと思います。

 

さっそくですが、下記のようなコマンドラインで、vCenter の設定が表示できます。

IP アドレスが「192.168.5.52」の vCenter に接続しています。

 

※「Connect-VIServer」ではユーザ/パスワードを求められるので入力します。

PowerCLI C:\> $vc = Connect-VIServer -Server 192.168.5.52
PowerCLI C:\> $vcseting = get-view (Get-View $vc).Content.Setting
PowerCLI C:\> $vcseting.Setting

 

結果は下記のように表示されます。

vc_setting1.png

 

これは、vSphere Client で見られる情報(下記の画面)と同じはずです。

vc_setting2.png


PowerCLI は PowerShell ベースなので
ただ標準出力するだけでなく、CSV や HTML にも変換できます。

 

最初のコマンド実行例の、最後のコマンド(3行目)からを、下記のように変更します。

どちらの例も、事前に作成しておいた「c:\work」フォルダにファイル保存して

最初の数行(-First で指定した行数)だけ表示しています。

 

CSV 形式でファイル保存

PowerCLI C:\> $vcseting.Setting | select Key,Value | Export-Csv -NoTypeInformation "c:\work\vc_setting.csv"
PowerCLI C:\> cat c:\work\vc_setting.csv | select -First 10
"Key","Value"
"ads.checkInterval","1440"
"ads.checkIntervalEnabled","True"
"ads.maxFetch","5000"
"ads.maxFetchEnabled","True"
"ads.timeout","60"
"AgentUpgrade.autoUpgradeAgents","True"
"AgentUpgrade.checkPeriodSeconds","30"
"alarms.upgraded","False"
"alarms.version","20"


HTML 形式でファイル保存

PowerCLI C:\> $vcseting.Setting | select Key,Value | ConvertTo-Html | Out-File "C:\work\vc_setting.html"
PowerCLI C:\> cat c:\work\vc_setting.html | select -First 20
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>HTML TABLE</title>
</head><body>
<table>
<colgroup>
<col/>
<col/>
</colgroup>
<tr><th>Key</th><th>Value</th></tr>
<tr><td>ads.checkInterval</td><td>1440</td></tr>
<tr><td>ads.checkIntervalEnabled</td><td>True</td></tr>
<tr><td>ads.maxFetch</td><td>5000</td></tr>
<tr><td>ads.maxFetchEnabled</td><td>True</td></tr>
<tr><td>ads.timeout</td><td>60</td></tr>
<tr><td>AgentUpgrade.autoUpgradeAgents</td><td>True</td></tr>
<tr><td>AgentUpgrade.checkPeriodSeconds</td><td>30</td></tr>
<tr><td>alarms.upgraded</td><td>False</td></tr>
<tr><td>alarms.version</td><td>20</td></tr>

 

ちなみに、今回コマンドを実行した vCenter のバージョンは5.1ですが、5.0でもいけます。

PowerCLI C:\> $vc.Version
5.1

 

★もう少し簡単なコマンドラインもあったので、こちらもどうぞ。

PowerCLI で vCenter 設定情報を取得(簡易版)

 

以上、vCenter の設定を PowerCLI で確認してみました。