vSphere 6.5 から遂に vSphere Client (C# クライアント) が廃止になりました。これにより、HTML5 ベースで実装された Host Client がサポートされる唯一の ESXi 向けのクライアントとなります。Host Client は、VMware の R&D のお試しソフトウェアを公開するサイト Flings で最初公開されました。その後、版を重ね ESXi 6.0U2 で初めて製品に組み込まれ、ESXi 6.5 では GA から標準のクライアントとなりました。そして ESXi 5.5 Patch 08 から、遂に 5.5 系統でも Host Client が含まれるようになりました。

ESXi 5.5, 6.0 では継続して vSphere Client (C#) を利用することが出来ます。

Host Client は、vSphere Client の完全な置き換え、すなわち、vSphere Client の機能を全て移植するものではありません。ESXi を単体で操作するのに必要十分な vSphere Client の機能や、 vSphere Client には無かったが Host Client にはある便利機能が追加されていたりします。仮想マシンのログファイル (vmware.log) の参照などは、その際足る例となります。

小ネタ

Host Client は ESXi 上の Web Application として実装され、hostd、および、多くの JavaScript から実装されています。これは ESXi の /usr/lib/vmware/hostd/docroot/ui の中身や、Host Client の画面のソースから確認することができます。

    >  find /usr/lib/vmware/hostd/docroot/ui | grep js$
    /usr/lib/vmware/hostd/docroot/ui/thirdparty/vspherejs
    /usr/lib/vmware/hostd/docroot/ui/thirdparty/vspherejs/index.js
    /usr/lib/vmware/hostd/docroot/ui/scripts/main.js
    /usr/lib/vmware/hostd/docroot/ui/scripts/angular-mocks.js
    /usr/lib/vmware/hostd/docroot/ui/scripts/karma-jasmine.js
    /usr/lib/vmware/hostd/docroot/ui/scripts/i18n-js
    /usr/lib/vmware/hostd/docroot/ui/scripts/i18n-js/shims.js
    /usr/lib/vmware/hostd/docroot/ui/scripts/i18n-js/translations.js
    /usr/lib/vmware/hostd/docroot/ui/scripts/jasmine-jquery.js
    /usr/lib/vmware/hostd/docroot/ui/scripts/bootstrap-datetimepicker.js
    /usr/lib/vmware/hostd/docroot/ui/scripts/stackframe.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/es6-promise/es6-promise.min.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/i18n-js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/i18n-js/app/assets/javascripts/i18n.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/es6-shim/es6-shim.min.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/requirejs
    /usr/lib/vmware/hostd/docroot/ui/bower_components/requirejs/require.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/jquery/dist/jquery.min.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/jxon/index.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/file-saver.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/file-saver.js/FileSaver.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/jquery-ui/jquery-ui.min.js
    /usr/lib/vmware/hostd/docroot/ui/bower_components/ipaddr/ipaddr.min.js

ESXi 6.5 の場合、ESXi への HTTP(S) アクセスは、リバース プロキシ rhttpproxy で受けられ /etc/vmware/rhttpproxy/endpoints.conf に従い ESXi 内部でフォワードされます。endpoints.conf には Host Client のパスである /ui がないため、/ が適用されます。ポート 8309 は hostd のワーカーが開いており、これが HTTP(S) のリクエストを捌きます。

C# -> HTML5

ESX/ESXi も誕生から 10 年以上が経ちますが、痛みを伴いながらも技術の移り変わりに追随しているところに好感を持つことが出来ます。たまに時代を読み間違えてしまうこともありますが…Orz (Fle? etc。今後は Flex をベースとした vSphere Web Client が、HTML5 をベースとした vSphere Client に移り変わっていきます。この HTML 5 ベースの vSphere Client は、Anglar 2 をベースとした VMware 謹製のライブラリ Clarity System Design をベースとしています。すでに vRealize Log Insight が Clarity ベースに移行したように、今後 Host Client も緩やかに Clarity に移行すると良いな、と思う次第であります。

最後に、各 ESXi バージョンのビルドと Host Client のバージョン/ビルドを並べてみました。…結構バラバラなのと、ESXi 6.5 EP01 は何かミスったかしらと疑わしい感がありますが、ESXi のバージョンによって Host Client で出来ることが異なっている !! という場合には、Host Client の総本山 Flings のサイトの Changelog を参照して頂ければ、正確ではありませんが大まかな機能差分を確認することができます。

以下に、ESXi と Host Client のバージョンの組み合わせを列挙します。

ESXi 6.5

Date U P EP ESXi Build Host Client Version Host Client Build
2016/11/15 GA 4602587 1.8.0 4516221
2017/02/02 01 4887370 1.8.0 4516221
2017/03/14 01 5146846 1.15.0 5069532
2017/03/28 01a 5224529 1.15.0 5069532
2017/04/18 02 5310538 1.18.0 5270848

ESXi 6.0

Date U P EP ESXi Build Host Client Version Host Client Build
2015/03/12 GA 2494585 - -
2015/04/09 01 2615704 - -
2015/05/14 02 2715440 - -
2015/07/07 01 2809209 - -
2015/09/10 U1 3029758 - -
2015/10/06 03 3073146 - -
2015/11/25 04 3247720 - -
2016/01/07 02 3380124 - -
2016/02/23 05 3568940 - -
2016/03/15 U2 3620759 1.0.0 3617585
2016/05/12 06 3825889 1.0.0 3617585
2016/08/04 03 4192238 1.4.0 3959074
2016/10/17 07 4510822 1.4.0 3959074
2016/11/22 04 4600944 1.9.0 4392584
2017/02/24 U3 5050593 1.14.0 4940836
2017/03/28 07a 5224934 1.14.0 4940836

ESXi 5.5

Date U P EP ESXi Build Host Client Version Host Client Build
2013/12/22 GA 1331820 - -
2013/12/22 01 1474526 - -
2014/03/11 U1 1623387 - -
2014/04/19 02 1746018 - -
2014/04/19 03 1746974 - -
2014/06/10 04 1881737 - -
2014/07/01 02 1892794 - -
2014/09/09 U2 2068190 - -
2014/10/15 03 2143827 - -
2014/12/02 05 2302651 - -
2015/01/27 04 2403361 - -
2015/02/05 06 2456374 - -
2015/04/07 07 2638301 - -
2015/05/08 05 2718055 - -
2015/09/16 U3 3029944 - -
2015/10/06 U3a 08 3116895 - -
2015/12/08 U3b 07 3248547 - -
2016/01/04 09 3343343 - -
2016/02/21 10 3568722 - -
2016/08/04 08 4179633 1.2.0 3845898
2016/09/15 09 4345813 1.8.0 4277191
2016/12/20 10 4722766 1.12.0 4722375
2017/03/28 11 5230635 1.12.0 4722375

Flings

Date Fling Host Client Version Host Client Build
1 0.1.0 2976804
2 0.1.0 3023372
3 0.1.0 -
4 0.1.0 -
5 0.1.0 3530804
2016/03/04 6 0.6.0 3623722
2016/04/04 7 1.1.0 3731936
2016/05/02 8 1.3.0 3841871
2016/06/06 9 1.5.0 3976049
2016/07/28 10 1.7.0 4186463
2016/08/02 10.1 1.7.1 4215448
2016/09/09 11 1.8.1 4355717
2016/09/16 12 1.9.1 4393350
2016/10/06 13 1.10.0 4478863
2016/10/10 13.1 1.10.1 4493986
2016/12/09 14 1.13.0 4762574
2017/01/27 15 1.16.0 4974903
2017/03/20 16 1.17.0 5214684

参照