Jump to content
From ArchWiki

From Wikipedia:ATA over Ethernet:

  ATA over Ethernet (AoE) is a network protocol developed by the Brantley Coile Company, designed for simple, high-performance access of SATA storage devices over Ethernet networks. It is used to build storage area networks (SANs) with low-cost, standard technologies.

## Prequisites to ATA over Ethernet

To use AOE, install vbladeAUR and aoetoolsAUR.

AoE does not use IPv4/IPv6; it works directly on top of Ethernet and is limited to the local subnet. It is enough to make sure that the interface is up. (For best performance, the subnet should use jumbo frames.)

    # ip link set eth0 up

## Target: Export a disk

You can export block devices or image files using `vblade` or the `vbladed` daemon.

Create an empty disk image:

    # dd if=/dev/zero of=vblade0 bs=1M count=256

Start `vblade` to export the disk over eth0:

    # vblade 1 1 eth0 vblade0

Exported disks are identified by their "shelf ID" and "slot ID" (within that shelf), in this case `1.1`; the combination must be unique across the SAN.

## Initiator: Attach to a disk

Ensure the kernel module is loaded:

    # modprobe aoe

By default, all interfaces are used, but you can specify a whitelist either as `aoe` module parameter, or using the `aoe-interfaces` command:

    # aoe-interfaces eth0

The kernel module performs periodic discovery; to do it immediately (e.g. after changing interfaces), use `aoe-discover`. Afterwards, use `aoe-stat` to list "visible" disks.

    # aoe-discover
    # aoe-stat
         e1.1         0.001GB   eth0 up

The first column shows a device name which also can be found under `/dev/etherd` as a regular block device. You can partition it with fdisk, or just create a file system:

    # mkfs.ext4 /dev/etherd/e1.1
    # mkdir /mnt/e1.1
    # mount /dev/etherd/e1.1 /mnt/e1.1

Categories:

- Storage
- Networking