目次
VMware Tools Collection(VMware Tools OS Specific Package)
VMware ToolsのYUMリポジトリです。
VMware Toolsのインストールおよび更新をYUMスタイルでコントロールできるようになります。
- これはインストール時の手間・デプロイの仕方・更には任意のタイミングでの更新といった点にメリットがあります。
VMwareToolsセットアップ
リポジトリ名 |
デフォルト |
GPGパス |
所属パッケージ |
vmware-tools-collection |
有効(とする) |
- |
なし |
CentOS7環境
不要。代わりに標準提供されてるopen-vm-toolsを使用すること。
全CentOS共通(CentOS6以下)
# rpm --import https://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub
# cat<<'EOF' > /etc/yum.repos.d/vmware-osps.repo
[vmware-tools-collection]
name=VMware Tools Operating System Specific Packages for Red Hat Enterprise Linux $releasever - $basearch
baseurl=https://packages.vmware.com/tools/esx/latest/rhel$releasever/$basearch
enabled=1
gpgcheck=1
EOF
- ※2018年06月15日付けで(たぶん)、GPG鍵が更新されたみたいです(アナウンスは見つけることができなかった)。
- ※旧鍵は下記のようにしてインストールできますが、新環境では不要です。
- YUMアップデートしてみたら、鍵がない!と言われたら、上述のGPG鍵のインポートを実施してください。
# rpm --import https://packages.vmware.com/tools/legacykeys/VMWARE-PACKAGING-GPG-RSA-KEY.pub
# rpm --import https://packages.vmware.com/tools/legacykeys/VMWARE-PACKAGING-GPG-DSA-KEY.pub
メモ
このYUMリポジトリは一応、rpm -Uvh https://packages.vmware.com/tools/esx/latest/repos/vmware-tools-repo-RHELn-x.y.z-1.eln.arch.rpm (nはOSメジャーバージョン、archは x86_64 または i686、x.y.zは VMware Tools のバージョン)という形でセットアップすることは可能ですが、以下の理由で、このセットアップ方法を推奨しません。
- このパッケージ名の「維持」が保証されてない(消える)。よって上記URLは時間の経過とともに変わります。
- CentOS4が考慮されていません(RPMが存在しない)。
アーキテクチャ非依存(/etc/yum.repos.d/vmware-osps.repoしか無い)にも関わらず、そのように整理されていません。
- GPG鍵がRSA鍵分しか入っておらず、DSA鍵のパッケージのことを考慮していません。
baseurlの指定が最新のバージョンを指していません。
幸いGPG鍵の更新は2011年から無いようですが、YUMアップデート時に必要があれば、https://packages.vmware.com/tools/keys/ を参照してください。
- ※2018年06月15日付けで(たぶん)、GPG鍵が更新されたようです。2019年07月01日現在、上記URLに変化はありません。
VMwareToolsインストール例
- CentOS4/CentOS5では、VMware Toolsインストール後、準仮想化ドライバが使用できるようになります。
- よってOS停止後に、vSphere Client(ないしはWeb Client等)でドライバの切り替えを行うこと。
- CentOS6/CentOS7では、準仮想化ドライバがOS標準で組み込まれているため、準仮想化ドライバを使用してインストールします。
よって準仮想化ドライバ(vmware-tools-esx-kmods)のインストールは不要です。
デバイスの動的追加(Hot Add)/動的削除(Hot Remove)の対応を行うため、modprobe周りの設定を追加します。
具体的にはacpiphpを組み込む作業となります。綺麗に入れる方法がわからなかったので、可能な限り作法に則って、強引に作業しています。
OS |
PVSCSI 準仮想化ドライバ |
VMXNET3 準仮想化ドライバ |
VMXNET2拡張 準仮想化ドライバ |
CentOS7 |
◎ |
◎ |
- |
CentOS6 |
◎ |
◎ |
- |
CentOS5 |
○ |
○ |
- |
CentOS4 |
× |
× |
○ |
◎:OS標準提供(インストール時から使用可能)。 ○:YUMリポジトリ提供(インストール後に切り替えて使用可能) ×:未対応 -:対象外(より上位のドライバを使用する)
CentOS7
CentOS7のインストールは pvscsi/vmxnet3 ドライバで実施します。
# yum -y install open-vm-tools
※acpiphp の明示的な組み込みは不要。標準で入るようになっていることを確認した。
CentOS6
CentOS6のインストールは pvscsi/vmxnet3 ドライバで実施します。
# yum -y install vmware-tools-esx-nox
# rm -rf /tmp/vmware-* /tmp/vgauth*
※acpiphp の明示的な組み込みは不要。標準で入るようになっていることを確認した。
CentOS5
CentOS5のインストールはe1000ドライバで実施します。その後、vmxnet3 ドライバをインストールして移行します。
# yum -y install vmware-tools-esx-nox vmware-tools-esx-kmods
※下記設定差分を適用
# vi /etc/modprobe.conf
# echo "/sbin/modprobe -qi acpiphp" > /etc/rc.modules
# chmod +x /etc/rc.modules
※作業ファイルの削除
# rm -rf /tmp/vmware-* /tmp/vgauth*
/etc/modprobe.conf(CentOS5)
--- /etc/modprobe.conf.orig 2016-08-22 06:02:13.000000000 +0900
+++ /etc/modprobe.conf 2016-08-22 06:48:41.000000000 +0900
@@ -6,8 +4,6 @@
-alias scsi_hostadapter mptbase
-alias scsi_hostadapter1 mptsas
-alias eth0 e1000
-alias eth1 e1000
-alias scsi_hostadapter2 ata_piix
+alias scsi_hostadapter pvscsi
+alias eth0 vmxnet3
+alias eth1 vmxnet3
alias net-pf-10 off
alias ipv6 off
options ipv6 disable=1
この例ではeth0, eth1の2NICインストールしている例となります。 またSCSIホストアダプターをpvscsiのみとしています。 必要があれば(無いとは思いますが)、mptbase, mptsasを追加してください。 もしかしたら、CD/DVD-ROMイメージのためにata_piixが別途必要かも知れません。
CentOS4
CentOS4のインストールはe1000ドライバで実施します。その後、vmxnet2eドライバをインストールして移行します。
# yum -y install vmware-tools-esx-nox vmware-tools-esx-kmods-up vmware-tools-esx-kmods-smp
※下記設定差分を適用
# vi /etc/modprobe.conf
# echo "/sbin/modprobe -qi acpiphp" > /etc/rc.modules
# chmod +x /etc/rc.modules
※作業ファイルの削除
# rm -rf /tmp/vmware-* /tmp/vgauth*
※念のためハードウェアプロファイル情報の削除(kudzu 対策)
# rm -f /etc/sysconfig/hwconf
/etc/sysconfg/hwconfの削除はe1000→vmxnet2e入れ替えのための作業によるもので、YUMアップデートする度に実行する必要はありません。
/etc/modprobe.conf(CentOS4)
--- /etc/modprobe.conf.orig 2016-08-22 06:02:13.000000000 +0900
+++ /etc/modprobe.conf 2016-08-22 06:48:41.000000000 +0900
@@ -3,8 +3,8 @@
alias scsi_hostadapter2 mptspi
alias scsi_hostadapter3 mptsas
alias scsi_hostadapter4 mptscsih
-alias eth0 e1000
-alias eth1 e1000
+alias eth0 vmxnet
+alias eth1 vmxnet
alias scsi_hostadapter5 ata_piix
# Beginning of the block added by the VMware software
install pcnet32 /sbin/modprobe -q --ignore-install vmxnet; /sbin/modprobe -q --ignore-install pcnet32 $CMDLINE_OPTS
この例ではeth0, eth1の2NICインストールしている例となります。 なお、NICの追加はそのまま「vmxnet2e」で問題ありません。 一々e1000で設定して切り替え…という手順は不要です。