Skip navigation
2015

VMworld がおわり、そして日本では vForum が近づき、

VMware の Hands-On Labs Online(HoL) がいろいろ更新されています。

これまでは、HOL-~-14XX という番号だった HoL が更新されて、

HOL-~-16XX という番号のものが登場してきています。


今(2015/10/27~)、日本では OpenStack で盛り上がっているようなので、

VMware Integrated OpenStack (VIO) 構築済みの環境で

VMware vSphere + NSX + OpenStack が体験できる HoL を紹介してみようと思います。


これです。

HOL-SDC-1620 OpenStack with VMware vSphere and NSX


下記で「OpenStack」とかで検索すると見つかります。

http://labs.hol.vmware.com/HOL/catalogs/catalog/all


この HoL の環境を見てみようと思います。

オブジェクト名や ID などは変更されることもあると思うので、

そのときの Lab 環境に読み替えてください。


まず、VIO の OpenStack Horizon ダッシュボードのログイン画面はこんな感じです。

openstack-hol-01.png


ログインして、Hypervisor のメニューのあたりを見ると、vSphere と連携していることがわかります。

VMware vCenter Server の、「Compute Cluster A」というクラスタが OpenStack 環境に組み込まれています。

openstack-hol-02.png


vSphere Web Client から見てみると、

たしかに「Compute Cluster A」クラスタがあります。

openstack-hol-02a.png


OpenStack の特徴としてマルチテナント環境を構成することができます。

例としては微妙ですが、「admin」テナント(ダッシュボードでは Project)があります。

今回の環境では 6960~16e7 という ID が割り当てられています。

openstack-hol-03.png


そしてテナントには、

「TestNet」というネットワークに接続された「TestVM」という VM があります。

この VM には、804c~5dd2 という ID が割り当てられています。

openstack-hol-03a.png


これを vSphere のレイヤから見ると、

「Project (ID) 」という VM フォルダの配下に TestVM が作成されています。

ただし、先ほどの Web Client の画面からもわかるように、管理用 VM や別テナントの VM も見えたりします。

このように、仮想化基盤はを構成するのは vSphere ですが、

マルチテナントのためのアクセス制御は OpenStack のレイヤが担当していることがわかります。


また、画面下の「OpenStack VM」の欄にあるように、

vSphere 環境では OpenStack レイヤから見た VM の情報が、一部わかるようになっています。

openstack-hol-03b.png


先ほどあった admin テナントの「TestNet」ネットワークですが、

OpenStack のレイヤでは、「5b52~b210」という ID が割り当てられています。

openstack-hol-04a.png


これを、NSX のレイヤから見てみます。

※vSphere Web Client の Networking & Security メニューからです。

openstack-hol-04b.png


OpenStack のネットワークは、

NSX では Logical Switch として扱われています。

「TestNet」ネットワークの ID が名前になっている Logical Switch が作成されています。

openstack-hol-04c.png


そして、その論理スイッチには、確かに「TestVM」という VM が接続されています。

openstack-hol-04d.png


一方、TestVM を vSphere のレイヤから見てみると、NSX の Logical Switch は

ポートグループ(vDS の 分散ポートグループ)として作成されています。

OpenStack + NSX + vSphere の環境では、ネットワークのマルチテナント化を

リソース要求する利用者からのアクセス制御は OpenStack のレイヤで、

ネットワーク的な隔離の実装は NSX ⁺ vSphere のレイヤが担当していることがわかります。

openstack-hol-04e.png


今回は何も設定操作などはしていませんが、

HoL には、ログインするとシナリオを含むマニュアルが表示されます。


実際に体験してみると、vSphere と OpenStack は別のレイヤを担当するもので、

お互いが置き換えにならないことがわかるのではないかと思います。


以上、HoL で OpenStack + NSX + vSphere を眺めてみる話でした。

以前、こんなポストをしてみました。

PowerCLI から esxcli を実行する。(Get-EsxCli)

 

Get-EsxCli で情報取得することで、esxcli で取得できる情報を PowerShell で扱えるようになるので、

PowerShell ユーザにとっては結構便利ではないかと思います。

 

たとえば、esxcli でストレージデバイスの一覧 「esxcli storage core device list」 を取得してみます。

esxcli で取得できる情報は、PowerCLI のコマンドレットでは取得しにくいものが多いのですが、

これが PowerShell で扱えるようになります。

~ # uname -n
hv55h01.godc.lab
~ # vmware -vl
VMware ESXi 5.5.0 build-2456374

VMware ESXi 5.5.0 Update 2

~ # esxcli storage core device list
t10.ATA_____ADATA_SX900_____________________________2E4820021942________
    Display Name: Local ATA Disk (t10.ATA_____ADATA_SX900_____________________________2E4820021942________)
    Has Settable Display Name: true
    Size: 488386
    Device Type: Direct-Access
    Multipath Plugin: NMP
    Devfs Path: /vmfs/devices/disks/t10.ATA_____ADATA_SX900_____________________________2E4820021942________
    Vendor: ATA
    Model: ADATA SX900
    Revision: 5.8.
    SCSI Level: 5
    Is Pseudo: false
    Status: on
    Is RDM Capable: false
    Is Local: true
    Is Removable: false
    Is SSD: true
    Is Offline: false
    Is Perennially Reserved: false
    Queue Full Sample Size: 0
    Queue Full Threshold: 0
    Thin Provisioning Status: yes
    Attached Filters:
    VAAI Status: unknown
    Other UIDs: vml.01000000003245343832303032313934322020202020202020414441544120
    Is Local SAS Device: false
    Is USB: false
    Is Boot USB Device: false
    No of outstanding IOs with competing worlds: 32
(以下省略)

 

PowerCLI の、Get-EsxCli で ESXi から情報取得してみます。

※今回は、すでに Connect-VIServer で vCenter に接続済みです。

 

今回、esxcli で情報取得する ESXi はこれです。

PowerCLI> Get-VMHost hv55h01.godc.lab | select Name, Version, Build, Manufacturer, Model| ft -AutoSize


Name             Version Build   Manufacturer Model
----             ------- -----   ------------ -----
hv55h01.godc.lab 5.5.0   2456374 HP           ProLiant Micro Server

 

Get-EsxCli で esxcli が実行できます。

PowerCLI> (Get-VMHost hv55h01.godc.lab | Get-EsxCli)


========================
EsxCli: hv55h01.godc.lab

 

    Elements:
    ---------
    device
    esxcli
    fcoe
    graphics
    hardware
    iscsi
    network
    sched
    software
    storage
    system
    vm
    vsan

 

ざっくりですが、

「esxcli storage core device list」 と同様の情報を取得できることがわかります。

PowerCLI> (Get-VMHost hv55h01.godc.lab | Get-EsxCli).storage.core.device.list() | gm | select Name

 

Name
----
AttachedFilters
DevfsPath
Device
DeviceType
DisplayName
HasSettableDisplayName
IsBootUSBDevice
IsLocal
IsLocalSASDevice
IsOffline
IsPerenniallyReserved
IsPseudo
IsRDMCapable
IsRemovable
IsSSD
IsUSB
Model
MultipathPlugin
NoofoutstandingIOswithcompetingworlds
OtherUIDs
QueueFullSampleSize
QueueFullThreshold
Revision
SCSILevel
Size
Status
ThinProvisioningStatus
VAAIStatus
Vendor
Equals
GetHashCode
GetType
ToString

 

そして、PowerShell の Select-Object(select)や Format-Table(ft)で、

コマンドの出力結果を抽出 / 加工することができたりします。

PowerCLI> (Get-VMHost hv55h01.godc.lab | Get-EsxCli).storage.core.device.list() | sort Vendor,Model | ft -AutoSize Vendor, Model, Size, IsUSB, IsBoot USBDevice, IsSSD, Device

 

Vendor  Model            Size   IsUSB IsBootUSBDevice IsSSD Device
------  -----            ----   ----- --------------- ----- ------
ATA     ADATA SX900      488386 false false           true  t10.ATA_____ADAT...
ATA     Hitachi HDS72101 953869 false false           false t10.ATA_____Hita...
ATA     Hitachi HDS72101 953869 false false           false t10.ATA_____Hita...
ATA     Hitachi HDS72101 953869 false false           false t10.ATA_____Hita...

UFD 2.0 Silicon-Power4G  3824   true  true            false mpx.vmhba32:C0:T...

 

取得した結果を PowerShell で扱えるだけでなく、

ESXi ではなく vCenter に接続することで esxcli コマンドが実行できるため、

セキュリティ対策などで ESXi への直接ログインを減らしたい場合などにも

Get-EsxCli は有効かもしれません。

 

以上、Get-EsxCli についてでした。