C H A P T E R
11
Linux 版 PowerPath のマルチパス機能
の設定
この章の内容は次のとおりです。
•
マルチパスを介した起動の設定(
p.11-1)
•
システムの準備と
PowerPath のインストレーション(p.11-2)
•
ファイルとディレクトリの設定(
p.11-3)
•
必要なオブジェクトとコンフィギュレーション
ファイルのコピー(p.11-4)
•
ファイルの修正(
p.11-6)
•
bootdisk ディレクトリのアーカイブ(p.11-8)
マルチパスを介した起動の設定
PowerPath を使用する IB を介した起動の設定手順を次に示します。例として X86_64(AMD)上で
Linux RHEL3 Update7 を使用します。
第11 章 Linux 版 PowerPath のマルチパス機能の設定
システムの準備と PowerPath のインストレーション
11-2
Cisco VFrame Third Party インテグレーション ガイド
OL-12603-01-J
システムの準備と
PowerPath のインストレーション
システムの準備および
PowerPath のインストレーション手順は、次のとおりです。
ステップ
1
システムを、
SRP を介して起動するように設定します。システムが SRP を介して起動できる場合、
次の手順に進んで PowerPath を介して起動できるよう設定します。
ステップ
2
システムに
PowerPath をインストールします。通常の EMC PowerPath インストレーション手順に従
い、
PowerPath をインストールします。手順については、PowrPath インストレーション マニュアル
を参照してください。
pm -ivh EMCpower.LINUX-4.5.1-022.rhel.x86_64.rpm /etc/init.d/PowerPath start
emcpreg -install (register powerpath)
ステップ
3
PowerPath が正しくインストールされ、起動したら、fdisk -1 コマンドを実行します。次の例に示す
ような出力が表示されます。この例では、ホストには LUN が 1 つだけ割り当てられ、それに応じ
たパーティションが作成されています。
[root@sw-n4300-1 ~]# fdisk -l
Disk /dev/sda: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System
/dev/sda1 * 1 38 305203+ 83 Linux /dev/sda2 39 293 2048287+ 82 Linux swap /dev/sda3 294 2610 18611302+ 83 Linux
Disk /dev/emcpowera: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System
/dev/emcpowera1 * 1 38 305203+ 83 Linux /dev/emcpowera2 39 293 2048287+ 82 Linux swap /dev/emcpowera3 294 2610 18611302+ 83 Linux
第11 章 Linux 版 PowerPath のマルチパス機能の設定
ファイルとディレクトリの設定
ファイルとディレクトリの設定
ファイルとディレクトリを設定する手順は、次のとおりです。
ステップ
1
bootdisk という新しいディレクトリを作成します。
ステップ
2
initrd ファイルを /boot から新しい bootdisk ディレクトリにコピーします。
-cp -p /boot/initrd-2.6.9-34.ELsmp.img bootdisk/ステップ
3
initrd-2.6.9-34.ELsmp.img ファイルを同じ bootdisk ディレクトリ内に解凍します。
zcat initrd-2.6.9-34.ELsmp.img > initrd-2.6.9-34.ELsmpステップ
4
initrd ディレクトリ構造およびすべての関連ファイルを、次のように同じ bootdisk ディレクトリにコ
ピーします。
-cpio -i -I initrd-2.6.9-34.ELsmp
ステップ
5
この段階で
bootdisk ディレクトリに次のファイルとディレクトリ、および initrd-2.6.9-34.ELsmp.img
と initrd-2.6.9-34.ELsmp ファイルがあることを確認します。
bin dev etc init lib loopfs proc sbin sys sysroot
ステップ
6
initrd-2.6.9-34.ELsmp.img および initrd-2.6.9-34.ELsmp ファイルを bootdisk ディレクトリから削除し
ます。
ステップ
7
bootdisk ディレクトリに、さらに 2 つのディレクトリを lib64 と usr の名前で作成します。
ステップ
8
bookdisk ディレクトリに次のファイルとディレクトリがあることを確認します。
第11 章 Linux 版 PowerPath のマルチパス機能の設定
必要なオブジェクトとコンフィギュレーション ファイルのコピー
11-4
Cisco VFrame Third Party インテグレーション ガイド
OL-12603-01-J
必要なオブジェクトとコンフィギュレーション
ファイルのコピー
必要な
PowerPath オブジェクトとコンフィギュレーション ファイルをコピーする手順は、次のとお
りです。
ステップ
1
PowerPath オブジェクトとコンフィギュレーション ファイルを新しい bootdisk ディレクトリにコ
ピーします。コピーする必要のある
Linux オブジェクトもいくつかあります。
次の表に項目全体の一覧を示します。
• IB モジュールについては、すでに /lib ディレクトリ内のオリジナルの initrd ファイルに含まれ
ているのでコピーする必要はありません。
• この例は x86_64 システムなので、/lib64 ディレクトリが必要です。すべての必要なライブラリ
ファイルを
/lib または /lib64 ディレクトリにコピーします。
• 次の例に示すように、ldd コマンドを使用して、必要なライブラリを取得します。
[root@host-1 bin]# ldd /bin/mkdir
libselinux.so.1 => /lib64/libselinux.so.1 (0x0000003977b00000) libc.so.6 => /lib64/tls/libc.so.6 (0x0000003976800000)
/lib64/ld-linux-x86-64.so.2 (0x0000003976600000) [root@host-1 bin]# ldd /sbin/powermt
linux-gate.so.1 => (0xffffe000)
libc.so.6 => /lib/tls/libc.so.6 (0x00adf000) /lib/ld-linux.so.2 (0x00ac6000)
表
11-1
PowerPath オブジェクトとコンフィギュレーション ファイルのディレクトリへのコピー
注記
コピー元
bootdisk ディレクトリ
/bin/ash
---->
/sbin/ash
/bin/gawk
---->
/sbin/gawk
/bin/mkdir
---->
/sbin/mkdir
/sbin/powermt
---->
/sbin/powermt
/sbin/rmmod
---->
/sbin/rmmod
/bin/mount
---->
/sbin/mount
/bin/umount
---->
/sbin/umount
/bin/cat
---->
/sbin/cat
/bin/mknod
---->
/sbin/mknod
/sbin/pivot_root
---->
/sbin/pivot_root
/bin/sleep
---->
/sbin/sleep
ディレクトリ全体をコピー
/etc/emc
---->
/etc/emc
/etc/emcp_devicesDB.dat
---->
/etc/emcp_devicesDB.dat
/etc/emcp_devicesDB.idx
---->
/etc/emcp_devicesDB.idx
/etc/emcp_registration
---->
/etc/emcp_registration
このディレクトリには
/etc/opt/emcpower/powercf および
/etc/opt/emcpower/emcpmgr オブジェクト
が含まれています。これらのオブジェク
トは
init ファイルで使用されます。
/etc/opt/emcpower ---->
/etc/opt/emcpower
/etc/fstab
---->
/etc/fstab
PowerPath モジュール全体をコピー
/lib/modules/2.6.9-34.ELsmp/extra
/emc*.ko
---->
/etc/lib
第11 章 Linux 版 PowerPath のマルチパス機能の設定 必要なオブジェクトとコンフィギュレーション ファイルのコピー
/usr/lib/libemcp_core.so
---->
/lib/libemcp_core.so
/usr/lib/libemcp_lam.so
---->
/lib/libemcp_lam.so
/usr/lib/libemcp_lic_rtl.so
---->
/lib/libemcp_lic_rtl.so
/usr/lib/libemcp_mp_rtl.so
---->
/lib/libemcp_mp_rtl.so
/usr/lib/libemcpmp.so
---->
/lib/libemcpmp.so
/usr/lib/libemcp.so
---->
/lib/libemcp.so
/lib/ld-linux.so.2
---->
/lib/ld-linux.so.2
/lib/tls/libm.so.6
---->
/lib/libm.so.6
/lib/tls/libc.so.6
---->
/lib/libc.so.6
/lib64/libdl.so.2
---->
/lib64/libdl.so.2
/lib64/tls/libm.so.6
---->
/lib64/tls/libm.so.6
/lib64/tls/libc.so.6
---->
/lib64/tls/libc.so.6
/lib64/ld-linux-x86-64.so.2
---->
/lib64/ld-linux-x86-64.so.2
/lib64/libselinux.so.1
---->
/lib64/libselinux.so.1
/lib64/tls/librt.so.1
---->
/lib64/tls/librt.so.1
/lib64/tls/libpthread.so.0
---->
/lib64/tls/libpthread.so.0
/lib/libpn.so
---->
/lib/libpn.so
/usr/sbin/chroot
---->
/usr/sbin/chroot
表
11-1
PowerPath オブジェクトとコンフィギュレーション ファイルのディレクトリへのコピー(続き)
注記
コピー元
bootdisk ディレクトリ
第11 章 Linux 版 PowerPath のマルチパス機能の設定
ファイルの修正
11-6
Cisco VFrame Third Party インテグレーション ガイド
OL-12603-01-J
ファイルの修正
前回コピーした
/etc/fstab ファイルを修正する手順は、次のとおりです。
ステップ
1
PowerPath デバイスを反映して /etc/fstab ファイルを修正します。
この例では、
/dev/emcpowera3 がルート パーティションで、/dev/emcpowera1 がブート パーティショ
ンです。
# This file is edited by fstab-sync - see ‘man fstab-sync’ for details /dev/emcpowera3 / ext3 defaults 1 1
/dev/emcpowera1 /boot ext3 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 none /dev/shm tmpfs defaults 0 0
none /proc proc defaults 0 0 none /sys sysfs defaults 0 0
/dev/emcpowera2 swap swap defaults 0 0 /dev/hdc /media/cdrom auto
pamconsole,exec,noauto,managed 0 0 /dev/fd0 /media/floppy auto
pamconsole,exec,noauto,managed 0 0
ステップ
2
デフォルトの
init ファイルを次のファイルに修正します。
#!/bin/ashmount -t proc /proc /proc
echo Mounted /proc filesystem echo Mounting sysfs
mount -t sysfs none /sys echo Creating /dev
mount -o mode=0755 -t tmpfs none /dev mknod /dev/console c 5 1
mknod /dev/null c 1 3 mknod /dev/zero c 1 5 mkdir /dev/pts mkdir /dev/shm echo Starting udev udevstart
echo -n “/sbin/hotplug” > /proc/sys/kernel/hotplug echo “Loading mlxsys.ko module”
insmod /lib/mlxsys.ko
echo “Loading mod_vip.ko module” insmod /lib/mod_vip.ko
echo “Loading mod_thh.ko module” insmod /lib/mod_thh.ko
echo “Loading mod_rhh.ko module” insmod /lib/mod_rhh.ko
echo “Loading ts_kernel_services.ko module” insmod /lib/ts_kernel_services.ko
echo “Loading ts_ib_packet_lib.ko module” insmod /lib/ts_ib_packet_lib.ko
echo “Loading ts_ib_core.ko module” insmod /lib/ts_ib_core.ko
echo “Loading ts_ib_mad.ko module” insmod /lib/ts_ib_mad.ko
echo “Loading ts_ib_tavor.ko module” insmod /lib/ts_ib_tavor.ko
echo “Loading scsi_mod.ko module” insmod /lib/scsi_mod.ko
echo “Loading sd_mod.ko module” insmod /lib/sd_mod.ko
第11 章 Linux 版 PowerPath のマルチパス機能の設定
ファイルの修正
insmod /lib/ts_kernel_poll.ko
echo “Loading ts_ib_client_query.ko module” insmod /lib/ts_ib_client_query.ko
echo “Loading ts_ib_sa_client.ko module” insmod /lib/ts_ib_sa_client.ko
echo “Loading ts_ib_dm_client.ko module” insmod /lib/ts_ib_dm_client.ko
echo “Loading ts_ib_cm.ko module” insmod /lib/ts_ib_cm.ko
echo “Loading ts_srp_host.ko module” insmod /lib/ts_srp_host.ko
echo “Loading emcplib.ko module” insmod /lib/emcplib.ko
echo “Loading emcp.ko module” insmod /lib/emcp.ko
echo “Loading emcpmp.ko module” insmod /lib/emcpmp.ko
echo “Loading emcpmpc.ko module” insmod /lib/emcpmpc.ko
echo “Loading emcpmpaa.ko module” insmod /lib/emcpmpaa.ko
echo “Loading emcpmpap.ko module” insmod /lib/emcpmpap.ko
echo “Loading emcphr.ko module” insmod /lib/emcphr.ko
echo “Loading emcpioc.ko module” insmod /lib/emcpioc.ko
echo “Removing module emcpioc.ko” rmmod emcpioc
echo “Loading mptbase.ko module” insmod /lib/mptbase.ko
echo “Loading mptscsih.ko module” insmod /lib/mptscsih.ko
echo “Loading jbd.ko module” insmod /lib/jbd.ko
echo “Loading ext3.ko module” insmod /lib/ext3.ko
udevstart
rm -f /dev/emcpower
mmaj=`cat /sys/class/misc/emcpower/dev | gawk -F : '{print $1}'` mmin=`cat /sys/class/misc/emcpower/dev | gawk -F : '{print $2}'` mknod /dev/emcpower c $mmaj $mmin
sleep 2
echo “Start the configuration of powerpath” powermt config
powermt load
/etc/opt/emcpower/emcpmgr map sleep 7
/etc/opt/emcpower/powercf -C powermt save powermt register
sleep 2
echo “Creating root device”
echo “mkrootdev /dev/root” | /sbin/nash umount /sys
echo “Mounting root filesystem”
mount -o defaults --ro -t ext3 /dev/root /sysroot mount -t tmpfs --bind /dev /sysroot/dev
umount /proc cd /sysroot
第11 章 Linux 版 PowerPath のマルチパス機能の設定 bootdisk ディレクトリのアーカイブ
11-8
Cisco VFrame Third Party インテグレーション ガイド
OL-12603-01-J
pivot_root . initrd
exec chroot . /sbin/init <dev/console >dev/console 2>&1 echo “Unmount the old dev now”
umount /initrd/dev
bootdisk ディレクトリのアーカイブ
bootdisk ディレクトリをアーカイブする手順は、次のとおりです。
ステップ
1
必要なすべてのファイルが
bootdisk ディレクトリにコピーされているので、bootdisk ディレクトリ
をアーカイブします。
この例では、アーカイブ ファイル を /root/ に置きます。
a. bootdisk ディレクトリに cd します。
b. ファイルを検索してコピーします。
find . | cpio -v -c -o > /root/initrd-2.6.9-34.ELsmp