Quantcast
Channel: Blog Posts From にほんごVMware Tagged With vsphere
Viewing all 246 articles
Browse latest View live

Photon Linux のスタティックルート設定追加について。[Route]

$
0
0

??????? Photon Linux ??????????????

Photon Linux ? Network ?????????(IP / DNS / Hostname...)

 

Photon ??????????????????

?/etc/systemd/network/~.network??????

[Network] ????? → Gateway ?????????????????????

 

(?)

root [ ~ ]# cat /etc/systemd/network/10-static-eth0.network

[Match]

Name=eth0

 

[Network]

DHCP=no

Address=192.168.1.33/24

Gateway=192.168.1.1

DNS=192.168.1.254

 

????????????????????????????????

Photon ?? Red Hat ????????

/etc/sysconfig/network/network-scripts ???????????????????

 

???????????????????? [Route] ???????????????

 

(??)

systemd.network — Network configuration

http://www.freedesktop.org/software/systemd/man/systemd.network.html

 

????????????????????????????

root [ ~ ]# ip route

default via 192.168.1.1 dev eth0  proto static

192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.33


?????????????????[Route] ??????????????????????????

root [ ~ ]# vi /etc/systemd/network/10-static-eth0.network

 

/etc/systemd/network/10-static-eth0.network ????????

?????2??????????

[Match]

Name=eth0

 

[Network]

DHCP=no

Address=192.168.1.33/24

Gateway=192.168.1.1

DNS=192.168.1.254

 

[Route]

Gateway=192.168.1.251

Destination=192.168.4.0/24

 

[Route]

Gateway=192.168.1.252

Destination=192.168.5.0/24


systemd-networkd ????????

root [ ~ ]# systemctl restart systemd-networkd

 

?????2??????????

root [ ~ ]# ip route

default via 192.168.1.1 dev eth0  proto static

192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.33

192.168.4.0/24 via 192.168.1.251 dev eth0  proto static

192.168.5.0/24 via 192.168.1.252 dev eth0  proto static

 

???????????????????????????

?????? [Route] ???????????

?ip route del ?? via ??????????? ?????????????????????

(?)

root [ ~ ]# ip route del 192.168.4.0/24 via 192.168.1.251

 

?????????????????????????????????

?ip route add ?? via ??????????? ?????????????????

(?)

root [ ~ ]# ip route add 192.168.4.0/24 via 192.168.1.251

 

???Photon Linux ?????????????????


VMkernel ポートを esxcli で設定してみる。(vMotionタグなど)

$
0
0

????2013?1?8??????????

 

????????????

 

Tagging VMkernel Traffic Types Using ESXCLI 5.1
http://blogs.vmware.com/vsphere/2012/12/tagging-vmkernel-traffic-types-using-esxcli-5-1.html

 

????esxcli ????? VMkernel ???(vmk0, vmk1...)?
?vMotion ???FT ??... ?????????????????

?Tag?????? vSphere5.1 ? vCenter ???????????????????????


??? ESXi ???VMKernel ???? Tag ???

vSphere Client ? API ?????????????????
ESXi 5.1 ????esxcli ??????????????????????
(esxcli ??version 5.1 ???)

 

?????vMotion ? FT ???????????

?????????????? vMA ????

vCenter ?????ESXi (IP ?????192.168.5.61)????????????

 

ESXi ????????????????????????????????????

vi-admin@localhost:~> export VI_USERNAME=root
vi-admin@localhost:~> export VI_PASSWORD=******
vi-admin@localhost:~> esxcli --server 192.168.5.61 system version get
   Product: VMware ESXi
   Version: 5.1.0 ?ESXi ??????? 5.1 ???
   Build: Releasebuild-838463
   Update: 0

 

??????????????

vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk0
   Tags: Management  ??????????????????????
vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk1
   Tags: Management

 

1??????????1?????????????

vmk1 ???vMotion????Fault Tolerance ????(FT)?????????

vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag add -i vmk1 -t VMotion
vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk1
   Tags: Management, VMotion  ?vMotion???????

vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag add -i vmk1 -t faultToleranceLogging
vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk1
   Tags: Management, VMotion, faultToleranceLogging ?FT???????

 

?????GUI(vSphere Client)? vmk1 ??????????

esxcli ????????????????????????????

vmk1.png

 

????remove ??????1??????????

FT ???????????

vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag remove -i vmk1 -t faultToleranceLogging
vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk1
   Tags: Management, VMotion

 

???VMkernel ??????????????

VMkernel ポートを esxcli で設定してみる。(vMotionタグなど)

$
0
0

※これは2013年1月8日ごろのポストです。

 

こんな記事見つけました。

 

Tagging VMkernel Traffic Types Using ESXCLI 5.1
http://blogs.vmware.com/vsphere/2012/12/tagging-vmkernel-traffic-types-using-esxcli-5-1.html

 

これは、esxcli コマンドで VMkernel ポート(vmk0, vmk1...)に
「vMotion 用」「FT 用」... といった設定ができるという話です。

「Tag」とあるので vSphere5.1 の vCenter インベントリのタグの話かと思ったら違いました。


以前の ESXi では、VMKernel ポートの Tag 設定を

vSphere Client や API などで設定する必要があったのですが
ESXi 5.1 からは、esxcli コマンドでも設定できるようになったようです。
(esxcli も、version 5.1 です。)

 

ためしに、vMotion と FT の設定をしてみました。

ブログ記事にならって実行元は vMA ですが、

vCenter ではなく、ESXi (IP アドレスは192.168.5.61)に対して実行しています。

 

ESXi のユーザとパスワードは、入力を省略するために環境変数で設定しておきます。

vi-admin@localhost:~> export VI_USERNAME=root
vi-admin@localhost:~> export VI_PASSWORD=******
vi-admin@localhost:~> esxcli --server 192.168.5.61 system version get
   Product: VMware ESXi
   Version: 5.1.0 ★ESXi のバージョンも 5.1 です。
   Build: Releasebuild-838463
   Update: 0

 

まず、今の設定を確認します。

vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk0
   Tags: Management  ★現在のタグは「管理トラフィック」だけです。
vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk1
   Tags: Management

 

1回のコマンド実行で、1つずつタグを追加できます。

vmk1 に、「vMotion」と、「Fault Tolerance のログ」(FT)を追加してみます。

vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag add -i vmk1 -t VMotion
vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk1
   Tags: Management, VMotion  ★vMotionが追加された。

vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag add -i vmk1 -t faultToleranceLogging
vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk1
   Tags: Management, VMotion, faultToleranceLogging ★FTが追加された。

 

ちなみに、GUI(vSphere Client)で vmk1 の設定を見ていると、

esxcli の設定は、下記の画面を開いたままでも即時反映されました。

vmk1.png

 

削除は、remove です。これも1タグずつ実行します。

FT だけ削除してみました。

vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag remove -i vmk1 -t faultToleranceLogging
vi-admin@localhost:~> esxcli --server 192.168.5.61 network ip interface tag get -i vmk1
   Tags: Management, VMotion

 

以上、VMkernel ポートのタグづけの話でした。

VMware Lightwave をためしてみる。Part 3(Lightwave のユーザ作成)

$
0
0

今回は、Lightwave ドメインにユーザを作成して、

Docker コマンドを実行できるようにしてみます。


これまでの流れはこちら。

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

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


環境は前回と同様で、Lightwave Server / Client どちらも Photon Linux です。

  • Lightwave Server → ホスト名は photon-lw01.godc.lab
  • Lightwave Client & Docker Host → ホスト名は photon01.godc.lab


1. Lightwave サーバでのユーザ / グループ作成。


まずは、Lightwave サーバで作業します。

root [ ~ ]# uname -n

photon-lw01

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

VMware Photon Linux 1.0 TP1

root [ ~ ]# rpm -qa | grep lightwave

vmware-lightwave-server-6.0.0-0.x86_64

 

Lightwave Server は、ドメインコントローラとしてセットアップ済みです。

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

 

Lightwave に、「docker」という名前のグループを作成します。

Lightwave のグループとユーザの作成や設定変更では、dir-cli コマンドを使用します。

dir-cli は、/opt/vmware/bin ディレクトリに格納されています。

※dir-cli の実行時には Lightwave 管理者のパスワードを入力します。

root [ ~ ]# cd /opt/vmware/bin/

root [ /opt/vmware/bin ]# ./dir-cli ssogroup create --name docker

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

Service [docker] created successfully

 

作成した直後のグループには、まだユーザが所属していません。

root [ /opt/vmware/bin ]# ./dir-cli group list --name docker

Enter password for administrator@lightwave.local:

group [docker] has no members

 

次に、Lightwave にユーザを作成します。

今回は「lw_user01」というユーザを作成します。

root [ /opt/vmware/bin ]# ./dir-cli user create --account lw_user01 --first-name user01 --last-name lw

Enter password for administrator@lightwave.local:

Enter password for lw_user01@lightwave.local: ★作成するユーザに設定するパスワードを入力。

User account [lw_user01] created successfully

 

「dir-cli user find-by-name  ~」で、作成したユーザの情報を表示できます。

root [ /opt/vmware/bin ]# ./dir-cli user find-by-name --account lw_user01 --level 0

Enter password for administrator@lightwave.local:

Account: lw_user01

UPN: lw_user01@lightwave.local

 

「--level」の数字により、表示される情報が異なります。

Level 1 では、First Name と Last Name が表示されます。

root [ /opt/vmware/bin ]# ./dir-cli user find-by-name --account lw_user01 --level 1

Enter password for administrator@lightwave.local:

Account: lw_user01

UPN: lw_user01@lightwave.local

First Name: user01

Last Name: lw

 

Level 2 では、アカウントのロック状態やパスワード期限が表示されます。

root [ /opt/vmware/bin ]# ./dir-cli user find-by-name --account lw_user01 --level 2

Enter password for administrator@lightwave.local:

Account: lw_user01

UPN: lw_user01@lightwave.local

Account disabled: FALSE

Account locked: FALSE

Password never expires: FALSE

Password expired: FALSE

Password expiry: 89 day(s) 23 hour(s) 59 minute(s) 42 second(s)

 

そして、「lw_user01」を、Lightwave に作成した「docker」グループに追加します。

root [ /opt/vmware/bin ]# ./dir-cli group modify --name docker --add lw_user01

Enter password for administrator@lightwave.local:

Account [lw_user01] added to group [docker]

 

ユーザが追加されました。

ただし、ユーザ名ではなく First Name と Last Name が表示されます。

root [ /opt/vmware/bin ]# ./dir-cli group list --name docker

Enter password for administrator@lightwave.local:

CN=user01 lw,cn=users,dc=lightwave,dc=local

 

2. Lightwave クライアント側での設定

今回作成した Lightwave グループ「docker」(lightwave.local\docker)に所属するユーザが

「sudo docker ~」コマンドを実行できるようにします。

 

ここでは、Lightwave クライアント側の Photon で作業します。

この Photon は、Docker Host でもあります。

root [ ~ ]# uname -n

photon01

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

VMware Photon Linux 1.0 TP1

root [ ~ ]# rpm -qa | grep lightwave

vmware-lightwave-clients-6.0.0-0.x86_64

 

Lightwave クライアントの Photon は、既に Lightwave ドメインに参加ずみです。

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


sudo を許可するため、sudoers ファイルを新規作成します。

今回作成する「/etc/sudoers.d/lightwave-docker」ファイルでは、

「lightwave.local\\docker」グループの「/bin/docker」コマンドを、パスワードなしで実行許可しています。

root [ ~ ]# echo '%lightwave.local\\docker ALL=(ALL) NOPASSWD: /bin/docker' > /etc/sudoers.d/lightwave-docker

root [ ~ ]# cat /etc/sudoers.d/lightwave-docker

%lightwave.local\\docker ALL=(ALL) NOPASSWD: /bin/docker

 

ちなみに、Lightwave ドメインの Administrator ユーザに対しての sudo 設定例が

GitHub にある README で紹介されています。

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

 

3. Lightwave ユーザでの Docker 操作。

Lightwave ユーザで Photon にログインして、docker コマンドを実行してみます。

 

まず、ssh コマンドや TeraTerm などから Lightwave クライアントに、

Lightwave ドメインのユーザでログインします。

 

ユーザ名は、下記のどちらかで指定します。

<Lightwaveドメイン>\<ユーザ名> ※Linux 等のシェルで指定する場合は「\」を「\\」にします。

<ユーザ名>@<Lightwaveドメイン>


ssh コマンドでログインする場合は、下記のようにユーザ名を指定します。

# ssh -l lightwave.local\\lw_user01 photon01.godc.lab

 

TeraTerm でログインする場合は、下記のようにユーザ名を指定します。

lightwave-login.png


ログインすると、プロンプトにユーザ名が表示されます。

そして、「id」コマンドでユーザ情報を表示すると

「lightwave.local\docker」グループに所属していることがわかります。

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

photon01

lightwave.local\lw_user01 [ ~ ]$ id

uid=16778249(lightwave.local\lw_user01) gid=545(lightwave.local\Users) groups=545(lightwave.local\Users),16778250(lightwave.local\docker)

 

docker コマンドは、sudo コマンド(sudo docker ~)で実行します。

ためしに Oracle Linux のコンテナイメージを起動してみました。

lightwave.local\lw_user01 [ ~ ]$ sudo docker run -it oraclelinux:6 /bin/bash

Unable to find image 'oraclelinux:6' locally

Pulling repository oraclelinux

cfc75fa9f295: Download complete

8c3e49cb06dc: Download complete

c96aadb57deb: Download complete

Status: Downloaded newer image for oraclelinux:6

[root@64c52aebde0f /]#  ★ここからコンテナの中。

[root@64c52aebde0f /]# cat /etc/oracle-release

Oracle Linux Server release 6.7

[root@64c52aebde0f /]# lightwave.local\lw_user01 [ ~ ]$ ★Ctrl+p+q でコンテナから抜ける。

lightwave.local\lw_user01 [ ~ ]$ sudo docker ps

CONTAINER ID        IMAGE              COMMAND            CREATED            STATUS              PORTS              NAMES

64c52aebde0f        oraclelinux:6      "/bin/bash"        33 seconds ago      Up 32 seconds                          mad_ritchie

 

たとえば、Docker Engine を利用する目的だけで Photon にログインするユーザを多めに作るとしたら、

こんな感じにすると、Lightwave でのユーザ作成→グループ参加だけで済むようになるはずです。

 

以上、Lightwave ユーザを作成して docker コマンドを実行してみる話でした。

ESXi Embedded Host Client が公開されました。

$
0
0

VMware Flings に、Host Client が公開されました。

ESXi を Web ブラウザで管理できるようにする HTML5 ベースのツールです。

 

ESXi Embedded Host Client

https://labs.vmware.com/flings/esxi-embedded-host-client

 

VMware vSphere Blog などでも紹介されています。

 

Introducing the vSphere Host Client fling

https://blogs.vmware.com/vsphere/2015/08/introducing-vsphere-host-client-fling.html

 

ESXi に VIB ファイルをインストールすることで使用できるようになり、

従来の vSphere Client(通称 C# 版と呼ばれる)のかわりに ESXi の操作ができます。

host-client.png


ためしに、インストールしてみました。

 

ESXi Embedded Host Client のインストール。

 

今回は、少し前のバージョンですが ESXi 6.0 GA にインストールしてみます。

[root@hv60n01:~] vmware -vl

VMware ESXi 6.0.0 build-2494585

VMware ESXi 6.0.0 GA

 

今回インストールする VIB ファイルは「esxui-2976804.vib」です。

SSH などで、ESXi に配置しておきます。

[root@hv60n01:~] ls /vmfs/volumes/datastore1/

esxui-2976804.vib

 

VIB ファイルの情報を見てみます。

なんと、VIB Fling ですが Acceptance Level の設定は VMwareCertified になっていました。

[root@hv60n01:~] esxcli software sources vib get -v /vmfs/volumes/datastore1/esxui-2976804.vib

VMware_bootbank_esx-ui_0.0.2-0.1.2976804

  Name: esx-ui

  Version: 0.0.2-0.1.2976804

  Type: bootbank

  Vendor: VMware

  Acceptance Level: VMwareCertified

  Summary: vSphere Host Client

  Description: An embedded web UI for ESXi

  ReferenceURLs:

  Creation Date: 2015-08-11

  Depends: esx-version >= 5.0.0

  Conflicts:

  Replaces:

  Provides:

  Maintenance Mode Required: False

  Hardware Platforms Required:

  Live Install Allowed: True

  Live Remove Allowed: True

  Stateless Ready: True

  Overlay: False

  Tags:

  Payloads: esx-ui

 

VIB ファイルをインストールします。

[root@hv60n01:~] esxcli software vib install -v /vmfs/volumes/datastore1/esxui-2976804.vib

Installation Result

  Message: Operation finished successfully.

  Reboot Required: false

  VIBs Installed: VMware_bootbank_esx-ui_0.0.2-0.1.2976804

  VIBs Removed:

  VIBs Skipped:

 

Web ブラウザからアクセスしてみます。

これまで vSphere Client でアクセスしていたアドレスで接続可能で、下記のような URL でアクセスできます。

https://<ESXi の管理ネットワークのアドレス>/ui/

 

ESXi のローカルユーザ(root など)でログインできるはずです。

host-client-flings-01.png

 

ESXi Embedded Host Client の見た目。

 

ログインすると、下記のような画面です。Web Client をシンプルにした感じです。

host-client-flings-02.png

 

VM の画面はこんな感じです。

host-client-flings-03.png

 

ストレージ(データストアなど)の画面はこんな感じです。

host-client-flings-04.png

 

ネットワークの画面はこんな感じです。

host-client-flings-05.png

 

ネットワークの画面には、TCP / IP stacks のタブがあったりします。

host-client-flings-06.png

 

ただし、(まだ?) Flings なので、製品サポートは受けられないと思います。

vSphere Client が将来的にはなくなるらしいと話題になっていますが、

こんな感じに落ち着くのかもしれません。

 

VMTN Community のページはこちら。

https://communities.vmware.com/community/vmtn/vsphere/hostclient

 

以上、Host Client の Fling を試してみた話でした。

Photon Linux のシステムログを Log Insight へ転送。(logger にて)

$
0
0

これまで、いくつか VMware Photon Linux のログ出力先を変更してみました。

そして今回は Log Insight に転送してみます。

 

これまでの話と、Log Insight への転送イメージ。

 

Photon のログ出力についてですが・・・

 

1. デフォルトでは、メモリ領域へログ出力される。

Journald でログ出力されるため、デフォルトでは /run/log/journal ディレクトリに出力される。

メモリベースの領域なので、OS 再起動するとログはリセットされる。

 

2. ディスクに永続化されるように構成変更。

ディスクベースの /run/log/journal ディレクトリ配下に出力変更してみた。

ログは永続化されて、OS 再起動しても消えないようになる。

Photon Linux のシステムログの永続化。(Journald)

 

3. Syslog サーバへ転送。

logger コマンドで Syslog サーバへ転送してみた。

Photon Linux のシステムログを Syslog サーバへ転送。(logger コマンド)

 

ここまでは、こんなイメージです。

photon-logger-01.png

今回は、Log Insight 2.5 を使用しています。

Log Insight への転送は、Syslog サーバへの転送と同じ方法を使います。

logger コマンドで、Log Insight の UDP 514番ポートへ転送してみます。

※Log Insight Agent は Photon 対応っぽくなかったので、とりあえず logger で・・・

photon-logger-02.png

 

Photon Linux のログを Log Insight へ転送。

まずは、Photon Linux に、前回と同様の logger スクリプトを配置しておきます。

※スクリプトの内容は下記にて。

Photon Linux のシステムログを Syslog サーバへ転送。(logger コマンド)

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

VMware Photon Linux 1.0 TP1

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

-rwxr-xr-x 1 root root 225 Jul 31 08:27 /etc/systemd/scripts/logger.sh

 

Systemd に Log Insight 転送用のサービスを登録するため、Unit ファイルを作成します。

root [ ~ ]# vi /etc/systemd/system/logger-loginsight.service

 

/etc/systemd/system/logger-loginsight.service の内容。

※「vli25n01.godc.lab」が転送先の Log Insight です。

[Unit]

Description=Journald Logger

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

After=network-online.target

 

[Service]

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

 

[Install]

WantedBy=multi-user.target

 

Systemd にサービスを登録~起動します。

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

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

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

 

これで Log Insight に Journald のログが転送されます。

 

Log Insight で見てみる。

 

今回は、3台の Photon (192.168.1.31 ~ 33)からログ転送してみています。

logger コマンドの「-t」オプションで「PHOTON_LOGGER」とタグ付しているため、

Photon から転送されたログを識別しやすくなっています。

 

ためしに Docker コンテナの起動(「docker run」 コマンド)を検索してみましたが、

せっかく 3台あるのに、ほとんど 1号機しか使っていなそうな様子が見受けられます。

photon-loginsight.png


以上、Photon のログを Log Insight に転送してみる話でした。

他にも使い道を模索してみたいと思います・・・

VMware Lightwave の Domain Controller と Client の見分け方。

$
0
0

VMware Lightwave の、ドメインコントローラとクライアント(ドメイン参加しているサーバ)ですが、

それぞれのサーバで vmafd-cli コマンドを実行することで確認できます。

 

これのコマンドは、 Lightwave の RPM をインストールすると一緒にインストールされる

vmware-afd-client という RPM に含まれます。

「afd」というのは、VMware Authentication Framework Service のデーモンということのようです。

root [ ~ ]# rpm -qf /opt/vmware/bin/vmafd-cli

vmware-afd-client-6.0.0-0.x86_64

 

Lightwave ドメインコントローラ側の見え方。


「photon-lw01」 というホスト名の Photon Linux を Lightwave ドメインコントローラにしています。

root [ ~ ]# uname -n

photon-lw01

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

VMware Photon Linux 1.0 TP1

root [ ~ ]# rpm -qa | grep lightwave

vmware-lightwave-server-6.0.0-0.x86_64

 

vmafd-cli get-domain-state ~ というコマンドで確認すると、

「Controller」 と表示されます。

そして、ドメイン名が「lightwave.local」 だということもわかります。

root [ ~ ]# /opt/vmware/bin/vmafd-cli get-domain-state --server-name localhost

Controller

root [ ~ ]# /opt/vmware/bin/vmafd-cli get-domain-name --server-name localhost

lightwave.local

root [ ~ ]# /opt/vmware/bin/vmafd-cli get-dc-name --server-name localhost

photon-lw01

 

ドメイン参加しているクライアント側の見え方。

 

lightwave.local ドメインに参加している、「photon01」というホスト名の Photon を見てみます。

root [ ~ ]# uname -n

photon01

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

VMware Photon Linux 1.0 TP1

root [ ~ ]# rpm -qa | grep lightwave

vmware-lightwave-clients-6.0.0-0.x86_64

 

こちらは、vmafd-cli get-domain-state コマンドで「Client」と表示されます。

そして参加しているドメイン名と、ドメインコントローラもわかります。

root [ ~ ]# /opt/vmware/bin/vmafd-cli get-domain-state --server-name localhost

Client

root [ ~ ]# /opt/vmware/bin/vmafd-cli get-domain-name --server-name localhost

lightwave.local

root [ ~ ]# /opt/vmware/bin/vmafd-cli get-dc-name --server-name localhost

photon-lw01.godc.lab

 

ちなみに、RPM インストールしただけの状態だと、

vmafd-cli  を実行してもまだエラーになるだけです。

root [ ~ ]# /opt/vmware/bin/vmafd-cli get-domain-name --server-name localhost

Error 1021: Could not connect to the local service VMware AFD.

Verify VMware AFD is running.

 

こちらもどうぞ・・・

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

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

VMware Lightwave をためしてみる。Part 3(Lightwave のユーザ作成)

 

以上。Lightwave ドメインコントローラとメンバの見分け方でした。

Photon Linux の Docker Update。(tdnf にて)

$
0
0

Photon Linux の Docker は、RPM で導入されます。

そして、Photon Linux は、RPM を yum のかわりに tdnf で管理できます。

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

 

そこで、tdnf コマンドで docker をアップデートしてみました。

 

VMware Photon Linux 1.0 TP1 は、デフォルトだと Docker 1.5 です。

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

VMware Photon Linux 1.0 TP1

root [ ~ ]# docker -v

Docker version 1.5.0, build a8a31ef

root [ ~ ]# docker version

Client version: 1.5.0

Client API version: 1.17

Go version (client): go1.4.1

Git commit (client): a8a31ef

OS/Arch (client): linux/amd64

Server version: 1.5.0

Server API version: 1.17

Go version (server): go1.4.1

Git commit (server): a8a31ef

 

tdnf コマンドで RPM をダウンロードするリポジトリの設定は、

下記のようにしています。

※設定方法は Yum と同じです。(Yum リポジトリを参照します。)

root [ ~ ]# cat /etc/yum.repos.d/*.repo | grep -E "^\[|baseurl|enable"

[lightwave]

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

enabled=0

[photon-extras]

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

enabled=1

[photon-iso]

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

enabled=1

[photon-updates]

baseurl=https://dl.bintray.com/vmware/photon_updates_1.0_TP1_x86_64

enabled=1

[photon]

baseurl=https://dl.bintray.com/vmware/photon_release_1.0_TP1_x86_64

enabled=1

 

Docker のアップデートがあるか見てみます。

現状でインストールされているのは、docker 1.5.0-3 @System)で、

リポジトリにある現時点での最新版は、photon-extras にある docker 1.7.0-1 でした。

root [ ~ ]# tdnf list docker

docker.x86_64                                1.5.0-3                     @System

docker.x86_64                                1.5.0-3                  photon-iso

docker.x86_64                                1.6.0-2              photon-updates

docker.x86_64                                1.7.0-1               photon-extras

docker.x86_64                                1.5.0-3                      photon

 

Docker をアップデートします。

root [ ~ ]# tdnf update docker

Upgrading:

docker x86_64  1.7.0-1

Is this ok [y/N]:y

Downloading 4450014.00 of 4450014.00

Testing transaction

Running transaction

 

Docker のバージョンを確認してみます。

RPM のアップデート直後で、まだ Docker サービスを再起動していないため

Client と Server でバージョンが違うとエラーが表示されます。

※Docker のバージョン 1.5 / 1.7 とは違う部分でのバージョン番号についてのエラー表示のようです。

root [ ~ ]# docker -v

Docker version 1.7.0, build 0baf609

root [ ~ ]# docker version

Client version: 1.7.0

Client API version: 1.19

Go version (client): go1.4.2

Git commit (client): 0baf609

OS/Arch (client): linux/amd64

Error response from daemon: client and server don't have same version (client : 1.19, server: 1.17)

 

Systemd で管理されている Docker サービスを再起動します。

Systemd の Unit ファイルも更新されているようで、

systemctl daemon-reload を実行しておきます。

root [ ~ ]# systemctl restart docker

Warning: Unit file of docker.service changed on disk, 'systemctl daemon-reload' recommended.

 

Docker サービスの再起動

root [ ~ ]# systemctl daemon-reload

root [ ~ ]# systemctl restart docker

 

バージョン確認でも、エラー表示がなくなりました。

root [ ~ ]# docker version

Client version: 1.7.0

Client API version: 1.19

Go version (client): go1.4.2

Git commit (client): 0baf609

OS/Arch (client): linux/amd64

Server version: 1.7.0

Server API version: 1.19

Go version (server): go1.4.2

Git commit (server): 0baf609

OS/Arch (server): linux/amd64

 

以上、Photon の Docker をアップデートする話でした。


VMware Photon Linux 1.0 TP2 が公開されました。

$
0
0

VMworld 2015 ?

vSphere Integrated Containers(VIC) ?

Photon Platform

????????????????? Photon OS (Photon Linux)???????????????


??? VMware Photon Linux 1.0 TP2 ???????????


New Capabilities in Project Photon OS Technical Preview 2 (TP2)

https://blogs.vmware.com/vsphere/2015/08/new-capabilities-in-project-photon-os-technical-preview-2-tp2.html

 

VMworld 2015 ????????????Photon ? Web ?????

?VMware Photon OS?????????????????????

VMware Photon OS

https://vmware.github.io/photon/

?ISO ?????????OVA ????????????????


Bintray ????????????????? ISO ?????????

vmware / photon / iso / 1.0TP2

https://bintray.com/vmware/photon/iso/1.0TP2/view#files

 

Photon Linux 1.0 TP2 ???????

 

TP2 ??????????????

?????????????(TP1)? Photon ?????????????????????


?? ISO ????(???? CD / DVD)????????

?Install?????????? Enter ???

photon-1tp2-inst-01.png


???????????(?Accept?? Enter ???)

photon-1tp2-inst-02.png

 

???????????????????

photon-1tp2-inst-03.png


??????????????????????????????

photon-1tp2-inst-04.png


????????????????

??? Full ???????????????? Minimal ???

TP2 ???OSTree ?????????Custum ???????????

  • Photon Micro
  • Photon Minimal ??????
  • Photon Full
  • Photon OSTree Host ?TP2 ????
  • Photon OSTree Server ?TP2 ????

photon-1tp2-inst-05.png

 

TP2 ????????? ?photon-??????>? ????

???????????????????????

???????????????

photon-1tp2-inst-06.png


root ????????????????

photon-1tp2-inst-07.png


????????????1????????2???????????????

????????????

photon-1tp2-inst-08.png


????????????????????????????

????????????Enter ???????????

photon-1tp2-inst-09.png


OS ??????????????????

photon-1tp2-inst-10.png


????????????????? root ?????????????

Linux ????? 4.0.9 ??Docker ? 1.8.1 ????

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

VMware Photon Linux 1.0 TP2

root [ ~ ]# uname -r

4.0.9

root [ ~ ]# docker -v

Docker version 1.8.1, build d12ea79

 

Lightwave ? Yum (tdnf)?????????????????

???(enabled)???????

root [ ~ ]# tdnf repolist

repo id             repo name                               status

photon              VMware Photon Linux 1.0(x86_64)         enabled

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

lightwave           VMware Lightwave 1.0(x86_64)            enabled

 

VIC?Photon Platform ???????????????????????????

 

???VMware Photon Linux 1.0 TP2 ?????????????

VMware Lightwave に LDAP 検索してみる。(ldapsearch)

$
0
0

VMware Lightwave Server は、LDAP サーバとしての機能をもっていて、

Windows の Active Directory ドメインコントローラと同じように LDAP 検索をすることも可能です。


Lightwave には、現状ではまだ登録情報をわかりやすく見る UI が無そうなので、

ためしに、Photon Linux に含まれている ldapsearch コマンドで、LDAP 検索してみました。


Lightwave Server は、Photon Linux にインストールされています。

今回はまだ 1.0 TP1 です。

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

VMware Photon Linux 1.0 TP1

 

この Photon は、Lightwave ドメインコントローラです。

(参考) こちらもどうぞ

VMware Lightwave の Domain Controller と Client の見分け方。

root [ ~ ]# /opt/vmware/bin/vmafd-cli get-domain-state --server-name localhost

Controller  ★ドメインコントローラ。

root [ ~ ]# /opt/vmware/bin/vmafd-cli get-domain-name --server-name localhost

lightwave.local ★ドメイン名

 

ldapsearch もインストールされています。

root [ ~ ]# ldapsearch -VV

ldapsearch: @(#) $OpenLDAP: ldapsearch 2.4.40 (Apr 15 2015 23:12:31) $

        @discus-test:/usr/src/photon/BUILD/openldap-2.4.40/clients/tools

        (LDAP library: OpenLDAP 20440)

root [ ~ ]# which ldapsearch

/usr/bin/ldapsearch

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

openldap-2.4.40-1.x86_64

 

たとえば、下記のように検索すると、

lightwave.local(今回の Lightwave ドメイン名)の LDAP エントリを全件表示できます。

これですべてのエントリが表示できるので、そこからあたりを付けます。


今回の ldapsearch の検索では・・・

  • 「-D」で Lightwave ドメイン管理者ユーザを指定しています。
  • 「-d」 で、検索対象を指定しています。
  • 「-w」 で、パスワードを指定します。※大文字の「-W」にすると、都度入力にすることもできます。

※コマンドラインを簡略化するため、最初に「lightwave.local\Administrator」のパスワードを変数にいれてしまっています。

※全件表示は多いので省略してます。

root [ ~ ]# pw=<Administrator のパスワード>

root [ ~ ]# ldapsearch -D "cn=Administrator,cn=users,dc=lightwave,dc=local" -b "dc=lightwave,dc=local" -w $pw

 

結果の全件表示からアタリを付けて、ldapsearch の検索内容を変更してみます。

 

例1: 検索先「-b cn=users,dc=lightwave,dc=local」 にしぼってユーザを探してみます。

ついでに userPrincipalName が lw_user01@lightwave.local のエントリだけ表示しています。

root [ ~ ]# ldapsearch -D 'cn=Administrator,cn=users,dc=lightwave,dc=local' -b 'cn=users,dc=lightwave,dc=local' -w $pw userPrincipalName=lw_user01@lightwave.local

# extended LDIF

#

# LDAPv3

# base <cn=users,dc=lightwave,dc=local> with scope subtree

# filter: userPrincipalName=lw_user01@lightwave.local

# requesting: ALL

#

 

# user01 lw, users, lightwave.local

dn: CN=user01 lw,cn=users,dc=lightwave,dc=local

nTSecurityDescriptor:: AQAEgBQ~(省略)

givenName: user01

sn: lw

userPrincipalName: lw_user01@lightwave.local

sAMAccountName: lw_user01

cn: user01 lw

objectClass: top

objectClass: person

objectClass: organizationalPerson

objectClass: user

 

# search result

search: 2

result: 0 Success

 

# numResponses: 2

# numEntries: 1

 

例2: Lightwave ドメインに参加しているサーバを探してみる。

検索先を「-b 'ou=Computers,dc=lightwave,dc=local'」 に変更して、

さらにobjectClass が computer のエントリを検索します。

表示する属性情報も、dn cn vmwMachineGUID の3つにしぼってみました。

root [ ~ ]# ldapsearch -D 'cn=Administrator,cn=users,dc=lightwave,dc=local' -b 'ou=Computers,dc=lightwave,dc=local' -w $pw '(objectClass=computer)' dn cn vmwMachineGUID

# extended LDIF

#

# LDAPv3

# base <ou=Computers,dc=lightwave,dc=local> with scope subtree

# filter: (objectClass=computer)

# requesting: dn cn vmwMachineGUID

#

 

# photon01, Computers, lightwave.local

dn: cn=photon01,ou=Computers,dc=lightwave,dc=local

vmwMachineGUID: 9cfed666-dc7f-49da-88bc-6611c400399e

cn: photon01

 

# photon02, Computers, lightwave.local

dn: cn=photon02,ou=Computers,dc=lightwave,dc=local

vmwMachineGUID: 701681b6-1a85-4a6f-b7c1-c09aa4466d34

cn: photon02

 

# photon03, Computers, lightwave.local

dn: cn=photon03,ou=Computers,dc=lightwave,dc=local

vmwMachineGUID: 25662494-ea52-428f-bdea-66ad816b67e4

cn: photon03

 

# search result

search: 2

result: 0 Success

 

# numResponses: 4

# numEntries: 3

 

ldapsearch が使いにくかったら、普通の Linux コマンド grep などを併用してユーザを探したりできます。

 

下記のような感じで、Lightwave ドメインに作成したユーザが、だいたいわかります。

ちなみに、管理者ユーザや自分で作成したユーザ以外にもビルトインのユーザが存在しているようです。

root [ ~ ]# ldapsearch -D 'cn=Administrator,cn=users,dc=lightwave,dc=local' -b 'cn=users,dc=lightwave,dc=local' -w $pw | grep userPrincipalName

userPrincipalName: gowatana@lightwave.local

userPrincipalName: krbtgt/LIGHTWAVE.LOCAL@LIGHTWAVE.LOCAL

userPrincipalName: K/M@LIGHTWAVE.LOCAL

userPrincipalName: Administrator@LIGHTWAVE.LOCAL

userPrincipalName: lw_user01@lightwave.local

userPrincipalName: lw_user02@lightwave.local

 

ドメイン参加しているメンバサーバがだいたいわかります。

root [ ~ ]# ldapsearch -D 'cn=Administrator,cn=users,dc=lightwave,dc=local' -b 'ou=Computers,dc=lightwave,dc=local' -w $pw | grep dn

dn: ou=Computers,dc=lightwave,dc=local

dn: cn=photon01,ou=Computers,dc=lightwave,dc=local

dn: cn=photon02,ou=Computers,dc=lightwave,dc=local

dn: cn=photon03,ou=Computers,dc=lightwave,dc=local

 

この先 Lightwave がどう進化するかわかりませんが、現状の dir-cli コマンドだけだとわからない情報があったりします。

今回はうっかり登録したユーザや参加させたメンバを忘れてしまったため、つい ldapsearch してしまいました・・・

 

以上、Lightwave で LDAP 検索をしてみる話でした。

PowerCLI の Get-EsxCli の用途について思うこと。

$
0
0

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

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 についてでした。

vSphere + NSX + OpenStack を HoL で見てみる。

$
0
0

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 を眺めてみる話でした。

Photon Linux 1.0 TP2 の地味な変更点について。

$
0
0

VMware Photon OS ですが、

vForum 2015 でも盛んに取り上げられ、Photon Controller も GitHub で公開され

徐々に知名度が上がっているのではないかと思われます。

 

VMware Photon

https://github.com/vmware/photonhttps://github.com/vmware/photon

 

VMware Photon Controller

https://github.com/vmware/photon-controllerhttps://github.com/vmware/photon-controller

 

Photon は、VMworld の開催された2015年8月末ごろに Photon OS とよばれるようになり

Technical Preview 2(1.0 TP2)もリリースされています。

New Capabilities in Project Photon OS Technical Preview 2 (TP2) - VMware vSphere Blog - VMware Blogs

 

以前にこんなポストもしてみましたが・・・

VMware Photon Linux 1.0 TP2 が公開されました。

 

PXE Boot インストールや RPM-OSTree への対応といった大きく公表されているところ以外にも、

いくつか変更されていることに気づきました。

 

今回の Photon のバージョンです。

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

VMware Photon Linux 1.0 TP2

 

たとえば・・・

 

syslog-ng が入った。

いままで、ログ管理が悩ましい気がしていたので、便利になったと思います。

root [ ~ ]# rpm -q syslog-ng

syslog-ng-3.6.2-3.ph1tp2.x86_64

 

ふつうにテキストログが /var/log/messages ファイルに出力されたりします。

root [ ~ ]# ls -lh /var/log/messages

-rw------- 1 root root 548K Nov 26 11:11 /var/log/messages

 

NIC の名前付けのルールが変更された。

eth0 みたいな名前から、RHEL7 や Oracle Linux 7 でおなじみの enp0s3 みたいな名前に変更されました。

Photon ではあまり RPM が導入されていませんが、

それでも ip コマンドだけでなく ifconfig コマンドも使用できます。

※この例では、NIC が2つあります。

root [ ~ ]# ifconfig -a
enp0s3    Link encap:Ethernet  HWaddr 08:00:27:79:C1:4B
           inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:6 errors:0 dropped:0 overruns:0 frame:0
           TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:1528  TX bytes:2371

 

enp0s8    Link encap:Ethernet  HWaddr 08:00:27:B1:5B:BB
           inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:29235 errors:0 dropped:0 overruns:0 frame:0
           TX packets:710 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:2467629  TX bytes:116892

 

lo        Link encap:Local Loopback
           inet addr:127.0.0.1  Mask:255.0.0.0
           UP LOOPBACK RUNNING  MTU:65536  Metric:1
           RX packets:323 errors:0 dropped:0 overruns:0 frame:0
           TX packets:323 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:0

          RX bytes:95887  TX bytes:95887

 

Open vSwitch が入っている。

ホストをまたぐコンテナ管理機能で使うことになるのか・・・?

root [ ~ ]# rpm -qa | grep openvswitch

openvswitch-2.3.1-1.ph1tp2.x86_64

 

まだ謎の多い Photon ですが、

いろいろと調整されているようで VIC や Photon Platform が GA になるころにどうなるのか楽しみです。

 

以上、Photon OS の 1.0 TP2 での地味な変更点についてでした。

VMware のコミュニティサイトと、日本語 Online Forum の様子。

$
0
0
このポストは、2015年の vExpert アドベントカレンダー 2日目です。
 
VMware のオンラインコミュニティサイト、
VMware Technology Network(VMTN)と、その中の日本語フォーラム VMTNJ の紹介をしようと思います。
 
VMTN の主なコンテンツは下記のようなものです。
  • 質問などを投稿する「ディスカッション」
  • 主に情報提供むけと思われる「文章」
そして、このブログもその一部です。
VMTN では個人ブログを開設することもできます。

ただ、このブログ機能は正直あまり使い勝手がよいとは言えないので

個人的には、ブログに関しては別のブログサービスのほうがよい気もします。

  

これらのコンテンツの一部として、VMTN Japan Online Forum(VMTNJ)というフォーラムがあります。

VMTN Japan Online Forum の様子。
 
Japan Online Forum(VMTNJ)は、こんなサイトです。
 
VMTNJ へは、VMware の日本のコーポレートサイト(http://www.vmware.com/jp)上部にある
「コミュニティ」リンクをクリックすると、直接たどりつくことができます。
 
VMTN の中では、VMTNJ は下記のような位置づけになっていて、
コミュニティサイトの HOME からリンクをたどっていくこともできます。
 
製品別フォーラムとは異なり、特に製品の制限などはなく日本語での投稿は何でもここにされます。
ちなみに Asia Pacific では、日本語の他に中国語のフォーラムも利用されています。
 
VMTNJ にあるパンくずリストからも構造がわかります。
見ての通り、結構 VMTN の奥地にあるので Web ブラウザのお気に入りに入れておくとよいでしょう。
 
ちなみに、このサイトは Jive というプロダクトでできています。わりとメジャーなもののようで、
海外ベンダのコミュニティサイトではこの Jive か Lithium をよく目にする気がします。
たとえば、ORACLE、EMC、Cisco、SolarWinds などのコミュニティサイトも Jive を使用しているようです。
 
 

VMTNJ の様子と利用方法。

  

日本語フォーラムでは主に「ディスカッション」が利用されていて、

ディスカッション数はだいたい 100~120件/年 くらいです。

内容は、VMware Workstation (Player / Pro) / Fusion / vSphere あたりの質問が多いです。

  

最近、フォーラムへの投稿方法についてのドキュメントを作成されたので、

VMTNJ に投稿される場合は一読をお勧めします。

【最初にお読みください】このフォーラムの利用方法

※これがディスカッションではなく「文章」というコンテンツです。

  

迷子になる人も多いようなので、日本語でのディスカッションを開始したい場合は、

VMTNJ にいることを確認したうえで「Start Discussion」ボタンを押すとよいでしょう。

  

  

VMTNJ 以外の VMTN フォーラムについて。
 
VMTNJ は正直そんなに活発ではないのですが、
各製品フォーラムでは頻繁にディスカッションされて(ほぼ毎日更新されて) いるので、
英語に抵抗のない方は、VMTNJ よりそちらを利用したほうがよいと思います。
たとえば、
といったメジャーな製品だけでなく、
のようなマニアックな製品でも、意外と活発にディスカッションされていたりします。
面白いドキュメントが公開されていたりもします。たとえば NSX では・・・
  
モニタリングやログ管理を含む、NSX の運用ガイド

  

OpenStack のフォーラムで、NSX とのコンフィグレーションガイド

VIO2.0&NSX - Network Topologies Configuration Guide-v1.0(public).pptx

 
 
他にも下記のような、他社製品とのインテグレーションや、
無償製品、テクノロジープレビューについてのフォーラムも用意されています。
 
Oracle Database の仮想化について。
 
最近公開された、vSphere Client のかわりになるかもしれない「Host Client」。
 
今話題の、コンテナに最適化された軽量 Linux。
 
作業効率化、自動化などでおなじみの PowerCLI。
 
 
最近公開された Photon 関連のようなものは、
個人的には、コミュニティを活用できたらうれしい製品だと思います。
また、オフラインでの VMUG の部会などでも VMTNJ は毎回紹介されているらしいので、
VMTNJ も、もう少し活性化されるかもしれないと期待しています。
 
以上、VMTN と VMTNJ の紹介でした。

Linux ゲストで VMDK サイズを拡張してみる。

$
0
0

ESXi では VM のディスク(VMDKファイル)拡張は簡単にできます。

その VMKD 拡張後にゲスト側ではどうしたらよいか聞かれることが多いので

Linux ゲストを例として、ディスク拡張をやってみます。

 

VMの仮想ディスク拡張の考え方。

仮想ディスクのサイズ拡張は、VMだけでなくゲスト側でも作業が必要です。

下のレイヤから順に拡張作業することになります。

ちなみに、今回はの環境は・・・

  • ESXi は、6.0 U1 。VMバージョンは 11。(vmx-11)
  • VM では「準仮想化」の SCSI コントローラを使用している。
  • ゲスト OS は、Oracle Linux 6.7。 (ただし仮想マシンのタイプは RHEL6)
  • 拡張する VMDK は、VM の「ハードディスク 2」。ゲスト OS では /dev/sdb と認識されている。
  • ゲスト OS では、ディスクは単一パーティション(/dev/sdb1)だけ。
  • ゲスト OS では、/dev/sdb1 に ext4 ファイルシステムを作成している。
  • /dev/sdb では、ゲスト OS での LVM は使用していない。

vmdk-extend.png

 

最初の状態を確認しておきます。

 

OS は、Oracle Linux 6.7 です。RHEL 6.x や CentOS 6.x でも同様な手順が使えるはずです。

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

Oracle Linux Server release 6.7

 

パーティションを見てみます。

今回、拡張する VMDK は /dev/sdb で、パーティションは /dev/sdb1 です。

[root@ol67-vm01 ~]# cat /proc/partitions | grep sdb

   8       16   10485760 sdb

   8       17   10485744 sdb1

 

今回は sfdisk コマンドでパーティション拡張してみます。

sfdisk でも、初期状態を見ておきます。

※-uM は MB 表示、-uS はセクタ表示です。

[root@ol67-vm01 ~]# sfdisk -l -uM /dev/sdb

 

ディスク /dev/sdb: シリンダ数 10240、ヘッド数 64、32 セクタ/トラック

Units = 1048576 バイトをメガバイト、1024 バイトのブロック、0 から数えます

 

デバイス ブート 始点   終点   MiB  #ブロック   Id  システム

/dev/sdb1         0+ 10239  10240-  10485744   83  Linux

/dev/sdb2         0      -      0          0    0  空

/dev/sdb3         0      -      0          0    0  空

/dev/sdb4         0      -      0          0    0  空

 

[root@ol67-vm01 ~]# sfdisk -l -uS /dev/sdb

 

ディスク /dev/sdb: シリンダ数 10240、ヘッド数 64、32 セクタ/トラック

ユニット = 512 バイトのセクタ、0 から数えます

 

デバイス ブート    始点      終点    #セクタ  Id システム

/dev/sdb1            32  20971519   20971488  83  Linux

/dev/sdb2             0         -          0   0  空

/dev/sdb3             0         -          0   0  空

/dev/sdb4             0         -          0   0  空

 

ファイルシステムは ext4 にしています。だいたい 10 GB です。

[root@ol67-vm01 ~]# df -hT

Filesystem           Type   Size  Used Avail Use% Mounted on

/dev/mapper/vg_ol67min-lv_root

                     ext4    14G  1.7G   12G  14% /

tmpfs                tmpfs  873M     0  873M   0% /dev/shm

/dev/sda1            ext4   477M   72M  376M  16% /boot

/dev/sdb1            ext4   9.8G   23M  9.2G   1% /u01

 

ファイルシステム上のファイルが読み取れることを確認しておきます。

[root@ol67-vm01 ~]# cat /u01/test.txt

abcd

efg

 

 

1. 仮想ディスク(VMDK)の拡張。

 

vSphere Web Client で作業します。

拡張したい VMDK を接続している VM の「設定の編集」の、

「仮想ハードウェア」→「ハードディスク 2」のサイズを増やします。

※逆に、サイズを縮小することはできません。

 

現状では、10GB です。

vmdk-extend-01.png

 

サイズを 20GB に増やしました。

vmdk-extend-02.png

 

VM のサマリ画面でも、容量が 20GB になったことがわかります。

vmdk-extend-03.png

 

2. パーティションの拡張。

 

これは、Linux ゲスト に直接ログインして作業します。

 

まず、ファイルシステムをアンマウントしておきます。

今回、/dev/sdb1 は、/u01 にマウントしています。

※ディレクトリやファイルをつかんでいるアプリケーションなどは停止しておく必要があります。

[root@ol67-vm01 ~]# umount /u01

 

この時点では、まだ VMDK のサイズ拡張が認識されていないはずです。

[root@ol67-vm01 ~]# cat /proc/partitions | grep sdb

   8       16   10485760 sdb

   8       17   10485744 sdb1

 

パーティションテーブルを、いったん再読み込みします。

[root@ol67-vm01 ~]# sfdisk -R /dev/sdb

 

VMDK の拡張が認識されます。

[root@ol67-vm01 ~]# cat /proc/partitions | grep sdb

   8       16   20971520 sdb

   8       17   10485744 sdb1

 

/dev/sdb1 パーティションを拡張します。

今回は、開始セクタ(sfdisk -l -uS 表示の「開始」)が 32 なので、

[root@ol67-vm01 ~]# sfdisk -l -uS /dev/sdb

 

ディスク /dev/sdb: シリンダ数 20480、ヘッド数 64、32 セクタ/トラック

ユニット = 512 バイトのセクタ、0 から数えます

 

デバイス ブート    始点      終点    #セクタ  Id システム

/dev/sdb1            32 20971519   20971488  83  Linux

/dev/sdb2             0         -          0   0  空

/dev/sdb3             0         -          0   0  空

/dev/sdb4             0         -          0   0  空

 

32 セクタから末尾まで拡張してみます。

[root@ol67-vm01 ~]# echo '32,,' | sfdisk -uS /dev/sdb

現在、誰もこのディスクを使っていないかを調べます...

OK

 

ディスク /dev/sdb: シリンダ数 20480、ヘッド数 64、32 セクタ/トラック

古い場面:

ユニット = 512 バイトのセクタ、0 から数えます

 

デバイス ブート    始点      終点    #セクタ  Id システム

/dev/sdb1            32  20971519   20971488  83  Linux

/dev/sdb2             0         -          0   0  空

/dev/sdb3             0         -          0   0  空

/dev/sdb4             0         -          0   0  空

新たな場面:

ユニット = 512 バイトのセクタ、0 から数えます

 

デバイス ブート    始点      終点    #セクタ  Id システム

/dev/sdb1            32  41943039   41943008  83  Linux

/dev/sdb2             0         -          0   0  空

/dev/sdb3             0         -          0   0  空

/dev/sdb4             0         -          0   0  空

警告: ブート可能な基本パーティションがありません

LILO にとっては問題ありませんが、DOS MBR はこのディスクをブートできなく

なってしまいます。

新たなパーティションの書き込みに成功

 

パーティションテーブルを再読み込み中...

 

もし、DOS パーティションを作成または変更したならば -- たとえば /dev/foo7 、

dd(1) をつかって最初の 512 バイトをゼロにして下さい:

dd if=/dev/zero of=/dev/foo7 bs=512 count=1

(詳細は fdisk(8)を見てください。)

 

この時点だと、まだ /dev/sdb1 に作成された ext4 のファイルシステムは拡張されていません。

[root@ol67-vm01 ~]# mount /u01

[root@ol67-vm01 ~]# df -hT /u01

Filesystem     Type  Size  Used Avail Use% Mounted on

/dev/sdb1      ext4  9.8G   23M  9.2G   1% /u01

 

3. ファイルシステムの拡張。

 

引き続き、Linux ゲスト にて作業します。

いちおう、ファイルシステムをアンマウントしておきます。

[root@ol67-vm01 ~]# umount /u01

 

そして、ファイルシステムチェック(e2fsck)を実施した後に、

ファイルシステムを拡張(resize2fs )します。

[root@ol67-vm01 ~]# e2fsck -f /dev/sdb1

e2fsck 1.43-WIP (20-Jun-2013)

Pass 1: Checking inodes, blocks, and sizes

Pass 2: Checking directory structure

Pass 3: Checking directory connectivity

Pass 4: Checking reference counts

Pass 5: Checking group summary information

/dev/sdb1: 12/655360 files (0.0% non-contiguous), 79664/2621436 blocks

[root@ol67-vm01 ~]# resize2fs /dev/sdb1

resize2fs 1.43-WIP (20-Jun-2013)

Resizing the filesystem on /dev/sdb1 to 5242876 (4k) blocks.

The filesystem on /dev/sdb1 is now 5242876 blocks long.

 

これで、ファイルシステムも 20GB に拡張されました。

[root@ol67-vm01 ~]# mount /u01

[root@ol67-vm01 ~]# df -hT /u01

Filesystem     Type  Size  Used Avail Use% Mounted on

/dev/sdb1      ext4   20G   28M   19G   1% /u01

 

もともと配置していたファイルが読み取れています。

[root@ol67-vm01 ~]# cat /u01/test.txt

abcd

efg

 

Linux のディストリビューションや、LVM 利用の有無、ファイルシステムの種類によって

使用するツールやコマンドラインは変わりますが、このような流れで VM のディスク拡張が可能です。

また、実際にディスク拡張をする場合は、

事前に拡張対象ファイルシステムにあるデータのバックアップを取得しておくとよいと思います。

 

以上、VM のディスク拡張についてでした。


Docker Hub OFFICIAL の VMware Photon リポジトリが公開されました。

$
0
0

VMware Photon OS の、Docker Hub オフィシャルリポジトリが公開されました。

Docker コンテナイメージが「docker pull photon」でダウンロードできます。

 

Three New Official Repos Join the Docker Library

http://blog.docker.com/2016/01/three-new-official-repos-join-the-docker-library/http://blog.docker.com/2016/01/three-new-official-repos-join-the-docker-library/

 

Docker Hub の photon リポジトリ。

https://hub.docker.com/r/library/photon/https://hub.docker.com/r/library/photon/

 

リポジトリの Tag を見ると、現時点(2016/01)でインストーラの ISO イメージが公開されている

Photon OS 1.0 TP2 と、それよりも新しい 1.0 RC が公開されています。

この時点の latest Tag は 1.0RC のイメージに割り当てられています。

dockerhub-photon-repo.png


ということで、Docker Hub オフィシャルのイメージからコンテナを起動してみます。

 

オフィシャル photon イメージからコンテナ起動。

 

Docker ホストは、Photon OS 1.0 TP2 を使用しています。

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

VMware Photon Linux 1.0 TP2

 

今回の Docker ホストは、photon21 というホスト名にしています。

root [ ~ ]# uname -n

photon21

 

Docker Hub のオフィシャルの photon はこれです。

NAME に「/」がなく、OFFICIAL が [OK] になっています。

root [ ~ ]# docker search photon | grep -v /

NAME                                 DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED

photon                               Photon OS is a technology preview of a min...   5         [OK]

 

イメージをダウンロード(pull)してみます。

タグなしで「photon」と指定しているので、「photon:latest」がダウンロードされます。

root [ ~ ]# docker pull photon

Using default tag: latest

latest: Pulling from library/photon

2b04b19ccb4f: Pull complete

a7d41096d06c: Pull complete

b12b5ead0dad: Pull complete

library/photon:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.

Digest: sha256:b2848958bab911122e8469411184ab683d8105859497ecb33bb9f3760ace6ce0

Status: Downloaded newer image for photon:latest

 

ダウンロードされました。

root [ ~ ]# docker images photon

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE

photon              latest              b12b5ead0dad        2 weeks ago         119.1 MB

 

コンテナを起動してみます。

起動と同時にコンテナの中に入っていることが、プロンプトとホスト名からわかります。

root [ ~ ]# docker run -it photon

root [ / ]# uname -n  ★ここからコンテナの中。

4ee5f47acd72

 

latest から起動したコンテナの Photon OS のバージョンは 1.0 RC になっています。

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

VMware Photon Linux 1.0-RC

PHOTON_BUILD_NUMBER=09637bc

 

Photon OS では、yum のかわりに tdnf という yum 互換コマンドで RPM パッケージを管理します。

コンテナイメージに登録済みのリポジトリを見てみます。

root [ / ]# tdnf repolist

repo id             repo name                               status

photon              VMware Photon Linux 1.0(x86_64)         enabled

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

lightwave           VMware Lightwave 1.0(x86_64)            enabled

 

tdnf は、yum と同様のリポジトリ参照設定をします。

今回のコンテナでは、このように設定されていました。

tdnf / yum コマンドを実行しなくても、baseurl に設定されている URL に Web ブラウザなどで

アクセスすると、実際にどのような RPM が用意されているのか確認できます。

root [ / ]# ls /etc/yum.repos.d/

lightwave.repo  photon-iso.repo  photon-updates.repo  photon.repo

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

[photon]

name=VMware Photon Linux 1.0(x86_64)

baseurl=https://dl.bintray.com/vmware/photon_release_1.0_RC_x86_64

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

gpgcheck=1

enabled=1

skip_if_unavailable=True

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

[photon-updates]

name=VMware Photon Linux 1.0(x86_64)Updates

baseurl=https://dl.bintray.com/vmware/photon_updates_1.0_RC_x86_64

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

gpgcheck=1

enabled=1

skip_if_unavailable=True

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/VMWARE-RPM-GPG-KEY

gpgcheck=1

enabled=1

skip_if_unavailable=True

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

[photon-iso]

name=VMWare Photon Linux 1.0(x86_64)

baseurl=file:///mnt/cdrom/RPMS

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

gpgcheck=1

enabled=0

skip_if_unavailable=True

 

ちなみに、このコンテナイメージには、yum は入っていません。

ただし、photon のリポジトリには配置されているので追加インストールすることは可能です。

root [ / ]# yum

bash: yum: command not found

root [ / ]# tdnf list yum

yum.noarch                                  3.4.3-2.ph1rc             photon

 

オフィシャル photon イメージのカスタマイズ。

 

photon では標準で tdnf を使用するようになっているので、

コンテナイメージをカスタマイズするときは、

これまで yum を使用していた手順では、かわりに tdnf コマンドを使用します。

たとえば、docker build ~ するときは、下記のような感じになります。

 

まず、例として httpd をインストールして起動するだけの超簡易的な Dockerfile を作成してみました。

 

Dockerfile の内容

FROM photon

MAINTAINER gowatana

 

RUN tdnf install -y httpd

ENTRYPOINT /usr/sbin/httpd -D FOREGROUND

 

イメージを build してみます。

root [ ~ ]# docker build -t photon-web:1.0 .

Sending build context to Docker daemon 10.75 kB

Step 0 : FROM photon

---> b12b5ead0dad

Step 1 : MAINTAINER gowatana

---> Running in 750719e6d0e2

---> e945a2934d58

Removing intermediate container 750719e6d0e2

Step 2 : RUN tdnf install -y httpd

---> Running in 989cd40787da

 

Installing:

Linux-PAM                       x86_64      1.1.8-2.ph1rc       1011.17 k

krb5                            x86_64      1.12.2-1.ph1rc        3.51 M

e2fsprogs                       x86_64      1.42.9-4.ph1rc        2.67 M

cyrus-sasl                      x86_64      2.1.26-4.ph1rc      548.33 k

apr                             x86_64      1.5.2-5.ph1rc       519.52 k

apr-util                        x86_64      1.5.4-5.ph1rc       394.36 k

openldap                        x86_64      2.4.40-2.ph1rc        1.51 M

httpd                           x86_64      2.4.12-4.ph1rc       12.19 M

 

Total installed size: 22.30 M

 

Downloading:

httpd                                  4692452    100%

openldap                                865721    100%

apr-util                                156350    100%

apr                                     181582    100%

cyrus-sasl                              276100    100%

e2fsprogs                              1051512    100%

krb5                                   1406668    100%

/var/tmp/rpm-tmp.gShFPX: line 3: groupadd: command not found

/var/tmp/rpm-tmp.gShFPX: line 6: useradd: command not found

 

Testing transaction

Running transaction

 

Complete!

---> 9b51afe2abb4

Removing intermediate container 989cd40787da

Step 3 : ENTRYPOINT /usr/sbin/httpd -D FOREGROUND

---> Running in fac2999916a5

---> ccfd44e6ff70

Removing intermediate container fac2999916a5

Successfully built ccfd44e6ff70

 

「photon-web:1.0」が build されました。

root [ ~ ]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED              VIRTUAL SIZE

photon-web          1.0                 ccfd44e6ff70        About a minute ago   147.6 MB

photon              latest              b12b5ead0dad        2 weeks ago          119.1 MB

 

コンテナを起動して curl でアクセスすると、ちゃんと httpd でおなじみの「It works!」ページが返されています。

root [ ~ ]# docker run -d -p 8001:80 photon-web:1.0

a38e5be9e9d27a932d86b08781833a67592e4d36dcc00f9a88179426773fc86f

root [ ~ ]# curl http://localhost:8001/

<html><body><h1>It works!</h1></body></html>

 

ただ、Photon OS はコンテナ用の軽量 OS のため、デフォルトで設定されている photon の tdnf のリポジトリには

あまり RPM が配置されていません。

このイメージは、特定の用途(Lightwave とか)で使用するか、もしくは

カスタマイズするためにいくらか tdnf(yum)のリポジトリを追加する必要がありそうです。

 

以上、Docker Hub オフィシャルの photon イメージについてでした。

VCSA に Onyx for the Web Client をインストールしてみる。

$
0
0

Onyx for the Web Client をインストールしてみました。

vSphere Web Client での操作を PowerCLI のコードに変換してくれます。

 

Onyx for the Web Client

https://labs.vmware.com/flings/onyx-for-the-web-client

 

以前から vSphere Client で使用する Onyx も提供されていました。

 

Onyx

https://labs.vmware.com/flings/onyx

 

VMware LABS サイトで提供されている FLINGS と呼ばれるツールで、製品サポートは受けられませんが、

どうしてもスクリプト化したい操作があるときに役立ちます。

 

Onyx for the Web Client の VCSA へのインストール。

 

今回は、VMware vCenter Server Appliance (VCSA)6.0 U1 にインストールしてみます。

 

まず、VMware LABS の Web サイトから 「onyx-setup-60u1.zip」 ファイルをダウンロードします。

同意ボタンにチェックをいれると、Download できるようになります。

onyx-web-01.png

 

ダウンロードした Zip ファイルです。

※事情により、Linux で作業しています。

[root@work01 ~]# ls -l onyx-setup-60u1.zip

-rw-r--r--. 1 root root 4257758  2月 15 00:41 2016 onyx-setup-60u1.zip

 

SSH アクセスを許可してある VCSA に、root ユーザでログインします。

※今回の VCSA は、vc60n02.godc.lab という名前にしています。

[root@work01 ~]# ssh -l root vc60n02.godc.lab

 

VMware vCenter Server Appliance 6.0.0.10000

 

Type: vCenter Server with an embedded Platform Services Controller

 

root@vc60n02.godc.lab's password: ★パスワードを入力。

Last login: Sun Feb 14 15:49:30 UTC 2016 from 192.168.1.197 on ssh

Last login: Sun Feb 14 15:50:09 2016 from 192.168.5.238

Connected to service

 

    * List APIs: "help api list"

    * List Plugins: "help pi list"

    * Enable BASH access: "shell.set --enabled True"

    * Launch BASH: "shell"

 

Command>

 

「shell.set --enabled True」コマンドで Shell アクセスを有効化して、

そのまま bash shell を起動します。

Command> shell.set --enabled True

Command> shell

    ---------- !!!! WARNING WARNING WARNING !!!! ----------

 

Your use of "pi shell" has been logged!

 

The "pi shell" is intended for advanced troubleshooting operations and while

supported in this release, is a deprecated interface, and may be removed in a

future version of the product.  For alternative commands, exit the "pi shell"

and run the "help" command.

 

The "pi shell" command launches a root bash shell.  Commands within the shell

are not audited, and improper use of this command can severely harm the

system.

 

Help us improve the product!  If your scenario requires "pi shell," please

submit a Service Request, or post your scenario to the

https://communities.vmware.com/community/vmtn/vcenter/vc forum and add

"appliance" tag.

 

vc60n02:~ #

 

VCSA の中から、先ほどの Zip ファイルを scp 転送します。

※ work01.godc.lab が Zip ファイルを置いていたサーバです。

vc60n02:~ # scp work01.godc.lab:/root/onyx-setup-60u1.zip /root/.

The authenticity of host 'work01.godc.lab (192.168.5.238)' can't be established.

RSA key fingerprint is f2:4e:c1:65:33:83:94:37:3b:17:07:3b:0a:f0:4e:9b [MD5].

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

Warning: Permanently added 'work01.godc.lab,192.168.5.238' (RSA) to the list of known hosts.

root@work01.godc.lab's password: ★パスワードを入力。

onyx-setup-60u1.zip                                                                      100% 4158KB  4.1MB/s  00:00

 

onyx-setup ディレクトリを作成して、そこに Zip ファイルを解凍します。

vc60n02:~ # mkdir onyx-setup

vc60n02:~ # cd onyx-setup/

vc60n02:~/onyx-setup # unzip ../onyx-setup-60u1.zip

Archive:  ../onyx-setup-60u1.zip

  inflating: install.sh

  inflating: Onyx For the Web Client_V1_0_DocV1_0.pdf

  inflating: uninstall.ps1

  inflating: uninstall.sh

  inflating: onyx/plugin-package.xml

  creating: onyx/plugins/

  inflating: onyx/plugins/onyx-service.jar

  inflating: onyx/plugins/onyx-ui-war-1.0.0.war

  inflating: vsphere-patch/vim-commons-6.0.0.jar

  inflating: vsphere-patch/vim-commons-vsphere-6.0.0.jar

  inflating: deploy.sh

  inflating: install.ps1

 

install.sh ファイルに実行権限を付与(chmod +x)します。

vc60n02:~/onyx-setup # chmod +x ./install.sh

vc60n02:~/onyx-setup # ls -l ./install.sh

-r-x------ 1 root root 1851 Jun 15  2015 ./install.sh

 

./install.sh で実行すると、セットアップするか確認されます。

「y」を入力して Enter キーをおすと、インストールが開始されます。

このとき、Web Client サーバのサービス(vsphere-client )が自動的に再起動されます。

vc60n02:~/onyx-setup # ./install.sh

 

Onyx for Web Client setup

=========================

 

This fling replaces core Web Client files and may cause issues

with stability and patching of future versions, please only

continue with this installation if you are using a test or dev

environment.

 

Are you sure you would like to continue? [y/N] y

-- Shutting down vSphere Web Client

INFO:root:Service: vsphere-client, Action: stop

Service: vsphere-client, Action: stop

2016-02-14T22:01:11.198Z  Running command: ['/sbin/service', u'vsphere-client', 'status']

2016-02-14T22:01:11.413Z  Done running command

2016-02-14T22:01:11.413Z  Running command: ['/sbin/service', u'vsphere-client', 'stop']

2016-02-14T22:01:17.031Z  Done running command

2016-02-14T22:01:17.032Z  Successfully stopped service vsphere-client

-- Patching vSphere Web Client core

Backup file created: /usr/lib/vmware-vsphere-client/server/repository/usr/vim-commons-6.0.0.jar.bak1

Backup file created: /usr/lib/vmware-vsphere-client/server/repository/usr/vim-commons-vsphere-6.0.0.jar.bak1

-- Deploying Onyx plugin

-- Powering on vSphere Web Client

INFO:root:Service: vsphere-client, Action: start

Service: vsphere-client, Action: start

2016-02-14T22:01:17.181Z  Running command: ['/sbin/chkconfig', u'vsphere-client']

2016-02-14T22:01:17.253Z  Done running command

2016-02-14T22:01:17.253Z  Running command: ['/sbin/service', u'vsphere-client', 'status']

2016-02-14T22:01:17.439Z  Done running command

2016-02-14T22:01:17.439Z  Running command: ['/sbin/chkconfig', '--force', u'vsphere-client', 'on']

2016-02-14T22:01:17.507Z  Done running command

2016-02-14T22:01:17.508Z  Running command: ['/sbin/service', u'vsphere-client', 'start']

2016-02-14T22:01:22.881Z  Done running command

2016-02-14T22:01:22.881Z  Successfully started service vsphere-client

vc60n02:~/onyx-setup #

 

Web Client のサービスが再起動するのを数分待ちます。

そして Web ブラウザから Web Client にログインしなおすと、Onyx がインストールされています。

画面上部にボタンが 2つ 追加されて、

ホームインベントリと、左側のナビゲータにも Onyx アイコンが追加されます。

onyx-web-02.png

 

ホーム画面から、管理 → ソリューション → クライアントプラグイン を開くと、

onyx-ui プラグインがインストールされています。

onyx-web-03.png

 

 

Onyx for the Web Client を使ってみる。

 

Onyx の 録画ボタンっぽい Start ボタンをクリックします。

※画面上部 / Onyx 画面 どちらボタンでも大丈夫です。

onyx-web-04.png

 

そして、そのままこの Web Client で PowerCLI スクリプト化したい操作をします。


操作が終わったら、録画停止っぽい Stop ボタンをクリックします。

※これも画面上部 / Onyx 画面 どちらボタンでも大丈夫です。

onyx-web-05.png

 

Stop ボタンをクリックすると、コードが表示されます。

onyx-web-06.png

 

このままだと、Web Client を操作したままのコードなので、

いま操作したオブジェクト ID などがそのまま記録されています。

表示されたコードは、PowerShell ISE などのエディタで編集して汎用的なスクリプトにしたりします。

 

Onyx は便利ですが、Technical Preview なので

本番(商用)環境の vCenter にはインストールせず、検証用 / 評価用の環境で試すとよいと思います。

 

また、生成されるコードは標準的なコマンドレットにはならないので、

個人的には、実際に本番環境で使用するスクリプトは、

まずは標準的な PowerCLI コマンドレットでのやり方を模索して、

どうしてもダメそうな場合に Onyx を使うことをお勧めします。

 

以上、Onyx for the Web Client のインストールについてでした。

Photon Linux のスタティックルート設定追加について。[Route]

$
0
0

今回は、以前の Photon Linux ネットワーク設定の続きです。

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

 

Photon にネットワーク関連の設定をするとき、

「/etc/systemd/network/~.network」ファイルの

[Network] セクション → Gateway でデフォルトゲートウェイが設定できました。

 

(例)

root [ ~ ]# cat /etc/systemd/network/10-static-eth0.network

[Match]

Name=eth0

 

[Network]

DHCP=no

Address=192.168.1.33/24

Gateway=192.168.1.1

DNS=192.168.1.254

 

そしてデフォルトゲートウェイ以外の経路も設定したかったのですが、

Photon には Red Hat 系でなじみのある

/etc/sysconfig/network/network-scripts 配下のファイルは見当たりませんでした。

 

そこで、前掲のネットワーク設定ファイルに [Route] セクションを追記してみました。

 

(参考)

systemd.network — Network configuration

http://www.freedesktop.org/software/systemd/man/systemd.network.html

 

まず、現状はデフォルトゲートウェイだけ設定されています。

root [ ~ ]# ip route

default via 192.168.1.1 dev eth0  proto static

192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.33


ネットワーク設定をしたファイルに、[Route] セクションを追記して、ルーティング情報を記載します。

root [ ~ ]# vi /etc/systemd/network/10-static-eth0.network

 

/etc/systemd/network/10-static-eth0.network ファイルの内容。

※ためしに2つ追記してみました。

[Match]

Name=eth0

 

[Network]

DHCP=no

Address=192.168.1.33/24

Gateway=192.168.1.1

DNS=192.168.1.254

 

[Route]

Gateway=192.168.1.251

Destination=192.168.4.0/24

 

[Route]

Gateway=192.168.1.252

Destination=192.168.5.0/24


systemd-networkd を再起動します。

root [ ~ ]# systemctl restart systemd-networkd

 

経路情報が2つが追加されました。

root [ ~ ]# ip route

default via 192.168.1.1 dev eth0  proto static

192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.33

192.168.4.0/24 via 192.168.1.251 dev eth0  proto static

192.168.5.0/24 via 192.168.1.252 dev eth0  proto static

 

ちなみに、追加したスタティックルートを消したい場合は、

ファイルから [Route] セクションを削除して、

「ip route del宛先 via ゲートウェイアドレス」 といったコマンドを実行すると削除できます。

(例)

root [ ~ ]# ip route del 192.168.4.0/24 via 192.168.1.251

 

逆に、コマンドラインで一時的にスタティックルートを追加する場合は、

「ip route add宛先 via ゲートウェイアドレス」 といったコマンドラインになります。

(例)

root [ ~ ]# ip route add 192.168.4.0/24 via 192.168.1.251

 

以上、Photon Linux へのスタティックルート追加でした。

PowerCLI でコマンド作業履歴を残す方法

$
0
0

※2013/06/06 の投稿です。

 

PowerCLI で作業履歴(TeraTermログ的な)を残すには、
「Start-Transcript」 というコマンドレットが便利です。

これはPowerCLI 特有のコマンドではなく、ベースである PowerShell の標準的なコマンドレットです。

 

下記のようにコマンド実行すると、コマンド実行結果がファイルに保存されます。

PowerCLI> Start-Transcript <ログ出力ファイル名>

※出力を停止するときは、「Stop-Transcript」を実行します。

 

実行例

 

PowerCLI のコマンド実行結果をファイルに残してみます。

ためしに、「powercli.log」というファイルに出力します。

PowerCLI C:\work> Start-Transcript powercli.log  ★ファイルへの出力開始
トランスクリプトが開始されました。出力ファイル: powercli.log
PowerCLI C:\work> Get-VMHost | select Name,PowerState | ft -AutoSize  ★適当にコマンド実行

Name              PowerState
----              ----------
esxi51n2.vs51.lab  PoweredOn
esxi51n1.vs51.lab  PoweredOn


PowerCLI C:\work> Stop-Transcript  ★ファイルへの出力を終了
トランスクリプトが停止されました。出力ファイル: C:\work\powercli.log
PowerCLI C:\work>

コマンド実行結果の出力を見てみます。

PowerCLI C:\work> type .\powercli.log
**********************
Windows PowerShell トランスクリプト開始
開始時刻: 20130606012555
ユーザー名  : WIN7PC-01\testuser1
コンピューター    : WIN7PC-01 (Microsoft Windows NT 6.1.7601 Service Pack 1)
**********************
トランスクリプトが開始されました。出力ファイル: powercli.log
PowerCLI C:\work> Get-VMHost | select Name,PowerState | ft -AutoSize

Name              PowerState
----              ----------
esxi51n2.vs51.lab  PoweredOn
esxi51n1.vs51.lab  PoweredOn


PowerCLI C:\work> Stop-Transcript
**********************
Windows PowerShell トランスクリプト終了
終了時刻: 20130606012610
**********************
PowerCLI C:\work>

※かならず「Stop-Transcript」で出力を停止してから確認します。

 「Start-Transcript」したままファイルを表示すると、

 ファイル内容表示→ファイルに出力→ファイル内容表示... のループになってしまいます。

 

なお、「Stop-Transcript」を実行しなくても、

PowerCLI の画面を閉じれば、自動的にファイルへの出力も停止します。

 

おまけ


PowerCLI (PowerShell)では、ユーザ名やタイムスタンプが取得できます。
こういった情報をファイル名の一部として指定すると便利です。

 

PowerCLIを実行しているコンピュータ名

PowerCLI> $Env:COMPUTERNAME
WIN7PC-01

 

現在のタイムスタンプ

PowerCLI C:\work> Get-Date -Format "yyyyMMddHHmmss"
20130606013128

 

PowerCLIを実行しているWindowsユーザ名

(testuser1というユーザでPowerCLIを実行しているWindowsにログイン中)

PowerCLI C:\work> $Env:USERNAME
testuser1

 

PowerCLIからvCenterに接続しているユーザ名

(vcadminというユーザで、vCenterに接続中)

PowerCLI C:\work> (Get-View "SessionManager").CurrentSession.FullName.Trim()
vcadmin


たとえば、下記コマンドラインのようにファイル名を指定すると、
「WIN7PC-01_testuser1_20130606013254.log」といった名前のファイルに
コマンドの結果を残すことができます。

PowerCLI> Start-Transcript ($Env:COMPUTERNAME + "_" + $Env:USERNAME + "_" + (Get-Date -Format "yyyyMMddHHmmss") + ".log")

 

以上、PowerCLI のコマンド作業履歴を残す方法でした。

vSphere 6.0 の 新機能について。(Web Client の改善)

$
0
0

2015/03/16 1:59:40 の投稿です。


とうとう、vSphere 6.0 がリリースされました。

VMware vSphere 6 のドキュメント

http://www.vmware.com/jp/support/support-resources/pubs/vsphere-esxi-vcenter-server-6-pubs.html


いわゆる GA 版 が使用できるようになったので、

個人的に vSphere 6.0 で一番よい改善だと思う vSphere Web Client の UI について紹介したいと思います。


vSphere 5.5 の Web Client


まず、vSphere 5.5 の頃の Web Client です。

デフォルトで TCP 9443 番という微妙なポートを使用します。

vsphere-55-webclient-01.png


例として、vSphere 5.5 Web Client での

ESXi の右クリックメニューを見てみると、規則性をみつけにくく、結構、迷子になります。


パッと見てみあたらないものは、「すべての vCenter アクション」から深い階層をたどっていくと見つかったりします。

vsphere-55-webclient-02.png

 

vSphere 6.0 の Web Client


まず、Web Client のポートが 9443 ではなく、443 番ポートになりました。

標準的な https のポートを使用するので、

Web ブラウザで指定する URL ではポート番号の指定(以前の「~:9443」という部分)は不要になります。

独特な 9443 番ポートを使用しなくなるので、ファイアウォールの設定もれや

運用手順書などでの URL 指定ミスなどのヒューマンエラーが減らせそうです。

web-client-60-01.png


Web Client にログインすると、このような画面になります。

vSphere Client のように「最近のタスク」がデフォルトで画面下部に配置されています。

画面の雰囲気については、これまでの Web Client からあまり変化がないと思います。

web-client-60-02.png


しかし、メニュー構成は大幅に改善されています。

例として ESXi の右クリックメニューを見てみると、

5.5 のころより、直観的に階層をたどりやすく整理されています。

web-client-60-03.png


たとえば、「メンテナンス モード」メニューの配下はこうなっています。

web-client-60-04.png


「電源」メニューの配下に、「パワーオン」や「シャットダウン」が配置されています。

web-client-60-05.png


以前は見つけにくかった データストアを追加するメニューも

「ストレージ」メニュー配下に、「新しいデータストア」として配置されています。

web-client-60-06.png


おなじく、以前は分かりにくかった ESXi の VMkernel ポートや ポートグループの追加も、

ESXi の右クリックメニューからウィザードが起動できるようになりました。

「ネットワークの追加」をクリックすると・・・

web-client-60-07.png


この画面が開けるようになりました。

web-client-60-08.png


ちなみに、Web Client だけの改善ではありませんが、

「証明書」メニューで、ESXi の証明書が入れ替えられるようになりました。

「証明書を更新」をクリックして・・・

web-client-60-09.png


「はい」をクリックするだけで、vCenter の VMCA(VMware Certificate Authority)による

ESXi の証明書が更新できるようになりました。

web-client-60-10.png


地味な改善ですが、

これからは Web Client を使うようにアナウンスされていたり

vSphere 5.1 以降の新機能は Web Client でしか使用できなかったりするので

Web Client が使いやすくなることはありがたいです。

 

例示したメニューのように、いろいろ細部が改善されています。

そろそろ、これまで vSphere Client 派だった人も

Web Client を使ってもよいのではないかと思います。


ちなみに、vSphere Client は将来的に削除されるとのことですが、

vSphere 6.0 では、まだ生き残っています。


以上、vSphere 6.0 での Web Client の改善についてでした。

Viewing all 246 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>