Red Hat Training
A Red Hat training course is available for RHEL 8
1.4. IBM Z プラットフォームでの予測可能な RoCE デバイス名の決定
Red Hat Enterprise Linux (RHEL) 8.7 以降では、udev
デバイスマネージャーは IBM Z 上の RoCE インターフェイスの名前を次のように設定します。
-
ホストがデバイスに一意の識別子 (UID) を強制する場合、
udev
はUID に基づく一貫したデバイス名 (例:eno<UID_in_decmal>
) を割り当てます。 ホストがデバイスに UID を強制しない場合、設定によって動作が異なります。
-
デフォルトでは、
udev
は予測できない名前をデバイスに使用します。 -
net.naming-scheme=rhel-8.7
カーネルコマンドラインオプションを設定すると、udev
はデバイスの機能識別子 (FID) に基づく一貫したデバイス名 (例:ens<FID_in_decmal>
) を割り当てます。
-
デフォルトでは、
次の場合は、IBM Z 上の RoCE インターフェイスに、予測可能なデバイス名を手動で設定します。
ホストが RHEL 8.6 以前を実行しており、デバイスに UID を強制している。RHEL 8.7 以降のバージョンに更新する予定である。
RHEL 8.7 以降のバージョンに更新した後は、
udev
は一貫したインターフェイス名を使用します。ただし、更新前に予測できないデバイス名を使用していた場合、NetworkManager 接続プロファイルは引き続きそれらの名前を使用し、影響を受けるプロファイルを更新するまでアクティベートできません。- ホストが RHEL 8.7 以降を実行しており、UID を強制していない。RHEL 9 にアップグレードする予定である。
udev
ルールまたは systemd
リンクファイルを使用してインターフェイスの名前を手動で変更する前に、予測可能なデバイス名を決定する必要があります。
前提条件
- RoCE コントローラーがシステムにインストールされている。
-
sysfsutils
パッケージがインストールされている。
手順
利用可能なネットワークデバイスを表示し、RoCE デバイスの名前を確認します。
# ip link show ... 2: enP5165p0s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 ...
/sys/
ファイルシステム内のデバイスパスを表示します。# systool -c net -p Class = "net" Class Device = "enP5165p0s0" Class Device path = "/sys/devices/pci142d:00/142d:00:00.0/net/enP5165p0s0" Device = "142d:00:00.0" Device path = "/sys/devices/pci142d:00/142d:00:00.0"
次の手順では、
Device path
フィールドに表示されているパスを使用します。<device_path>/uid_id_unique
ファイルの値を表示します。以下に例を示します。# cat /sys/devices/pci142d:00/142d:00:00.0/uid_id_unique
表示された値は、UID の一意性が強制されるかどうかを示します。この値は後の手順で必要になります。
一意の識別子を決定します。
UID の一意性が強制されている場合 (
1
)、<device_path>/uid
ファイルに保存されている UID を表示します。以下に例を示します。# cat /sys/devices/pci142d:00/142d:00:00.0/uid
UID の一意性が強制されていない場合 (
0
)、<device_path>/function_id
ファイルに保存されている FID を表示します。以下に例を示します。# cat /sys/devices/pci142d:00/142d:00:00.0/function_id
コマンドの出力には、UID 値と FID 値が 16 進数で表示されます。
16 進数の識別子を 10 進数に変換します。以下に例を示します。
# printf "%d\n" 0x00001402 5122
予測可能なデバイス名を決定するには、UID の一意性が強制されるかどうかに基づいて、対応する接頭辞に 10 進数の形式の識別子を追加します。
-
UID の一意性が強制される場合は、
eno
接頭辞に識別子を追加します (例:eno5122
)。 -
UID の一意性が強制されない場合は、
ens
接頭辞に識別子を追加します (例:ens5122
)。
-
UID の一意性が強制される場合は、
次のステップ
次のいずれかの方法を使用して、インターフェイスの名前を予測可能な名前に変更します。
関連情報
- IBM ドキュメント: Network interface names
-
systemd.net-naming-scheme(7)
man ページ