(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【VMware】ESXiホストと仮想マシンでCPU情報を確認する

スポンサーリンク

はじめに

ESXiをインストールした実機のCPUと仮想マシンに割り当てたCPUは、vCenterではどのように見えて、実機上ではどのように見えるのかを確認した結果を投入コマンドと共に備忘録として記しました。

環境情報
  • VMWare 6.5

vCenter上で確認したESXiホスト/仮想マシンのCPU

ESXiはvCenterの画面のサマリ欄にて以下の情報確認。

CPUコア 12 CPU x 1,7GHz
プロセッサタイプ Intel(R) Xeon(R) CPU E5-2603 v4 @ 1.70GHz
ソケット 2
ソケットあたりのコア 6
論理プロセッサ 12
ハイパースレッディング 対象外

また、同ESXiで動作している仮想マシンの情報は以下のように確認できました。

CPU 2
ソケットあたりのコア 1
ソケット 2

実機での確認コマンドとその結果

ESXiホストにSSHでログインし、12CPUと表示されることを確認します。

確認には内蔵されているvim-vmdコマンドを利用。ちなみに、実体は/bin/hostdの模様。

# ls -l /bin/vim-cmd
lrwxrwxrwx 1 root root ... /bin/vim-cmd -> /bin/hostd

引数はhostsvc/hosthardwareとし、大量に画面出力されるのでlessを入れています。

# vim-cmd hostsvc/hosthardware | less
(vim.host.HardwareInfo) {
....
  cpuInfo = (vim.host.CpuInfo) {
   numCpuPackages = 2
   numCpuCores = 12
   numCpuThreads = 12
   hz = 1699998622
   },

CPUの全体像として、2つのソケットで計12コアあることが確認できます。

そこからさらに下を見ていくと各ソケットが(vim.host.CpuPackage) として記載されています。

# vim-cmd hostsvc/hosthardware | less
...
cpuPkg = (vim.host.CpuPackage) [
 (vim.host.CpuPackage) {
  index = 0
  ...
  description = "Intel(R) Xeon(R) CPU ES-2603 v4 @ 1.70GHz",
  threadID = (short) [
   0,1,2,3,4,5
   ],
...
(vim.host.CpuPackage) {
  index = 1
  ...
  description = "Intel(R) Xeon(R) CPU ES-2603 v4 @ 1.70GHz",
  threadID = (short) [
   6,7,8,9,10,11
   ],
....

次にESXi上の仮想マシン(RHEL)を確認します。

LinuxのマシンにSSHでログインをし、以下ファイルを確認。同ファイルはrootでも読み取り専用の珍しいファイルです。

# ls -l /proc/cpuinfo
-r--r--r-- X root root .... /proc/cpuinfo

中を見るとCPUに関する情報がつらつらと表示されますが

# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
model : 78
model name : Intel(R) Xeon(R) CPU ES-2603 v4 @ 1.70GHz
physcical id : 0
cpu cores : 1
.....
processor : 1
vendor_id : GenuineIntel
model : 78
model name : Intel(R) Xeon(R) CPU ES-2603 v4 @ 1.70GHz
physcical id : 2
cpu cores : 1
....

物理CPUの数はphysical.idとして管理される数です。

# grep physical.id /proc/cpuinfo | sort -u | wc -l
2

割り当て結果と相違ないです。

また、CPUのコア数はcpu coresで確認できます。

終わりに

今回はハイパースレッディングがオフの環境ですが、ここがオンの場合は搭載されているコア以上の値が

numCpuThreads

に記載されます。

以上、ご参考になれば幸いです。