GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS 6.3(イニシエーターおよびターゲット)でのATA Over Ethernet(AoE)の使用

このガイドでは、CentOS 6.3を実行しているAoEターゲットとAoEイニシエーター(クライアント)をセットアップする方法について説明します。 AoEは「ATAoverEthernet」の略で、AoEイニシエーターが通常のイーサネットケーブルを使用して(リモート)AoEターゲット上のストレージデバイスを使用できるようにするストレージエリアネットワーク(SAN)プロトコルです。この場合の「リモート」は、AoEがLANの外部でルーティングできないため、「同じLANの内部」を意味します(これはiSCSIとの大きな違いです)。 AoEイニシエーターにとって、リモートストレージは通常のローカルに接続されたハードドライブのように見えます。

1予備メモ

ここでは2台のCentOS6.3サーバーを使用しています:

  • server1.example.com(イニシエーター):IPアドレス192.168.0.100
  • server2.example.com(ターゲット):IPアドレス192.168.0.101

2追加のリポジトリを有効にする

server1 / server2:

まず、ソフトウェアパッケージのGPGキーをインポートします:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

次に、2つのCentOSシステムでEPEL6リポジトリを有効にします。

rpm --import https://fedoraproject.org/static/0608B895.txt
cd /tmp
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm
rpm -ivh epel-release-6-7.noarch.rpm
yum install yum-priorities

/etc/yum.repos.d/epel.repoを編集します...

vi /etc/yum.repos.d/epel.repo

...そして[epel]セクションにpriority=10という行を追加します:

[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
[...]

vbladeパッケージは、EPEL 5からのみ入手できます。 リポジトリであるため、次のセクションを/etc/yum.repos.d/epel.repoに追加する必要がありますが、server2のみです。

server2:

vi /etc/yum.repos.d/epel.repo

必ずpriority=100を使用し、gpgcheck=0でGPGチェックを無効にしてください。

[...]
[epel5]
name=Extra Packages for Enterprise Linux 5 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/5/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-5&arch=$basearch
failovermethod=priority
enabled=1
priority=100
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

3両方のシステムでのaoeカーネルモジュールのロード

server1 / server2:

始める前に、カーネルがAoEをサポートしていることを確認する必要があります:

grep ATA_OVER /boot/config-`uname -r`

これは次のように表示されます:

[[email protected] ~]# grep ATA_OVER /boot/config-`uname -r`
CONFIG_ATA_OVER_ETH=m
[[email protected] ~]#

これは、AoEがカーネルモジュールとして構築されたことを意味します。モジュールがすでにロードされているかどうかを確認しましょう:

lsmod | grep aoe

何も返されない場合、これはロードされていないことを意味します。この場合、次のようにロードできます:

modprobe aoe

モジュールがロードされているかどうかをもう一度確認しましょう:

lsmod | grep aoe
[[email protected] ~]# lsmod | grep aoe
aoe                    26466  0
[[email protected] ~]#

システムの起動時にモジュールが自動的にロードされるようにするには、次の行を/etc/rc.localに追加します。

vi /etc/rc.local
[...]
modprobe aoe
[...]

4ターゲットの設定(server2)

server2:

まず、ターゲット(server2)を設定します:

yum install vblade

ストレージには、未使用の論理ボリューム、イメージファイル、ハードドライブ(例:/ dev / sdb)、ハードドライブパーティション(例:/ dev / sdb1)、またはRAIDデバイス(例:/ dev / md0)を使用できます。この例では、ボリュームグループvg_server2にstorage1という名前の20GBの論理ボリュームを作成します。

lvcreate -L20G -n storage1 vg_server2

(画像ファイルを使用する場合は、次のように作成できます:

mkdir /storage
dd if=/dev/zero of=/storage/storage1.img bs=1024k count=20000

これにより、20GBのサイズのイメージファイル/storage/storage1.imgが作成されます。

次に、ストレージデバイスを次のようにエクスポートします。

vbladed 0 1 eth0 /dev/vg_server2/storage1

最初の番号(0)はシェルフ番号(メジャー)、2番目の番号(1)はスロット番号(マイナー)です。これらの番号をお好みに合わせて変更してください。各AoEデバイスは、(複数のデバイスをエクスポートする場合)一意である必要があるいくつかのメジャー/マイナーによって識別されます。メジャーは0〜65535で、マイナーは0〜255です。 eth0の部分は、使用するイーサネットデバイスをvbladedに指示します(イーサネットデバイスがeth1の場合は、eth1を使用します。実行するとイーサネットデバイスについて確認できます

ifconfig

ターゲットを起動するたびに自動的にエクスポートを開始するには、/ etc / rc.local ...

を開きます。
vi /etc/rc.local

...そしてそれに次の行を追加します(modprobe aoe行の後に!):

[...]
vbladed 0 1 eth0 /dev/vg_server2/storage1
[...]

5イニシエーター(server1)のセットアップ

server1:

server1に、イニシエーターをインストールします:

yum install aoetools

次に、使用可能なAoEストレージデバイスを確認します。

aoe-discover

コマンド

aoe-stat

ストレージデバイスが表示されます:

[[email protected] ~]# aoe-stat
      e0.1        21.474GB   eth0 up
[[email protected] ~]#

この時点で、/ dev / etherd/e0.1という名前のクライアントボックスで新しいブロックデバイスを使用できます。 / devツリーを見ると、新しいノードが表示されます:

ls -la /dev/etherd/
[[email protected] ~]# ls -la /dev/etherd/
total 0
drwxr-xr-x.  2 root root     160 Dec 11 16:24 .
drwxr-xr-x. 20 root root    3620 Dec 11 16:00 ..
c-w--w----.  1 root disk 152,  3 Dec 11 16:00 discover
brw-rw----.  1 root disk 152, 16 Dec 11 16:24 e0.1
cr--r-----.  1 root disk 152,  2 Dec 11 16:00 err
c-w--w----.  1 root disk 152,  6 Dec 11 16:00 flush
c-w--w----.  1 root disk 152,  4 Dec 11 16:00 interfaces
c-w--w----.  1 root disk 152,  5 Dec 11 16:00 revalidate
[[email protected] ~]#

そのデバイスを使用するには、フォーマットする必要があります:

fdisk /dev/etherd/e0.1

[[email protected]〜]#fdisk /dev/etherd/e0.1
デバイスには、有効なDOSパーティションテーブルも、Sun、SGI、OSFディスクラベルも含まれていません
ディスク識別子0xed572fd4を使用して新しいDOSディスクラベルを作成します。
変更は、書き込みを決定するまで、メモリにのみ残ります。
その後、もちろん、以前のコンテンツは復元できなくなります。


このディスクのシリンダー数は2610に設定されています。
これに問題はありませんが、これは1024を超えており、
特定のセットアップでは、次の問題が発生する可能性があります。
1)ソフトウェア起動時に実行されます(例:古いバージョンのLILO)
2)他のOSからのソフトウェアの起動とパーティション分割
(例:DOS FDISK、OS / 2 FDISK)
警告:無効なフラグ0xパーティションテーブル4の一部は、w(rite)によって修正されます

コマンド(ヘルプの場合はm):<-n
コマンドアクション
e拡張
pプライマリパーティション(1-4)
<-p
パーティション番号(1-4):<-1
最初のシリンダー(1-2610、デフォルト1):<- ENTER
デフォルト値1を使用
最後のシリンダー、+シリンダー、または+ size {K、M、G}(1-2610、デフォルト2610):<-ENTER
デフォルト値2610を使用

コマンド(ヘルプの場合はm):<-t
選択したパーティション1
Hexコード(コードを一覧表示するにはLと入力):<-L

0空1eを隠しW95 FAT1 80古いMinixのBFのSolaris
1 FAT12 24 NEC DOS 81のMinix /古い林C1 DRDOS /秒(脂
2 XENIXルート39プラン9 82 Linuxスワップ/だから、C4 DRDOS / sec(FAT-
3 XENIX usr 3c PartitionMagic 83 Linux c6 DRDOS / sec(FAT-
4 FAT16 <32M 4 FAT16 <32M 40 Venix 80286 PPCのPRePブート85 Linuxは、ダ非FSデータ
6 FAT16 42 SFS 86 NTFSボリュームセットのデシベルのCP / M / CTOS /。は、
7 HPFS / NTFS 4D QNX4.x 87 NTFSボリュームセット・デ・デル・ユーティリティを拡張しました
8 AIX 4e QNX4.x 2nd part 88 Linux plaintext df BootIt
9 AIX bootable 4f QNX4.x 3rd part 8e Linux LVM e1 DOS access
a OS / 2 Boot Manag 50 OnTrack DM 6 OD 93 Amoeba 9 BBT e4 SpeedStor
c W95 FAT32(LBA)52 CP / M 9f BSD / OS eb eb BeOS fs
e W9 FAT16(LBA)53 Ext'd(LBA)54 OnTrackDM6 A5のFreeBSD EF EFI(FAT12 / 16 /
10 OPUS 55 EZドライブA6のOpenBSD F0のLinux / PA-RISC B
11隠しFAT12 56ゴールデンボウA7のNeXTSTEP F1 SpeedStor
12コンパックdiagnost 5CプリアモスEdisk A8ダーウィンUFS F4 SpeedStor
14隠しFAT16のVMware FB <3 61 SpeedStor A9のNetBSD F2 DOSセカンダリ
16隠しFAT16 63 GNU HURDまたはSYS ABダーウィンブートVMFS
17 Hidden HPFS / NTF 64 Novell Netware b7 BSDI fs fc VMware VMKCORE
18 AST SmartSleep 65 Novell Netwa re b8 BSDI swap fd Linux raid auto
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hidden fe LANstep
1c Hidden W95 FAT3 75 PCコードを一覧表示するには):<-83

コマンド(ヘルプの場合はm):<-w
パーティションテーブルが変更されました!

ioctlを呼び出します()パーティションテーブルを再読み込みします。
ディスクを同期しています。
[[メールで保護]〜]#

その後、新しいデバイス/dev/etherd/e0.1p1があります。これは

の出力で確認できます。
ls -l /dev/etherd/
[[email protected] ~]# ls -l /dev/etherd/
total 0
c-w--w----. 1 root disk 152,  3 Dec 11 16:00 discover
brw-rw----. 1 root disk 152, 16 Dec 11 16:27 e0.1
brw-rw----. 1 root disk 152, 17 Dec 11 16:27 e0.1p1
cr--r-----. 1 root disk 152,  2 Dec 11 16:00 err
c-w--w----. 1 root disk 152,  6 Dec 11 16:00 flush
c-w--w----. 1 root disk 152,  4 Dec 11 16:00 interfaces
c-w--w----. 1 root disk 152,  5 Dec 11 16:00 revalidate
[[email protected] ~]#

次に、/ dev / etherd / e0.1p1 ...

にファイルシステムを作成します。
mkfs.ext4 /dev/etherd/e0.1p1

...そしてテスト目的でマウントします:

mount /dev/etherd/e0.1p1 /mnt

これで、...

の出力に新しいデバイスが表示されます。
mount
[[email protected] ~]# mount
/dev/mapper/vg_server1-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/etherd/e0.1p1 on /mnt type ext4 (rw)
[[email protected] ~]#

...そして

df -h
[[email protected] ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_server1-LogVol00
                      9.7G  1.7G  7.5G  18% /
tmpfs                 499M     0  499M   0% /dev/shm
/dev/sda1             504M   39M  440M   9% /boot
/dev/etherd/e0.1p1     20G  151M   19G   1% /mnt
[[email protected] ~]#

次のようにマウントを解除できます:

umount /mnt

起動時にデバイスを自動的にマウントするには、たとえばディレクトリ/storageに、そのディレクトリを作成します...

mkdir /storage

...そして/etc/fstabに次の行を追加します。

vi /etc/fstab
[...]
/dev/etherd/e0.1p1       /storage        ext4    defaults,auto,_netdev 0 0

/ etc / fstabが読み取られた後にAoEのものがロードされるため、これだけでは起動時にデバイスをマウントするのに十分ではありません。したがって、/ etc / rc.local ...

を開きます。
vi /etc/rc.local

...そしてそれに次の行を追加します(modprobe aoe行の後に!):

[...]
aoe-discover
sleep 5
mount -a
[...]

テスト目的で、システムを再起動できるようになりました:

reboot

再起動後、デバイスをマウントする必要があります:

mount
[[email protected] ~]# mount
/dev/mapper/vg_server1-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/etherd/e0.1p1 on /storage type ext4 (rw,_netdev)
[[email protected] ~]#
df -h
[[email protected] ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_server1-LogVol00
                      9.7G  1.7G  7.5G  18% /
tmpfs                 499M     0  499M   0% /dev/shm
/dev/sda1             504M   39M  440M   9% /boot
/dev/etherd/e0.1p1     20G  151M   19G   1% /mnt
[[email protected] ~]#

  • AoEプロトコルの定義:http://www.coraid.com/RESOURCES/AoE-Protocol-Definition
  • CentOS:http://www.centos.org/

Cent OS
  1. Ubuntu 12.10(イニシエーターおよびターゲット)でのATA Over Ethernet(AoE)の使用

  2. DebianSqueezeでのATAOverEthernet(AoE)の使用(イニシエーターとターゲット)

  3. CentOS 7/RHEL7でiSCSIターゲットとイニシエーターを構成する

  1. CentOS 7(イニシエーターおよびターゲット)でのATA Over Ethernet(AoE)の使用

  2. CentOS / RHEL 6,7 :イニシエーター (iSCSI クライアント) で iSCSI ターゲットを削除する方法

  3. CentOS / RHEL で iSCSI イニシエーターから iSCSI ターゲットへの DM-Multipath を構成する方法

  1. Debian 8(イニシエーターとターゲット)でATA over Ethernet(AoE)をセットアップする

  2. Ansibleを使用してRockyLinux/Centos8にMysql8をインストールして初期化する

  3. Centos4.8およびGlibc2.5?