LoginSignup
0
1

More than 5 years have passed since last update.

virshでESXi6への接続を確認してみた

Last updated at Posted at 2015-11-25

内容

PacemakerをESXi環境(もしくは、vSphere環境)のゲスト上に構築する場合、ゲスト間のStonithはvirsh(external/libvirt)を利用したESXiホスト経由もしくは、vCenterサーバ経由での実行になります。
某社での質問を契機に、気になったので最新のESXi6単体(vSphere環境ではなくHyperVisor単体です)で、virsh接続が可能なのか確認してみました。
実は、Pacemaker1.1では、virshを経由しないfence_vmware_soapというエージェントも利用出来ますが、今回は未確認です。

 実はネットを探すとlibvirtの古いバージョンでNGな為、対応版のlibvirtを利用する必要があることはわかります。(記載のあったBugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1213345)
 また、記憶が正しければ、この対応されたバージョンは5.5系のEsxに接続出来なくなったような記載があったような・・・最新では治っていると思います・・・

以下にように、RHEL7系と、Fedora23で確認してみました。

  • RHEL7.1及びCentOS7.1からのESXi6ホストへの接続は6系への接続はNG
    • 以下では、RHEL7.1のみを記載していますが、CentOS7.1も同様にNGでした。
    • RHEL7.1は未アップデート、CentOS7.1はアップデート済みでした。
root@rh71-01 ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 7.1 (Maipo)
[root@rh71-01 ~]# virsh -c esx://192.168.3.200/?no_verify=1
192.168.3.200 [root] のユーザー名を入力してください: root
root の 192.168.3.200 のユーザー名を入力してください: 
エラー: ハイパーバイザーへの接続に失敗しました
エラー: 内部エラー: VI API メジャー/マイナーバージョン '2.5', '4.x' または '5.x' が期待されますが、'6.0' が見つかりました

[root@rh71-01 ~]# virsh -V
libvirt の virsh コマンドラインツール 1.2.8
http://libvirt.org/ にあるウェブサイトを参照してください。

以下のサポート付きでコンパイルされました:
ハイパーバイザー: QEMU/KVM LXC ESX Test
ネットワーク: Remote Network Bridging Interface netcf Nwfilter VirtualPort
ストレージ: Dir Disk Filesystem SCSI Multipath iSCSI LVM Gluster
その他: Daemon Nodedev SELinux Secrets Debug DTrace Readline Modular

  • Fedora23からESXi6ホストへの接続はOK - 若干、新しいlibvirtが使われているのでOKのようです。
    • Fedora23はアップデート済みです。
[root@Q1900itx ~]# virsh -V
libvirt の virsh コマンドラインツール 1.2.18.1
http://libvirt.org/ にあるウェブサイトを参照してください。

以下のサポート付きでコンパイルされました:
ハイパーバイザー: QEMU/KVM LXC UML Xen LibXL OpenVZ VMWare PHYP VirtualBox ESX Hyper-V Test
ネットワーク: Remote Network Bridging Interface netcf Nwfilter VirtualPort
ストレージ: Dir Disk Filesystem SCSI Multipath iSCSI LVM RBD Gluster
その他: Daemon Nodedev SELinux Secrets Debug DTrace Readline Modular
[root@Q1900itx ~]# virsh -c esx://192.168.3.200/?no_verify=1
192.168.3.200 [root] のユーザー名を入力してください: root
root の 192.168.3.200 のユーザー名を入力してください: 
virsh にようこそ、仮想化対話式ターミナルです。

入力: 'help' コマンドのヘルプ
      'quit' 終了

virsh # version
コンパイル時に使用したライブラリ: libvirt 1.2.18
使用中のライブラリ: libvirt 1.2.18
使用中の API: ESX 1.2.18
実行中のハイパーバイザー: ESX 6.0.0

なお、vpx指定によるvCenter接続は未確認です。
こちらは、機会があれば確認してみたいと思っています。

また、利用するvirshはESX対応で構築されている必要があります。
利用する場合には、-Vオプションで、ESXが表示されることを確認してください。

(Ubuntu14.04のvirshはESX対応で構築されていないようですので、接続を試すことすらNGでした。)

yamauchi@Q2900-itx:~$ virsh -V
libvirt の virsh コマンドラインツール 1.2.2
http://libvirt.org/ にあるウェブサイトを参照してください。

以下のサポート付きでコンパイルされました:
 ハイパーバイザー: QEMU/KVM LXC UML Xen LibXL OpenVZ VMWare VirtualBox Test
 ネットワーク: Remote Network Bridging Interface netcf Nwfilter VirtualPort
 ストレージ: Dir Disk Filesystem SCSI Multipath iSCSI LVM RBD Sheepdog
 その他: Daemon Nodedev AppArmor Secrets Debug Readline Modular

yamauchi@Q2900-itx:~$ virsh -c esx://192.168.3.200/?no_verify=1
エラー: ハイパーバイザーへの接続に失敗しました
エラー: サポートされない設定: libvirt が 'esx' ドライバーなしでビルドされました

追加で、出たばかりのRHEL7.2(未アップデート)で確認してみましたが、OKでした。

[root@rh72-test ~]# virsh -V
libvirt の virsh コマンドラインツール 1.2.17
http://libvirt.org/ にあるウェブサイトを参照してください。

以下のサポート付きでコンパイルされました:
ハイパーバイザー: QEMU/KVM LXC ESX Test
ネットワーク: Remote Network Bridging Interface netcf Nwfilter VirtualPort
ストレージ: Dir Disk Filesystem SCSI Multipath iSCSI LVM RBD Gluster
その他: Daemon Nodedev SELinux Secrets Debug DTrace Readline Modular
[root@rh72-test ~]# virsh -c esx://192.168.3.200/?no_verify=1
192.168.3.200 [root] のユーザー名を入力してください: root
root の 192.168.3.200 のユーザー名を入力してください: 
virsh にようこそ、仮想化対話式ターミナルです。

入力: 'help' コマンドのヘルプ
      'quit' 終了

virsh # version
コンパイル時に使用したライブラリ: libvirt 1.2.17
使用中のライブラリ: libvirt 1.2.17
使用中の API: ESX 1.2.17
実行中のハイパーバイザー: ESX 6.0.0


なお、virshによる接続後の実際の電源操作(startなど)に関しては、無償版のESXi6では利用できないので注意してください。
Essential以上のライセンスが必要らしいです。

[root@rh72-test ~]# virsh -c esx://xxx.xx.xx.xx/?no_verify=1
Welcome to virsh, the virtualization interactive terminal.

Type:  'help' for help with commands
       'quit' to quit

virsh # list --all 
 Id    Name                           State
----------------------------------------------------
 1     rh72-01                        running
 2     rh67-stone                     running
 -     rh72-02                        shut off

virsh # start rh72-02
error: Failed to start domain rh72-02
error: internal error: HTTP response code 500 for call to 'PowerOnVM_Task'. Fault: ServerFaultCode - Current license or ESXi version prohibits execution of the requested operation.

以上です。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1