マニュアルページセク ション 1M: システム管理コマンド

印刷ビューの終了

更新: 2014 年 7 月
 
 

evsadm (1M)

名前

evsadm - エラスティック仮想スイッチ (EVS) とそのリソース、つまり IP ネットワーク (IPnet) と仮想ポート (VPort) の作成および管理

形式

evsadm
evsadm set-prop -p <prop>=[<val>[,...]]
evsadm show-prop [[-c] -o <field>[,...]] [-p <prop>[,...]]
evsadm set-controlprop [-h host] -p <prop>=[<val>[,...]]
evsadm show-controlprop [[-c] -o <field>[,...]] [-p <prop>[,...]]
evsadm create-evs [-T <tenantname>] [-p {<prop>=<val>[,...]}[,..]]
	  <evsname>
evsadm delete-evs [-T <tenantname>] <evsname>
evsadm show-evs [-f {<fname>=<val>[,...]}[,...]] [[-c] -o <field>[,...]]
	  [<evsname>]
evsadm add-ipnet [-T <tenantname>]
	  -p subnet=<val>[{,<prop>=<val>[,...]}[,...]] <evsname>/<ipnetname>
evsadm remove-ipnet [-T <tenantname>] <evsname>/<ipnetname>
evsadm show-ipnet [-f {<fname>=<val>[,...]}[,...]] [[-c] -o <field>[,...]]
	  [[<evsname>/][ipnetname]]
evsadm add-vport [-T <tenantname>] [-p {<prop>=val[,...]}[,...]]
	  <evsname>/<vportname>
evsadm remove-vport [-T <tenantname>] <evsname>/<vportname>
evsadm reset-vport [-T <tenantname>] <evsname>/<vportname>
evsadm show-vport [-f {<fname>=<val>[,...]}[,...]] [[-c] -o <field>[,...]]
	  [[<evsname>/][<vportname>]]
evsadm set-evsprop [-T <tenantname>] -p <prop>=<val> <evsname>
evsadm show-evsprop [-f {<fname>=<val>[,...]}[,...]]
	  [[-c] -o <field>[,...]] [-p <prop>[,...]] [evsname]
evsadm set-vportprop [-T <tenantname>] -p <prop>=<val>
	  <evsname>/<vportname>
evsadm show-vportprop [-f {<fname>=<val>[,...]}[,...]]
	  [[-c] -o <field>[,...]] [-p <prop>[,...]] [[evsname/][vportname]]
evsadm help [subcommand-name]

説明

evsadm コマンドは、次の操作を実行するための一連のサブコマンドを提供します。

  • EVS を管理する

  • EVS に関連付けられた IP ネットワークを管理する

  • EVS に関連付けられた仮想ポートを管理する

概念

EVS

エラスティック仮想スイッチ (EVS) は、1 つまたは複数のサーバー (物理マシン) にまたがる仮想スイッチです。これは分離された L2 セグメントを表し、その分離は VLAN または VXLAN のどちらかを通して実装されます。EVS は、そこに接続された仮想マシン間のネットワーク接続を提供します。EVS に関連付けられた主なリソースには、IPnet と VPort の 2 つがあります。

IPnet

IP ネットワークは、IPv4 アドレスまたは IPv6 アドレスのブロック (つまり、サブネット) を、そのブロックのデフォルトルーターとともに表します。EVS に関連付けることができる IPnet は 1 つだけです。VPort を通して EVS に接続するすべてのゾーン/VNIC が、EVS に関連付けられた IPnet から IP アドレスを取得します。

VPort

VPort は、VNIC と EVS の間の接続点を表します。これにより、SLA (maxbwcos、および priority)、IP アドレス、MAC アドレスなどの、さまざまなネットワーク構成パラメータがカプセル化されます。この構成は、VNIC が VPort に接続したときに、その VNIC によって継承されます。

EVS コントローラ

EVS とそれに関連付けられたすべてのリソースの構成および管理のための機能を提供します。1 つのコントローラを使用して、ネットワーク内のすべての EVS を管理するようにしてください。コントローラには、物理マシンへの L2 セグメントの実装に必要な情報を取得するための関連付けられているプロパティーがあります。これらのプロパティーは、set-controlprop サブコマンドを使用して管理できます。EVS コントローラは RAD モジュールとして実装され、EVS クライアントで使用される RAD インタフェースをエクスポートします。

EVS マネージャー

これは、EVS コントローラと通信して、L2 ネットワークトポロジと、これらのネットワーク上で使用される IP アドレスを定義するエンティティーです。そのため、evsadm(1m) は EVS マネージャーです。

EVS クライアント

evsadm を経由し、EVS、IPnet、および VPort を使用することにより、L2 ネットワークトポロジと、これらのネットワーク上で使用される IP アドレスを定義できます。次に、dladm(1M) を使用して VNIC をこれらのトポロジに接続するか、または zonecfg(1M) を使用して VNIC anet (したがって、ゾーン) をこれらのトポロジに接続します。dladm(1m) および zonecfg(1m) によって、EVS コントローラのクライアントが形成されます。dladm(1m) と zonecfg(1m) は、コントローラから情報をプルして VPort プロパティーを取得します (evsadm(1m) は開始するコントローラに構成をプッシュします)。ネイティブゾーンとカーネルゾーンの両方がサポートされることに注意してください。

EVS ノード

その VNIC またはそのゾーンの VNIC anet リソースを EVS の一部にする必要のある任意のホスト。既存のツール (dladm(1M) および zonecfg(1M)) は、VNIC を EVS の一部にする必要があることを指定するために変更されました。

テナント

テナントは、名前空間の管理に使用されます。テナント内で定義されている EVS とそのリソースは、そのテナントの名前空間の外部からは見えません。これは、テナントのすべてのリソースをまとめて保持するためのコンテナとして機能します。

evsadm サブコマンドは、上記のオブジェクトのいずれかに対して動作します。そのマッピングを次に示します。

オブジェクト
サブコマンド
EVS
create-evsdelete-evsshow-evsset-evspropshow-evsprop
IPnet
add-ipnetremove-ipnetshow-ipnet
VPort
add-vportremove-vportshow-vportset-vportpropshow-vportpropreset-vport
EVS コントローラ
set-controlpropshow-controlprop
EVS クライアント
set-propshow-prop

EVS、IPnet、および VPort は、名前で識別されます。この名前は 127 文字を超えることはできず、英数字のほか「.」と「_」の組み合わせを指定するようにしてください。

さらに、これらの名前には、特殊な区切り文字「-」を含めることもできます。これらの名前は、このリソースが evsadm の外部で作成されたことを示します。最初に (作成者を識別する) 接頭辞があり、そのあとに「-」および従来のリソース名が続きます。たとえば、sys-vport0 の「sys」は、このリソースがシステムによって作成されたことを示します。これにより、evsadm を使用して作成されたリソースでは名前の衝突が起こらないことが保証されます。したがって、evsadm を使用して、「-」を含むリソースを作成することはできません。

evsadm コマンドは、EVS コントローラを実行しているマシンと通信できる任意のマシン上で動作できます。このコマンドは、EVS コントローラとともに動作して、すべての evsadm サブコマンドを実行します。evsadm を使用する前に、EVS コントローラのホスト名または IP アドレスを指定する必要があります。これは、「set-prop」サブコマンドを使用して「controller」プロパティーを設定することにより実行できます。

# evsadm set-prop -p controller=ssh://[username@]evs-controller.example.com
# evsadm show-prop
NAME            VALUE                              DEFAULT
controller      ssh://[username@]evs-controller.example.com   --

ここで、オプションの「username」は、「Elastic Virtual Switch Administration RBAC」プロファイル (prof_attr(4) を参照) を割り当てられているユーザーです。構成を簡略化するために、必須の EVS IPS パッケージ (service/network/evs) をインストールすると、EVS の操作を実行するためのすべての認証および権限を持つ「evsuser」と呼ばれるユーザーが作成されます。標準装備の「evsuser」を使用するには、コントローラのプロパティーを次のように設定します。

# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com

このように、EVS コントローラと通信する場合は SSH が使用されます。通信を非対話型にするには、ホスト間 (つまり、vsadm を実行するホストと EVS コントローラ) で事前共有公開鍵を使用して SSH 認証を設定する必要があります。

evsadm の各サブコマンドにはオプションが関連付けられており、これらのオプションは、下の各サブコマンドのコンテキストで説明されています。多くのサブコマンドには次の共通オプションがあります:

–T tenantname, –-tenant=tenantname

サブコマンド操作が適用される名前空間を持つテナントの名前を指定します。指定しない場合は、デフォルトのテナント sys-global で操作が行われると見なされます。

必要な承認およびセキュリティーモデル

ユーザーには、次のサブコマンドを実行するための solaris.network.evs.admin 承認が必要です。

create-evs      delete-evs   show-evs    set-evsprop show-evsprop
add-ipnet       remove-ipnet show-ipnet
add-vport       remove-vport show-vport  set-vportprop show-vportprop
reset-vport

ユーザーには、set-prop サブコマンドを実行するための solaris.network.evs.client 承認、set-controlprop サブコマンドを実行するための solaris.network.evs.controller 承認が必要です。

RBAC プロファイル「Elastic Virtual Switch Administration」を持つユーザーは、上のすべてのサブコマンドを実行できます。

サブコマンド


注 -  evsadm コマンドをサブコマンドなしで実行すると、EVS コントローラによって管理されているすべてのエラスティック仮想スイッチの簡単なサマリーが表示されます。この表示には、各 EVS に関連付けられた IP ネットワークと仮想ポートも含まれます。詳細は、下の「使用例」を参照してください。

サポートされているサブコマンドは次のとおりです。

evsadm set-prop –p <prop>=[<val>[,...]]

このコマンドが実行されているホストのプロパティーの値を設定します。サポートされているプロパティーは「controller」だけです。現在、このプロパティーは rad(1m) SSH URI スキームのみをサポートしています。詳細は、下の「使用例」を参照してください。

–p <prop>=[<val>[,...]], -–prop <prop>=[<val>[,...]]

指定された値に設定されるプロパティーの名前。一度に設定できるプロパティーは 1 つだけです。<val> が指定されていない場合、プロパティーはデフォルト値にリセットされることに注意してください。

evsadm show-prop [[–c] –o <field>[,...]] [–p <prop>[,...]]

現在のホストの 1 つまたは複数のプロパティーの現在の値を表示します。サポートされているプロパティーは「controller」だけであり、これは接続先の EVS コントローラを指定します。

–o <field>[,...], -output=<field>[,...]

表示する出力フィールドの大文字と小文字が区別されないコンマ区切りリスト (列の選択)。フィールド名は、次に示すフィールドのいずれか、またはすべてのフィールドを表示するための特殊な値allにする必要があります。

NAME

プロパティーの名前

PERM

プロパティーのアクセス権。rw または r- のどちらかです。

VALUE

プロパティーの値

DEFAULT

プロパティーのデフォルト値

–c, –-parseable

安定したマシン解析可能な形式を使用して表示します。–c には –o オプションが必要です。下の「解析可能な出力形式」を参照してください。

evsadm set-controlprop [–h host] –p <prop>=[<val>[,...]]

EVS コントローラのプロパティーを、ユーザーが指定した値に変更します。コントローラプロパティーとその指定可能な値のリストについては、下の「コントローラプロパティー」のセクションを参照してください。これらのプロパティーは、show-controlprop サブコマンドを使用して取得できます。

–h–-host

設定されるプロパティーは、指定されたホストにしか適用できません。

–p <prop>=[<val>[,...]], –-prop <prop>=[<val>[,...]]

EVS コントローラの指定された値に設定されるコントローラプロパティーの名前。プロパティーが複数の値を取る場合は、区切り文字としてコンマを使用して値を指定するようにしてください。一度に指定できるプロパティーは 1 つだけです。<val> が指定されていない場合、プロパティーはデフォルト値にリセットされることに注意してください。

evsadm show-controlprop [[–c] –o <field>[,...]] [–p <prop>[,...]]

コントローラの 1 つまたは複数のプロパティーの現在の値を表示します。プロパティーが指定されていない場合は、使用可能なすべてのコントローラプロパティーが表示されます。コントローラプロパティーのリストについては、下の「コントローラプロパティー」のセクションを参照してください。

–o <field>[,...], –-output=<field>[,...]

表示する出力フィールドの大文字と小文字が区別されないコンマ区切りリスト (列の選択)。フィールド名は、次に示すフィールドのいずれか、またはすべてのフィールドを表示するための特殊な値allにする必要があります。

NAME

コントローラプロパティーの名前

PERM

コントローラプロパティーのアクセス権

VALUE

コントローラプロパティーの値

DEFAULT

コントローラプロパティーのデフォルト値

HOST

この値が「--」である場合、プロパティーはすべてのホストに適用されるか、または大域スコープのプロパティーになります。それ以外の場合は、プロパティーがその特定のホストに適用されることを指定します。

–c, –-parseable

安定したマシン解析可能な形式を使用して表示します。–c には –o オプションが必要です。下の「解析可能な出力形式」のセクションを参照してください。

evsadm create-evs [–T <tenantname>] [–p {<prop>=<val>[,...]}[,..]] <evsname>

evsname という名前の EVS を作成します。テナント名が指定されている場合、EVS はそのテナントの名前空間内に作成されます。それ以外の場合は、デフォルトのテナント sys-global 内に作成されます。

–T, –-Tenant

–T オプションの詳細は、前述の「概念」のセクションを参照してください。

–p {<prop>=<val>[,...]}[,..], –-prop {<prop>=<val>[,...]}[,..]

作成されている EVS の指定された値に設定する EVS プロパティーのコンマ区切りリスト。サポートされるプロパティーの詳細は、下の「EVS プロパティー」のセクションを参照してください。

evsadm delete-evs [–T <tenantname>] <evsname>

指定された EVS を削除します。いずれかの VPort が使用中の場合、この操作は失敗します。VPort が使用中になるのは、それに VNIC が接続されている場合です。どの VPort も使用中でない場合は、この操作によって、EVS に関連付けられたすべての VPort および IPnet が削除されます。show-evs の出力の「STATUS」フィールドには、EVS がビジーまたはアイドルのどちらの状態にあるかが表示されます。

–T, –-Tenant

–T オプションの詳細は、前述の「概念」のセクションを参照してください。

evsadm show-evs [–f {<fname>=<val>[,...]}[,...]] [[–c] –o <field>[,...]] [<evsname>]

EVS コントローラによって管理されているすべての EVS か、または指定された EVS に関する EVS 情報を表示します。

–f {<fname>=<val>[,...]}[,...], –-filter {<fname>=<val>[,...]}[,...]

出力をフィルタ処理するために使用される、コンマで区切られた名前と値のペア (行の選択)。複数のフィルタが指定されている場合、表示される出力は、フィルタ間での AND 操作の結果です。フィルタ値が複数値である場合、表示される出力は、フィルタ値間での OR 操作の結果です。サポートされるフィルタは次のとおりです。

tenant

テナント名で EVS をフィルタ処理する

evs

EVS 名で EVS をフィルタ処理する

host

ホスト名で EVS をフィルタ処理する

ipnet

IPnet 名で EVS をフィルタ処理する

vport

VPort 名で EVS をフィルタ処理する

–L, –-l2-type

EVS は、分離された L2 セグメントを表します。これを実装または実現するために、VLAN または VXLAN のどちらかが使用されます。このオプションは、次のフィールドを通してその情報を提供します。

EVS

EVS の名前

TENANT

EVS を所有するテナントの名前

VID

EVS を実装するために使用される VLAN ID

VNI

EVS を実装するために使用される VXLAN セグメント ID

–o <field>[,...], –-output=<field>[,...]

表示する出力フィールドの大文字と小文字が区別されないコンマ区切りリスト (列の選択)。フィールド名は、次に示すフィールドのいずれか、またはすべてのフィールドを表示するための特殊な値allにする必要があります。

EVS

EVS の名前

TENANT

EVS を所有するテナントの名前

STATUS

EVS がアイドルまたはビジーのどちらの状態にあるか。EVS がビジー状態になるのは、その EVS に、VNIC が接続されている VPort が少なくとも 1 つ存在する場合です。

NVPORTS

EVS に関連付けられた仮想ポートの数。

IPNETS

EVS に関連付けられた IP ネットワークのリスト。現在、EVS に関連付けることができる IP ネットワークは 1 つだけです。

HOST

EVS がまたがるホストのリスト。

–c, –-parseable

安定したマシン解析可能な形式を使用して表示します。–c には –o オプションが必要です。下の「解析可能な出力形式」を参照してください。

evsadm add-ipnet [–T <tenantname>] –p subnet=<val>[{,<prop>=<val>[,...]}[,...]] <evsname>/<ipnetname>

指定された EVS evsnameipnetname という名前の IPnet を追加します。テナント名が指定されている場合は、その IPnet が、テナント tenantname の名前空間内の EVS evsname に関連付けられます。

–T, –-Tenant

–T オプションの詳細は、前述の「概念」のセクションを参照してください。

–p {<prop>=<val>[,...]}[,..], –-prop {<prop>=<val>[,...]}[,..]

作成されている EVS の指定された値に設定する IPnet プロパティーのコンマ区切りリスト。サポートされるプロパティーの詳細は、下の「IPnet プロパティー」のセクションを参照してください。「subnet」は必須プロパティーであり、それが指定されていない場合は操作が失敗することに注意してください。

evsadm remove-ipnet [–T <tenantname>] <evsname>/<ipnetname>

指定された IPnet ipnetname を EVS evsname から削除します。いずれかの VPort が使用中の場合、この操作は失敗します。VPort が使用中になるのは、それに VNIC が接続されている場合です。

–T, –-Tenant

–T オプションの詳細は、前述の「概念」のセクションを参照してください。

evsadm show-ipnet [–f {<fname>=<val>[,...]}[,...]] [[–c] –o <field>[,...]] [ipnetname]

EVS コントローラによって管理されているすべての IPnet か、または指定された IPnet に関する IPnet 情報を表示します。

–f {<fname>=<val>[,...]}[,...], -filter {<fname>=<val>[,...]}[,...]

出力をフィルタ処理するために使用される、コンマで区切られた名前と値のペア (行の選択)。複数のフィルタが指定されている場合、表示される出力は、フィルタ間での AND 操作の結果です。フィルタ値が複数値である場合、表示される出力は、フィルタ値間での OR 操作の結果です。サポートされるフィルタは次のとおりです。

tenant

テナント名で IPnet をフィルタ処理する

evs

EVS 名で IPnet をフィルタ処理する

ipnet

IPnet 名で IPnet をフィルタ処理する

host

ホスト名で IPnet をフィルタ処理する

–o <field>[,...], –-output=<field>[,...]

表示する出力フィールドの大文字と小文字が区別されないコンマ区切りリスト (列の選択)。フィールド名は、次に示すフィールドのいずれか、またはすべてのフィールドを表示するための特殊な値allにする必要があります。

NAME

IPnet の名前と、それが関連付けられている EVS の名前。その形式は evsname/ipnetname です。

IPNET

IPnet の名前

EVS

EVS の名前

TENANT

EVS を所有するテナントの名前。

SUBNET

この IPnet のサブネット (IPv4 または IPv6 のどちらか) を表します。

START

IP アドレス範囲の開始アドレス。

END

IP アドレス範囲の終了アドレス。

DEFROUTER

指定された IPnet のデフォルトルーターの IP アドレス。

AVAILRANGE

VPort に割り当てることのできる使用可能な IP アドレスのコンマ区切りリスト。

–c, –-parseable

安定したマシン解析可能な形式を使用して表示します。–c には –o オプションが必要です。下の「解析可能な出力形式」を参照してください。

evsadm add-vport [–T <tenantname>] [–p {<prop>=val[,...]}[,...]] <evsname>/<vportname>

指定された EVS evsnamevportname という名前の VPort を追加します。テナント名が指定されている場合は、その VPort が、テナント tenantname の名前空間内の EVS evsname に関連付けられます。

VPort が作成されると、その VPort には、ランダムな MAC アドレスと IPnet のアドレス範囲の IP アドレスが割り当てられます。そのため、VPort を IPnet に追加する前に、その IPnet を EVS に関連付けることが絶対に必要です。

VPort を EVS に追加する必要はないことに注意してください。VNIC が作成されている場合は、その VNIC の接続先の EVS 名を指定するだけで十分です。その場合は、コントローラがシステム VPort (VPort 名の中の接頭辞「sys-」で識別されます) を生成し、それが EVS プロパティーを継承します。

明示的に VPort を作成することの利点は、VPort を作成するときにその VPort に目的のプロパティーを指定できることであり、作成後に変更することもできます。あるいは、システム VPort のプロパティーを指定および変更しないこともできます。

–T, –-Tenant

–T オプションの詳細は、前述の「概念」のセクションを参照してください。

–p {<prop>=<val>[,...]}[,..]

作成されている VPort の指定された値に設定する VPort プロパティーのコンマ区切りリスト。サポートされるプロパティーの詳細は、下の「仮想ポートのプロパティー」のセクションを参照してください。

evsadm remove-vport [–T <tenantname>] <evsname>/<vportname>

指定された VPort を削除します。VPort が削除されると、その VPort に関連付けられた IP アドレスと MAC アドレスが解放されます。

この VPort に関連付けられた VNIC が存在する場合は、VPort の削除が失敗することに注意してください。

–T, –-Tenant

–T オプションの詳細は、前述の「概念」のセクションを参照してください。

evsadm reset-vport [–T <tenantname>] <evsname>/<vportname>

指定された VPort をリセットします。VPort が実際には存在しない VNIC に関連付けられている場合は、この VPort をリセットすることによって解放できます。システム VPort はリセットによって削除されます。

–T, –-Tenant

–T オプションの詳細は、前述の「概念」のセクションを参照してください。

evsadm show-vport [–f {<fname>=<val>[,...]}[,...]] [[–c] –o <field>[,...]] [[<evsname>/][<vportname>]]

EVS コントローラによって管理されているすべての VPort か、または指定された VPort に関する VPort 情報を表示します。

–f {<fname>=<val>[,...]}[,...], –-filter {<fname>=<val>[,...]}[,...]

出力をフィルタ処理するために使用される、コンマで区切られた名前と値のペア (行の選択)。複数のフィルタが指定されている場合、表示される出力は、フィルタ間での AND 操作の結果です。フィルタ値が複数値である場合、表示される出力は、フィルタ値間での OR 操作の結果です。サポートされるフィルタは次のとおりです。

tenant

テナント名で VPort をフィルタ処理する

evs

EVS 名で VPort をフィルタ処理する

vport

VPort 名で VPort をフィルタ処理する

host

ホスト名で VPort をフィルタ処理する

–o <field>[,...], –-output=<field>[,...]

表示する出力フィールドの大文字と小文字が区別されないコンマ区切りリスト (列の選択)。フィールド名は、次に示すフィールドのいずれか、またはすべてのフィールドを表示するための特殊な値allにする必要があります。

NAME

VPort の名前と、それが関連付けられている EVS の名前。その形式は evsname/vportname です。

VPORT

VPort の名前

EVS

EVS の名前

TENANT

EVS を所有するテナントの名前

STATUS

VPort が使用中かどうか。VPort が使用中になるのは、それに VNIC が関連付けられている場合です。それ以外の場合は、使用可能です。

VNIC

この VPort に関連付けられた VNIC の名前。

HOST

この VPort に関連付けられた VNIC が存在するホスト。

–c, –-parseable

安定したマシン解析可能な形式を使用して表示します。–c には –o オプションが必要です。下の「解析可能な出力形式」を参照してください。

evsadm set-evsprop [–T <tenantname>] –p <prop>=<val>[,...] <evsname>

指定された evsname のプロパティーの値を設定します。EVS プロパティーとその指定可能な値のリストについては、下の「EVS プロパティー」のセクションを参照してください。これらのプロパティーは、show-evsprop サブコマンドを使用して取得できます。

–T, –-Tenant

–T オプションの詳細は、前述の「概念」のセクションを参照してください。

–p <prop>=<val>[,...], –-prop <prop>=<val>[,...]

指定された値に設定するプロパティーの名前

evsadm show-evsprop [–f {<fname>=<val>[,...]}[,...] [[–c] –o <field>[,...]] [–p <prop>[,...]] [evsname]

すべての EVS または指定された EVS の 1 つまたは複数のプロパティーの現在の値を表示します。プロパティーが指定されていない場合は、使用可能なすべての EVS プロパティーが表示されます。EVS プロパティーのリストについては、下の「EVS プロパティー」のセクションを参照してください。

–f {<fname>=<val>[,...]}[,...], –-filter {<fname>=<val>[,...]}[,...]

出力をフィルタ処理するために使用される、コンマで区切られた名前と値のペア (行の選択)。複数のフィルタが指定されている場合、表示される出力は、フィルタ間での AND 操作の結果です。フィルタ値が複数値である場合、表示される出力は、フィルタ値間での OR 操作の結果です。サポートされるフィルタは次のとおりです。

tenant

テナント名で EVS をフィルタ処理する

evs

EVS 名で EVS をフィルタ処理する

host

ホスト名で EVS をフィルタ処理する

–o <field>[,...], –-output=<field>[,...]

表示する出力フィールドの大文字と小文字が区別されないコンマ区切りリスト (列の選択)。フィールド名は、次に示すフィールドのいずれか、またはすべてのフィールドを表示するための特殊な値allにする必要があります。

EVS

EVS の名前

TENANT

EVS を所有するテナントの名前

PROPERTY

EVS プロパティーの名前

PERM

プロパティーの読み取り権と書き込み権。表示される値は、r- または rw のどちらかです。

VALUE

現在のプロパティー値。値が設定されていない場合は、「--」と表示されます。値が不明な場合は、「?」と表示されます。

DEFAULT

プロパティーのデフォルト値。プロパティーにデフォルト値がない場合は、「--」が表示されます。

POSSIBLE

プロパティーに設定できる値のコンマ区切りリスト。値に数値の範囲がある場合は、短縮形としてmin-maxが表示される可能性があります。指定可能な値が不明または無限の場合は、「--」が表示されます。

evsadm set-vportprop [–T <tenantname>] –p <prop>=<val>[,...] <evsname>/<vportname>

指定された vportname のプロパティーの値を設定します。VPort プロパティーとその指定可能な値のリストについては、下の「仮想ポートのプロパティー」のセクションを参照してください。これらのプロパティーは、show-vportprop サブコマンドを使用して取得できます。

VPort に VNIC が接続されている場合は、その VPort のプロパティーを設定すると VNIC のプロパティーも変更されます。

システム VPort のプロパティーの変更は許可されていないことに注意してください。システム VPort の詳細は、add-vport サブコマンドを参照してください。

–T, –-Tenant

–T オプションの詳細は、前述の「概念」のセクションを参照してください。

–p <prop>=<val>[,...], –-prop <prop>=<val>[,...]

指定された値に設定するプロパティーの名前

evsadm show-vportprop [–f {<fname>=<val>[,...]}[,...] [[–c] –o <field>[,...]] [–p <prop>[,...]] [[evsname/][vportname]]

すべての VPort または指定された VPort の 1 つまたは複数のプロパティーの現在の値を表示します。プロパティーが指定されていない場合は、使用可能なすべての VPort プロパティーが表示されます。VPort プロパティーのリストについては、下の「仮想ポートのプロパティー」のセクションを参照してください。

[–f {<fname>=<val>[,...]}[,...], –-filter <fname>=<val>[,...]

出力をフィルタ処理するために使用される、コンマで区切られた名前と値のペア (行の選択)。複数のフィルタが指定されている場合、表示される出力は、フィルタ間での AND 操作の結果です。フィルタ値が複数値である場合、表示される出力は、フィルタ値間での OR 操作の結果です。サポートされるフィルタは次のとおりです。

tenant

テナント名で VPort をフィルタ処理する

evs

EVS 名で VPort をフィルタ処理する

vport

VPort 名で VPort をフィルタ処理する

host

ホスト名で VPort をフィルタ処理する

–o <field>[,...], –-output=<field>[,...]

表示する出力フィールドの大文字と小文字が区別されないコンマ区切りリスト (列の選択)。フィールド名は、次に示すフィールドのいずれか、またはすべてのフィールドを表示するための特殊な値allにする必要があります。

NAME

VPort の名前と、それが関連付けられている EVS の名前。その形式は evsname/vportname です。

VPORT

VPort の名前

EVS

EVS の名前

TENANT

EVS を所有するテナントの名前

PROPERTY

VPort プロパティーの名前

PERM

プロパティーの読み取り権と書き込み権。表示される値は、r- または rw のどちらかです。

VALUE

現在のプロパティー値。値が設定されていない場合は、「--」と表示されます。値が不明な場合は、「?」と表示されます。

DEFAULT

プロパティーのデフォルト値。プロパティーにデフォルト値がない場合は、「--」が表示されます。

POSSIBLE

プロパティーに設定できる値のコンマ区切りリスト。値に数値の範囲がある場合は、短縮形としてmin-maxが表示される可能性があります。指定可能な値が不明または無限の場合は、「--」が表示されます。

evsadm help [subcommand-name]

サポートされるすべての evsadm サブコマンドまたは特定のサブコマンドの使用法を表示します。特定のサブコマンドのヘルプを呼び出すと、そのコマンド構文が表示されます。evsadm ヘルプを引数なしで使用すると、サポートされるすべてのサブコマンドが表示されます。

解析可能な出力形式

evsadm サブコマンドの多くには、出力をマシン解析可能な形式で表示するオプションがあります。この出力形式は、コロン (:) で区切られたフィールドで構成された 1 つ以上の行です。表示されるフィールドは、使用されているサブコマンドに固有のもので、特定のサブコマンドの –o オプションに対するエントリの下に一覧表示されます。出力には、–o オプションを使用して要求されたフィールドのみが、要求された順序で表示されます。

複数のフィールドをリクエストした場合、すべてのコロン文字は、バックスラッシュ (\) でエスケープされてから出力されます。同様に、バックスラッシュ文字もエスケープされます (\\)。このエスケープ形式は、シェルの read(1) 関数を環境変数 IFS=: とともに使用することによって解析できます (下の「使用例」を参照)。1 つのフィールドのみを要求した場合はエスケープが実行されないことに注意してください。

コントローラプロパティー

これらのプロパティーは、仮想スイッチまたは L2 セグメントの複数の物理マシンにまたがった実装に不可欠な情報を保持します。ほとんどのプロパティーでは、適用範囲や適用性は本質的に、データセンター全体またはグローバルです。ただし、その値をホストごとにオーバーライドできるいくつかのプロパティー、つまり uplink-portvxlan-addr が存在します。

l2-type

EVS を複数の物理マシンにまたがって実装する方法を定義します。指定可能な値は「vlan」または「vxlan」です。デフォルトでは、l2-type は「vlan」です。l2-type を変更しても、その変更の前に作成された EVS には影響しないことに注意してください。変更のあとに作成された EVS のみが新しい l2-type になります。つまり、VLAN に基づいた L2 セグメントと VXLAN に基づいた L2 セグメントは共存できます。

VLAN を実現するために、EVS のすべての VPort が同じ VLAN ID に関連付けられます。使用する VLAN ID は、vlan-range プロパティーから取得されます。この l2-type は、これらの VLAN 上のパケットを送受信するように物理ネットワークが構成されていること、または Oracle Solaris やスイッチファブリックで GVRP などのプロトコルが有効になっていることを前提にしています。少なくとも、vlan-rangeuplink-port を指定する必要があります。そうしないと、EVS の作成が失敗します。

VXLAN を実現するために、EVS のすべての VPort が同じ VXLAN ID に関連付けられます。使用する VXLAN ID は、vxlan-range プロパティーから取得されます。vxlan-addrvxlan-groupvxlan-ipversuplink-port などのその他の VXLAN プロパティーは、VXLAN の作成方法に影響を与えます。少なくとも、vxlan-range と、uplink-port または vxlan-addr のどちらかを指定する必要があります。そうしないと、EVS の作成が失敗します。

vlan-range

EVS の作成に使用される VLAN ID の範囲のコンマ区切りリスト。EVS が作成されるたびに、1 つの VLAN ID が消費されます。VLAN ID によって、パケットが EVS 間で分離されます。有効な値は [1-4094] です。

vxlan-range

EVS の作成に使用できる VXLAN セグメント番号の範囲のコンマ区切りリスト。EVS が作成されるたびに、1 つの VXLAN セグメント番号が消費されます。VXLAN セグメント番号によって、レイヤー 2 が EVS 間で分離されます。有効な値は [0 - 16777215] です。

vxlan-addr

VXLAN データリンク作成の基になる IP アドレスを指定します。これは、サブネットアドレスにも設定できます。

vxlan-mgroup

VXLAN リンクの作成中に使用する必要のあるマルチキャストアドレス。VXLAN リンクは、このアドレスを使用して、同じ VXLAN セグメント上のほかの VXLAN リンクを検出します。このプロパティーが設定されていない場合は、デフォルトの all-host アドレスが VXLAN リンクによって使用されます。

vxlan-ipvers

VXLAN データリンクをホストする IP インタフェースに使用する必要のあるアドレスの IP バージョンを表します。指定可能な値は「v4」および「v6」です。デフォルト値は「v4」です。

uplink-port

VLAN または VXLAN に使用されるデータリンクを指定します。

IPnet プロパティー

subnet

IPv4 アドレスまたは IPv6 アドレスのブロックを表します。IPv4 の場合、この値は、接頭辞長を含む標準の IPv4 ドット区切り 10 進数形式として指定されます。つまり、次のようになります。

ddd.ddd.ddd.ddd/yy

ここで、「ddd」は 0 - 255 の範囲の 1 から 3 桁の 10 進数であり、「yy」は 1 - 30 の範囲の 1 から 2 桁の 10 進数です。

IPv6 の場合、この値は、接頭辞長を含む標準の IPv6 テキスト形式として指定されます。つまり、次のようになります。

ex:x:x:x:x:x:x:x/yyy

ここで、「x」はアドレスの 8 つの 16 ビット部分の 16 進数値であり、「yy」は 1 - 126 の範囲の 1 から 3 桁の 10 進数です。

defrouter

デフォルトルーターは、特定のサブネットに対するゲートウェイの IP アドレスを指定します。これはオプションであり、指定されていない場合は、範囲内の最初のアドレスがデフォルトルーター IP アドレスとして選択されます。

仮想ポートのプロパティー

cos

仮想ポート上のアウトバウンドパケットの 802.1p 優先度を設定します。値の範囲は 0 - 7 です。このプロパティーを設定すると、仮想ポート上のすべてのアウトバウンドパケットに VLAN タグが付けられ、優先度フィールドがプロパティー値に設定されます。これを使用すると、VPort にまたがる差別化サービスを提供できます。

maxbw

仮想ポートの全二重帯域幅を設定します。この帯域幅は、いずれかのスケールサフィックス (K ビット/秒、M ビット/秒、または G ビット/秒を示す K、M、または G) が付いた整数として指定されます。単位が指定されていない場合、入力値は Mbps として読み取られます。デフォルトでは、帯域幅の制限はありません。

priority

仮想ポートの相対的な優先度を設定します。この値は、トークン high、medium、low のいずれかとして指定できます。デフォルトは medium です。この優先度は、回線上のどのプロトコル優先度フィールドでも反映されませんが、システム内のパケット処理スケジューリングに使用されます。優先度の高いリンクでは、システムリソースの可用性に応じて待機時間が短縮されます。

ipaddr

この仮想ポートに関連付けられた IP アドレスを表します。VNIC が VPort に接続すると、このアドレスがその VNIC に適用されます。デフォルトでは、EVS コントローラは、EVS に関連付けられた IPnet から IP アドレスを自動的に選択します。ゾーンや VNIC に特定の IP アドレスを割り当てる必要がある場合は、VPort を EVS に追加するときに ipaddr を目的の IP アドレスに手動で設定することによって、それを実現できます。

VPort が作成されたあとは、evsadm set-vportprop コマンドでその IP アドレスを変更することはできません。

macaddr

この仮想ポートに関連付けられた MAC アドレスを表します。この VPort に接続した VNIC は、基本的に VPort から MAC アドレスを継承します。デフォルトでは、EVS コントローラは、VPort のランダムな MAC アドレスを生成します。VNIC に特定の MAC アドレスを割り当てる必要がある場合は、VPort を EVS に追加するときに macaddr を目的の MAC アドレスに手動で設定することによって、それを実現できます。

VPort が作成されたあとは、evsadm set-vportprop コマンドでその MAC アドレスを変更することはできません。

evs

VPort が関連付けられている EVS を表す読み取り専用プロパティー。

tenant

VPort が関連付けられているテナントを表す読み取り専用プロパティー。

EVS プロパティー

maxbw

上の「仮想ポートのプロパティー」のセクションを参照してください。これにより、EVS の各仮想ポートに関連付けられるデフォルトの maxbw が定義されます。

priority

上の「仮想ポートのプロパティー」のセクションを参照してください。これにより、EVS の各仮想ポートに関連付けられるデフォルトの優先度が定義されます。

tenant

EVS が関連付けられているテナントを表す読み取り専用プロパティー。


注 -  仮想ポートに対してプロパティーが明示的に設定されている場合は、そのプロパティー値によって、対応する EVS プロパティー値がオーバーライドされます。

下のすべての例では、EVS マネージャー、EVS コントローラ、および EVS ノードがすべて同じノード上に存在することを前提にしています。

使用例 1 evsadm の接続先の EVS コントローラを設定する
# evsadm set-prop -p controller=ssh://evsuser@evs-controller.example.com

ssh-keygen(1) を使用して、evsadm を呼び出すユーザーの SSH 鍵を作成します。$HOME/.ssh/id_rsa.pub を /var/user/evsuser/.ssh/authorized_keys にコピーします。evsuser として evs-controller.example.com に SSH して、パスワードなしで接続できるかどうかを確認します (注: SSH クライアントによって表示される yes/no の質問に答えます)。

# evsadm show-prop
NAME            VALUE                                     DEFAULT
controller      ssh://evs-controller.example.com          --
使用例 2 L2 セグメントが VLAN を使用して作成されるように EVS コントローラを設定する

上の例からの続きで、コントローラは現在 evs-controller.example.com であり、set-controlprop コマンドを使用して行われた変更はすべてそのコントローラに反映されます。

# evsadm set-controlprop -p l2-type=vlan
# evsadm set-controlprop -p vlan-range=200-300,400-500
# evsadm set-controlprop -p uplink-port=net2
# evsadm set-controlprop -h host2.example.com -p uplink-port=net3
# evsadm set-controlprop -h host3.example.com -p uplink-port=net4

NAME                VALUE               DEFAULT             HOST
l2-type             vlan                vxlan               --
vlan-range          200-300,400-500     --                  --
uplink-port         net2                --                  --
uplink-port         net3                --                  host2.example.com
uplink-port         net4                --                  host3.example.com

VLAN ID 200-300 および 400-500 は EVS のために確保されています。net2 は、host2.example.comhost3.example.com を除くすべてのホスト上のアップリンクポートです。host2 では net3 がアップリンクポートとして使用され、host3 では net4 がアップリンクポートとして使用されます。

使用例 3 L2 セグメントが VXLAN を使用して作成されるように EVS コントローラを設定する
# evsadm set-controlprop -p l2-type=vxlan
# evsadm set-controlprop -p vxlan-range=20000-30000
# evsadm set-controlprop -p vxlan-addr=192.168.10.0/24
# evsadm show-controlprop -p l2-type,vxlan-range,vxlan-addr

NAME                VALUE               DEFAULT             HOST
l2-type             vxlan               vxlan               --
vxlan-range         20000-30000         --                  --
vxlan-addr          192.168.10.0/24     0.0.0.0             --

VXLAN ID 20000-30000 は EVS のために確保されています。サブネット 192.168.10.0/24 の一部である IP インタフェースが、VXLAN リンクを作成するために使用されます。

使用例 4 EVS を作成し、IP サブネットを関連付け、VPort を EVS に追加し、VNIC を接続する

evsadm を使用する前に、コントローラプロパティーを設定します。

# evsadm set-prop -p controller=ssh://evs-controller.example.com

また、RAD クライアントが非対話的に EVS コントローラに接続できるように、RAD クライアントとコントローラの間の事前共有鍵による SSH 認証も手動で設定する必要があります。

次に、HR という名前の EVS を作成します。

# evsadm create-evs HR
# evsadm show-evs HR

EVS    TENANT      STATUS NVPORTS IPNETS HOST
HR     sys-global  --     0       --     --

テナント名が指定されなかったため、EVS は sys-global の下に作成されました。これにはまだ、IP ネットワークや VPort が関連付けられていません。

次に、IP ネットワークを作成します。

# evsadm add-ipnet -p subnet=192.168.13.0/24 HR/hr_ipnet
# evsadm show-ipnet

NAME        TENANT     SUBNET          DEFROUTER    AVAILRANGE
HR/hr_ipnet sys-global 192.168.13.0/24 192.168.13.1 192.168.13.2-192.168.13.254

次に、VPort を HR に追加します。

# evsadm add-vport HR/vport0
# evsadm show-vport

NAME       TENANT     STATUS VNIC      HOST
HR/vport0  sys-global free   --        --

# evsadm show-vport -o name,macaddr,ipaddr

NAME                MACADDR         IPADDR
HR/vport0           2:8:20:95:1:de  192.168.13.2/24

evsadm をサブコマンドなしで実行すると、次の内容が出力されます。

# evsadm

NAME          TENANT        STATUS VNIC         IP
HR            sys-global    --     --           hr_ipnet
vport0        --            free   --           192.168.13.2/24

次に、VNIC vnic0 を HR/vport0 に接続します。

# dladm create-vnic -t -c HR/vport0 vnic0
# dladm show-vnic -c

LINK     TENANT      EVS  VPORT   OVER            MACADDRESS        VIDS
vnic0    sys-global  HR   vport0  evs-vxlan200    2:8:20:95:1:de    0

# dladm show-linkprop -p allowed-ips vnic0

LINK     PROPERTY        PERM VALUE        EFFECTIVE    DEFAULT   POSSIBLE
vnic0    allowed-ips     rw   192.168.13.2 192.168.13.2 --        -- 

vnic0 の allowed-ips が VPort の IP アドレスでどのように設定されているかに注意してください。

次に、VPort の maxbw プロパティーを 1G に設定し、それが vnic0 にどのように反映されるかを確認します。

# dladm show-linkprop -p maxbw vnic0

LINK     PROPERTY    PERM VALUE        EFFECTIVE    DEFAULT   POSSIBLE
vnic0    maxbw       rw   --           --           --        -- 

# evsadm set-vportprop -p maxbw=1G HR/vport0
# dladm show-linkprop -p maxbw vnic0

LINK     PROPERTY        PERM VALUE        EFFECTIVE    DEFAULT   POSSIBLE
vnic0    maxbw           rw    1000         1000        --        -- 
使用例 5 EVS のプロパティーを表示する
# evsadm show-evsprop HR

EVS   TENANT        PROPERTY  PERM VALUE     DEFAULT   POSSIBLE
HR    sys-global    maxbw     rw   --        --        --
HR    sys-global    priority  rw   --        medium    low,medium,
                                                       high
HR    sys-global    tenant    r-   sys-global --       --
使用例 6 VPort のプロパティーを表示する
# evsadm show-vportprop HR/

NAME        TENANT        PROPERTY  PERM VALUE     DEFAULT   POSSIBLE
HR/vport0   sys-global    cos       rw   3         0         0-7
HR/vport0   sys-global    maxbw     rw   --        --        10K-
HR/vport0   sys-global    priority  rw   --        medium    low,medium,
HR/vport0   sys-global    ipaddr    r-   192.168.13.2/24 --  --
HR/vport0   sys-global    macaddr   r-   2:8:20:5c:cb:a5 --  --
HR/vport0   sys-global    evs       r-   HR        --        --
HR/vport0   sys-global    tenant    r-   sys-global --       --
使用例 7 仮想ポートを削除する
# evsadm remove-vport HR/vport0

VPort が使用中の場合は、上の操作が失敗することに注意してください。

使用例 8 IPnet を削除する
# evsadm remove-ipnet HR/hr_ipnet

IP サブネット内の IP アドレスが使用中の場合は、上の操作が失敗することに注意してください。

使用例 9 EVS を削除する
# evsadm delete-evs HR

EVS の VPort が使用中の場合は、上の操作が失敗することに注意してください。

使用例 10 テナントの EVS を作成し、IPnet と VPort を関連付ける

次の例では、テナント tenantA の EVS evsA を作成し、それに IPnet として 192.168.100.0/24 を関連付け、VPort を 1Gmaxbw に関連付けます。

# evasdm create-evs -T tenantA evsA
# evsadm add-ipnet -T tenantA -p subnet=192.168.100.0/24 evsA/ipnetA
# evsadm add-vport -T tenantA -p maxbw=1G evsA/vport0
# evsadm

NAME          TENANT        STATUS VNIC         IP                HOST
evsA          tenantA       --     --           ipnetA            --
vport0     --            free   --           192.168.100.2/24  --

# evsadm show-vport
NAME                TENANT        STATUS VNIC         HOST
evsA/vport0         tenantA       free   --           --

# evsadm show-ipnet
NAME         TENANT  SUBNET           DEFROUTER      AVAILRANGE
evsA/ipnetA  tenantA 192.168.100.0/24 192.168.100.1  192.168.100.3-192.168.100.254

属性

次の属性については、attributes(5) を参照してください。

属性タイプ
属性値
使用条件
service/network/evs
インタフェースの安定性
確実

関連項目

evsstat(1M), dladm(1M), zonecfg(1M), rad(1M), attributes(5), prof_attr(4), ssh-keygen(1)