vSphere SDK for Perl 5.5 から 6.0 へ : 前提条件

vSphere SDK for Perl 5.5 から 6.0 へのアップグレードは、とても簡単です。

初めて導入する場合には、Perl 関連モジュールをいろいろ入れないといけないため、少し時間がかかるかもしれません。

SDK for Perl 5.5 から 6.0 へアップグレードする際の前提条件は、以下の通りです。

  • SDK for Perl 5.5 が既に導入されていること
  • SDK for Perl 5.5 がインストールされている仮想マシンがインターネットにつながっていること (もしくは、プロキシ経由でインターネットが使えること)

上記の2つの条件が揃っていれば、アップグレードは、スムーズに行くと思います。

アップグレードする際に、インタネット経由でモジュールダウンロードが実行されるため、インタネットにつながっている必要があります。 プライベート環境なら、常時インターネットにつながっている必要はないので、アップグレードするときだけ、一時的に使うグローバルがあれば良いです。

Cloud Diagram クラウド構成図

vSphere SDK for Perl アップデート

Step 1. SDK for Perl ダウンロード

まず、my vmware へ接続し、vSphere Perl SDK for vSphere 6.0 をダウンロードし、サーバにアップロードします。

私が使っている環境は、64bit OS を使っていたので、x86_64.tar.gz ファイルをダウンロードしました。

vSphere Perl SDK for vSphere 6.0 ダウンロード

Step 2. SDK for Perl 5.5 から 6.0 へアップグレード

後は、以下を実施し、vSphere SDK for Perl を 5.5 から 6.0 へアップグレードします。

SDK for Perl 5.5 から 6.0 へアップグレード
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ダウンロードしたファイルを解凍
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# tar xvzf VMware-vSphere-Perl-SDK-6.0.0-2503617.x86_64.tar.gz

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
解凍先ディレクトリへ移動
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# cd vmware-vsphere-cli-distrib

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
一応、中身を確認する
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# ls -l
合計 320
-r--r--r--  1 root root 293569  2月 10 08:27 2015 FILES
-r--r--r--  1 root root   3340  2月 10 08:27 2015 Makefile.PL
drwxr-xr-x 10 root root   4096  2月 10 08:27 2015 apps
drwxr-xr-x  2 root root   4096  2月 10 08:27 2015 bin
drwxr-xr-x  3 root root   4096  2月 10 08:27 2015 doc
drwxr-xr-x  2 root root   4096  2月 10 08:27 2015 etc
drwxr-xr-x 41 root root   4096  2月 10 08:27 2015 lib
drwxr-xr-x  2 root root   4096  2月 10 08:27 2015 man
drwxr-xr-x  2 root root   4096  2月 10 08:27 2015 resources
lrwxrwxrwx  1 root root     35  5月 29 14:38 2015 vmware-install.pl -> bin/vmware-uninstall-vSphere-CLI.pl

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
プロキシを使ってない場合には、プロキシを無効にする必要がある
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# export http_proxy=http://127.0.0.1:0000
# export ftp_proxy=http://127.0.0.1:0000

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SDK for Perl 6.0 インストール (アップグレード開始)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# ./vmware-install.pl
A previous installation of vSphere CLI has been detected.

The previous installation was made by the tar installer (version 4).

Keeping the tar4 installer database format.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
新しい vSphere CLI がインストールするか : 「yes」
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
You have a version of vSphere CLI installed.  Continuing will remove it in
preparation for installing a new vSphere CLI.  Do you want to continue?
[yes] yes

Uninstalling the tar installation of vSphere CLI.

File /usr/bin/vmware-cmd is backed up to /usr/bin/vmware-cmd.old.3.

File /usr/bin/vifs is backed up to /usr/bin/vifs.old.1.

The removal of vSphere CLI 5.5.0 build-1384587 for Linux completed
successfully.

Installing vSphere CLI 6.0.0 build-2503617 for Linux.

You must read and accept the vSphere CLI End User License Agreement to
continue.
Press enter to display it.   そのまま 「Enter」

・・・

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ライセンスに合意するか確認を求められたら : 「yes」
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Do you accept? (yes/no) yes

Thank you.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CPAN 経由でモジュールをインストール : そのまま 「Enter」
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
This vSphere CLI installer includes precompiled Perl modules for RHEL.
Answering yes will install the precompiled modules, and answering no will
install from CPAN.
Do you want to install precompiled Perl modules for RHEL?
[yes]

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
実行ファイルの保存先 : そのまま 「Enter」
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
In which directory do you want to install the executable files?
[/usr/bin]

Please wait while copying vSphere CLI files...

The installation of vSphere CLI 6.0.0 build-2503617 for Linux completed
successfully. You can decide to remove this software from your system at any
time by invoking the following command:
"/usr/bin/vmware-uninstall-vSphere-CLI.pl".

This installer has successfully installed both vSphere CLI and the vSphere SDK
for Perl.

The following Perl modules were found on the system but may be too old to work
with vSphere CLI:

MIME::Base64 3.14 or newer
version 0.78 or newer

Enjoy,

--the VMware team

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
アップグレード後のバージョン確認
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# vmware-cmd --version
vSphere SDK for Perl version: 6.0.0
Script 'vmware-cmd' version: 6.0.0

これで、無事にバージョンアップが完了しました。

Step 3. 仮想マシン情報を取得して見る

アップグレードが終わったので、問題なく使えるか簡単に仮想マシン情報を取得して見ましょう。

コマンドを実行するためには、vCenter、及び ESXi ホストへ接続可能な管理者権限を持つログインユーザ ID とパスワードが必要です。

以下を実行し、ESXi ホスト上の仮想マシン情報を取得してみましょう。

ESXi ホスト上の仮想マシン情報取得
# /usr/lib/vmware-vcli/apps/vm/vminfo.pl --url https://ESXi-IP-or-VCENTER-IP/sdk/webService --username [ID] --password [PW] --vmname VM-01

Information of Virtual Machine VM-01

Name:            VM-01
No. of CPU(s):           2
Memory Size:             4096
Virtual Disks:           1
Template:                0
vmPathName:              [DataStore-01] VM-01/VM-01.vmx
Guest OS:                CentOS 4/5/6 (64 ビット)
guestId:                 centos64Guest
Host name:               VM-01
IP Address:              10.100.100.100
VMware Tools:            VMware Tools is running and the version is current
Cpu usage:               0 MHz
Host memory usage:               4000 MB
Guest memory usage:              614 MB
Overall Status:          The entity is OK

接続先によるログイン ID 使い分けについて

・ ESXi ホストへの接続は、root ユーザしかログインできないので、上記のコマンドを試す場合には、root ユーザでログインしないと行けません。

・ 接続先が vCenter の場合には、管理者権限を持つユーザ ID でなければなりません。 そうしないとコマンド実行時に以下のエラーで失敗します。

Error: この操作の実行権限が拒否されました。

vCenter サーバにて SDK for Perl を実行するための専用ユーザを作成し、vSphere Client(または、Web Client)を使って vCenter へ接続して vCenter 権限タブにて管理者権限を与えておくと良いです。

以上、vSphere SDK for Perl 5.5 から 6.0 へアップグレード でした。