Skip navigation
2015

VMware Photon Linux は、Journald でログ管理されていますが、

デフォルトでは、syslog や rsyslog がインストールされていません。

そこで、システムログの保全のため logger コマンドで Syslog サーバに転送してみました。

 

今回の環境

  • Photon Linux: VMware Photon Linux 1.0 TP1
  • Syslog Server: Oracle Linux 6.6 + rsyslog

 

1. Syslog サーバの準備。

 

まずは、Syslog サーバ側です。

[root@log01 ~]# cat /etc/oracle-release

Oracle Linux Server release 6.6

[root@log01 ~]# rpm -q rsyslog

rsyslog-5.8.10-8.0.1.el6.x86_64

 

rsyslog の設定ファイルを編集して、UDP 514番ポートでログ転送を受け付けるようにします。

/etc/rsyslog.conf ファイルの、「$ModLoad imudp」 と 「$UDPServerRun 514」 のコメントアウト(#)を外しています。

そして、rsyslog を再起動します。

[root@log01 ~]# cp -p /etc/rsyslog.conf rsyslog.conf_bk

[root@log01 ~]# vi /etc/rsyslog.conf

[root@log01 ~]# diff rsyslog.conf_bk /etc/rsyslog.conf

13,14c13,14

< #$ModLoad imudp

< #$UDPServerRun 514

---

> $ModLoad imudp

> $UDPServerRun 514

[root@log01 ~]# service rsyslog restart

システムロガーを停止中:                                    [  OK  ]

システムロガーを起動中:                                    [  OK  ]

 

 

Syslog サーバの、OS のファイアウォール(iptables)でも、

UDP 514番ポートのログ転送を受け付けるようにします。

[root@log01 ~]# vi /etc/sysconfig/iptables

 

/etc/sysconfig/iptables の内容は、下記のようにしました。

※1行だけ追記しています。

# Firewall configuration written by system-config-firewall

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -p udp --dport 514 -j ACCEPT ★追記

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

 

そして iptables も再起動します。

[root@log01 ~]# service rsyslog restart

システムロガーを停止中:                                    [  OK  ]

システムロガーを起動中:                                    [  OK  ]

 

2. Photon Linux からのログ転送。

 

今回の Photon です。

logger コマンドは、デフォルトでインストールされる、util-linux の RPM に含まれるものを使用します。

root [ ~ ]# cat /etc/photon-release

VMware Photon Linux 1.0 TP1

root [ ~ ]# which logger

/usr/bin/logger

root [ ~ ]# rpm -qf /usr/bin/logger

util-linux-2.24.1-1.x86_64

 

Photon Linux から、テストログを転送してみます。

今回の Syslog サーバの IP アドレスは、「192.168.5.237」 にしてあります。

下記のように、logger コマンドを実行すると・・・

root [ ~ ]# logger --udp --port 514 --server 192.168.5.237 "test log"

 

Syslog サーバに転送され、/var/log/messages ファイルにログが出力されます。

192.168.1.31」 は、Photon の IP アドレスです。

[root@log01 ~]# tail -1 /var/log/messages

Jul 31 08:38:09 192.168.1.31 root: test log

 

Photon のシステムログ(Journald のログ)は、下記のように転送できます。

root [ ~ ]# journalctl -f -n 1 | logger --udp --port 514 --server 192.168.5.237

 

Syslog サーバの /var/log/messages

Jul 31 08:38:22 192.168.1.31 root: -- Logs begin at Wed 2015-07-29 23:35:36 JST. --

Jul 31 08:38:22 192.168.1.31 root: Jul 31 08:37:40 photon01 vmafdd[316]: t@139706123613952: VmAfSrvGetDomainName succeeded

Jul 31 08:38:40 192.168.1.31 root: Jul 31 08:38:40 photon01 vmafdd[316]: t@139706123613952: VmAfSrvGetDomainName succeeded

・・・

 

3. Photon Linux からのログ転送を自動開始する。

 

Photon の Systemd で、OS 起動時にログ転送が自動開始されるようにしてみます。

 

まず Photon Linux に、システムログを転送するスクリプトを作成しておきます。

root [ ~ ]# vi /etc/systemd/scripts/logger.sh

root [ ~ ]# chmod +x /etc/systemd/scripts/logger.sh

root [ ~ ]# ls -l /etc/systemd/scripts/logger.sh

-rwxr-xr-x 1 root root 224 Jul 31 07:03 /etc/systemd/scripts/logger.sh

 

スクリプトの内容は下記のようにしてみました。

 

/etc/systemd/scripts/logger.sh

#!/bin/sh

LOG_SERVER=$1

PORT=514

LOGGER_TAG=PHOTON_LOGGER

logger --udp --port $PORT --server $LOG_SERVER -t $LOGGER_TAG "start_logger_script"

journalctl -f -n 1 | logger --udp --port $PORT --server $LOG_SERVER -t $LOGGER_TAG

 

Systemd の Unit ファイルも作成しておきます。

作成したスクリプトは、この Unit ファイル内で指定しています。

※スクリプトの引数にある「log01.godc.lab」は、今回の Syslog サーバのアドレスです。

 

/etc/systemd/system/logger-journald.service

[Unit]

Description=Journald Logger

ConditionFileIsExecutable=/etc/systemd/scripts/logger.sh

After=network-online.target

 

[Service]

ExecStart=/etc/systemd/scripts/logger.sh log01.godc.lab

 

[Install]

WantedBy=multi-user.target

 

Systemd に logger-journald.service という名前でログ転送のサービスを登録して、起動します。

これで、Photon Linux の起動に合わせて、ログ転送されるようになります。

root [ ~ ]# systemctl enable logger-journald.service

Created symlink from /etc/systemd/system/multi-user.target.wants/logger-journald.service to /etc/systemd/system/logger-journald.service.

root [ ~ ]# systemctl start logger-journald.service

 

Syslog サーバには Jouranald のログが転送されて、

/var/log/messages ファイルには、以下のようなログが出力されます。

※下記の例だと Lightwave っぽいログかもしれませんが・・・

Jul 31 08:39:22 192.168.1.31 PHOTON_LOGGER: start_logger_script

Jul 31 08:39:22 192.168.1.31 PHOTON_LOGGER: -- Logs begin at Wed 2015-07-29 23:35:36 JST. --

Jul 31 08:39:22 192.168.1.31 PHOTON_LOGGER: Jul 31 08:39:22 photon01 systemd[1]: Started Journald Logger.

Jul 31 08:39:40 192.168.1.31 PHOTON_LOGGER: Jul 31 08:39:40 photon01 vmafdd[316]: t@139706123613952: VmAfSrvGetDomainName succeeded

・・・

 

以上、Photon のシステムログを Syslog サーバに転送してみる話でした。

VMware Photon Linux は、Journald でログ管理されています。

しかも、syslog はインストールされておらず、

ISO ファイルにも、Yum リポジトリにも syslog や、 rsyslog は用意されていないようです。

root [ ~ ]# cat /etc/photon-release

VMware Photon Linux 1.0 TP1

root [ ~ ]# mount /dev/cdrom /media/cdrom

mount: /dev/sr0 is write-protected, mounting read-only

root [ ~ ]# tdnf repolist

repo id             repo name                               status

photon-iso          VMWare Photon Linux 1.0(x86_64)         enabled

photon-updates      VMware Photon Linux 1.0(x86_64)Updates  enabled

photon-extras       VMware Photon Extras 1.0(x86_64)        enabled

photon              VMware Photon Linux 1.0(x86_64)         enabled

root [ ~ ]# tdnf list syslog rsyslog

Error(1011) : No matching packages to list

root [ ~ ]# tdnf search syslog

Error(1601) : No matches found ★RPM は無い様子。


Journald は、デフォルトで「Storage=auto」なので

CentOS 7.x / RHEL 7.x / Oracle Linux 7.x 同様、ログファイルは永続化されません。

 

デフォルトで保存されるのは、/run/log/journal ディレクトリ配下です。

root [ ~ ]# file /run/log/journal/*/system.journal

/run/log/journal/49ff8ac6e7c34805ba3c9db3afa77eb6/system.journal: Journal file, online, compressed

 

この領域はメモリベースのファイルシステムのため、

OS を再起動するとシステムログが消えてしまいます。

root [ ~ ]# df -h /run

Filesystem      Size  Used Avail Use% Mounted on

tmpfs           497M  496K  497M   1% /run

 

そこで、/var/log/journal ディレクトリ を作成して、Journald を再起動すると、

ログファイルの出力先が変更されて永続化されるようになります。

root [ ~ ]# mkdir /var/log/journal

root [ ~ ]# ls -a /var/log/journal

.  ..  ★まだログファイルはない。

root [ ~ ]# systemctl restart systemd-journald

root [ ~ ]#

root [ ~ ]# ls -a /var/log/journal

root [ ~ ]# file /var/log/journal/*/*

/var/log/journal/49ff8ac6e7c34805ba3c9db3afa77eb6/system.journal: Journal file, online, compressed

 

一方、OS 再起動して、これまでログが出力されていた /run/log ディレクトリを見ると、

journald ディレクトリはなくなり、ここにはログファイルも出力されなくなります。

root [ ~ ]# ls -a /run/log/

.  ..

 

ちなみに、Journald の設定ファイルは /etc/systemd/journald.conf です。

※デフォルトだと、パラメータすべてコメントアウトされています。

root [ ~ ]# cat /etc/systemd/journald.conf

#  This file is part of systemd.

#

#  systemd is free software; you can redistribute it and/or modify it

#  under the terms of the GNU Lesser General Public License as published by

#  the Free Software Foundation; either version 2.1 of the License, or

#  (at your option) any later version.

#

# See journald.conf(5) for details

 

[Journal]

#Storage=auto

#Compress=yes

#Seal=yes

#SplitMode=uid

#SyncIntervalSec=5m

#RateLimitInterval=30s

#RateLimitBurst=1000

#SystemMaxUse=

#SystemKeepFree=

#SystemMaxFileSize=

#RuntimeMaxUse=

#RuntimeKeepFree=

#RuntimeMaxFileSize=

#MaxRetentionSec=

#MaxFileSec=1month

#ForwardToSyslog=no

#ForwardToKMsg=no

#ForwardToConsole=no

#ForwardToWall=yes

#TTYPath=/dev/console

#MaxLevelStore=debug

#MaxLevelSyslog=debug

#MaxLevelKMsg=notice

#MaxLevelConsole=info

#MaxLevelWall=emerg

 

以上、Photon Linux のシステムログの永続化でした。

VMware とは直接関係ありませんが、

Nutanix の Community Edition (Nutanix CE)が公開されました。


Nutanix Community Edition (Public Beta)

http://www.nutanix.com/products/community-edition/


ESXi の上に、Nutanix CE をインストールすることも可能なので、私もためしてみました。

この場合、Nutanix のハイパーバイザと、

その上の CVM(コントロール VM)をまとめて 1つの VM として構築します。


PowerCLI での表示ですが・・・こんな構成です。

nutanix-ce-01.png


ただ、Community Edition とはいえ HW 要件が高めで、

複数台のクラスタを構成してみる物理リソースがありませんでした。

 

そこで、せっかくなので PowerCLI の知見をもとに

CE でも試せるであろう Nutanix 用の PowerShell コマンドレット「Nutanix Cmdlets」を試してみました。

Nutanix の Web UI である「Prism」から、インストーラ「NutanixCmdlets.msi」をダウンロードできます。

nutanix-ce-02.png

 

Nutanix Cmdlets のインストール。

インストールは簡単なので省略・・・

 

Nutanix Cmdlets 環境の準備。

Nutanix Cmdlets をインストール後、

普通に Windows のスタートメニューなどから「NutanixCmdlets」を起動するか、

もしくは、PowerShell を起動後に Nutanix の コマンドレットを読み込むと

Nutanix Cmdlets が実行できるようになります。

今回は、手動でコマンドレットを読み込んでみます。


まず、気分を出すために見た目(背景とプロンプト)を変更してみます。

PS> $Host.UI.RawUi.WindowTitle = "Nutanix Cmdlets"

PS> $Host.UI.RawUi.BackgroundColor = "black"; Clear-Host

PS> function prompt{Write-Host "NTNX" -NoNewLine -ForegroundColor Blue; Write-Host ">" -NoNewLine -ForegroundColor Green;" "}

NTNX>


Nutanix のコマンドレットを読み込みます。

ついでに、Cmdlets のバージョンも確認しておきます。

NTNX> Add-PSSnapin NutanixCmdletsPSSnapin

NTNX> Get-NutanixCmdletsInfo | ft -AutoSize

 

Key            Value

---            -----

version        4.1.2-ce

BuildVersion   1.1.2-release4.1.2-dev-04282015

RestAPIVersion v1

 

ここまでで、こんな感じになります。

nutanix-ce-cmdlets-00.png

 

追加されるたのは、「NutanixCmdletsPSSnapin」というモジュールのコマンドレットです。

結構、たくさん(なんと255個も)あります。

NTNX> (Get-Command -Module NutanixCmdletsPSSnapin).Count

255

 

Nutanix Cmdlets の実行。

 

Nutanix CE に接続してみます。

PowerCLI での 「Connect-VIServer」 に相当するします。

接続先の IP アドレス「192.168.1.92」 は、CVM のものです。

※証明書エラーを回避するため、「-AcceptInvalidSSLCerts」を付けています。

※赤字部分は、手入力しています。

NTNX> Connect-NTNXCluster -AcceptInvalidSSLCerts

 

コマンド パイプライン位置 1 のコマンドレット Connect-NTNXCluster

次のパラメーターに値を指定してください:

(ヘルプを表示するには、「!?」と入力してください。)

Server: 192.168.1.92

UserName: admin

Password:  ★パスワードを入力

[Warning]: Cluster version[2015.07.16] and Cmdlets version[4.1.2-ce] do not match. This might cause some cmdlets to not

function correctly. Do you still want to continue [Y/N]?: Y

 

Server                : 192.168.1.92

UserName              : admin

Password              : ********

AcceptInvalidSSLCerts : True

ParameterSetName      : __AllParameterSets

MyInvocation          : System.Management.Automation.InvocationInfo

PagingParameters      :

InvokeCommand         : System.Management.Automation.CommandInvocationIntrinsics

Host                  : System.Management.Automation.Internal.Host.InternalHost

SessionState          : System.Management.Automation.SessionState

Events                : System.Management.Automation.PSLocalEventManager

JobRepository         : System.Management.Automation.JobRepository

JobManager            : System.Management.Automation.JobManager

InvokeProvider        : System.Management.Automation.ProviderIntrinsics

Stopping              : False

CommandRuntime        : Connect-NTNXCluster

CurrentPSTransaction  :

CommandOrigin         : Runspace

IsConnected           : True


NTNX>

 

冒頭の PowerCLI で表示した Nutanix CE の VM は、

Nutanix Cmdlets で見ると、このような感じになります。

※ESXi 上に作成した VM が、Nutanix CE のホストです。

NTNX> Get-NTNXHost | select name, state, numCpuCores, memoryCapacityInBytes, HypervisorFullName, blockModelName, hypervisorType, serviceVMExternalIP, hypervisorAddress

 

name                  : NTNX-5f45a488-A

state                 : NORMAL

numCpuCores           : 4

memoryCapacityInBytes : 16658726912

hypervisorFullName    : Nutanix 20150513

blockModelName        : CommunityEdition

hypervisorType        : kKvm

serviceVMExternalIP   : 192.168.1.92

hypervisorAddress     : 192.168.1.91

 

VM の一覧を表示してみました。

この環境には、Nutanix で必須の CVM と、それとは別に 2 つの VM(合計 3 VM) を作成してあります。

PowerCLI のコマンドレットでは、取得できる情報がデフォルトで省略(要約)されて表示されることが多いですが、

Nutanix Cmdlets の場合は、省略なしで表示されるようです。

※VM 名だけ、赤字にしてみました。

NTNX> Get-NTNXVM

 

vmId                          : 0005199c-36eb-1100-1146-005056a0691e::090bca93-e455-401f-9a74-622789d0cda7

powerState                    : off

vmName                        : vm01

guestOperatingSystem          :

ipAddresses                   : {}

hypervisorType                : kKvm

hostName                      :

hostId                        :

clusterUuid                   : 0005199c-36eb-1100-1146-005056a0691e

memoryCapacityInBytes         : 536870912

memoryReservedCapacityInBytes : 1073741824

numVCpus                      : 1

cpuReservedInHz               :

numNetworkAdapters            : 1

containerIds                  : {0005199c-36eb-1100-1146-005056a0691e::758}

nutanixVirtualDisks           : {/st-cont-01/.acropolis/vmdisk/b5238c04-678d-4f0c-ad98-6c6ea7a77f97}

nutanixVirtualDiskIds         : {0005199c-36eb-1100-1146-005056a0691e::b5238c04-678d-4f0c-ad98-6c6ea7a77f97}

vdiskNames                    : {0005199c-36eb-1100-1146-005056a0691e::NFS:22}

vdiskFilePaths                : {/st-cont-01/.acropolis/vmdisk/b5238c04-678d-4f0c-ad98-6c6ea7a77f97}

diskCapacityInBytes           : 8589934592

protectionDomainName          :

consistencyGroupName          :

nonNdfsDetails                :

isControllerVm                :

isDisplayable                 :

isAcropolisVm                 :

isRunningOnNdfs               :


vmId                          : 0005199c-36eb-1100-1146-005056a0691e::0cf38f50-bfcc-46a4-af74-aefb0c2504a1

powerState                    : on

vmName                        : NTNX-5f45a488-A-CVM

guestOperatingSystem          :

ipAddresses                   : {192.168.1.92}

hypervisorType                : kKvm

hostName                      : NTNX-5f45a488-A

hostId                        : 0005199c-36eb-1100-1146-005056a0691e::2

clusterUuid                   : 0005199c-36eb-1100-1146-005056a0691e

memoryCapacityInBytes         : 12884901888

memoryReservedCapacityInBytes : 12884901888

numVCpus                      : 2

cpuReservedInHz               :

numNetworkAdapters            : 2

containerIds                  :

nutanixVirtualDisks           : {/dev/sdb}

nutanixVirtualDiskIds         : {0005199c-36eb-1100-1146-005056a0691e::0cf38f50-bfcc-46a4-af74-aefb0c2504a1:scsi.0}

vdiskNames                    : {0005199c-36eb-1100-1146-005056a0691e::/dev/sdb}

vdiskFilePaths                : {/dev/sdb}

diskCapacityInBytes           : 0

protectionDomainName          :

consistencyGroupName          :

nonNdfsDetails                : VM is a Nutanix CVM

isControllerVm                :

isDisplayable                 :

isAcropolisVm                 :

isRunningOnNdfs               :


vmId                          : 0005199c-36eb-1100-1146-005056a0691e::f150b578-11f8-414f-8e4f-62c67946000e

powerState                    : on

vmName                        : vm02

guestOperatingSystem          :

ipAddresses                   : {192.168.1.5}

hypervisorType                : kKvm

hostName                      : NTNX-5f45a488-A

hostId                        : 0005199c-36eb-1100-1146-005056a0691e::2

clusterUuid                   : 0005199c-36eb-1100-1146-005056a0691e

memoryCapacityInBytes         : 536870912

memoryReservedCapacityInBytes : 536870912

numVCpus                      : 1

cpuReservedInHz               :

numNetworkAdapters            : 1

containerIds                  : {0005199c-36eb-1100-1146-005056a0691e::758}

nutanixVirtualDisks           : {/st-cont-01/.acropolis/vmdisk/d58f6410-008d-4083-ab32-b7ff2af1721d}

nutanixVirtualDiskIds         : {0005199c-36eb-1100-1146-005056a0691e::d58f6410-008d-4083-ab32-b7ff2af1721d}

vdiskNames                    : {0005199c-36eb-1100-1146-005056a0691e::NFS:57174}

vdiskFilePaths                : {/st-cont-01/.acropolis/vmdisk/d58f6410-008d-4083-ab32-b7ff2af1721d}

diskCapacityInBytes           : 8589934592

protectionDomainName          :

consistencyGroupName          :

nonNdfsDetails                :

isControllerVm                :

isDisplayable                 :

isAcropolisVm                 :

isRunningOnNdfs               :

 

NTNX>

 

下記のように、いくつかのプロパティに絞ると見やすいかもしれません。

NTNX> Get-NTNXVM | select vmName,PowerState,numVCpus,memoryCapacityInBytes | sort vmName | ft -AutoSize

 

vmName              powerState numVCpus memoryCapacityInBytes

------              ---------- -------- ---------------------

NTNX-5f45a488-A-CVM on                2           12884901888

vm01                off               1             536870912

vm02                on                1             536870912

 

ちなみに、PowerCLI の Get-VM での VM 一覧取得 だと、デフォルトだと下記のような感じで表示され、

逆に、詳細な情報がほしい場合はオプションを付けてコマンドレットを実行します。

こういった違いに、ツールの個性を感じます・・・

PowerCLI> Get-VM

 

Name PowerState Num CPUs MemoryGB

---- ---------- -------- --------

vm01 PoweredOn  1        1.000

vm02 PoweredOn  1        0.500

vm03 PoweredOff 1        0.500

 

とりあえず、vm01 をパワーオンしてみます。

NTNX> Get-NTNXVM -SearchString "vm01" | Set-NTNXVMPowerOn

 

taskUuid

--------

2789a91f-9a98-4f50-bd88-d010bd54fc98

 

NTNX> Get-NTNXVM | select vmName,PowerState,numVCpus,memoryCapacityInBytes | sort vmName | ft -AutoSize

 

vmName              powerState numVCpus memoryCapacityInBytes

------              ---------- -------- ---------------------

NTNX-5f45a488-A-CVM on                2           12884901888

vm01                on                1             536870912

vm02                on                1             536870912

 

とりあえず、ここまでです。

 

PowerCLI ユーザ的な Nutanix Cmdlets の感想。

まだ使い込めていませんが、

普段使っている PowerCLI よりも、玄人志向なツールな感じがしました。

同じ PowerShell ベースのツールなのですが、コマンドレットの使い勝手が結構ちがい、

「PowerCLI ができるから Nutanix Cmdlets も使える」 とまではいかない印象をうけました。

本気で(実務で)扱うとなると、シミュレータとして CE のようなツールがあるのは重要になるだろうと思います。

 

今回の発見をいくつか・・・

  • だいたいのコマンドレットは 名詞(Noun)部分が NTNX から始まる。
    関係あるコマンドレットか判別しやすく、一般のコマンドレット、PowerCLI コマンドレットなどと混在していても見分けやすい。
  • Get- 系コマンドレットで参照できるプロパティの名前でも、PowerCLI とは結構違いがある。
    参照だけでも、多少、慣れがいるかもしれない。
  • いろいろ PowerShell ベースのツールを使いこなすためには、
    PowerCLI ばかりでなく PowerShell 自体の勉強も大事だと思った。

 

以上、PowerCLI ユーザが Nutanix CE & Cmdlets を使用してみた話でした。

Docker Hub Registry にて VMware Photon Linux イメージ発見しました。

 

vmware / photon (Docker Hub)

https://registry.hub.docker.com/u/vmware/photon/

dockerhub-photon-00.png

 

そこで、ためしに Pull してみました。

まず、Photon ホスト(ALL インストール)で、Docker を有効化します。

root [ ~ ]# cat /etc/photon-release

VMware Photon Linux 1.0 TP1

root [ ~ ]# systemctl enable docker

Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /lib/systemd/system/docker.service.

root [ ~ ]# systemctl start docker

 

このイメージを Pull します。Docker オフィシャルではないイメージです。

root [ ~ ]# docker search vmware/photon

NAME            DESCRIPTION   STARS     OFFICIAL   AUTOMATED

vmware/photon                 0

 

Pull しました。

root [ ~ ]# docker pull vmware/photon

Pulling repository vmware/photon

4f6657fadc21: Download complete

cac7dc9fbb37: Download complete

9222f4296fe6: Download complete

5f82aa002805: Download complete

Status: Downloaded newer image for vmware/photon:latest

root [ ~ ]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE

vmware/photon       latest              4f6657fadc21        11 days ago         171.4 MB

 

コンテナを起動してみると、「Photon Linux 1.0 TP1」のコンテナでした。

root [ ~ ]# docker run -it -d vmware/photon

cd9bfb1fbbc36d3b8726cc7b4af560b3294683c1fb3664103c8abde1bfa05b0d

root [ ~ ]# docker ps

CONTAINER ID        IMAGE                  COMMAND             CREATED             STATUS              PORTS               NAMES

cd9bfb1fbbc3        vmware/photon:latest   "bash --login"      4 seconds ago       Up 3 seconds                            reverent_colden

root [ ~ ]# docker attach cd9bfb1fbbc3

root@cd9bfb1fbbc3 [ / ]# cat /etc/photon-release

VMware Photon Linux 1.0 TP1

 

コンテナに導入されている RPM は、Photon の Micro インストールよりも少ないです。

root@cd9bfb1fbbc3 [ / ]# rpm -qa | wc -l

44

 

余談ですが、今回の Photon ホストは Nutanix CE でした。

root [ ~ ]# dmesg | grep -i nutanix

[    0.410956] scsi 0:0:0:0: Direct-Access     NUTANIX  VDISK            0    PQ: 0 ANSI: 5

 

以上、Docker Hub で Photon イメージを発見した話でした。

Photon Linux に Lightwave クライアントをインストールして、

Lightwave ドメインコントローラに参加させてみます。


前回はこちら。

VMware Lightwave をためしてみる。Part 1(Lightwave Server インストール)

 

今回は、Lightwave クライアントのインストールをします。


Ligtwave サーバ / クライアントは、それぞれ下記のホスト名にしています。

また、この環境では DNS サーバに登録してあります。

役割OSホスト名DNS 名
Lightwave サーバPhoton Linux 1.0 TP1photon-lw01photon-lw01.godc.lab
Lightwave クライアントPhoton Linux 1.0 TP1photon01photon01.godc.lab

 

Lightwave サーバは、前回に構築したもの使用しています。

今回設定するのは、すべて Lightwave クライアント側の Photon Linux です。

root [ ~ ]# cat /etc/photon-release

VMware Photon Linux 1.0 TP1

root [ ~ ]# uname -n

photon01

 

Photon への Yum リポジトリの登録。

 

Lightwave Client をインストールするときも、前回と同様に

Lightwave と、Photon Extras の Yum リポジトリを登録しておきます。

※vi などで、下記のファイル(lightwave.repo と photon-extras.repo)を作成しておきます。

 

/etc/yum.repos.d/lightwave.repo ファイルの内容

[lightwave]

name=VMware Lightwave 1.0(x86_64)

baseurl=https://dl.bintray.com/vmware/lightwave

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY

gpgcheck=0

enabled=1

skip_if_unavailable=True

 

/etc/yum.repos.d/photon-extras.repo ファイルの内容

[photon-extras]

name=VMware Photon Extras 1.0(x86_64)

baseurl=https://dl.bintray.com/vmware/photon_extras

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY

gpgcheck=0

enabled=1

skip_if_unavailable=True

 

photon-iso は、前回と同様に無効にしておきます。

root [ ~ ]# sed -i "s/enabled=1/enabled=0/" /etc/yum.repos.d/photon-iso.repo

root [ ~ ]# cat /etc/yum.repos.d/photon-iso.repo

[photon-iso]

name=VMWare Photon Linux 1.0(x86_64)

baseurl=file:///media/cdrom/usr/src/photon/RPMS

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY

gpgcheck=0

enabled=0

skip_if_unavailable=True

 

Yum リポジトリ登録状態は、Lightwave Server インストールの場合と同様になります。

root [ ~ ]# tdnf repolist

repo id            repo name                              status

photon-updates      VMware Photon Linux 1.0(x86_64)Updates  enabled

lightwave          VMware Lightwave 1.0(x86_64)            enabled

photon-extras      VMware Photon Extras 1.0(x86_64)        enabled

photon              VMware Photon Linux 1.0(x86_64)        enabled

 

Lightwave クライアントのインストール。


これも前回と同様、tdnf コマンドで、RPM をインストールします。

メタ RPM である vmware-lightwave-clients をインストールすると、

Lightwave クライアント関連の RPM がインストールされます。

※今回は、途中で確認メッセージが出ないように「-y」オプションを付けています。

root [ ~ ]# tdnf install -y vmware-lightwave-clients

Installing:

vmware-afd-client      x86_64  6.0.0-0

likewise-open  x86_64  6.2.0-0

vmware-ic-config      x86_64  1.0.0-0

vmware-directory-client        x86_64  6.0.0-0

vmware-ca-client      x86_64  6.0.0-0

vmware-afd    x86_64  6.0.0-0

vmware-lightwave-clients      x86_64  6.0.0-0

Downloading 2072.00 of 2072.00

Downloading 169544.00 of 169544.00

Downloading 578689.00 of 578689.00

Downloading 207339.00 of 207339.00

Downloading 23308.00 of 23308.00

Downloading 3836065.00 of 3836065.00

Downloading 214450.00 of 214450.00

Testing transaction

Running transaction

Created symlink from /etc/systemd/system/multi-user.target.wants/lwsmd.service to /lib/systemd/system/lwsmd.service.

Waiting for lwreg startup.ok

Installing settings from /opt/likewise/share/config/accounts.reg...

Installing settings from /opt/likewise/share/config/dcerpcd.reg...

Installing settings from /opt/likewise/share/config/eventlogd.reg...

Installing settings from /opt/likewise/share/config/lsassd.reg...

Installing settings from /opt/likewise/share/config/lwiod.reg...

Installing settings from /opt/likewise/share/config/lwreg.reg...

Installing settings from /opt/likewise/share/config/netlogond.reg...

Installing settings from /opt/likewise/share/config/privileges.reg...

Installing settings from /opt/likewise/share/config/rdr.reg...

Starting service dependency: netlogon

Starting service dependency: lwio

Starting service dependency: rdr

Starting service: lsass

root [ ~ ]#

 

インストールされる RPM は Lightwave サーバ / クライアントで共通のものが多いです。

RPMVersion

lightwave-server

lightwave-clients

likewise-open6.2.0-0OO
vmware-afd6.0.0-0OO
vmware-afd-client6.0.0-0OO
vmware-ca6.0.0-0O-
vmware-ca-client6.0.0-0OO
vmware-directory6.0.0-0O-
vmware-directory-client6.0.0-0OO
vmware-ic-config1.0.0-0OO
vmware-lightwave-server 6.0.0-0O-
vmware-lightwave-clients6.0.0-0-O

 

Lightwave クライアントのセットアップ。

 

まず、host / nslookup / dig、ping コマンドなどで、Lightwave クライアント側からの

Lightwave サーバの名前解決と、サーバへの疎通を確認しておきます。

※ただし、Lightwave ドメイン コントローラへの参加は IP アドレスでも可能です。

root [ ~ ]# uname -n

photon01

root [ ~ ]# host photon-lw01.godc.lab

photon-lw01.godc.lab has address 192.168.1.41

root [ ~ ]# ping -c 3 photon-lw01.godc.lab

PING photon-lw01.godc.lab (192.168.1.41): 56 data bytes

64 bytes from 192.168.1.41: icmp_seq=0 ttl=64 time=0.150 ms

64 bytes from 192.168.1.41: icmp_seq=1 ttl=64 time=0.209 ms

64 bytes from 192.168.1.41: icmp_seq=2 ttl=64 time=0.177 ms

--- photon-lw01.godc.lab ping statistics ---

3 packets transmitted, 3 packets received, 0% packet loss

round-trip min/avg/max/stddev = 0.150/0.179/0.209/0.024 ms

root [ ~ ]#

 

Lightwave クライアントは、ic-join コマンドで、Lightwave ドメイン コントローラに参加します。

「--domain-controller」で Lightwave サーバのアドレス、

「--domain」で Lightwave ドメインの名前を指定します。

 

ic-join コマンドをオプションなしで実行すると、使用方法が表示されます。

root [ ~ ]# /opt/vmware/bin/ic-join

Usage : ic-domain-join { arguments }

Arguments:

--domain-controller <domain controller's hostname or IP Address>

[--domain    <fully qualified domain name. default: vsphere.local>]

[--password  <password to administrator account>]

 

それでは、ドメイン参加してみます。

今回参加する Lightwave ドメイン コントローラのドメイン名は「lightwave.local」です。

root [ ~ ]# /opt/vmware/bin/ic-join --domain-controller photon-lw01.godc.lab --domain lightwave.local

Password (administrator@lightwave.local):  ★パスワードを入力。

20150712130421:INFO:Setting up system as client to Infrastructure node at [photon-lw01.godc.lab]

20150712130421:INFO:Validating credentials to partner [photon-lw01.godc.lab] at domain [lightwave.local]

20150712130421:INFO:Starting service [dcerpc]

20150712130421:INFO:Starting service [vmafd]

20150712130422:INFO:Setting various configuration values

20150712130422:INFO:Joining system to directory service at [photon-lw01.godc.lab]

20150712130422:INFO:Get root certificate from VMware Certificate Authority

20150712130423:INFO:Adding VMCA's root certificate to VMware endpoint certificate store

20150712130423:INFO:Generating Machine SSL cert

20150712130423:INFO:Setting Machine SSL certificate

Domain Join was successful

root [ ~ ]#

 

認証設定 ログイン設定。

 

下記を参考に、Lightwave クライアントで認証のための設定します。

lightwave/README-SSH.md at master · vmware/lightwave · GitHub

 

レジストリ設定に似た設定も、Likewise ドメイン コントローラの認証情報を参照するために必要です。

root [ ~ ]# /opt/likewise/bin/domainjoin-cli configure --enable pam

SUCCESS

root [ ~ ]# /opt/likewise/bin/domainjoin-cli configure --enable nsswitch

SUCCESS

root [ ~ ]# /opt/likewise/bin/lwregshell set_value '[HKEY_THIS_MACHINE\Services\lsass\Parameters\Providers]' LoadOrder "ActiveDirectory" "VmDir" "Local"

root [ ~ ]# /opt/likewise/bin/lwsm restart lsass

Stopping service: lsass

Starting service: lsass

 

ログインしてみる。

 

ここまでの設定で、Lightwave ドメインのユーザでのログインが可能になります。

ためしに、su コマンドでログインしてみます。

ログインユーザは、<ユーザ名>@<Lightwave ドメイン名>と指定しています。


※su でのログインではホームディレクトリが自動作成されないため、「/」ディレクトリにいます。

root [ ~ ]# su - administrator@lightwave.local

No directory, logging in with HOME=/

lightwave.local\Administrator [ / ]$ id

uid=500(lightwave.local\Administrator) gid=545(lightwave.local\Users) groups=545(lightwave.local\Users),544(lightwave.local\Administrators),16778224(lightwave.local\CAAdmins)

 

SSH でも、Lightwave ドメインのユーザでログインできるようになります。

root [ ~ ]# ssh -l administrator@lightwave.local photon01.godc.lab

The authenticity of host 'photon01.godc.lab (192.168.1.31)' can't be established.

ECDSA key fingerprint is 38:ea:72:b6:85:d8:9d:f3:a9:e6:f5:5c:cc:11:f6:78.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'photon01.godc.lab,192.168.1.31' (ECDSA) to the list of known hosts.

Password:  ★パスワード入力。

lightwave.local\Administrator [ ~ ]$ uname -n

photon01

lightwave.local\Administrator [ ~ ]$ id

uid=500(lightwave.local\Administrator) gid=545(lightwave.local\Users) groups=545(lightwave.local\Users),544(lightwave.local\Administrators),16778224(lightwave.local\CAAdmins)

 

SSH ログインすると、/home 配下にホームディレクトリが自動作成されます。

lightwave.local\Administrator [ ~ ]$ pwd

/home/Administrator

 

ちなみに、ドメイン ユーザの指定は、<Lightwave ドメイン名>\<ユーザ名>と指定できます。

ただし、Linux シェルでのエスケープのため、「\」(円マーク or バックスラッシュ)は2文字

<Lightwave ドメイン名>\\<ユーザ名>)にしています。

root [ ~ ]# ssh -l lightwave.local\\administrator photon01.godc.lab

Password:  ★パスワード入力。

Last login: Sun Jul 12 13:24:35 2015 from 192.168.1.31

lightwave.local\Administrator [ ~ ]$ uname -n

photon01

lightwave.local\Administrator [ ~ ]$ id

uid=500(lightwave.local\Administrator) gid=545(lightwave.local\Users) groups=545(lightwave.local\Users),544(lightwave.local\Administrators),16778224(lightwave.local\CAAdmins)


以上、Lightwave クライアントで、Likewise ドメイン参加してみる話でした。

VMware Photon と同時に発表された、 VMware Lightwave という

ID 管理、認証などの機能をもつソフトウェア スタックがあります。


Project Lightwave Now Available

http://blogs.vmware.com/vsphere/2015/05/project-lightwave-now-available.html

 

VMware Photon とおなじく、GitHub にホストされてます。


VMware Lightwave の GitHub サイト

http://vmware.github.io/lightwave/

vmware-lightwave-00.png


Lightwave は下記のコンポーネントで構成されていて、

vCenter の VMware Platform Services Controller (PSC)のと共通するところがありそうです。

vSphere 5.5 のあたりから見覚えのある名前がでてきます。

  • VMware Directory Service (vmdir)
  • VMware Certificate Authority (vmca)
  • VMware Authentication Framework Daemon/Service (vmafd)
  • VMware Secure Token Service (vmware-sts)

 

GitHub の README

https://github.com/vmware/lightwave/blob/master/README.md

 

Lightwave Server ではドメイン コントローラ(Windows の AD のような)を構築します。

そして、認証してもらうクライアント側には、Lightwave Client をインストールします。

 

今回は、Photon Linux に Lightwave サーバをインストールしてみます。

インストールする Photon Linux のホスト名は下記にしています。

  • photon-lw01 → Lightwave サーバ。
  • photon01 → Lightwave クライアント。

 

Photon Linux 1.0 TP1 を FULL インストールで使用しています。

root [ ~ ]# cat /etc/photon-release

VMware Photon Linux 1.0 TP1

root [ ~ ]# uname -n

photon-lw01

 

Photon は、固定の IP アドレスを設定しておきます。

Photon Linux の Network 設定変更について。(IP / DNS / Hostname...)

※もっとよい手順もあるかもしれません。

 

Photon への Yum リポジトリの登録。

 

Lightwave は、RPM でインストールすることができます。

Photon では、RPM のインストールを yum か tdnf コマンドで実施できます。

Photon Linux の RPM パッケージ管理。(yum / tdnf)


Lightwave の Yum リポジトリを登録しておきます。

このファイルは、デフォルトでは Photon に含まれていないので新規作成します。

root [ ~ ]# vi /etc/yum.repos.d/lightwave.repo

root [ ~ ]# cat /etc/yum.repos.d/lightwave.repo

[lightwave]

name=VMware Lightwave 1.0(x86_64)

baseurl=https://dl.bintray.com/vmware/lightwave

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY

gpgcheck=0

enabled=1

skip_if_unavailable=True

 

Photon の Extras リポジトリを参照するファイルも、新規作成します。

※Lightwave で使用する Likewise Open の RPM をダウンロードするために必要なようです。

root [ ~ ]# vi /etc/yum.repos.d/photon-extras.repo

root [ ~ ]# cat /etc/yum.repos.d/photon-extras.repo

[photon-extras]

name=VMware Photon Extras 1.0(x86_64)

baseurl=https://dl.bintray.com/vmware/photon_extras

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY

gpgcheck=0

enabled=1

skip_if_unavailable=True

 

Photon がデフォルトで設定されている、

ISO イメージを参照する、photon-iso のリポジトリ参照は無効(enabled=0)にしておきます。

root [ ~ ]# vi /etc/yum.repos.d/photon-iso.repo

root [ ~ ]# cat /etc/yum.repos.d/photon-iso.repo

[photon-iso]

name=VMWare Photon Linux 1.0(x86_64)

baseurl=file:///media/cdrom/usr/src/photon/RPMS

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY

gpgcheck=0

enabled=0

skip_if_unavailable=True

 

Yum リポジトリ登録は、上記の設定によりこうなります。

root [ ~ ]# grep -E "\[|name|enabled" /etc/yum.repos.d/*.repo

/etc/yum.repos.d/lightwave.repo:[lightwave]  ★追加した。

/etc/yum.repos.d/lightwave.repo:name=VMware Lightwave 1.0(x86_64)

/etc/yum.repos.d/lightwave.repo:enabled=1

/etc/yum.repos.d/photon-extras.repo:[photon-extras]  ★追加した。

/etc/yum.repos.d/photon-extras.repo:name=VMware Photon Extras 1.0(x86_64)

/etc/yum.repos.d/photon-extras.repo:enabled=1

/etc/yum.repos.d/photon-iso.repo:[photon-iso]  ★無効にした。

/etc/yum.repos.d/photon-iso.repo:name=VMWare Photon Linux 1.0(x86_64)

/etc/yum.repos.d/photon-iso.repo:enabled=0

/etc/yum.repos.d/photon-updates.repo:[photon-updates]

/etc/yum.repos.d/photon-updates.repo:name=VMware Photon Linux 1.0(x86_64)Updates

/etc/yum.repos.d/photon-updates.repo:enabled=1

/etc/yum.repos.d/photon.repo:[photon]

/etc/yum.repos.d/photon.repo:name=VMware Photon Linux 1.0(x86_64)

/etc/yum.repos.d/photon.repo:enabled=1

 

tdnf、もしくは yum で repolist を見るとこうなります。

root [ ~ ]# tdnf repolist

repo id            repo name                              status

photon-updates      VMware Photon Linux 1.0(x86_64)Updates  enabled

photon              VMware Photon Linux 1.0(x86_64)        enabled

lightwave          VMware Lightwave 1.0(x86_64)            enabled

photon-extras      VMware Photon Extras 1.0(x86_64)        enabled

root [ ~ ]# yum repolist

repo id              repo name                                    status

lightwave            VMware Lightwave 1.0(x86_64)                  12

photon              VMware Photon Linux 1.0(x86_64)              427

photon-extras        VMware Photon Extras 1.0(x86_64)              35

photon-updates      VMware Photon Linux 1.0(x86_64)Updates          1

repolist: 475

 

Lightwave Server のインストール。

 

今回は tdnf コマンドで、RPM をインストールします。

メタ RPM である vmware-lightwave-server をインストールすると、

Lightwave サーバ関連の RPM がまとめてインストールされます。

root [ ~ ]# tdnf install vmware-lightwave-server

Installing:

vmware-ca-client      x86_64  6.0.0-0

vmware-directory-client        x86_64  6.0.0-0

vmware-afd-client      x86_64  6.0.0-0

likewise-open  x86_64  6.2.0-0

vmware-ic-config      x86_64  1.0.0-0

vmware-directory      x86_64  6.0.0-0

vmware-ca      x86_64  6.0.0-0

vmware-afd    x86_64  6.0.0-0

vmware-lightwave-server        x86_64  6.0.0-0

Is this ok [y/N]:y

Downloading 2040.00 of 2040.00

Downloading 169544.00 of 169544.00

Downloading 172692.00 of 172692.00

Downloading 853020.00 of 853020.00

Downloading 23308.00 of 23308.00

Downloading 3836065.00 of 3836065.00

Downloading 214450.00 of 214450.00

Downloading 207339.00 of 207339.00

Downloading 578689.00 of 578689.00

Testing transaction

Running transaction

Created symlink from /etc/systemd/system/multi-user.target.wants/lwsmd.service to /lib/systemd/system/lwsmd.service.

Waiting for lwreg startup.ok

Installing settings from /opt/likewise/share/config/accounts.reg...

Installing settings from /opt/likewise/share/config/dcerpcd.reg...

Installing settings from /opt/likewise/share/config/eventlogd.reg...

Installing settings from /opt/likewise/share/config/lsassd.reg...

Installing settings from /opt/likewise/share/config/lwiod.reg...

Installing settings from /opt/likewise/share/config/lwreg.reg...

Installing settings from /opt/likewise/share/config/netlogond.reg...

Installing settings from /opt/likewise/share/config/privileges.reg...

Installing settings from /opt/likewise/share/config/rdr.reg...

Starting service dependency: netlogon

Starting service dependency: lwio

Starting service dependency: rdr

Starting service: lsass

root [ ~ ]#

 

Lightwave Domain Controller のセットアップ。

 

ic-promote コマンドで、Lightwave ドメイン コントローラをセットアップします。

「ic」 は、おそらく Infrastracture Controller (PSC の Beta のころの名前)の略だと思います。

「--domain」を指定して実行すると、ドメイン名を指定できます。

 

※ちなみに、「--help」でなくても Usage 画面はでますが、なんとなくこうしました・・・

「--domain」を指定しないと、デフォルトでは「vsphere.local」というドメイン名になります。

root [ ~ ]# /opt/vmware/bin/ic-promote --help

Usage : ic-promote { arguments }

Arguments:

[--domain  <fully qualified domain name. Default : vsphere.local>]

--password  <password to administrator account>

[--partner  <partner domain controller's hostname or IP Address>]

[--site    <infra site name>]

 

今回は「lightwave.local」というドメイン名で、

Lightwave ドメイン コントローラをセットアップしてみます。

root [ ~ ]# /opt/vmware/bin/ic-promote --domain lightwave.local

Password (administrator@lightwave.local): ★ここでadministrator のパスワードを設定する。

20150710233831:INFO:Setting up system as Infrastructure standalone node

20150710233831:INFO:Starting service [dcerpc]

20150710233831:INFO:Starting service [vmafd]

20150710233832:INFO:Starting service [vmdir]

20150710233834:INFO:Starting service [vmca]

20150710233835:INFO:Setting various configuration values

20150710233835:INFO:Promoting directory service to be domain controller

20150710233836:INFO:Setting up the logical deployment unit

20150710233836:INFO:Setting up VMware Certificate Authority

20150710233836:INFO:Adding VMCA's root certificate to VMware endpoint certificate store

20150710233836:INFO:Generating Machine SSL cert

20150710233837:INFO:Setting Machine SSL certificate

20150710233837:INFO:Publishing Machine SSL certificate for directory service

20150710233837:INFO:Restarting service [vmdir]

Domain Controller setup was successful

root [ ~ ]#

 

これで Lightwave ドメイン コントローラがセットアップできています。

たとえば、下記のように administrator@lightwave.local ユーザがいることがわかります。

root [ ~ ]# /opt/vmware/bin/dir-cli user find-by-name --account administrator

Enter password for administrator@lightwave.local: ★パスワードを入力。

Account: administrator

UPN: Administrator@LIGHTWAVE.LOCAL

 

以上、Lightwave サーバのインストールでした。

つづく・・・

VMware Lightwave をためしてみる。Part 2(Lightwave Client インストール)

2015年7月8日開催の、VMware vCloud Conference 2015 (東京会場)に行ってみました。

なんと vCloud Air オンリーイベントです。

vcloud-conference2015.png

 

だいたいの内容は、下記のような感じだったと思います。

  • 現状の vCloud Air の概要の説明 / Demo
  • ユーザ事例
  • 最近(2015年6月)に発表されたサービス拡張の説明
    (主に Advanced Networking Service、VPC OnDemand、DR の機能拡張)
  • これからのロードマップ
  • ハンズオン(盛況すぎて行けませんでしたが)
  • Air の詳しい人に色々と質問できる(Ask the Expert ブースなど

 

個人的には、VPC OnDemand が気になりました。

VM に対して分単位課金のサービスらしいので、AWS 的な感覚で
「ためしに」で使えるのではないかと期待しています。

そして VPC OnDemand の「OnDemand 料金計算ツール」も用意されています。

http://vcloud.vmware.com/jp/service-offering/pricing-calculator/on-demand


ちなみに無償キャンペーンがありますが、

日本ロケーションはもうすぐ(7月中に?)オープンする予定とのことです。

http://vcloud.vmware.com/jp/service-offering/special-offer

 

それとは別に、今回参加して印象に残った話を 3つほど。(新情報というわけではないですが

  • Air への移行では、移行元の vSphere(vCenter / ESXi)バージョンよりも
    仮想マシンバージョンを気にすべし。バージョン4(vmx-04)であれば Air に移行できる。
    バージョン4 は、ESX 3.0 の頃に登場したものなので、けっこう前の VM でもいけるはず。
  • DR(Disaster Recovery / 災害復旧サービス)では vSphere Replication が使われる。
    (vR はこれからもっと流行るのでは?)
  • VMware Workstation 11 で、vCenter だけでなく Air にも接続できるらしい。
    「本番環境の障害 VM を Workstation で解析」とかのユースケースがあるそうな。

 

このイベントは、大阪でも 2015年7月14日に開催するようです。

そして来年もやる予定らしい・・・

 

以上、vCloud Conference の話でした。

最近リリースされた ESXi のパッチで、

esxtop がわずかに機能拡張されて、NFS でも DAVG(デバイス遅延時間)が表示されるようになりました。


ESXi 5.5 U2 の Build 2718055 で、

パッチのファイル名だと、ESXi550-201505002.zip です。

 

VMware ESXi 5.5, Patch ESXi-5.5.0-20150504001-standard (2114251)

http://kb.vmware.com/kb/2114251

To debug performance issues related to NFS datastores, DAVG has been added to the esxtop utility.

 

そこで、ためしに見てみました。

esxtop を起動後、「u」をクリックすると

「u:disk device」(ストレージ デバイス パネル)が表示できます。

 

ストレージのパフォーマンスに関する問題を識別するために、esxtop を使用 (2014768)

http://kb.vmware.com/kb/2014768

 

関係するカウンタは、下記のようです。

https://pubs.vmware.com/vsphere-55/index.jsp#com.vmware.vsphere.monitoring.doc/GUID-A27C3166-DBD1-4E0B-917B-67EF56864F9B.html

 

※これまで NFS データストアでは表示されてませんでした。

  • DAVG/cmd
    コマンドあたりのミリ秒単位の平均デバイス遅延。
  • DAVG/rd
    読み取り処理あたりのミリ秒単位の平均デバイス読み取り遅延。
  • DAVG/wr
    書き込み処理あたりのミリ秒単位の平均デバイス書き込み遅延。

 

少し前の ESXi では、こう見えていたのですが・・・

(ESXi のバージョン)

~ # vmware -vl

VMware ESXi 5.5.0 build-2456374

VMware ESXi 5.5.0 Update 2

esxtop-nfs-davg-01.png

※自宅環境なので、遅延時間はあまり気にしないでください。


NFS でも DAVG カウンタが表示されるようになりました。

(ESXi のバージョン)

~ # vmware -vl

VMware ESXi 5.5.0 build-2718055

VMware ESXi 5.5.0 Update 2

esxtop-nfs-davg-02.png

 

さらに、esxtop のフィールド表示を変更してみました。

esxtop を起動後、「f」をクリックして、デフォルトで表示される「i」(コマンド全体)のほかに、

「j」(Read)と 「k」(Write)フィールドも表示してみます。

  • I:  LATSTATS/cmd = Overall Latency Stats (ms)
  • J:  LATSTATS/rd = Read Latency Stats (ms)
  • K:  LATSTATS/wr = Write Latency Stats (ms)

 

下記のようなフィールド表示にしてみました。

※Latency 系以外のフィールドは、いくつか OFF にしました。

Current Field order: ABcdefghIJKlmnop

 

 

* A:  DEVICE = Device Name

* B:  ID = Path/World/Partition Id

  C:  NUM = Num of Objects

  D:  SHARES = Shares

  E:  BLKSZ = Block Size (bytes)

  F:  QSTATS = Queue Stats

  G:  IOSTATS = I/O Stats

  H:  RESVSTATS = Reserve Stats

* I:  LATSTATS/cmd = Overall Latency Stats (ms)

* J:  LATSTATS/rd = Read Latency Stats (ms)

* K:  LATSTATS/wr = Write Latency Stats (ms)

  L:  ERRSTATS/s = Error Stats

  M:  PAESTATS/s = PAE Stats

  N:  SPLTSTATS/s = SPLIT Stats

  O:  VAAISTATS= VAAI Stats

  P:  VAAILATSTATS/cmd = VAAI Latency Stats (ms)

 

 

Toggle fields with a-p, any other key to return:

 

以前のリリースでは、NFS の DAVG/rd、DAVG/wr が表示されていませんでしたが・・・

esxtop-nfs-davg-03.png

 

5.5.0 build-2718055 では、

DAVG/rd、DAVG/wr どちらも(Read / Write 両方とも) NFS の平均遅延時間が表示されるようになりました。

esxtop-nfs-davg-04.png


NFS データストアが好きな人にはうれしい機能拡張だと思います。


ちなみに、ストレージの DAVG と 他の遅延時間との関係は、

下記ブログあたり(特に絵)などが参考になると思います。


Troubleshooting Storage Performance in vSphere – Part 1 - The Basics

http://blogs.vmware.com/vsphere/2012/05/troubleshooting-storage-performance-in-vsphere-part-1-the-basics.html

 

以上、esxtop の機能拡張についてでした。