ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Oracle Solaris の管理: デバイスとファイルシステム Oracle Solaris 10 1/13 Information Library (日本語) |
cfgadm コマンドによる SCSI ホットプラグ (タスクマップ)
SPARC: SCSI デバイスを SCSI バスに取り付ける方法
SPARC: SCSI コントローラ上の同一デバイスを交換する方法
cfgadm コマンドによる PCI または PCIe ホットプラグ (タスクマップ)
cfgadm コマンドによる PCI または PCIe ホットプラグ
Reconfiguration Coordination Manager (RCM) スクリプトの概要
アプリケーション開発者 RCM スクリプト (タスクマップ)
6. InfiniBand デバイスの使用 (概要/タスク)
12. Oracle Solaris iSCSI ターゲットの構成 (タスク)
19. UFS ファイルシステムのバックアップと復元 (概要/タスク)
このセクションでは次の情報について説明します。
「ホットプラグ機能」とは、システムの動作中に、システムコンポーネントを物理的に取り付け、取り外し、または交換できる機能のことです。「動的再構成」とは、システムコンポーネントのホットプラグを実行できる機能のことです。また動的再構成は、システムリソースをシステムから物理的に取り外さなくても (なんらかの方法で) システムリソース (ハードウェアとソフトウェアの両方) をシステム内で移動したり、無効にできる機能のことです。
一般に、次のバスタイプはホットプラグ対応です。
USB
ファイバチャネル
1394
ATA
SCSI
Infiniband
さらに、SPARC プラットフォームと x86 プラットフォームの両方で、cfgadm コマンドを使用して、次のデバイスをホットプラグできます:
USB デバイス
SCSI または SAS デバイス
PCI デバイス
PCIe デバイス
SATA デバイス
InfiniBand デバイス
cfgadm コマンドには、次のような機能があります。
システムコンポーネントのステータスの表示
システムコンポーネントの検査
システムコンポーネントの構成の変更
構成ヘルプメッセージの表示
cfgadm コマンドでシステムコンポーネントを再構成する利点は、システムが動作しているときでも、システムコンポーネントを取り付け、取り外し、または交換できることです。さらに、cfgadm コマンドでは、システムコンポーネントを取り付け、取り外し、または交換するために必要な手順が示されます。
コンポーネントのホットプラグを実行する手順については、次を参照してください。
注 - すべての SCSI と PCI のコントローラが cfgadm コマンドによるホットプラグ機能をサポートしているわけではありません。
Oracle が提供する高可用性の一部として、動的再構成はほかの階層化製品 (代替パス指定やフェイルオーバーソフトウェアなど) とともに使用することをお勧めします。両方の製品ともデバイス障害に対する耐性を提供します。
高可用性ソフトウェアがなくても、障害が発生したデバイスを交換できます。この場合、適切なアプリケーションを手動で停止し、重要でないファイルシステムのマウントを手動で解除し、デバイスを取り付けまたは取り外します。
注 - システムによっては、ホットプラグ対応のスロットとホットプラグに対応しないスロットを持つ場合があります。企業レベルのシステムなど、特定のハードウェア構成に対するデバイスのホットプラグについては、お使いのハードウェア構成のドキュメントを参照してください。
cfgadm コマンドは接続点についての情報を表示します。「接続点」とは、動的再構成を行うことができるシステム内の特定の場所のことです。
接続点は、次の要素から構成されています。
占有装置 (occupant): システムに構成できるハードウェアコンポーネントのことです。
受容体 (receptacle): 占有装置を受け入れる場所のことです。
接続点は、論理と物理の両方の接続点 ID (Ap_Id) で表現されます。物理 Ap_Id は接続点の物理的なパス名です。論理 Ap_Id は物理 Ap_Id に代わるユーザーに理解しやすい ID です。Ap_Id の詳細は、cfgadm(1m) のマニュアルページを参照してください。
通常、SCSI HBA (Host Bus Adapter)、つまり、SCSI コントローラの論理 Ap_Id はコントローラ番号 (c0 など) で表現されます。
コントローラ番号が SCSI HBA に割り当てられていない場合、内部的に生成された固有の識別子が提供されます。たとえば、SCSI コントローラの固有な識別子は次のようになります。
fas1:scsi
通常、SCSI デバイスの論理 Ap_Id の形式は次のようになります。
HBA-logical-apid::device-identifier
次の例において、c0 は SCSI HBA の論理 Ap_Id です。
c0::dsk/c0t3d0
通常、デバイス識別子は /dev ディレクトリ内にある論理デバイス名から導き出されます。たとえば、論理デバイス名が /dev/rmt/1 のテープデバイスの論理 Ap_Id は次のようになります。
c0::rmt/1
SCSI デバイスの論理 Ap_Id を /dev ディレクトリ内にある論理デバイス名から導き出すことができない場合、内部的に生成された固有の識別子が提供されます。たとえば、/dev/rmt/1 テープデバイスの識別子は、次のようになります。
c0::st4
SCSI Ap_Id の詳細は、cfgadm_scsi(1M) のマニュアルページを参照してください。
cfgadm コマンドはすべてのリソースと動的再構成の操作を、一般的な状態 (configured、unconfigured など) や操作 (connect、configure、unconfigure など) を示す用語で表現します。一般的な状態や操作の詳細は、cfgadm(1m) のマニュアルページを参照してください。
次の表に、SCSI HBA 接続点の受容体と占有装置の状態を示します。
|
次の表に、SCSI デバイス接続点の受容体と占有装置の状態を示します。
|
SCSI 接続点の状態は特別なハードウェアによって示されない限り未知です。SCSI コンポーネントの構成情報を表示する手順については、「SCSI デバイスに関する情報を表示する方法」を参照してください。
デバイスドライバがホットプラグ機能をサポートしている場合、必須でないシステムリソースとして機能している PCI アダプタカードは取り外すことができます。重要なシステムリソースとして機能している PCI アダプタカードは取り外すことができません。
PCI アダプタカードが取り外し可能であるためには、次の条件が必要です。
デバイスドライバはホットプラグ機能をサポートしていなければなりません。
重要なリソースには代替パスでアクセスできなければなりません。
たとえば、システムにインストールされている Ethernet カードが 1 つしかない場合、ネットワーク接続を切断せずにこの Ethernet カードを取り外すことは不可能です。このような環境でネットワーク接続をアクティブに保ったまま Ethernet カードを取り外すには、別の階層化ソフトウェアサポートが必要です。
PCI アダプタカードをシステムに取り付けるには、次の条件が必要です。
スロットが利用できなければなりません。
デバイスドライバが当該アダプタカードのホットプラグ機能をサポートしていなければなりません。
PCI アダプタカードの取り付けまたは取り外しの手順については、「cfgadm コマンドによる PCI または PCIe ホットプラグ」を参照してください。
hotplug コマンドを使ってホットプラグ処理可能な接続を管理できます。ここで言う接続とは、PCI Express (PCIe) および PCI SHPC デバイス上のコネクタまたはポートのみを指します。ホットプラグコネクタとは、コンポーネントの挿入や取り外しが行われるシステムの物理的機構のことです。ホットプラグポートとは、システムへのデバイスの接続が管理される、システムデバイスツリー内の論理表現です。
hotplug 機能を使用することで、オンボードデバイスを含むデバイスをシステムに物理的に追加したり取り外したりせずに、オンラインやオフラインにできます。
hotplug コマンドを使ってデバイスを管理するには、hotplug サービスを有効にする必要があります。
# svcadm enable svc:/system/hotplug:default
次の例は、hotplug コマンドの使用方法を示しています。
システムのすべての PCI/PCIe ホットプラグ可能コネクタ/ポート (仮想と物理) を次のように表示します。
# hotplug list -lv
PCIe スロットの Ethernet カードを構成します。例:
# hotplug enable /pci0,0 pcie0
PCIe スロットの Ethernet カードの構成を解除します。例:
# hotplug disable /pci0,0 pcie0
PCI デバイスノードをオフラインにして、ノードのデバイスドライバを切り離します。例:
# hotplug offline /pci0,0/pci1 pci.0,2
PCI デバイスノードをオンラインにして、ノードのデバイスドライバを接続します。例:
# hotplug online /pci0,0/pci1 pci.0,2
IOV 物理機能の依存するポートをインストールします。例:
# hotplug install /pci@400/pci@1/pci@0/pci@4 pci.0,1
次に、結果となる IOV 仮想機能で、探索されたものを表示します。例:
# hotplug list -v /pci@400/pci@1/pci@0/pci@4 pci.0,1 <pci.0,1> (ONLINE) { IOV physical function } { IOV virtual function 'pci.0,81' } { IOV virtual function 'pci.0,83' } { IOV virtual function 'pci.0,85' } { IOV virtual function 'pci.0,87' } <pci.0,81> (OFFLINE) ethernet@0,81 <pci.0,83> (OFFLINE) ethernet@0,83 <pci.0,85> (OFFLINE) ethernet@0,85 <pci.0,87> (OFFLINE) ethernet@0,87
IOV 物理機能の依存するポートをアンインストールします。例:
# hotplug uninstall /pci@400/pci@1/pci@0/pci@4 pci.0,0
依存する IOV 仮想機能がビジー状態の場合、この操作は失敗します。例:
# hotplug uninstall /pci@400/pci@1/pci@0/pci@4 pci.0,0 ERROR: devices or resources are busy. ethernet@0,81: { Network interface igbvf1 } { igbvf1: hosts IP addresses: 10.0.0.1 } { Plumbed IP Address }
hotplug コマンドを使用するには、次のサービスが動作している必要があります。
svc:/system/hotplug:default
動作していない場合は、次のメッセージが表示されます。
ERROR: hotplug service is not available.
サポートされる入出力バスがシステムに存在しない場合、次のエラーメッセージが表示されます。
ERROR: there are no connections to display. (See hotplug(1m) for more information.)
上記のエラーメッセージは、ホットプラグ対応のほかの入出力デバイスがシステムに存在するが、それらのデバイスの管理には hotplug コマンドではなく cfgadm コマンドを使用する必要があることを意味する場合があります。