GNU/Linux >> Belajar Linux >  >> Debian

Menggunakan ATA Over Ethernet (AoE) Pada Debian Squeeze (Inisiator Dan Target)

Panduan ini menjelaskan bagaimana Anda dapat mengatur target AoE dan inisiator AoE (klien), keduanya menjalankan Debian Squeeze. AoE adalah singkatan dari "ATA over Ethernet" dan merupakan protokol jaringan area penyimpanan (SAN) yang memungkinkan pemrakarsa AoE untuk menggunakan perangkat penyimpanan pada target AoE (jarak jauh) menggunakan kabel ethernet normal. "Jarak jauh" dalam hal ini berarti "di dalam LAN yang sama" karena AoE tidak dapat dirutekan di luar LAN (ini adalah perbedaan utama dibandingkan dengan iSCSI). Untuk inisiator AoE, penyimpanan jarak jauh terlihat seperti hard drive lokal yang terpasang normal.

1 Catatan Awal

Saya menggunakan dua server Debian Squeeze di sini:

  • server1.example.com (Inisiator):Alamat IP 192.168.0.100
  • server2.example.com (Target):Alamat IP 192.168.0.101

2 Memuat Modul Kernel aoe Pada Kedua Sistem

server1/server2:

Sebelum kita mulai, kita harus memastikan bahwa kernel mendukung AoE:

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

Ini akan menampilkan sesuatu seperti ini:

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

Ini berarti bahwa AoE dibangun sebagai modul kernel. Mari kita periksa apakah modul sudah dimuat:

lsmod | grep aoe

Jika Anda tidak mendapatkan apa-apa kembali, ini berarti tidak dimuat. Dalam hal ini kita dapat memuatnya sebagai berikut:

modprobe aoe

Mari kita periksa lagi apakah modul sudah dimuat:

lsmod | grep aoe
[email protected]:~# lsmod | grep aoe
aoe                    21380  0
[email protected]:~#

Agar modul dimuat secara otomatis saat sistem melakukan boot, kami menambahkan modul aoe ke /etc/modules:

vi /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.

aoe
loop

3 Menyiapkan Target (server2)

server2:

Pertama kita siapkan target (server2):

apt-get install vblade

Kita dapat menggunakan volume logis yang tidak digunakan, file gambar, hard drive (misalnya /dev/sdb), partisi hard drive (misalnya /dev/sdb1) atau perangkat RAID (misalnya /dev/md0) untuk penyimpanan. Dalam contoh ini saya akan membuat volume logis 20GB bernama storage1 di grup volume vg0:

lvcreate -L20G -n storage1 vg0

(Jika Anda ingin menggunakan file gambar, Anda dapat membuatnya sebagai berikut:

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

Ini membuat file gambar /storage/storage1.img dengan ukuran 20GB.

)

Sekarang kami mengekspor perangkat penyimpanan kami sebagai berikut:

vbladed 0 1 eth0 /dev/vg0/storage1

Angka pertama (0) adalah nomor rak (mayor), yang kedua (1) nomor slot (minor), ubah angka ini sesuai keinginan Anda. Setiap perangkat AoE diidentifikasi oleh pasangan mayor/minor yang harus unik (jika Anda mengekspor beberapa perangkat), dengan mayor antara 0-65535 dan minor antara 0-255. Bagian eth0 memberi tahu vbladed perangkat ethernet mana yang akan digunakan (jika perangkat ethernet Anda adalah eth1, maka gunakan eth1 - Anda dapat mengetahui tentang perangkat ethernet Anda dengan menjalankan

ifconfig

).

Untuk memulai ekspor secara otomatis setiap kali Anda mem-boot target, buka /etc/rc.local...

vi /etc/rc.local

... dan tambahkan baris berikut ke dalamnya (sebelum baris exit 0):

[...]
/usr/sbin/vbladed 0 1 eth0 /dev/vg0/storage1
[...]

4 Menyiapkan Inisiator (server1)

server1:

Di server1, kami menginstal inisiator:

apt-get install aoetools

Sekarang kami memeriksa perangkat penyimpanan AoE apa yang tersedia:

aoe-discover

Perintah

aoe-stat

sekarang harus menunjukkan perangkat penyimpanan:

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

Pada titik ini kami memiliki perangkat blok baru yang tersedia di kotak klien bernama /dev/etherd/e0.1. Jika kita melihat pada pohon /dev, sebuah node baru muncul:

ls -la /dev/etherd/
[email protected]:~# ls -la /dev/etherd/
total 0
drwxr-xr-x  2 root root     160 Mar 16 13:34 .
drwxr-xr-x 14 root root    3000 Mar 16 13:33 ..
c-w--w----  1 root disk 152,  3 Mar 16 13:33 discover
brw-rw----  1 root disk 152, 16 Mar 16 13:34 e0.1
cr--r-----  1 root disk 152,  2 Mar 16 13:33 err
c-w--w----  1 root disk 152,  6 Mar 16 13:33 flush
c-w--w----  1 root disk 152,  4 Mar 16 13:33 interfaces
c-w--w----  1 root disk 152,  5 Mar 16 13:33 revalidate
[email protected]:~#

Pada keluaran

fdisk -l

Anda sekarang juga harus menemukan hard drive baru:

[email protected]:~# fdisk -l

Disk /dev/sda: 32.2 GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00029d5c

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        3793    30461952   83  Linux
/dev/sda2            3793        3917      992257    5  Extended
/dev/sda5            3793        3917      992256   82  Linux swap / Solaris

Disk /dev/etherd/e0.1: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/etherd/e0.1 doesn't contain a valid partition table
[email protected]:~#

Untuk menggunakan perangkat itu, kita harus memformatnya:

fdisk /dev/etherd/e0.1

[email protected]:~# fdisk /dev/etherd/e0.1
Perangkat tidak berisi tabel partisi DOS yang valid, juga disklabel Sun, SGI, atau OSF
Membuat label disk DOS baru dengan pengenal disk 0xa00b110d.
Perubahan hanya akan tetap di memori, sampai Anda memutuskan untuk menulisnya.
Setelah itu, tentu saja, konten sebelumnya tidak akan dapat dipulihkan.


jumlah silinder untuk disk ini disetel ke 2610.
Tidak ada yang salah dengan itu, tetapi ini lebih besar dari 1024,
dan dalam pengaturan tertentu dapat menyebabkan masalah dengan:
1) perangkat lunak itu berjalan pada waktu boot (mis., LILO versi lama)
2) perangkat lunak booting dan partisi dari OS lain
   (mis., DOS FDISK, OS/2 FDISK)
Peringatan: bendera 0x0000 tidak valid partisi tabel 4 akan di dikoreksi dengan w(rite)

Command (m for help): <-- n
Command action
   e   extended
   p   partisi primer ( 1-4)
<-- p
Nomor partisi (1-4): <-- 1
Silinder pertama (1-2610, default 1):<-- E NTER
Menggunakan nilai default 1
Silinder terakhir atau +ukuran atau +ukuranM atau +ukuranK (1-2610, default 2610):<-- ENTER
Menggunakan nilai default 2610

Perintah (m untuk bantuan): <-- t
Partisi yang dipilih 1
Kode hex (ketik L untuk mencantumkan kode): <-- 83

Command (m untuk bantuan): <-- w
 Tabel partisi telah diubah!

Memanggil ioctl() untuk membaca ulang tabel partisi.
Menyinkronkan disk.
[ email dilindungi]:~#

Setelah itu, output dari

fdisk -l

akan terlihat sebagai berikut:

[email protected]:~# fdisk -l

Disk /dev/sda: 32.2 GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00029d5c

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        3793    30461952   83  Linux
/dev/sda2            3793        3917      992257    5  Extended
/dev/sda5            3793        3917      992256   82  Linux swap / Solaris

Disk /dev/etherd/e0.1: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0cf58b15

            Device Boot      Start         End      Blocks   Id  System
/dev/etherd/e0.1p1               1        2610    20964793+  83  Linux
[email protected]:~#

Sekarang kita membuat sistem file di /dev/etherd/e0.1p1...

mkfs.ext4 /dev/etherd/e0.1p1

... dan pasang untuk tujuan pengujian:

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

Anda sekarang akan melihat perangkat baru di output...

mount
[email protected]:~# mount
/dev/sda1 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/etherd/e0.1p1 on /mnt type ext4 (rw)
[email protected]:~#

... dan

df -h
[email protected]:~# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              29G  806M   27G   3% /
tmpfs                 249M     0  249M   0% /lib/init/rw
udev                  244M  108K  244M   1% /dev
tmpfs                 249M     0  249M   0% /dev/shm
/dev/etherd/e0.1p1     20G  172M   19G   1% /mnt
[email protected]:~#

Anda dapat melepasnya seperti ini:

umount /mnt

Agar perangkat dipasang secara otomatis saat boot, mis. di direktori /storage, kita buat direktori itu...

mkdir /storage

... dan tambahkan baris berikut ke /etc/fstab:

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

Ini saja tidak cukup untuk memasang perangkat pada saat boot karena hal-hal AoE dimuat setelah /etc/fstab dibaca. Oleh karena itu kami membuka /etc/rc.local...

vi /etc/rc.local

... dan tambahkan baris berikut ke dalamnya (sebelum baris exit 0):

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

Untuk tujuan pengujian, Anda sekarang dapat mem-boot ulang sistem:

reboot

Setelah reboot, perangkat harus dipasang:

mount
[email protected]:~# mount
/dev/sda1 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/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/sda1              29G  806M   27G   3% /
tmpfs                 249M     0  249M   0% /lib/init/rw
udev                  244M  108K  244M   1% /dev
tmpfs                 249M     0  249M   0% /dev/shm
/dev/etherd/e0.1p1     20G  172M   19G   1% /mnt
[email protected]:~#

  • Definisi Protokol AoE:http://www.coraid.com/RESOURCES/AoE-Protocol-Definition
  • Debian:http://www.debian.org/

Debian
  1. Cara menginstal dan mengkonfigurasi ZFS di Linux menggunakan Debian Jessie 8.1

  2. Setup ATA over Ethernet (AoE) pada Debian 8 (Inisiator dan Target)

  3. Memutakhirkan dari Debian 6 Squeeze dengan ISPConfig dan kurir/postfix ke Debian 7 Wheezy

  1. Menggunakan ATA Over Ethernet (AoE) Pada CentOS 6.3 (Inisiator Dan Target)

  2. Debian – Menggunakan Dua Tampilan Di Debian?

  3. Debian – Bagaimana Cara Membuat Disk Squeeze Debian Usb Untuk Ppc?

  1. Menginstal dan Menggunakan Docker di Ubuntu dan Debian

  2. Cara menginstal dan menguji FFMPEG/FFMPEG-PHP di Debian Squeeze

  3. Instal dan atur SpamAssassin di Debian 6 (Squeeze)