zonep2vchk - 大域ゾーンの構成で非大域ゾーンへの物理から仮想移行を調べる
zonep2vchk -V
zonep2vchk [-T release] -c
zonep2vchk [-T release] [-P] [-b] [ -s path[,path...] ] [-S file] [ -r {time}(h|m|s} ] [-x] [-e execname[,execname...] ] [-E file]
zonep2vchk ユーティリティーは、非大域ゾーンへの物理から仮想 (p2v) 移行プロセスの前に大域ゾーンの構成を評価するために使用します。
p2v プロセスでは、大域ゾーン (ソース) をアーカイブしてから、そのアーカイブを使用して非大域ゾーン (ターゲット) をインストールする必要があります。solaris(5) および solaris10(5) のマニュアルページの install –a のドキュメントを参照してください。
zonep2vchk は 2 つの機能を果たします。まず、p2v 移行の成功を妨げる可能性のある、ソースの問題を報告するために使用できます。次に、非大域ゾーンターゲットの構成の支援に使用できるテンプレート zonecfg を出力できます。
zonep2vchk は Solaris 10 以降の大域ゾーンで実行できます。Solaris 10 で実行するには、zonep2vchk ユーティリティーを Solaris 10 ソースの大域ゾーンにコピーします。
zonep2vchk ユーティリティーは、0 の実効ユーザー ID で実行する必要があります。それは Solaris のさまざまなサブシステムの構成状態を調べます。
サポートしているオプションは、次のとおりです。
コマンドのバージョンを表示して終了します。
ターゲットリリースを指定します。デフォルトは次のとおりです。
Global Zone Default Target Solaris 10 S10 Solaris 11 S11
zonep2chk によって生成された構成ファイルはすべてターゲットリリースに適用できます。下記の –c を参照してください。
Solaris 10 で実行している場合、S11 というターゲットリリースを指定できます。これにより、Solaris 10 ブランドゾーンへの p2v がチェックされます。
ターゲットが S10 の場合は、共有スタックが使用されると想定されます。排他的 IP スタックが必要となる問題があれば報告されます。
ターゲットが S11 の場合は、排他的 IP スタックが使用されると想定されます。
大域ゾーンで使用中の特定の機能を動作させるためにターゲットの特定のパッチ/更新レベルが必要な場合は、この情報が zonep2vchk 出力に表示されます。
マシン解析可能な出力を生成します。下記の「解析可能な出力の形式」のセクションを参照してください。
テンプレートゾーンの構成を zonecfg(1M) export 出力の形式で標準出力に表示します。この構成には、ソースホストの物理リソースやネットワーク構成に基づいたリソース制限やネットワーク構成が含まれます。
基本検査を行います。これは、大域ゾーンで、正常な p2v を妨げる可能性のある問題を調べます。–b、–c、–s、–S、–r、–x のどれも指定されていない場合は、これがデフォルトの動作です。
指定された期間中、実行時検査を行います。これは、大域ゾーン内の現在実行中のプロセスを解析して、非大域ゾーンの内側での正常な実行を妨げる可能性のある問題を報告します。報告された問題は、zonep2vchk が実行されていた間にプロセスによって行われた処理を反映しています。
SIGINT (たとえば、ほとんどのシェルから Ctrl-c によって配信される) が受信されるまで実行時検査 (–r と同様) を行います。
実行時解析 (–r、–x) を行うときに、検査対象のプログラムを、指定された execname のリストと一致するものだけに制限します。execname は、ps – o comm によって返されるプロセスの名前です。zonep2vchk が呼び出されるときに指定されたプロセスが存在している必要はありません。zonep2vchk の実行中に作成された、一致するすべてのプロセスが検査されます。
–e と同様ですが、execname のリストを file から読み取ります (1 行につき 1 つずつ)。
指定されたファイルまたはディレクトリで静的バイナリ解析を行います。これにより、ELF バイナリで、ゾーンの内側の機能に影響を及ぼす可能性のあるシステムコールとライブラリコールが検査されます。ディレクトリは再帰的に処理され、ELF 以外のファイルは無視されます。
–s と同様ですが、パスリストを file から読み取ります (1 行につき 1 つずつ)。
zonep2vchk は問題が検出されるたびに解析可能な 1 行の出力を表示します。行形式は次のとおりです。
category:issue:field1:[field2:...]
各フィールドはコロン (:) で区切られます。バックスラッシュ (\:) でエスケープされたコロン文字は、フィールド区切り記号として扱わないようにしてください。
同じ問題の複数のインスタンスを報告することができ、それぞれに問題の特定のインスタンスについて説明するフィールドが設けられています。
次に、既存のカテゴリと問題が定義されています。zonep2vchk の将来のバージョンにはカテゴリと問題がさらに追加されている可能性があります。既存の問題の新しいフィールドが、既存の問題の既存のフィールドのあとに追加されている可能性もあります。
header カテゴリには、ソース、ターゲット、および zonep2vchk のバージョンに関する情報が一覧表示されます。このカテゴリの問題は次のとおりです。
zonep2vchk コマンドのバージョン。
zonep2vchk コマンドのバージョン。
ソースシステムに関する情報。
ソースシステムのノード名。
ソースシステムの /etc/release バージョン。
ソースシステムのカーネルバージョン。
ソースシステムのプラットフォーム。
p2v 検査の指定されたターゲットに関する情報。
ターゲットの Solaris バージョン。
ターゲットで使用されるブランドタイプ。
ターゲットでの予想されるゾーンの IP タイプ。
footer カテゴリには、最終的なサマリー情報が一覧表示されます。このカテゴリの問題は次のとおりです。
見つかった問題の数のサマリー。
検出された問題の数。
incompatible カテゴリは、非大域ゾーン内で機能しない問題を表しています。このカテゴリの問題は次のとおりです。
/etc/system 調整可能ファイルが存在します。これらの調整可能ファイルはゾーンの内側では機能しません。/etc/system 調整可能ファイルはターゲットの大域ゾーンに転送できますが、すべてのゾーンや大域ゾーンを含む、システム全体に影響を及ぼします。ゾーン内部から構成できる代替の調整可能ファイルがある場合は、その調整可能ファイルが記述されます。
/etc/system 調整可能ファイルの設定。
次のいずれか:
非大域ゾーン内部からの代替の調整可能ファイルはありません。
その調整可能ファイルはターゲットで廃止されています。それはどの機能も果たさなくなりました。
その調整可能ファイルはターゲットで置き換えられています。この置き換えは大域ゾーンで構成され、フィールド 3 と 4 で記述されます。
代替の調整可能ファイルが存在します。この調整可能ファイルは、非大域ゾーン内部から構成できます。その調整可能ファイルはフィールド 3 と 4 で記述されます。
zonep2vchk は調整可能ファイルについての知識を持っていません。ゾーンの内側に代替の調整可能ファイルはおそらくありません。
代替/交換用の調整可能ファイルのタイプ。
代替/交換用の調整可能ファイルの説明。
ブート環境が 2 つ以上存在します。アクティブなブート環境のみが非大域ゾーンに転送可能です。
アクティブでないブート環境の名前。
ゾーン内で動作しない機能が有効になっています。
ゾーン内で機能しないモバイル IP エージェントが構成されています。
システムが NFS を使ってファイルシステムを共有しています。Solaris 10 のネイティブゾーンと Solaris 11 の Solaris 10 ゾーンは、NFS による共有を行うことができません。
共有されているファイルシステムのパス。
システムがカーネル内の smb/cifs を使ってファイルシステムを共有しています。ゾーンでは SMB によってファイルシステムを共有することはできません。
共有されているファイルシステムのパス。
ゾーン内で動作しないことがわかっているソフトウェアを提供するパッケージがインストールされています。
パッケージの名前。
システムが iSCSI ターゲットをエクスポートしています。ゾーンでは iSCSI ターゲットをエクスポートできません。
iSCSI ターゲットの名前。
システムが FCOE ターゲットを構成しました。ゾーンでは FCOE ターゲットを構成することはできません。
使用された Ethernet デバイス。
FCOE ターゲットの WWN。
システムがファイバチャネルターゲットを構成しました。ゾーンではファイバチャネルターゲットを構成できません。
ファイバチャネルターゲットの WWN。
システムが仮想 NPIV HBA を構成しました。ゾーンでは仮想 HBA を構成できません。
仮想 HBA をホストする物理 WWN。
仮想 WWN。
システムが SCSI ブロックデバイスを構成しました。ゾーンでは SCSI ブロックデバイスを構成できません。
SCSI デバイスとして構成されたオブジェクト。
ゾーン内で機能しないサービスが有効になっています。
サービスの名前。
Solaris リソースプールが構成されています。ゾーンではリソースプールを構成できません。
プールの名前。
プロセッサセットが構成されています。ゾーンではプロセッサセットを構成できません。
プロセッサセット ID。
プロセッサセット内の CPU ID のリスト。
ゾーンが構成されています。ゾーンではゾーンをホストすることができません。p2v のあと、ターゲットの非大域ゾーンにゾーンは一切存在しません。ゾーンを個別に移行するには、zoneadm(1M) の detach/attach 機能を使用します。
ゾーンの名前。
ゾーンの状態。
lofi デバイスが構成されています。ゾーンでは lofi デバイスを構成できません。
lofi デバイスの名前。
そのデバイスを戻すファイルのパス。
バイナリによって、ゾーンから行えないシステムコールまたはライブラリコールが行われます。
バイナリファイルの名前。
システムコールまたはライブラリコールの名前。
特定の引数を指定して呼び出された場合にゾーンから行えないシステムコールまたはライブラリコールがバイナリによって行われます。
システムコールまたはライブラリコールの名前。
許可されていない引数の詳細は、通常の出力 (–P なし) を参照してください。
バイナリが、ゾーンの内側で使用できないライブラリとリンクします。
バイナリファイルの名前。
許可されていないライブラリの名前。
ゾーンに追加できないプロセスによって特権が使用されます。
プロセスの名前。
特権の名前。
ゾーンに追加できないプロセスによってデバイスが開かれます。
プロセスの名前。
デバイスの名前。
configuration カテゴリは、問題が非大域ゾーンの内側で機能できるようにするために構成設定が必要となる問題を表しています。これは、zonecfg(1M) の構成設定、大域ゾーンでの構成変更、あるはその両方である可能性があります。
このカテゴリの問題は次のとおりです。
ゾーン内部から構成できないデータリンク機能が構成されています。データリンク機能は大域ゾーンで構成され、さらに必要なら、zonecfg add anet (Solaris 11 のみ) または zonecfg add net を使用してそのゾーンに委任される必要があります。
データリンク機能の名前。次のいずれか:
アグリゲーション。
InfiniBand インタフェース。
InfiniBand パーティション。
仮想 NIC。
Ethernet スタブ。
ブリッジインスタンス。
ワイヤレス WPA または WEB セキュリティーオブジェクト。
データリンクオブジェクトの名前。
ホストが DHCP サーバーです。DHCP サービスを提供するには、ゾーンに ip-type=exclusive が指定されているか、または特権 net_rawaccess とデバイス /dev/ip が割り当てられている必要があります。これによって、排他的なスタックゾーンまたは大域ゾーンと同様に、共有スタックゾーンでネットワーク上の raw IP パケットの読み取り/書き込みが可能になることに注意してください。
DHCP サーバーサービスの FMRI。
NTP クライアントサービスが有効になっています。このサービスはシステムクロックを更新します。すべてのゾーンで同じシステムクロックを共有しているため、p2v の間にこのサービスは自動的に無効になります。ゾーンによってターゲットホストのシステムクロックが更新されることが望ましい場合は、ゾーンに特権 sys_time が必要となり、p2v のあとにゾーンの内側でそのサービスを有効にする必要があります。
クライアントサービスの FMRI。
ネットワークデバイスの .conf ファイルに構成設定が含まれています。ゾーンではドライバを構成できません。ドライバは大域ゾーンで構成する必要があります。一部のネットワークドライバ設定は、ドライバ構成ファイルを編集するのではなく、dladm(1M) を使用して構成できる場合があります。
構成ファイルのパス。
ネットワークデバイス名の変更によって既存の構成ファイルが影響を受けます。たとえば、ターゲットの非大域ゾーンに指定されたネットワークデバイスが bge0 でない場合、/etc/hostname.bge0 ファイルは影響を受けます。
影響を受けるファイルのパス。
システムが iSCSI ターゲットにクライアントとしてアクセスしています。ゾーンから iSCSI ターゲットにアクセスすることはできません。大域ゾーンを iSCSI イニシエータにする必要があります。これで zonecfg add device を使用してデバイスをゾーンに追加できます。
アクセスされている iSCSI ターゲット。
システムに FCOE イニシエータが構成されています。ゾーンでは FCOE イニシエータを構成することはできません。大域ゾーンで FCOE イニシエータを構成し、ゾーンで zonecfg add fs または zonecfg add device を使って SCSI ターゲットデバイスを利用できるようにする必要があります。
Ethernet ネットワークデバイス。
イニシエータの WWN。
システムで HBA ファイバチャネルポートがオンラインになっています。ゾーンではファイバチャネルターゲットにアクセスできません。大域ゾーンからそのターゲットにアクセスし、ゾーンで使用できるようにする必要があります。
ファイバチャネル HBA ポートの WWN。
データリンクプロパティーが構成されています。ゾーンではデータリンクプロパティーを構成できません。それらは大域ゾーンから構成する必要があります。
データリンクの名前。
プロパティーの名前。
プロパティーの値。
ゾーンで構成できない調整可能パラメータが ndd を使用して構成されています。これらの調整可能パラメータは大域ゾーンから構成する必要があります。
調整可能パラメータを設定するファイルまたはスクリプト。
調整されているドライバ。
調整可能パラメータ。
動的に割り当てられた 1 つ以上の IP アドレスがネットワークインタフェース上に構成されています。これらのアドレスは、共有 IP ゾーンでサポートされていません。MAC アドレスの変更によって、これらの IP アドレスが変わる可能性があります。DHCP サーバーと、DNS、LDAP、または NIS ネームサーバーでこのシステムのアドレス情報を変更することが必要な場合があります。
Field1 は次のいずれかにできます。
構成された DHCP アドレス。この場合、Field2 は DHCP 用に構成されたインタフェースの名前になります。
IPv6 ステートレスアドレス構成が有効になっています。この場合、Field2 は IPv6 自動構成を備えたインタフェースの名前になります。
逆 ARP によって割り当てられたアドレスが有効になっています。この場合、Field2 は逆 ARP が有効になっているインタフェースの名前になります。
非大域ゾーンへの p2v の前にパッチが必要です。
必要なパッチ。
排他的 IP ゾーンに移行する場合、宛先システムで専用の物理または VLAN インタフェースと交換する必要のある物理インタフェースがソースシステム上にあります。
ソースシステム上のインタフェースの名前。
システムがデフォルトのスケジューリングクラスで構成されています。非大域ゾーンのデフォルトのスケジューリングクラスは、zonecfg set scheduler プロパティーを使用して構成できます。これは –c の出力で提供されます。
構成されたデフォルトのスケジューリングクラス。
共有 IP ゾーンに移行する場合、このゾーンの代わりに大域ゾーンから次のネットワーク機能を構成する必要があります。
Field1 は次のいずれかにできます。
IPMP グループが構成されています。IPMP が必要な場合は、それを大域ゾーンから構成する必要があります。この場合、Field2 は IPMP グループの名前になります。
仮想ネットワークインタフェースが構成されています。これらは大域ゾーンから構成する必要があります。この場合、Field2 は VNI インタフェースの名前になります。
IP 転送 (v4 または v6) がインタフェース上で構成されています。この場合、Field2 は IP 転送が構成されているインタフェースになります。
静的経路が構成されています。静的経路は大域ゾーンから構成する必要があります。
共有 IP ゾーンで使用するようにサポートされていないネットワーク機能が構成されています。排他的 IP ゾーンでは、この機能は変更なしに機能します。
IPv4、IPv6、または 6to4 トンネルインタフェースが plumb されています。
トンネルインタフェースの名前。
排他的 IP ゾーンでサポートされていないネットワーク機能が構成されています。共有 IP ゾーンに移行する場合、通信をサポートするように大域ゾーンでこの機能を構成する必要があります。
Carrier Grade Transport Protocol インタフェースが plumb されています。
CGTP インタフェースの名前。
ネットワーク機能で、そのベースとなるデバイスを zonecfg(1M) の add device コマンドを使ってゾーンに割り当てる必要があります。この機能は共有 IP ゾーンではサポートされていません。
次にできます。
ポイントツーポイントプロトコル (PPP)。PPP 構成ファイルは /etc/ppp の下にあります。ゾーンに割り当てる必要のある、ベースとなるデバイスは、シリアルポートか、Ethernet 物理または VNIC インタフェース (pppoe の場合) のどちらかです。
排他的 IP ゾーンを必要とするサービスが有効になっています。
サービスの FMRI の名前。
zonecfg(1M) の limitpriv プロパティーを使ってさらなる特権をゾーンに追加する必要があるサービスが有効になっています。
そのサービスの FMRI。
そのサービスによって要求される特権のリスト。
Solaris ボリュームマネージャーのメタデバイスが構成されています。メタデバイスは大域ゾーンで構成し、非大域ゾーンで zonecfg(1M) の add device、add fs、または add dataset を使って利用できるようにする必要があります。
メタデバイスの名前。
ramdisk デバイスが構成されています。ゾーンでは ramdisk デバイスを構成できません。
ramdisk デバイスのパス。
ファイルシステムのマウントが /etc/vfstab によって構成されています。ファイルシステムは、ターゲットの大域ゾーンに移行し、非大域ゾーンで使用できるようにする必要があります。
マウントされているデバイス。
マウントポイント。
システムに追加の zpool が構成されています。これらの zpool は、ターゲットの大域ゾーンに移行し、ゾーンで zonecfg add dataset または zonecfg add fs を使って利用できるようにする必要があります。
プールの名前。
排他的 IP スタックを必要とする特権がプロセスで使用されました。ip-type プロパティーについては、zonecfg(1M) を参照してください。
プロセスの名前。
使用された特権。
排他的 IP スタックを必要とするデバイスがプロセスで開かれました。ip-type プロパティーについては、zonecfg(1M) を参照してください。
プロセスの名前。
デバイスの名前。
さらなる特権をターゲットの非大域ゾーンに追加する必要がある特権がプロセスで使用されました。limitpriv プロパティーについては、zonecfg(1M) を参照してください。
プロセスの名前。
使用された特権。
デフォルトではゾーン内で使用できないデバイスがプロセスで開かれました。add device リソースについては、zonecfg(1M) を参照してください。
プロセスの名前。
デバイスのパス。
さらなる特権をターゲットの非大域ゾーンに追加する必要がある可能性のあるシステムコールまたはライブラリコールがバイナリによって行われます。limitpriv プロパティーについては、zonecfg(1M) を参照してください。システムコールまたはライブラリコールに関する詳細は、解析不可能な出力を参照してください。
バイナリのパス。
システムコールの名前。
排他的 IP スタックを必要とする可能性のあるシステムコールまたはライブラリコールがバイナリによって行われます。ip-type プロパティーについては、zonecfg(1M) を参照してください。システムコールまたはライブラリコールに関する詳細は、解析不可能な出力を参照してください。
バイナリのパス。
システムコールの名前。
次のコマンドでは、2 つのアプリケーションディレクトリツリー内のすべての ELF バイナリに対して静的解析を実行します。
# zonep2vchk -s /opt/myapplication,/usr/local使用例 2 ターゲットゾーン用のテンプレートの生成
次のコマンドでは、Solaris 10 の大域ゾーンで実行される場合に Solaris 11 用のテンプレートゾーン構成を生成します。
# zonep2vchk T S11 -c使用例 3 ある期間にわたる実行中のアプリケーションの解析
次のコマンドでは、myapplication というプロセスを 1 時間解析し、ゾーン内で機能しない可能性のあるアクティビティーをすべて報告します。
# zonep2vchk -s 1h -e myapplication使用例 4 基本検査の実行
次のコマンドでは、大域ゾーンを解析して、ゾーン内で機能しない可能性のある使用中の構成や Solaris の機能を調べます。検出された各問題は、解析可能な 1 行の出力として報告されます。
# zonep2vchk -bP
次の終了ステータスが返されます。
正常終了。問題は検出されませんでした。
内部エラーが発生しました。
無効な使用法。
1 つ以上の問題が検出されました。
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
|
コマンド呼び出しおよび解析可能な出力は「確実」です。人間が読める形式の出力 (デフォルト出力) は「不確実」です。
dladm(1M), zoneadm(1M), zonecfg(1M), attributes(5), solaris(5), solaris10(5), zones(5)
静的 (–s と –f) 検査では、次のパッケージによって提供される elfdump(1) ユーティリティーを使用します。
developer/base-developer-utilities
SUNWbtool
実行時 (–r) 検査では、次のパッケージによって提供される dtrace(1M) ユーティリティーを使用します。
system/dtrace
SUNWdtrc